Table of Contents
Fetching ...

Implementing Knowledge Representation and Reasoning with Object Oriented Design

Abdelrhman Bassiouny, Tom Schierenbeck, Sorin Arion, Benjamin Alt, Naren Vasantakumaar, Giang Nguyen, Michael Beetz

TL;DR

KRROOD introduces a Python-native framework that unifies knowledge representation, reasoning, and persistence within object-oriented software, addressing the integration gap between KR&R and modern AI systems. The approach rests on EQL for Python-native declarative querying, RDR for Python-based rule reasoning, Ontomatic for OWL-to-OO conversion, and ORMatic for persistent, scalable storage, all designed to operate directly on domain objects. Empirical results on OWL2Bench and interactive robot task learning show KRROOD achieving competitive loading and reasoning performance while enabling domain procedures and explanations through native OO integration. This work demonstrates the practical viability and potential impact of tightly coupled knowledge and application logic for robust, explainable autonomous systems.

Abstract

This paper introduces KRROOD, a framework designed to bridge the integration gap between modern software engineering and Knowledge Representation & Reasoning (KR&R) systems. While Object-Oriented Programming (OOP) is the standard for developing complex applications, existing KR&R frameworks often rely on external ontologies and specialized languages that are difficult to integrate with imperative code. KRROOD addresses this by treating knowledge as a first-class programming abstraction using native class structures, bridging the gap between the logic programming and OOP paradigms. We evaluate the system on the OWL2Bench benchmark and a human-robot task learning scenario. Experimental results show that KRROOD achieves strong performance while supporting the expressive reasoning required for real-world autonomous systems.

Implementing Knowledge Representation and Reasoning with Object Oriented Design

TL;DR

KRROOD introduces a Python-native framework that unifies knowledge representation, reasoning, and persistence within object-oriented software, addressing the integration gap between KR&R and modern AI systems. The approach rests on EQL for Python-native declarative querying, RDR for Python-based rule reasoning, Ontomatic for OWL-to-OO conversion, and ORMatic for persistent, scalable storage, all designed to operate directly on domain objects. Empirical results on OWL2Bench and interactive robot task learning show KRROOD achieving competitive loading and reasoning performance while enabling domain procedures and explanations through native OO integration. This work demonstrates the practical viability and potential impact of tightly coupled knowledge and application logic for robust, explainable autonomous systems.

Abstract

This paper introduces KRROOD, a framework designed to bridge the integration gap between modern software engineering and Knowledge Representation & Reasoning (KR&R) systems. While Object-Oriented Programming (OOP) is the standard for developing complex applications, existing KR&R frameworks often rely on external ontologies and specialized languages that are difficult to integrate with imperative code. KRROOD addresses this by treating knowledge as a first-class programming abstraction using native class structures, bridging the gap between the logic programming and OOP paradigms. We evaluate the system on the OWL2Bench benchmark and a human-robot task learning scenario. Experimental results show that KRROOD achieves strong performance while supporting the expressive reasoning required for real-world autonomous systems.
Paper Structure (16 sections, 2 figures, 2 tables)

This paper contains 16 sections, 2 figures, 2 tables.

Figures (2)

  • Figure 1: The krrood framework provides representations and tooling for native, object-oriented krr in Python.
  • Figure 2: A virtual robot performing an object insertion learned from human demonstration, with the human interacting through a vr interface.