PRS-CL is a framework for constructing persistent, real-time controllers that perform complex tasks in dynamic environments while responding in timely fashion to unexpected events. PRS-CL has proven useful in developing several demanding applications that required integration of reactive and goal-oriented behavior, including real-time tracking , a monitoring and control system for the Reaction Control System of the NASA Space Shuttle , and a control system for naval battle management aboard a Grumman E-2C .
Individual instantiations of a PRS-CL system are referred to as PRS application agents. A PRS application agent consists of a database containing current beliefs or facts about the world; a set of current goals; a set of procedures describing how sequences of actions and tests may be performed to achieve certain goals or to react to particular situations; and intentions that keep track of the current procedures being executed by the agent.
A PRS agent interacts with its environment through its database (which acquires new beliefs in response to changes in the environment) and through the actions that it performs as it carries out its intentions. While the system is running, it constantly monitors incoming information and goals. Activity is is triggered in response to the adoption of an explicit goal or to some change in the world. This combination of goal- and data-driven activity yields a flexible, adaptive plan execution framework. In particular, any intention can be interrupted and reconsidered in the light of new information about the world. The monitoring method used guarantees that any new fact or goal is noticed in a bounded time, thus providing rapid response to new events.
Multiple PRS agents can be active simultaneously. Each PRS agent has its own local goals, intentions and database and runs asynchronously in the overall framework. A message-passing facility enables communication among agents and supports parallel, distributed problem-solving.
PRS-CL has the properties necessary for the executor component of taskable reactive agents: it is reactive, integrates goal-driven and event-driven activities uniformly, and has proven effective in numerous applications. The ability to define multiple PRS agents supports the simultaneous use of multiple instantiations of our abstract agent model.