A simulation substrate for real-time planning TITLE2:

  • Authors:
  • S. D. Anderson

  • Affiliations:
  • -

  • Venue:
  • A simulation substrate for real-time planning TITLE2:
  • Year:
  • 1995

Quantified Score

Hi-index 0.00

Visualization

Abstract

Real-time planning is, generally speaking, problem-solving under time-pressure. In order to test and evaluate real-time planners, scientists need to have environments that pose problems to be solved. This dissertation describes a substrate, called MESS, for building environments and real-time planners. MESS relies on a second system, TCL, to replace CPU time as a way to measure the amount of thinking done by a real-time agent. The key issue with real-time planning simulators is that some of the simulation processes represent real-world events and other processes represent \emph{thinking} or \emph{planning} that occurs while the real-world events do. Therefore, there needs to be a correspondence between real-world events and thinking processes. Most current simulators make the correspondence by measuring the CPU time of the thinking process, which means that every bit of thinking is ``on the clock,'''' but which also results in measurement error and portability troubles. MESS incorporates TCL, a programming language for agents. TCL is very nearly Common Lisp, augmented by functions for interacting with the rest of the simulation. The thinking time for each primitive in TCL is determined by a platform-independent function. Thus, an agent''s every thought is on the clock but in a platform-independent way. The functions representing thinking time are stored in a database that is inspectable by the agent, so that the agent can be aware of its own thinking time and can use that time for planning. The functions can model the duration of the agent''s thinking at either the fine-grained level of Common Lisp primitives or at higher levels of abstraction, in which the duration model of a primitive is independent of the implementation of the primitive. The fine-grained representation is important for researchers interested in the timing properties of particular algorithms, while the abstract representation is important for those modeling other implementations of the algorithms (such as parallel hardware), those modeling different kinds of systems (such as cognitive scientists modeling brain function), or those modeling more global properties, such as the interaction of the durations of various activities.