Download Agent problem solving - Learning Agents Center

Document related concepts

Learning through play wikipedia , lookup

Transcript
CS 785 Fall 2004
Gheorghe Tecuci
[email protected]
http://lac.gmu.edu/
Learning Agents Center
and Computer Science Department
George Mason University
 2004, G.Tecuci, Learning Agents Center
Overview
Knowledge-based agents
Knowledge base: Object ontology + Rules
Rule-based problem solving
Control of the problem solving process
 2004, G.Tecuci, Learning Agents Center
What are intelligent agents
An intelligent agent is a system that:
• perceives its environment (which may be the physical
world, a user via a graphical user interface, a collection of
other agents, the Internet, or other complex environment);
• reasons to interpret perceptions, draw inferences, solve
problems, and determine actions; and
• acts upon that environment to realize a set of goals or
tasks for which it was designed.
input/
sensors
user/
environment
 2004, G.Tecuci, Learning Agents Center
output/
effectors
Intelligent
Agent
The architecture of an intelligent agent
Implements a general problem solving method that uses
the knowledge from the knowledge base to interpret the
input and provide an appropriate output.
Intelligent Agent
Input/
Sensors
User/
Environment
Problem Solving
Engine
Learning
Engine
Output/
Effectors
Knowledge Base
ONTOLOGY
Ontology
OBJECT
Implements
learning
methods
for extending
and refining
the knowledge
in the
knowledge
base.
SUBCLASS-OF
BOOK
CUP
TABLE
INSTANCE-OF
Rules/Cases/…
CUP1
ON
BOOK1
ON
TABLE1
RULE
 x,y,z  OBJECT,
(ON x y) & (ON y z)  (ON x z)
Data structures that represent the objects from the application domain,
general laws governing them, actions that can be performed with them, etc.
 2004, G.Tecuci, Learning Agents Center
Problem Solving Approach: Task Reduction
A complex problem solving task is performed by:
T1
Q1 S1
• successively reducing it to simpler tasks;
• finding the solutions of the simplest tasks;
A11 S11
…
T11a S11a T11bS11b
…
Q11b S11b
A1n S
1n
T1n
• successively composing these solutions until
the solution to the initial task is obtained.
…Test whether President Roosevelt is
President Roosevelt is a strategic COG
candidate that can be eliminated
a viable strategic COG candidate
Which are the critical capabilities that President Roosevelt should have to be a COG candidate?
A11b1 S11b1… A11bm S11bm
T11b1
T11bm
Knowledge Base
Object Ontology
Reduction Rules
Composition Rules
 2004, G.Tecuci, Learning Agents Center
Does President Roosevelt have all
the necessary critical capabilities?
The necessary critical capabilities are: be protected, stay informed, communicate,
be influential, be a driving force, have support and be irreplaceable
Test whether President
Roosevelt has the critical
capability to be protected
President Roosevelt has the critical capability to be protected. President Roosevelt is
protected by US Service 1943 which has no significant vulnerability
Test whether President
Roosevelt has the critical
capability to stay informed
President Roosevelt has the critical capability to stay informed. President Roosevelt
receives essential intelligence from intelligence agencies which have no significant
vulnerability
Test whether President
Roosevelt has the critical
capability to communicate
President Roosevelt has the critical capability to communicate through executive orders,
through military orders, and through the Mass Media of US 1943. These communication
means have no significant vulnerabilities
Test whether President
Roosevelt has the critical
capability to be influential
President Roosevelt has the critical capability to be influential because he is the head of the
government of US 1943, the commander in chief of the military of US 1943, and is a trusted
leader who can use the Mass Media of US 1943. These influence means have no
significant vulnerabilities.
Test whether President
Roosevelt has the critical
capability to be a driving force
President Roosevelt has the critical capability to be a driving force. The main reason for
President Roosevelt to pursue the goal of unconditional surrender of European Axis is
“preventing separate peace by the members of the Allied Forces”. Also, “the western
democratic values” provides President Roosevelt with determination to persevere in this
goal. There is no significant vulnerability in the reason and determination.
Test whether President
Roosevelt has the critical
capability to have support
President Roosevelt has the critical capability to have support because he is the head of a
democratic government with a history of good decisions, a trusted commander in chief of
the military, and the people are willing to make sacrifices for unconditional surrender of
European Axis. The means to secure continuous support have no significant vulnerability.
President Roosevelt does not have the critical capability to be irreplaceable. US 1943 would
No.
Overview
Knowledge-based agents
Knowledge base: Object ontology + Rules
Rule-based problem solving
Control of the problem solving process
 2004, G.Tecuci, Learning Agents Center
The structure of the knowledge base
Knowledge Base = Object ontology + Task reduction rules
The object ontology is a hierarchical description of the
objects from the domain, specifying their properties and
relationships. It includes both descriptions of types of
objects (called concepts) and descriptions of specific
objects (called instances).
The task reduction rules specify generic problem solving
steps of reducing complex tasks to simpler tasks. They are
described using the objects from the ontology.
 2004, G.Tecuci, Learning Agents Center
The structure of the knowledge base (cont.)
Knowledge Base = Object ontology + Task reduction rules
A task reduction rule is
an IF-THEN structure
that expresses the
condition C under which
a task T1 can be reduced
to the simpler tasks T1a,
or to a set of simpler
tasks T11, … , T1n.
 2004, G.Tecuci, Learning Agents Center
T1
C
T1a
T1
C
T11 T12 … T1n
Fragment of the object ontology
governing_body
ad_hoc_ governing_body
established_ governing_body
other_type_of_
governing_body
state_government
group_governing_body
feudal_god_
king_government
other_state_
government
democratic_
government
monarchy
other_
group_
governing_
body
dictator
deity_figure
representative_ parliamentary_
democracy
democracy
government_
of_Italy_1943
totalitarian_
government
police_
state
government_
of_US_1943
government_
of_Britain_1943
military_
dictatorship
religious_
dictatorship
democratic_
council_
or_board
autocratic_
leader
fascist_
state
communist_
dictatorship
 2004, G.Tecuci, Learning Agents Center
government_
of_USSR_1943
theocratic_
government
religious_
dictatorship
government_
of_Germany_1943
theocratic_
democracy
chief_and_
tribal_council
The instances and the concepts are organized into generalization hierarchies like this
hierarchy of governing bodies.
Notice, however, that the generalization hierarchies are not always as strict as this one,
where each concept is a subconcept of only one concept.
For instance, the concept “strategic_raw_material” is both a subconcept of
“raw_material” and a subconcept of
“strategically_essential_resource_or_infrastructure_element”.
 2004, G.Tecuci, Learning Agents Center
Fragment of feature ontology
has_as_controlling_leader
D: agent
R: person
has_as_religious_leader
D: governing_body
R: person
has_as_god_king
D: governing_body
R: person
has_as_monarch
D: governing_body
R: person
has_as_military_leader
D: governing_body
R: person
has_as_political_leader
D: governing_body
R: person
has_as_head_of_government
D: governing_body
R: person
 2004, G.Tecuci, Learning Agents Center
has_as_commander_in_chief
D: force
R: person
has_as_head_of_state
D: governing_body
R: person
An object feature is itself defined as a subconcept of another object feature, as
illustrated in the previous slide. Therefore, the object features are also hierarchically
organized.
Notice that if feature1 is a subconcept of feature2, than the domain of feature1 should
be less general than or at most as general as the domain of feature2. The same
condition should hold between the ranges of the two features.
For instance, “has_as_political_leader” is a subconcept of “has_as_controling_leader”.
The domain of the first feature is “governing_body” which is less general than the
domain of the second feature, which is “agent.”
Also, the range of “has_as_political_leader” is the same as the range of
“has_as_controling_leader”.
 2004, G.Tecuci, Learning Agents Center
Object expressions
One can define more complex concepts as logical expressions
involving the basic concepts from the object ontology.
In the following expression, for instance, ?O1 represents a
force that has as industrial factor an industrial capacity that
generates essential war materiel from the strategic perspective
of a multi-member force that includes ?O1.
?O1
?O2
?O3
is
force
has_as_industrial_factor
?O2
is
industrial_capacity
generates_essential_war_materiel_from_
the_strategic_perspective_of
is
multi_member_force
has_as_member
?O1
 2004, G.Tecuci, Learning Agents Center
?O3
Ontology matching
Ontology matching allows one to answer complex
questions about the knowledge represented in the
ontology, as illustrated in the following:
Question:
Is there any force ?O1 that has as industrial factor an
industrial capacity that generates essential war materiel
from the strategic perspective of a multi-member force
that includes ?O1?
Answer:
Yes, US_1943 is a force that has as industrial factor
industrial_capacity_of_US_1943 that generates essential
war materiel from the strategic perspective of the
Allied_Forces_1943 which is a multi-member force that
includes US_1943.
 2004, G.Tecuci, Learning Agents Center
Ontology matching: example
Question
Object ontology
Answer
?O1  US_1943
force
?O2  industrial_capacity_
of_US_1943
force
?O3  Allied_forces_1943
instance-of
subconcept-of
single_member_force
subconcept-of
single_state_force
?O1
industrial_capacity
instance-of
has_as_industrial_factor
instance-of
multi_state_force
has_as_member
instance-of
?O2
generates_essential_
war_materiel_from_ the_
strategic_perspective_of
?O3
Is there any force ?O1 that has as
industrial factor an industrial capacity
that generates essential war materiel
from the strategic perspective of a
multi-member force that includes ?O1?
 2004, G.Tecuci, Learning Agents Center
US_1943
industrial_capacity
has_as_industrial_factor
instance-of
Industrial_capacity_
multi_state_force
of_US_1943
subconcept-of
multi_state_
alliance
subconcept-of
generates_essential_
equal_partner_
war_materiel_from_ the_
multi_state_
strategic_perspective_of
alliance
has_as_member
instance-of
Allied_forces_1943
This slide illustrates how the previous question has been answered. The question is represented
by the ontology fragment from the left hand side of the slide. Answering the question is
equivalent with finding values for the variables from this ontology fragment. To find these
values, the agent maps this ontology fragment with the agent’s ontology, as illustrated bellow.
The agent attempts to match ?O1 with US_1943. For this, it has to check that US_1943 and ?O1
have the same features.
?O1 is a Force. US_1943 is a single state force, which is a single-member force, which is a
force. Therefore US_1943 is also a force.
?O1 has as industrial factor ?O2. US_1943 has as industrial factor
industrial_capacity_of_US_1943. Therefore ?O2 has to match
industrial_capacity_of_US_1943.
?O2 is an industrial capacity. Industrial_capacity_of_US_1943 is also an industrial capacity.
However, ?O2 also generates essential war materiel from the strategic perspective of ?O3.
Industrial_capacity_of_US_1943 generates essential war materiel from the strategic perspective
of the Allied_Forces_1943. Therefore ?O3 has to match Allied_Forces_1943.
?O3 is an instance of a multi-member force and has as member ?O1, which has previously
matched with US_1943. Allied_Forces_1943 is also multi-member force and has as member
US_1943.
Therefore, the question: Is there any force ?O1 that has as industrial factor an industrial
capacity that generates essential war materiel from the strategic perspective of a multi-member
force that includes ?O1?
Has the answer: Yes, US_1943 is a force that has as industrial factor
industrial_capacity_of_US_1943 that generates essential war materiel from the strategic
perspective of the Allied_Forces_1943 which is a multi-member force that includes US_1943.
 2004, G.Tecuci, Learning Agents Center
Sample task
A task is a representation of anything
that an agent may be asked to perform.
General task:
Identify and test a strategic COG candidate
corresponding to the ?O1
INFORMAL STRUCTURE OF THE TASK
Identify and test a strategic COG candidate
corresponding to the economy of a force
The economy is ?O1
Condition
?O1 is type_of_economy
FORMAL STRUCTURE OF THE TASK
Instantiated task:
Identify and test a strategic COG candidate
corresponding to the economy_of_US_1943
INFORMAL STRUCTURE OF THE TASK
 2004, G.Tecuci, Learning Agents Center
Identify and test a strategic COG candidate
corresponding to the economy of a force
The economy is economy_of_US_1943
FORMAL STRUCTURE OF THE TASK
Exercise
How could the agent generate plausible formalizations?
Identify and test a strategic COG
candidate for Sicily_1943
Identify and test a strategic COG candidate for a scenario
The scenario is Sicily_1943
What kind of scenario is
Sicily_1943?
Sicily_1943 is a war scenario
Identify and test a strategic COG
candidate for Sicily_1943 which is a
war scenario
 2004, G.Tecuci, Learning Agents Center
Identify and test a strategic COG candidate for a scenario
which is a war scenario
The scenario is Sicily_1943
A task is a representation of anything that an agent may be asked to perform.
The informal structure of a task is a phrase in free-form English with variables.
The formal structure of a task contains a task name and several task features.
The task name is an abstract English phrase with no variables.
The task features are also phrases, but they may contain variables, such as ?O1.
The formal structure of the task contains also a condition that restricts the values that
the variable can take. For example, in the case of the task from this slide, ?O1 has to
be an instance of the concept type_of_economy.
Replacing the variables with objects that satisfy the condition leads to the creation of
specific tasks, as illustrated at the bottom of this slide.
 2004, G.Tecuci, Learning Agents Center
Sample task reduction rule
A rule is an ontology-based representation
of an elementary problem solving process.
IF
Identify and test a strategic COG candidate
corresponding to the ?O1
IF
Identify and test a strategic COG candidate
corresponding to the economy of a force
The economy is ?O1
Question
What is the type of ?O1 ?
Answer
industrial_economy
Condition
?O1 is industrial_economy
THEN
Identify and test a strategic COG candidate
corresponding to the ?O1 which is an
industrial_economy
THEN
Identify and test a strategic COG candidate
corresponding to the economy of a force
which is an industrial economy
The industrial economy is ?O1
INFORMAL STRUCTURE OF THE RULE
 2004, G.Tecuci, Learning Agents Center
FORMAL STRUCTURE OF THE RULE
A rule is a representation of a generic problem-solving step. It has an informal
structure and a formal structure.
Let us look at the informal structure first. It should be read as follows:
IF I have to perform the task
Identify and test a strategic COG candidate corresponding to the ?O1
And the question “What is the type of ?O1 ?”
Has the answer “industrial_economy”
THEN I should
Identify and test a strategic COG candidate corresponding to the ?O1 which is an industrial_economy
Notice that the informal structure of the rule is very similar with the form we used to
illustrate problem solving through task reduction. This is because the agent uses the
informal structure to communicate with the user.
To reason, the agent uses an equivalent IF-THEN formal structure. This structure
indicates the condition under which the task from the IF part can be reduced to the
task from the THEN part. It should be read as follows:
IF I have to perform the task
Identify and test a strategic COG candidate corresponding to the economy of a force, where the
economy is ?O1
And the following condition is satisfied:
?O1 is an industrial economy
THEN I should
Identify and test a strategic COG candidate corresponding to the economy of a force which is an
industrial
economy,
where the industrial economy is ?O1
 2004, G.Tecuci,
Learning Agents
Center
Another task reduction rule
IF
Identify and test a strategic COG candidate
corresponding to the ?O1 which is an
industrial_economy
IF
Identify and test a strategic COG candidate
corresponding to the economy of a force
which is an industrial economy
The industrial economy is ?O1
Question
Who or what is a strategically critical
element with respect to the ?O1 ?
Answer
?O2 because it is an essential generator
of war_materiel for ?O3 from the strategic
perspective
Condition
?O1 is industrial_economy
THEN
Identify ?O2 as a COG candidate with
respect to the ?O1
?O4 is force
has_as_economy ?O1
has_as_industrial_factor ?O2
Test ?O2 which is a strategic COG candidate
with respect to the ?O1
THEN
Identify a strategically critical element as a
COG candidate with respect to an industrial
economy
The strategically critical element is ?O2
The industrial economy is ?O1
INFORMAL STRUCTURE OF THE RULE
FORMAL STRUCTURE OF THE RULE
 2004, G.Tecuci, Learning Agents Center
?O2 is industrial_capacity
generates_essential_war_materiel_from_
the_strategic_perspective_of ?O3
?O3 is multi_state_force
has_as_member ?O4
Test a strategically critical element which is a
strategic COG candidate with respect to an
industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
Let us consider the informal structure of this more complex rule. It should be read as follows:
IF I have to perform the task
Identify and test a strategic COG candidate corresponding to the ?O1 which is an industrial economy
And the question “Who or what is a strategically critical element with respect to the ?O1 ?”
Has the answer “?O2 because it is an essential generator of war materiel for ?O3 from the strategic
perspective”
THEN I should perform the following two tasks
Identify ?O2 as a COG candidate with respect to the ?O1
Test ?O2 which is a strategic COG candidate with respect to the ?O1
The formal structure should be read as follows:
IF I have to perform the task
Identify and test a strategic COG candidate corresponding to the economy of a force which is an
industrial economy, where the industrial economy is ?O1
And the following condition is satisfied:
?O1 is an industrial economy, and
?O2 is an industrial capacity that generates essential war materiel from the strategic perspective of
?O3, and
?O3 is a multi-state force that has ?O4 as one of its members, and
?O4 is a force that has as economy ?O1, and as industrial factor ?O2
THEN I should perform the following two tasks
Identify a strategically critical element as a COG candidate with respect to an industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
Test a strategically critical element which is a strategic COG candidate with respect to an industrial
economy
The strategically critical element is ?O2
The industrial economy is ?O1
Notice that the elements of the condition are concepts and relationships from the object ontology.
 2004, G.Tecuci, Learning Agents Center
The generality of the ontology and rules
Which are more general, the object descriptions from
the object ontology, or the rules?
 2004, G.Tecuci, Learning Agents Center
The generality of the ontology
An object ontology is characteristic to an entire
application domain, such as military or medicine.
In the military domain the object ontology will include
descriptions of military units and of military equipment.
These descriptions are most likely needed in almost any
specific military application.
Because building the object ontology is a very complex
task, it makes sense to reuse these descriptions when
developing a knowledge base for another military
application, rather than starting from scratch.
 2004, G.Tecuci, Learning Agents Center
The generality of the rules
The rules from the knowledge base are specific to a
particular application and even to a particular subject
matter expert.
Consider, for instance, the agents discussed before, the
agent that critiques courses of action with respect to the
principles of war, and the agent for center of gravity
analysis. While both agents need to reason with opposing
forces, their reasoning rules are very different, being
specific not only to their particular application (course of
action critiquing versus center of gravity analysis), but also
to the subject matter expertise whose knowledge they
encode.
 2004, G.Tecuci, Learning Agents Center
Overview
Knowledge-based agents
Knowledge base: Object ontology + Rules
Rule-based problem solving
Control of the problem solving process
 2004, G.Tecuci, Learning Agents Center
Illustration of rule-based task reduction
Identify and test a strategic COG candidate
corresponding to the economy of a force
The economy is economy_of_US_1943
?O1  economy_of_US_1943
Rule condition
industrial_economy
instance_of
?O1 = economy_US_1943
Object ontology
industrial_economy
instance_of
economy_US_1943
 2004, G.Tecuci, Learning Agents Center
IF
Identify and test a strategic COG candidate
corresponding to the economy of a force
The economy is ?O1
Condition
?O1 is industrial_economy
THEN
Identify and test a strategic COG candidate
corresponding to the economy of a force which is
an industrial economy
The industrial economy is ?O1
?O1  economy_of_US_1943
Identify and test a strategic COG candidate
corresponding to the economy of a force which is
an industrial economy
The industrial economy is economy_of_US_1943
Let us now see how the agent uses the rules in problem solving.
Let us suppose that the current problem solving task is:
Identify and test a strategic COG candidate corresponding to the economy of a force
The economy is economy_of_US_1943
The agent will look into its knowledge base for a rule that has this type of task in the
IF part. Such a rule is shown in the right hand side of the slide. As one can see, the IF
task becomes identical with the task to be performed if ?O1 is replaced with
economy_of_US_1943.
Next the agent has to check that the condition of the rule is satisfied for this value of
?O1. The left hand side of the slide shows the rule’s condition. This is satisfied
because the object ontology contains the information that economy_of_US_1943 is an
industrial economy.
Therefore the IF task can be reduced to the THEN task:
Identify and test a strategic COG candidate corresponding to the economy of a force which is
an industrial economy
The industrial economy is economy_of_US_1943
 2004, G.Tecuci, Learning Agents Center
Rule application
Identify and test a strategic COG candidate
corresponding to the economy_of_US_1943
?O1  economy_of_US_1943
IF
Identify and test a strategic COG candidate
corresponding to the ?O1
What is the type of economy_of_US_1943 ?
industrial_economy
Question
What is the type of ?O1 ?
Answer
industrial_economy
THEN
Identify and test a strategic COG candidate
corresponding to the ?O1 which is an
industrial_economy
Identify and test a strategic COG candidate
corresponding to the economy_of_US_1943
which is an industrial_economy
 2004, G.Tecuci, Learning Agents Center
?O1  economy_of_US_1943
As discussed before, there is also an informal structure of the rule, containing the
informal structure of the tasks, a question and an answer. The right hand side of this
slide shows the instantiation of the informal structure of the rule. This instantiation
produces the reduction from the left hand side of the slide.
Therefore, the agent can show the user the informal structure of the task reduction
steps, which are in English, and therefore easier to follow.
 2004, G.Tecuci, Learning Agents Center
Illustration of rule-based task reduction
Identify and test a strategic COG candidate corresponding
to the economy of a force which is an industrial economy
The industrial economy is economy_of_US_1943
?O1  economy_of_US_1943
Rule condition
industrial_economy
instance-of
force
economy_of_US_1943
instance-of
has_as_economy
?O4
has_as_industrial_factor
instance-of
has_as_member
instance-of
?O3
Condition
?O1 is industrial_economy
?O2
industrial_capacity
multi_state_force
IF
Identify and test a strategic COG candidate corresponding
to the economy of a force which is an industrial economy
The industrial economy is ?O1
?O2
generates_essential_
war_materiel_from_ the_
strategic_perspective_of
is industrial_capacity
generates_essential_war_materiel_from_
the_strategic_perspective_of ?O3
?O3 is multi_state_force
has_as_member ?O4
?O4 is force
has_as_economy ?O1
has_as_industrial_factor ?O2
THEN
Identify a strategically critical element as a COG candidate
with respect to an industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
Test a strategically critical element which is a strategic
COG candidate with respect to an industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
 2004, G.Tecuci, Learning Agents Center
Let us continue the illustration of the task reduction process.
The new problem solving task is:
Identify and test a strategic COG candidate corresponding to the economy of a force which is
an industrial economy
The industrial economy is economy_of_US_1943
The agent will look in its knowledge base for a rule that has this type of task in the IF
part. Such a rule is shown in the right hand side of the slide. As one can see, the IF
task becomes identical with the task to be performed if ?O1 is replaced with
economy_of_US_1943.
Next the agent has to check that the condition of the rule is satisfied for this value of
?O1.
The left hand side of the slide shows what conditions need to be satisfied by
economy_of_US_1943, ?O2, ?O3 and ?O4.
This condition is satisfied if there are instances of ?O2, ?O3 and ?O4 in the object
ontology that satisfy all the relationships specified in the left hand side of the slide.
 2004, G.Tecuci, Learning Agents Center
Matchings
Object ontology
Rule condition
force
industrial_economy
instance-of
single_member_force
economy_of_US_1943
subconcept-of
force
instance-of
?O4
instance-of
economy_of_US_1943
industrial_capacity
has_as_industrial_factor
instance-of
multi_state_force
instance-of
industrial_economy
single_state_force
has_as_economy
has_as_member
subconcept-of
?O2
generates_essential_
war_materiel_from_ the_
strategic_perspective_of
?O3
?O2  industrial_capacity_of_US_1943
instance-of
has_as_economy
US_1943
industrial_capacity
has_as_industrial_factor
instance-of
Industrial_capacity_
multi_state_force
of_US_1943
subconcept-of
multi_state_
alliance
subconcept-of
generates_essential_
equal_partner_
war_materiel_from_ the_
multi_state_
strategic_perspective_of
alliance
?O3  Allied_forces_1943
?O4  US_1943
has_as_member
instance-of
Allied_forces_1943
 2004, G.Tecuci, Learning Agents Center
The partially instantiated condition of the rule, shown in the left hand side of the slide, is matched
successfully with the object ontology fragment shown in the right hand side of the slide.
?O4 matches US_1943 because both have the same features and the corresponding values of these features
also match.
Both ?O4 and US_1943 are forces. Indeed, US_1943 is an instance of a single-state force, which is a
subconcept of a single-member force, which is a subconcept of a force. Therefore, using the transitivity rule
discussed above, US_1943 is a force.
Both ?O4 and US_1943 have the feature has_as_economy with the value economy_of_US_1943.
Finally, both ?O4 and US_1943 have the feature has_as_industrial_factor and the corresponding values are
?O2 and industrial_capacity_of_US_1943, respectively.
Now one has to show that ?O2 and industrial_capacity_of_US_1943 match.
?O2 is an industrial capacity, and industrial_capacity_of_US_1943 is an industrial capacity.
Both ?O2 and industrial_capacity_of_US_1943 have the feature
generates_essential_war_materiel_from_the_strategic_perspective_of, with the values ?O3 and
Allied_forces_1943, respectively.
Therefore one has to show that ?O3 and Allied_forces_1943 match.
?O3 is a multi_state_force. Allied_forces_1943 is an equal_partner_multi_state_alliance, which is a
multi_state_alliance, which is a multi_state_force. Therefore Allied_forces_1943 is also a
multi_state_force.
Finally, both ?O3 and Allied_forces_1943 have the feature has_as_member with the values ?O4 and
US_1943, respectively. Moreover, ?O4 and US_1943 have already matched.
Therefore the entire matching was successful.
As the result of these matching, the rule’s variables are instantiated as follows:
?O2  industrial_capacity_of_US_1943
?O3  Allied_forces_1943
?O4  US_1943
 2004, G.Tecuci, Learning Agents Center
Identify and test a strategic COG candidate corresponding
to the economy of a force which is an industrial economy
The industrial economy is economy_of_US_1943
Rule condition
industrial_economy
instance-of
force
economy_of_US_1943
instance-of
has_as_economy
?O4
industrial_capacity
has_as_industrial_factor
instance-of
multi_state_force
has_as_member
instance-of
?O2
generates_essential_
war_materiel_from_ the_
strategic_perspective_of
?O1  economy_of_US_1943
IF
Identify and test a strategic COG candidate corresponding
to the economy of a force which is an industrial economy
The industrial economy is ?O1
Condition
?O1 is industrial_economy
?O2
is industrial_capacity
generates_essential_war_materiel_from_
the_strategic_perspective_of ?O3
?O3 is multi_state_force
has_as_member ?O4
?O4 is force
has_as_economy ?O1
has_as_industrial_factor ?O2
THEN
Identify a strategically critical element as a COG candidate
with respect to an industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
?O3
Test a strategically critical element which is a strategic
COG candidate with respect to an industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
Identify a strategically critical element as a COG candidate with respect
to an industrial economy
?O1  economy_of_US_1943
The strategically critical element is industrial_capacity_of_US_1943
The industrial economy is economy_of_US_1943
?O2  industrial_capacity_of_US_1943
Test a strategically critical element which is a strategic COG candidate
with respect to an industrial economy
The strategically critical element is industrial_capacity_of_US_1943
The industrial economy is economy_of_US_1943
 2004, G.Tecuci, Learning Agents Center
?O3  Allied_forces_1943
?O4  US_1943
The rule’s condition is satisfied for the following instantiations of the variables:
?O1  economy_of_US_1943
?O2  industrial_capacity_of_US_1943
?O3  Allied_forces_1943
?O4  US_1943
Therefore the IF task can be reduced to the following THEN tasks:
Identify a strategically critical element as a COG candidate with respect to an industrial
economy
The strategically critical element is industrial_capacity_of_US_1943
The industrial economy is economy_of_US_1943
Test a strategically critical element which is a strategic COG candidate with respect to an
industrial economy
The strategically critical element is industrial_capacity_of_US_1943
The industrial economy is economy_of_US_1943
Disciple uses the informal structure of this rule to generate the sentences to be shown
to the user, as illustrated in the next slide.
 2004, G.Tecuci, Learning Agents Center
Generating the informal reduction
Identify and test a strategic COG candidate
corresponding to the economy_of_US_1943
which is an industrial_economy
?O1  economy_of_US_1943
IF
Identify and test a strategic COG candidate
corresponding to the ?O1 which is an
industrial_economy
Who or what is a strategically critical
element with respect to the
economy_of_US_1943?
industrial_capacity_of_US_1943
because it is an essential generator
of war materiel for Allied_forces_1943
from the strategic perspective
Identify industrial_capacity_of_US_1943 as a
COG candidate with respect to the
economy_of_US_1943
Test industrial_capacity_of_US_1943 which
is a strategic COG candidate with respect to
the economy_of_US_1943
 2004, G.Tecuci, Learning Agents Center
Question
Who or what is a strategically critical
element with respect to the ?O1 ?
Answer
?O2 because it is an essential generator of
war_materiel for ?O3 from the strategic
perspective
THEN
Identify ?O2 as a COG candidate with
respect to the ?O1
Test ?O2 which is a strategic COG candidate
with respect to the ?O1
?O1  economy_of_US_1943
?O2  industrial_capacity_of_US_1943
?O3  Allied_forces_1943
?O4  US_1943
Successive rule applications
Identify and test a strategic COG candidate
corresponding to the economy_of_US_1943
Rule_1
What is the type of economy_of_US_1943 ?
industrial_economy
Rule_2
Identify and test a strategic COG candidate
corresponding to the economy_of_US_1943
which is an industrial_economy
Who or what is a strategically critical
element with respect to the
economy_of_US_1943?
industrial_capacity_of_US_1943
because it is an essential generator
of war materiel for Allied_forces_1943
from the strategic perspective
Identify industrial_capacity_of_US_1943 as a
COG candidate with respect to the
economy_of_US_1943
 2004, G.Tecuci, Learning Agents Center
Test industrial_capacity_of_US_1943 which
is a strategic COG candidate with respect to
the economy_of_US_1943
Task reduction rule with “Except when” conditions
IF
<task>
Condition
<condition 1>
Except when condition
<condition 2>
Except when condition
<condition n>
THEN
<subtask 1>
…
<subtask m>
 2004, G.Tecuci, Learning Agents Center
In addition to the regular
rule condition that needs to
be satisfied, a rule may
contain one or several
except when conditions that
should not be satisfied for
the rule to be applicable.
Plausible
version
space
rule
 2004, G.Tecuci, Learning Agents Center
IF
Identify and test a strategic COG candidate corresponding to the economy of a
force which is an industrial economy
The industrial economy is ?O1
Plausible upper bound condition
?O1 is type_of_economy
?O2 is economic_factor
generates_essential_war_materiel_from_the_strategic_perspective_of ?O3
?O3 is multi_state_force
has_as_member ?O4
?O4 is force
has_as_economy ?O1
has_as_industrial_factor ?O2
Plausible lower bound condition
?O1 is industrial_economy
?O2 is industrial_capacity
generates_essential_war_materiel_from_the_strategic_perspective_of ?O3
?O3 is multi_state_alliance
has_as_member ?O4
?O4 is single_state_force
has_as_economy ?O1
has_as_industrial_factor ?O2
THEN
Identify a strategically critical element as a COG candidate with respect to an
industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
Test a strategically critical element which is a strategic COG candidate with
respect to an industrial economy
The strategically critical element is ?O2
The industrial economy is ?O1
A rule may be partially learned. In this case it will have two applicability conditions, a
plausible upper bound condition that is likely to be more general than the exact
condition, and a plausible lower bound condition, that is likely to be less general than
the exact condition.
The plausible upper bound condition allows the rule to be applicable in many
analogous situations, but the result may not be correct.
The plausible lower bound condition allows the rule to be applicable fewer situations
but the result is very likely to be correct.
The agent will apply this rule to solve new problems and its success or failure will be
used to further refine the rule. In essence, the two conditions will converge toward one
another (usually through the specialization of the plausible upper bound condition and
the generalization of the plausible lower bound condition), both approaching the exact
applicability condition of the rule.
Rule refinement could lead to a complex task reduction rule, with additional ExceptWhen conditions which should not be satisfied in order for the rule to be applicable.
 2004, G.Tecuci, Learning Agents Center
Overview
Knowledge-based agents
Knowledge base: Object ontology + Rules
Rule-based problem solving
Control of the problem solving process
 2004, G.Tecuci, Learning Agents Center
Overview
Knowledge-based agents
An agent for center of gravity determination
Problem solving through task reduction
Knowledge base: Object ontology + Rules
Rule-based problem solving
Control of the problem solving process
Tools for representation and reasoning
 2004, G.Tecuci, Learning Agents Center
The search space for problem solving
Let us consider the problem solving task 'Pa‘ and let R1, R2, and R3 be
the applicable rules which indicate the reduction of 'Pa' to ‘C(Pb,Pc)', to
'Pd', and to ‘C(Pe,Pf,Pg)', respectively. Therefore, to solve the problem
'Pa', one may either:
- solve the problems 'Pb' and 'Pc', or
- solve the problem 'Pd', or
- solve the problems 'Pe', 'Pf' and 'Pg'.
One may represent all these alternatives in the form of an AND/OR tree.
Pa
R1
R2
C(Pb,Pc)
Pb
 2004, G.Tecuci, Learning Agents Center
R3
Pd
Pc
C(Pe,Pf,Pg)
Pe
Pf
Pg
The search space for problem solving (cont.)
The node 'Pa' is called an OR node since for solving the problem 'Pa' it is
enough to solve ‘C(Pb, Pc)' OR to solve 'Pd' OR to solve ‘C(Pe, Pf, Pg)'.
The node ‘C(Pb, Pc)' is called an AND node since for solving it one must
solve both 'Pb' AND 'Pc'.
Pa
R1
R2
C(Pb,Pc)
Pb
R3
Pd
Pc
C(Pe,Pf,Pg)
Pe
Pf
Pg
The AND/OR tree may be further developed by considering all the rules
applicable to its leaves (Pb, Pc, Pd, Pe, Pf, Pg), building the entire search
space for the problem 'Pa'. This space contains all the solutions to 'Pa'.
 2004, G.Tecuci, Learning Agents Center
Solution tree
To find a solution one needs only to build enough of the tree to
demonstrate that 'Pa' is solved. Such a tree is called a solution tree.
A node is solved in one of the following cases:
- it is a terminal node (a primitive task with known solution);
- it is an AND node whose successors are solved;
- it is an OR node which has at least one solved successor.
Pa
R1
R2
C(Pb,Pc)
Pb
 2004, G.Tecuci, Learning Agents Center
R3
Pd
Pc
C(Pe,Pf,Pg)
Pe
Pf
Pg
Solution tree (cont.)
Once the problem solver detects that a node is solved it sends this
information to the ancestors of the node. When the node 'Pa' becomes
solved, one has found a solution to 'Pa'.
Pa solved
R1
R2
C(Pb,Pc)
Pb
 2004, G.Tecuci, Learning Agents Center
R3
C(Pe,Pf,Pg) solved
Pd
Pc
Pe
Pf
Pg
solved
solved
solved
Solution tree (cont.)
A node is unsolvable in one of the following cases:
- it is a nonterminal node that has no successors
(i.e. a nonprimitive problem to which no rule applies);
- it is an AND node which has at least one unsolvable successor;
- it is an OR node which has all the successors unsolvable.
Pa
R1
R2
C(Pb,Pc)
Pb
 2004, G.Tecuci, Learning Agents Center
R3
Pd
Pc
C(Pe,Pf,Pg)
Pe
Pf
Pg
Solution tree (cont.)
Once the problem solver detects that a node is unsolvable it sends this
information to the ancestors of the node. If the node 'Pa' becomes
unsolvable, then no solution to 'Pa' exists.
Pa
unsolvable C(Pb,Pc)
C(Pe,Pf,Pg)
Pd
Pb
Pc
solved
unsolvable
 2004, G.Tecuci, Learning Agents Center
R3
R2
R1
Pe
Pf
Pg
General search strategies
The presented method assumes an exhaustive search of the solution space.
Usually, however, the real world problems are characterized by huge search
spaces and one has to use heuristic methods in order to limit the search.
What types of search control decisions can you identify?
Attention focusing: What problem, among the leaves of the problem solving
tree, to reduce next?
Meta-rule: What rule, among the applicable ones, to use for reducing the current
problem?
 2004, G.Tecuci, Learning Agents Center
General search strategies
Attention focusing: What problem, among the leaves of the problem solving
tree, to reduce next?
One may use one of the following search strategies:
- breadth first search;
- depth first search;
- heuristic search (the heuristics establish the next problem to solve);
- user directed search (the user establishes the next problem to solve),
- etc.
What could be a heuristic for attention focusing?
 2004, G.Tecuci, Learning Agents Center
General search strategies
Meta-rule: What rule, among the applicable ones, to use for reducing the current
problem?
The idea is to choose the rules that lead to solutions that optimize certain criteria.
Could you provide some examples of meta-rules?
 2004, G.Tecuci, Learning Agents Center
Search strategies in Disciple
Automatic problem solver:
Depth first generation of all the solutions.
Pa
1
R1
C(Pb,Pc)
R2
4
R3
Pd
C(Pe,Pf,Pg)
2
Pb
3
Pc
Pe
Pf
Pg
Step by step problem solving:
User-controlled generation of the solutions.
 2004, G.Tecuci, Learning Agents Center
One tries first to
find solutions using
the rule R1. Only
after exploring all
the possible
solutions using R1
will the agent
attempt to find
solutions using the
rule R2, a.s.o.
General features of the hybrid representation
Representational adequacy:
high
Inferential adequacy:
high
Inferential efficiency:
medium
Acquisitional efficiency:
 2004, G.Tecuci, Learning Agents Center
medium