Information Technology Reference
In-Depth Information
els to the TMKL2 Interpreter (shown in the center of the figure) for execution in
the game world, monitor the behavior of the agent in the simulation, and inspect
the agent's knowledge at each stage of the simulation. In-memory representation of
TMK agent models takes the form of Java objects that are interpreted by the TMKL2
Interpreter. Also part of the GAIA architecture is the Model Manager (shown in
center right of the figure) that is responsible for encapsulating access to agent mod-
els and persisting them to permanent storage. Given that the task of designing a
game-playing agent entails experimentation, the human designer is likely to have
many model versions existing at any point in time. The Model Manager Models
saving models for later access. REM, illustrated at the top center of Fig. 17.3 ,isthe
reasoning module responsible for automatic adaptation of TMK models based on
the results of a simulation. REM, besides having its own inferencing capabilities is
designed to allow use of external reasoners, such as planners and situated learners.
Finally, the Runtime Communications Manager, depicted at the bottom of Fig. 17.3 ,
interacts with the Freeciv client and server to carry out the simulation in the Freeciv
game world.
17.4.2 SAGi
SAGi provides the human designer with a palette of icons representing TMK model
elements of different types. The designer can construct agent models of the kind
illustrated in Fig. 17.2 by dragging and dropping the icons. SAGi provides a property
panel for each specific kind of element to set values of the element's attributes. SAGi
also provides the means by which model interpretation and execution is initiated,
paused, and stopped.
17.4.3 TMKL2 Interpreter and Interface to the Game World
The designer can invoke GAIA's TMKL2 interpreter to execute an agent model and
thereby interact with the Freeciv server. The interpreter walks the TMK tree of state
machines in an iterative fashion until the agent either succeeds or fails to achieve
its top-level Goals. When the interpreter attempts to accomplish a subGoal whose
Mechanism is an Operation, it must place into the Operation Request Queue a request
to the Freeciv server to execute a game action, encoding parameters as necessary.
The Operation must have been previously (and, at present, manually) mapped by the
designer to a Freeciv action.
Search WWH ::




Custom Search