The EA Manager continuously responds to new goals and facts posted in its database. The Watchman agent is asynchronously posting facts to the EA Manager database as it receives messages from SAIM. Facts so posted include confirmations of mission starts and completions (from subordinate EAs), orders for aborting the current plan or executing a new plan (from a superior EA), sensor tracks, calls for fire, and location reports (from the SAIM network).
The methods in the mission model post facts to the EA Manager to invoke mission-specific monitoring. Examples of such fact-invoked capabilities provided by the EA Manager include monitoring several types of time constraints and monitoring a specified location for activity (with options for friendly or enemy, and expected or unexpected).
The behavior of the EA Manager is determined by the posted goals and facts, their relative timing, and the set of Acts used to respond. The EA Manager switches its focus to the highest-priority task on each execution cycle so that all goals and facts generate responses with acceptable latency . Execution cycles are on the order of milliseconds. System behavior is nondeterministic because it depends on exactly which facts and goals are posted during each execution cycle, which may in turn depend on the CPU scheduling of the EA Manager, Watchman, and SAIM processes. The number of alerts rarely varies -- what does vary is the exact times of alerts (which can vary by a few seconds), and the hostile strengths reported (which can change if the Watchman agent gets more or fewer CPU cycles to accumulate tracks before the EA Manager executes).
The EA Manager must constantly monitor the status and behavior of currently executing missions, while simultaneously monitoring up to a dozen incoming facts per second and determining their impact on the plan. While monitoring a plan, it typically has on the order of 100 intentions it is trying to accomplish at any one time, and has 107 Acts (Procedures) to apply to its intentions. Most intentions can cause an alert to be generated. Each unprocessed report and track forms an intention. Typically, five subordinate missions are executing simultaneously. Each produces multiple intentions: at least one for detecting the start and end of each mission, and a few for each time and location constraint (every mission has at least a start time and an end time constraint). For example, for each time constraint, the EA Manager has intentions that monitor if the specified time has elapsed and if the required event has occurred.
The plan-based monitoring of the EA can be viewed as asynchronously and simultaneously interleaving the following activities. We describe these in more detail below and mention the most important design tradeoffs.