WP3 Reasoning

Reasoning (ONTO)
In what follows we will describe in brief the reasoning from more technical perspective. Since the objective of WP3 is to provide support for several types of reasoning as they are relevant for different RASCALLI "tools" and application scenarios, the work is related to the following objectives:

Closed domain reasoning
Reasoning based on common knowledge
Specification and implementation of the application scenarios.

The main contribution of the work performed in WP3 is TRREE - a high-performance scalable rule-based reasoning engine. Its role in the RASCALLI infrastructure is the role of a Semantic Database component, which provides means for storage and integration of wide range of data and ontologies, as well as reasoning and query evaluation on top of it. The figure below illustrates the place of the SemanticDB in the architecture.

Fig. The SemanticDB and the system architecture

DualRDF introduces the SemanticDB component which supports the extended RDF data model with Triplesets. This data model is used to implement the Spreading Activation mechanism and will be exploited to provide the rest of the cognitive mechanisms for analogy reasoning in the final version. The green arrows in the figure above illustrate the relationships between some of the components of the Cognitive Architecture with the SemanticDB component.

Technically, the closed domain reasoner is a further development of a rule-based reasoning engine called TRREE. TRREE can be used either through ORDI (and DualRDF) or through OWLIM and Sesame. Same engine is used for integration of different types of data across the entire project. Its role, as a component in the RASCALLI architecture is the one of a Semantic Database.

The principle requirement towards the Semantic Database is to be able to scale to volumes of data comparable to the long-term memory of a person and to be able to handle requests towards data in real-time, in "lively and responsive" fashion, and in the scale of the so-called working memory.

The performance and scalability of the reasoner was evaluated against the Music Quiz scenario data - about 30 million explicit RDF(S)/OWL statements. There, the reasoning is used for two purposes (i) integration of the data from the different sources and (ii) more "intelligent" and analytical view towards the data. This scenario already required a combination of scale and complexity, which were beyond the capabilities of the best semantic repositories available today. This required fundamental improvements to TRREE, which were implemented and had considerable impact on its performance. The performance was measured through a set of standard benchmarks for scalable reasoning. Over the last few years machines which allow some sort of reasoning on top of 1 billion RDF statements were already present; nonetheless their query performance was not sufficient for handling real-time synchronous query requests.

Application scenarios (NBU)
In order to demonstrate the full capabilities of the architecture, several application scenarios were elaborated. The first of them is the Priming Application Scenario. It demonstrates the capabilities of the system to preserve context between different utterances of the owner. The following page sheds light over the experiment results of the Mind operation during this application scenario.

The experiment described below is part of the DUAL use cases, part of the Music demonstrator with DUAL.

Overview of the Priming Application Scenario (NBU)
The used implementation is DUAL/AMBR with the last Rascalli-specific updates. The user asks five questions in a row and the Mind provides the answer from its internal memories, or searches for it in a datasource. This is simplified documentation of what happens inside the Mind at every moment of the scenario.
"Tell me something about Britney Spears.";
The system provides a Britney Spears album (assuming it exists in the system factual knowledge).
"Who are the children of Artist 16?" (Alan Jackson);
The system provides the child of Alan Jackson (assuming it exists in the system factual knowledge).
"Tell me something about Britney Spears.";
The system searches with the help of NALQI and provides the child of Britney Spears.
"Tell me Alan Jackson's religion.";
The system provides Alan Jackson's religion status (assuming it exists in the system factual knowledge).
"Tell me something about Britney Spears." (take two).
The system provides Britney Spears religion status (assuming it exists in the system factual knowledge).

Experiment results (NBU)
Tell me something about Britney Spears
The Mind has to search for any information related to Britney Spears. Britney is marked with tag :interest and there is no tag :question applied to any of the instances. Thus the *virtual-things* list is empty.

The Mind brings to memory information about the religion status of Britney Spears and information about what data can be searched in datasources, but the albums context is most relevant by default.

Around 60 AMBR Time Units (ATU), the "satisfaction" episode comes into play. The Mind makes hypotheses of similarity between the target episode, enriched with the factual knowledge and the base. The hypotheses about the satisfied owner, relations between objects and finally about cause and the action itself (notify owner) settle and finally reach winner state around 90 ATU.

This is the end of the first simulation step - the Mind notifies the owner about the result of the search.

Who are the children of Artist 16? (Alan Jackson)
Note: The instance Alan Jackson is marked with the tag :interest and the instance of Child is marked with the tag :question.

The target episode sets the *private-question* flag to true and adds the target child instance to the *virtual-things* list. The child concept is also marked with the tag :question. The latter allows the system to transfer found child agents at the place of the child instance.

When the machinery is being run, the Mind brings to memory information about the religion, marital, album, etc. status of Alan Jackson, but this information is not present in the *virtual-things*, so it is not considered relevant enough. Information about the parental status is also brought to the Working Memory (WM) and it is present in the *virtual-things*, so it is considered a solution to the problem at hand. This happens roughly between time of 5 and 20 ATU.

Around 60 ATU, the "satisfaction" episode come into play. The Mind makes hypotheses of similarity between the target episode, enriched with the factual knowledge and the base. The hypotheses about the satisfied owner, relations between objects and finally about cause and the action itself (notify owner) settle and finally reach winner state around 80 ATU.

This is the end of the first simulation step - the Mind notifies the owner about the result of the search.

Tell me something about Britney Spears
This target episode is identical to the first one of the current scenario.

The Mind brings to memory information about the religion status of Britney Spears, but the child context from the previous step of the scenario influences it to search in the database for children of Britney Spears. This happens at time 257 ATU.

The episode that is brought to WM is the usage episode with children and some datasource. As no relevant information is present, the Mind decides to use database search in database-1 (working label for the music database). It executes this action around time of 68 ATU. The parameters of the action are the agents coming from the target episode - the instances for Alan Jackson and child.

The database search procedure simulates a real database search by attaching the "found" instance - fresh agent that is supposed to come from the database search.

Note: This simulation is run directly after the first step of the application scenario, so the AMBR clock is not reset and the current simulation started after the previous, around 160 ATU.

The database search procedure simulates a real database search by attaching the "found" instance - fresh agent that is supposed to come from the database search.

Around 300 ATU, the "satisfaction" episode come into play. The Mind makes hypotheses of similarity between the target episode, enriched with the factual knowledge and the base. The hypotheses about the satisfied owner, relations between objects and finally about cause and the action itself (notify owner) settle and finally reach winner state around 340 ATU.

This is the end of the second simulation step - the Mind notifies the owner about the result of the search.

Tell me Alan Jackson's religion
The third (arbitrary - might be the first, second or whatever in the row) task presented to the Mind is to provide the religion status of Alan Jackson. Again, the artist instance is marked with tag :interest and the ReligionStatus - with tag :question. Thus the concept for ReligionStatus is also marked with the tag :question and the instance is put into the *virtual-things* list.

This time there is relevant information inside the Mind about the religion of Alan Jackson. This information is located and brought to memory in the early stages of the simulation - 20-40 ATU after its start. The "virtual" instance of ReligionStatus is fizzled from WM and the new one takes its place. This means that it is added to the input, the target episode (the current problem at hand) and linked to all necessary agents.

The Mind brings to memory the "satisfaction" episode because of the found relevant information and the constraint satisfaction network settles around 60 ATU later, by providing the final action of this step - notify the owner via the MMG tool of the found information about Alan Jackson's religion.

Tell me something about Britney Spears (take 2)
The fourth step in the application scenario we propose is again a question about Britney Spears. Again it is a non-specific question, so any information available would be apreciated. This time, because of the religion context, the found (and provided) information is about the religion of Britney.

The work of the Mind is almost the same as in the previous example - it takes a bit less than 100 ATU to provide the answer to the question and the only thing that differs are the actual instances that take place.

Back to workpackages


RASCALLI is supported by the European Commission Cognitive Systems Programme (IST-27596-2004).

 

 
 
 
 
 
 
 
 
RASCALLI develops a new type of personalized cognitive agents, the Rascalli, that live and learn on the Internet.

Rascalli combine Internet-based perception, action, reasoning, learning, and communication.

Rascalli come into existence by creation through the user. The users not only create their Rascalli but also train them to fulfil specific tasks, such as be experts in a quiz game or assist the user in a music portal.

  home