Jump to the Homer Overview page.
Jump to the Architectural Details Menu page.
Jump to the Home page.
Architectural Details
Five main components perform the work of interpreting and executing user
commands in Homer. In doing so, they make use two repositories of information;
the memory and the dynamic plan. The roles of these five components
are outlined below.
-
The TEXT INTERPRETER parses natural language input.
It converts a sentence into a representation -- an
inform event usable
by the reflective processes component.
If the sentence is a command, the inform event indicates that Homer has a goal
to achieve. If the sentence is a question, it is treated as a command with the
goal of answering the question. The interpreter then feeds this information
into the episodic memory.
-
The REFLECTIVE PROCESSES access the episodic memory to find commands.
Two demons operating in the reflective processes pass goals on to the
planner. One demon handles general commands. The other handles questions.
-
The PLANNER operates in two distinct modes.
One mode is used for general commands. When operating in this mode
the planner first generates a sequence of actions to achieve the goal
using its knowledege of
the world in memory then stores this information in the dynamic plan.
The other mode is inference mode. It is used for questions.
In this mode Homer only draws inferences
to reach its goal which is just the answer to the question being asked.
-
The PLAN INTERPRETER carries out the steps of the plan.
The interpreter insures that plans are executed in the proper sequence
and at the proper time.
-
The TEXT GENERATOR is responsible for both informing
the user of Homer's actions and providing immediate responses to statements.
The generator gives immediate feedback to let the user know that Homer
has acknowledged a command or statement of fact. The generator also
gives Homer's answers to user questions. In performing its tasks the text
generator accesses the dynamic plan and takes input from the reflective
processes.
For more detailed decriptions of the components follow the links below: