17.12.2012 Views

Pythagoras: A New Agent-based Simulation System - Northrop ...

Pythagoras: A New Agent-based Simulation System - Northrop ...

Pythagoras: A New Agent-based Simulation System - Northrop ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

Edmund J. Bitinas, Zoe A. Henscheid, and Lap V. Truong<br />

<strong>Northrop</strong> Grumman Mission <strong>System</strong>s, Information and Technical Services Division<br />

<strong>Pythagoras</strong> is a new agent-<strong>based</strong> simulation (“distillation”) originally<br />

developed by <strong>Northrop</strong> Grumman to support Project Albert, a U.S. Marine<br />

Corps–sponsored international initiative focusing on human factors in<br />

military combat and noncombat situations. <strong>Pythagoras</strong> introduces new<br />

capabilities to modeling and simulation, such as soft decision rules,<br />

dynamic sidedness, behavior-change triggers, and nonlethal weapons. Soft<br />

decision rules create instances of agents from the same agent class whose<br />

behaviors can be unique to the agent. Dynamic sidedness allows agents to<br />

change sides as a function of events and actions. Behavior-change triggers<br />

allow agents to change their behavior as a function of events or actions.<br />

Nonlethal weapons not only cause suppression, they may also change the<br />

sidedness (affiliation) of an agent. <strong>Pythagoras</strong> scenarios include a cavesearch<br />

scenario in which U.S. Marines look for an elusive agent. In a<br />

peacekeeping scenario, the Marines use short-range nonlethal weapons<br />

(such as leaflets or food) to sway the affiliation of villagers, while an enemy<br />

is broadcasting anti-Marine propaganda with an indirect-fire nonlethal<br />

weapon (a bullhorn). <strong>Pythagoras</strong> is written in Java, runs on a PC, and is<br />

hosted at the Maui High Performance Computing Center, where it is available<br />

for data farming—executing large numbers of repetitions of parametric<br />

runs to identify areas of unexpected behaviors and nonlinear results in a<br />

coevolving landscape.<br />

Introduction<br />

Traditional combat modeling and simulation have concentrated on the physical aspects<br />

of combat. Rates of movement, rates of fire, lethality, the effect of weather, terrain,<br />

etc., are all phenomena that are measurable to some degree and lend themselves to<br />

mathematical representations. However, as Figure 1 shows, the combat environment<br />

involves not only the physical world, but also human factors (features that motivate<br />

soldiers or deter them from engaging in combat) and leadership (the ability to inspire,<br />

integrate, and employ soldiers and weapons to attain an objective). The three components<br />

are tightly coupled. For example, weapons work best when used by well-trained<br />

troops who are directed by enlightened leaders.<br />

Six years ago, the U.S. Congress authorized an applied research project to evaluate<br />

nontraditional combat simulation techniques potentially useful for addressing three<br />

areas that were largely omitted in existing combat simulations:<br />

• Nonlinearity: Small changes in input can have disproportionate effects on outcomes.<br />

• Intangibles: Human factors, leadership, and other intangibles can change outcomes.<br />

• Coevolving landscape: Adversaries continually anticipate one another’s actions,<br />

and base their decisions on that anticipation.<br />

Technology Review Journal • Spring/Summer 2003 45


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

Figure 1. Combat environment: Physical elements, human factors, and leadership are<br />

tightly coupled<br />

With those three research objectives in mind, Project Albert was conceived. Initially<br />

led by the U.S. Marine Corps Combat Development Command (MCCDC) at Quantico,<br />

Virginia, the project is currently headed by the Marine Corps Warfighting Laboratory,<br />

also at Quantico. It quickly expanded into an international effort involving eight other<br />

countries. The approach was to proceed in parallel along three different but related<br />

paths. First, Project Albert would harness the power of supercomputing technology to<br />

enable massive experimentation and analysis on a scale then rarely, if ever, attempted.<br />

Second, the consortium would develop a set of visualization tools to assist in the<br />

analysis of the experiments. Third, Project Albert commissioned the development of<br />

new agent-<strong>based</strong> simulations (called distillations) that did not start with the traditional<br />

physical foundations, but instead concentrated on the exploration of human factors and<br />

leadership in the combat environment. For a description of Project Albert, see the Web<br />

page [1].<br />

Overview of <strong>Pythagoras</strong> Distillation<br />

<strong>Northrop</strong> Grumman was tasked to build a new distillation that used agent-<strong>based</strong> technology<br />

in diverse, innovative ways to model human behavior and its effect on combat and<br />

noncombat situations. Three design criteria were specified for the new distillation:<br />

• It must be easy enough to use that a military officer with a nontechnical degree<br />

could learn it in no more than eight hours.<br />

• It must incorporate fuzzy logic in some way.<br />

• It must be data farmable (i.e., able to run in batch mode on a parallel-processor<br />

supercomputer—specifically, at the Maui High Performance Computing Center in<br />

Maui, Hawaii).<br />

The resulting prototype distillation, christened <strong>Pythagoras</strong>, enables a user to create<br />

various intelligent agents and assign them behaviors <strong>based</strong> on motivators and detractors.<br />

46<br />

Weapons<br />

Sensors<br />

Platforms<br />

Ammunition<br />

Terrain<br />

Weather<br />

• Decision Making<br />

Intelligence<br />

Communication<br />

Inspiration<br />

Physical<br />

Elements<br />

Leadership<br />

Human<br />

Factors<br />

Technology Review Journal • Spring/Summer 2003<br />

Morale<br />

Training<br />

Confidence<br />

Fatigue<br />

Fear<br />

Comradeship


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

The agents can either act as individuals or be loosely or tightly controlled by one or<br />

more leader agents. <strong>Pythagoras</strong> is written in Java, making it platform-independent. It<br />

can be run in a supercomputer environment as a batch job, enabling tens of thousands of<br />

repetitions to be run in a short time; or it can be used and run interactively on a PC<br />

through a graphical user interface (GUI).<br />

<strong>Pythagoras</strong> offers a unique set of capabilities in the area of agent-<strong>based</strong> simulations:<br />

• Incorporates soft rules to distinguish unique agents<br />

• Uses desires to motivate agents into moving and shooting<br />

• Includes the concept of affiliation (established by sidedness, or color value) to<br />

differentiate agents into members of a unit, friendly agents, neutrals, or enemies<br />

• Allows for behavior-changing events and actions (called triggers) that may be<br />

invoked in response to simulation activities<br />

• Retains traditional weapons, sensors, and terrain<br />

Each capability is discussed below.<br />

Soft Rules to Create Individuality<br />

Each person has a unique interpretation of language. History offers countless examples<br />

of military orders whose intent was misinterpreted, leading to unexpected and sometimes<br />

disastrous consequences. In a military context, an order may be given as “Hold<br />

fire until the enemy gets close.” To a fighter pilot, close may be six miles, but an<br />

embassy security guard may interpret the same order to mean six feet. And even if<br />

several people agree on a distance—say, 400 feet—some will evaluate that distance a<br />

little long and be seen as trigger-happy, whereas others will evaluate it a little short and<br />

be seen as overcautious.<br />

Fuzzy logic attempts to capture the complex, dynamic nature of the world and the human<br />

interpretation of that world, while creating a mathematical underpinning that will allow a<br />

“crisp”-thinking digital computer to represent and act on it. However, for analysis, we<br />

determined that a strict interpretation and implementation of fuzzy logic might cloud the<br />

interpretation of the results of our <strong>Pythagoras</strong> experiments. Instead, we designed a<br />

feature for <strong>Pythagoras</strong> called soft decision rules, which not only assigns each agent its<br />

own threshold within the fuzzy-logic trade space but also ensures traceability. It avoids<br />

the “everything is gray” phenomenon that sometimes occurs in direct implementations<br />

of fuzzy logic.<br />

<strong>Pythagoras</strong> allows all decision variables and some human factors to be softened by the<br />

user. The approach is to reflect variation between individual agents by establishing a<br />

midpoint for the variable in question and then allowing the user to provide a uniformly<br />

distributed range around that value. When an agent is instantiated at the beginning of a<br />

scenario run, it selects its decision-variable values from the distribution at random. By<br />

controlling the spread, agents can be instantiated as very homogeneous (e.g., welltrained,<br />

disciplined military troops) or quite heterogeneous (e.g., a crowd of villagers),<br />

or some value in between. Each decision variable has its own control, so some aspects<br />

of behavior can be tight, others loose. Figure 2 illustrates three alternative degrees of<br />

individuality.<br />

Technology Review Journal • Spring/Summer 2003 47


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

Figure 2. Three alternative degrees of individuality<br />

In each of the three cases illustrated in Figure 2, the midpoint for the behavior variable<br />

is 5. That value might, for example, represent the minimum number of enemies from<br />

which an agent would retreat. The red uniform distribution represents a firm, homogeneous<br />

behavior variable, for which the range is ±1 around the midpoint of 5. The green<br />

uniform distribution depicts a softer behavior variable, for which the range is ±2 around<br />

the midpoint, indicating that the value of the behavior variable could lie in the range of 3<br />

to 7. The loosest of the three definitions for the behavior variable is described by the<br />

blue uniform distribution. In that case, the range is ±4 around the midpoint, and values<br />

for the behavior variable could range from a low of 1 to a high of 9. Individual behavior<br />

drawn from such a loose distribution would be quite heterogeneous.<br />

<strong>Agent</strong> Desires to Move<br />

In <strong>Pythagoras</strong>, agents can be assigned movement desires, from the possible selections<br />

listed in Table 1, to determine their movement paths as a scenario unfolds. During each<br />

decision cycle, an agent establishes which desires are active (e.g., too far from a leader),<br />

and, if the sum of the desires to move exceeds a user-determined threshold, the agent<br />

then uses the strengths of the desires to determine a direction of movement. If multiple<br />

desires are active, they can be adjudicated at the user’s discretion by one of four<br />

alternative methods:<br />

• Through vector algebra, using direction weighted by desire<br />

• By priority (i.e., the strongest desire)<br />

• At random, with the relative weight of each desire determining its probability of<br />

selection<br />

• By applying vector algebra for only the two strongest desires<br />

Although the list of existing desires is small, it can be used to represent a variety of<br />

behaviors.<br />

48<br />

Probability<br />

0.6<br />

0.5<br />

0.4<br />

0.3<br />

0.2<br />

0.1<br />

0<br />

0<br />

2<br />

4 6<br />

Decision Threshold<br />

Common decision threshold = 5<br />

Firm/low individuality range ±1 around the threshold<br />

Soft/medium individuality range ±2 around the threshold<br />

Loose/high individuality range ±4 around the threshold<br />

Technology Review Journal • Spring/Summer 2003<br />

8<br />

10<br />

Firm<br />

Soft<br />

Loose


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

Table 1. Decision variables (desires) used to establish agent movement directions<br />

Toward (if d> ) or away from (if d< ) closest leader<br />

Toward (if d> ) or away from (if d< ) closest unit member<br />

Toward farthest unit member (if d> )<br />

Toward next way point (if d> )<br />

Toward (if d> ) or away from (if d< ) nearest enemy<br />

Toward small number of enemy (if number of enemy within deand e><br />

Toward objective<br />

At random<br />

Continue in same direction<br />

Stay in place<br />

)<br />

Avoid bad terrain (if mobility < or detection > or defense < )<br />

Prefer good terrain (if azimuth, mobility > and detection < and defense > )<br />

d = Distance<br />

= Specified value (different for different variables)<br />

e = Enemy count<br />

Once the agent chooses a direction of movement <strong>based</strong> on the active desires, the agent<br />

reviews the terrain suitability of the selected path. If the terrain is unsuitable because of<br />

movement, concealment, and/or protection considerations, the agent first looks to the<br />

right and left of the desired path until suitable terrain is identified. The agent then<br />

searches farther to the right and left to see if an additional shift of direction will put the<br />

agent on preferred terrain. For example, the desired path may put the agent in a swamp,<br />

so the agent will look right and left until a path on grass is found. Then the agent may<br />

search a few more degrees (the range is user controlled) to see whether a road is<br />

available in roughly the desired direction.<br />

Dynamic Sidedness for Two-Dimensional Affiliation<br />

In <strong>Pythagoras</strong>, each agent may be assigned a value for each of the three color<br />

properties—red, green, and blue—that can be used to establish affiliation among the<br />

agents. One, two, or all three of the properties can be used to establish an affiliation, and<br />

different agents can use different sets of properties for that purpose. <strong>Pythagoras</strong> uses<br />

the terms greenness, blueness, and redness to make the properties generic (and allow<br />

for visual display of the property in the scenario playback tool). Each of the three<br />

properties can take a value from 0 to 255 (which corresponds to standard color-monitor<br />

gun settings used by Java to control image colors). Figure 3 shows an example of both<br />

blue and green being used to establish affiliation.<br />

<strong>Agent</strong>s with similar color (as measured by either the difference in absolute value or the<br />

root sum square of the differences of the active colors) are considered to be members<br />

of the same unit. Those whose color is close are considered to be friends. Those whose<br />

colors are far apart are considered to be enemies. Colors between those of enemy and<br />

friendly agents represent neutrals. That approach allows for multiple affiliations within a<br />

single scenario, as might be found in a crowd; or it can be used to establish command<br />

hierarchies, as would be found in a military organization (e.g., slightly different blue<br />

uniforms could represent different companies).<br />

Technology Review Journal • Spring/Summer 2003 49


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

Blueness<br />

0<br />

0<br />

255<br />

Greenness<br />

Figure 3� Two-color sidedness used to establish two-dimensional affiliation<br />

Sidedness, or color value, is governed by soft rules at the start of the simulation (agents<br />

can be initiated with more or less redness, for example) and can be changed over the<br />

course of the simulation by various events and actions, such as those listed in Table 2�<br />

Because not all colors are required to establish affiliation, one or two colors could be<br />

used to represent a different property—for example, fear, hunger, morale, or intelligence�<br />

Increases and decreases in that property can alter agents’ perception of one<br />

another� Alternatively, such a change can cause a behavior-change event, described<br />

below�<br />

Table 2� Currently implemented side-change events and actions<br />

50<br />

255<br />

• Being shot at<br />

– One change for each occurrence<br />

– Paintball weapons<br />

Arriving at way point<br />

Arriving at objective<br />

Detecting no leader from same unit<br />

All is well<br />

– Used to restore original conditions<br />

– Example:<br />

Temporarily no leader, then leader reacquired<br />

Technology Review Journal • Spring/Summer 2003<br />

Unit<br />

Friendly<br />

Neutral<br />

Enemy (anything<br />

outside the<br />

outermost circle)


Behavior-Change Triggers<br />

<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

The final feature of <strong>Pythagoras</strong> that is used to represent behavior is the behavior-change<br />

event/action, or trigger. When an agent experiences one of the events/actions listed in<br />

Table 3, the current behavior template is replaced by a new one, defined by new movement<br />

and shooting desires, new color-change values, and a new set of behavior-change<br />

triggers. For example, an agent can be set to walk up and down a street, as if on patrol,<br />

but when the agent is shot at, his behavior changes to look for protective terrain, such as<br />

a doorway.<br />

To enhance behavior-change triggers, the user can decide how they will be applied.<br />

A trigger can affect either an individual agent or a user-defined group of agents, or it<br />

may cause an agent to order subordinates to change their behavior (for example, “Sound<br />

the charge!”). For that purpose, leadership can be defined as either charismatic or<br />

hierarchical:<br />

• Under charismatic leadership, agents follow the highest or strongest leader.<br />

• Under hierarchical leadership, agents follow the lowest ranking leader whom they<br />

consider to be their leader (troops follow the sergeant, who follows the major, who<br />

follows the general). Thus, orders can ripple through a group of agents, much as<br />

they would in a military organization.<br />

As usual in <strong>Pythagoras</strong>, the behavior-change threshold values are governed by soft rules,<br />

so some agents will be more resistant to change. In addition, an agent can be assigned an<br />

obedience value that determines, at random, whether the agent will accept or reject an<br />

ordered behavior-change event/action.<br />

Because the behavior template for an agent includes new triggers, and each template<br />

is uniquely named, a series of templates can be constructed to represent a complex<br />

behavior tree or network, with agents moving from one behavior to another as a scenario<br />

Table 3. Currently implemented behavior-change triggers<br />

Events/actions that cause agent to change behavior include<br />

– Being shot at<br />

– Detecting enemy<br />

– Detecting friend<br />

– Arriving at way point or objective<br />

– Suffering friendly casualties (fewer than x%<br />

known remaining)<br />

– Losing leader (no leader within d)<br />

– Red, green, or blue becoming greater or less than c<br />

– Absolute time step<br />

– Relative time step<br />

Trigger reads new, complete, explicitly named behavior template (including setting<br />

new triggers)<br />

Delay before behavior takes effect (future capability), which simulates communication/<br />

spinup time<br />

x = Force strength<br />

d = Distance<br />

c = Color value<br />

Technology Review Journal • Spring/Summer 2003 51


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

unfolds. Because they are separate objects, different agent types can share the behavior<br />

templates, and there is no practical limit to the number of templates that can be created.<br />

Weapon Options<br />

<strong>Pythagoras</strong> allows agents to carry as many as three different weapons. Weapons can be<br />

either direct fire (which requires a line of sight) or indirect fire (which does not):<br />

• Direct-fire weapons have range-dependent probabilities of hit—and of kill, given a<br />

hit—which may be modified by the target agent’s vulnerability.<br />

• Indirect-fire weapons have circular-error-probable accuracies and lethal radii, both<br />

of which may be range-dependant.<br />

An indirect-fire weapon’s lethal radii can be modeled using either the traditional Carlton<br />

damage function or a “cookie-cutter” blast. The Carlton damage function describes the<br />

damage radiating out from a hit point through the following equation:<br />

where Pk is the probability of kill, distance is the distance of the target from the impact<br />

point, and radius is the size of the blast radius. The cookie-cutter blast causes an equal<br />

amount of damage to all objects within the blast radius, regardless of their distance from<br />

the impact point. Both weapon types have input rates of fire and limited ammunition.<br />

In <strong>Pythagoras</strong>, the target may be suppressed for multiple time steps by a hit by a directfire<br />

weapon or a near miss by an indirect-fire weapon that does not kill the target.<br />

Suppressed agents do not move, sense, or shoot, but they recover those capabilities after<br />

a user-input amount of time. At the user’s discretion, kills can be random (stochastic),<br />

deterministic (fractional damage), or a combination of both.<br />

<strong>Agent</strong>s can also change each other’s colors, by using military countermeasures or<br />

nonlethal weapons that can act as paintball guns. An example of a nonlethal weapon<br />

would be propaganda that alters an agent’s affiliation in some way. Propaganda in the<br />

form of leaflets can be modeled as a direct-fire weapon aimed at a specific target. On<br />

the other hand, preaching or any other form of public speech or exhortation can be<br />

modeled as an indirect-fire weapon, aimed in a general direction and affecting everyone<br />

within range.<br />

<strong>Agent</strong>s will automatically shoot at enemies within range, unless they are given a “hold<br />

fire” command that allows them to shoot only if fired on within a user-specified number<br />

of time steps. The user can assign agents multiple weapons and set the weapon selection<br />

criteria to be <strong>based</strong> on either the highest probability of hit (best chance that the target<br />

will be suppressed) or the lowest probability of kill (for a nonlethal situation).<br />

Multiband Sensors<br />

Sensors are also abstracted. Each agent may have up to three, each of which operates in a<br />

specific signature band, labeled A, B, or C. The sensors have a range-dependent probability<br />

of detection, which is modified by intervening terrain and a target agent’s detectability.<br />

For example, signature band A could be the bandwidth of the naked eye and signature<br />

band B might describe the bandwidth of an infrared device. A terrain feature, such as<br />

foliage, would thwart the naked eye’s view, but an infrared device could “see” the<br />

52<br />

P=e<br />

k<br />

–[( distance × distance)/( radius × radius)]<br />

,<br />

Technology Review Journal • Spring/Summer 2003


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

thermal image of a camouflaged person standing in the foliage. Such foliage could be<br />

modeled in <strong>Pythagoras</strong> as having a concealment value of 100% in band A and 0% in<br />

band B.<br />

Sensors also have a field of view and, for modeling humans, a probability that the agent<br />

is looking forward (i.e., in the direction of travel), to the side, or to the rear. Terrain<br />

features reduce the probability of line of detection differently in each band.<br />

Representation of Terrain<br />

All agents exist in a user-defined playbox of up to 1000 × 1000 pixels. On the playbox,<br />

a user can create terrain features—polygons that have a floor, a ceiling, and factors for<br />

mobility; concealment in each of the three signature bands; and protection that reduces<br />

the weapon’s effectiveness. Currently, a pixel can be associated with at most one terrain<br />

feature. <strong>Agent</strong>s can either move on the terrain or floor or operate at an altitude.<br />

Sample Scenarios<br />

<strong>Pythagoras</strong> has two major advantages:<br />

• It can be used quickly to assess various sample scenarios.<br />

• It can be combined with more complex and detailed models to provide insights into<br />

situations that may not be possible with other simulations.<br />

Rapid prototyping of scenarios, weapons, sensors, behavior patterns, etc., allows users<br />

to undertake complex problems in new ways without the burden of months of software<br />

development. Several sample scenarios are discussed below.<br />

Village Patrol. We have used <strong>Pythagoras</strong> to study crowd behavior in an antiterrorist/<br />

force protection scenario, represented as a village patrol, developed for the Marine<br />

Corps to evaluate various night-vision devices in peacekeeping operations. Figure 4<br />

shows a screen shot of the “play forward” capability of the <strong>Pythagoras</strong> GUI for that<br />

scenario. The scene is a village with buildings, parks, and streets, represented in Figure 4<br />

as large areas of color—e.g., the geometric shapes such as rectangles and trapezoids<br />

denote buildings. The blue dots represent Marines, the red dots are peaceful villagers,<br />

and the orange dots are hostile villagers. The hostiles include a terrorist leader, located<br />

in a religious structure, who can communicate with the hostiles, warning them of the<br />

presence of the Marines.<br />

Marine agents patrol the village at night, inspecting the villagers and looking for<br />

terrorists. The Marines are directed in part by a scout/sniper team that is strategically<br />

placed to help spot villagers. The villagers and terrorists alike move toward the food<br />

distribution point at the harbor at the top of the screen. Peaceful villagers, once<br />

approached by Marines and found to have proper identification and no weapons, are<br />

directed to the food distribution point. Hostile villagers attempt to avoid the Marines<br />

and are shackled in place after the Marines find and inspect them. Measures of effectiveness<br />

(MOEs) include the number of villagers detected and fed, the number of<br />

hostiles shackled, and the number of hostiles reaching the food distribution point, a<br />

potentially disastrous event.<br />

We first used this scenario to establish a night-vision-capability base case by modeling<br />

the probability of detection for the <strong>Pythagoras</strong> sensors, applying the results of physics-<br />

Technology Review Journal • Spring/Summer 2003 53


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

Road<br />

Figure 4. Antiterrorist/force protection in village patrol scenario<br />

<strong>based</strong> models of various night-vision capabilities, e.g., MODTRAN, IICCD, NVTherm/<br />

Acquire, IIMRC, and SSCAM. The models considered a variety of climatic conditions<br />

(e.g., desert or tropical) and ambient light conditions (e.g., cloudy night or quarter<br />

moon). To gain insight into the benefits of various devices and mixes of devices in a<br />

fairly traditional peacekeeping scenario, we then repeated the base-case runs, distributing<br />

various mixes of new night-vision devices among the Marines, and compared the<br />

resulting MOEs to one another and to the base-case MOEs.<br />

The scenario itself was built in a few days, and the sensor capabilities were altered by<br />

changing the eXtensible Markup Language (XML) files in a batch mode or by substituting<br />

one XML data block for another. We made the entire analysis proceed quickly, so<br />

that hundreds of cases could be analyzed.<br />

Battle of Midway. To represent human behaviors of opposing military forces, a U.S.<br />

Naval Academy midshipman majoring in history has used <strong>Pythagoras</strong> to study the<br />

options available to the Japanese Admiralty at the Battle of Midway. Historically, when<br />

the Japanese learned of the presence of U.S. aircraft carriers, they changed the weapon<br />

loads on their attack aircraft from bombs (which they planned to use against Midway<br />

Island) to torpedoes. Alternatively, the Japanese commander could have sent the aircraft<br />

to attack the U.S. fleet with the already-loaded bombs. Or he could have decided to use<br />

fighter aircraft as escorts to the bombers, allowing more bombers to penetrate our<br />

fighter defenses.<br />

54<br />

WP1<br />

WP5<br />

WP1<br />

<strong>Agent</strong>’s name<br />

WP1<br />

WP1<br />

WP1<br />

WP1<br />

WP1<br />

WP2<br />

WP1<br />

WP4<br />

WP2<br />

WP1<br />

WP5<br />

WP1<br />

WP6 WP3 WP6 WP3<br />

Body of Water<br />

WP1<br />

WP4<br />

WP1 WP2<br />

WP1<br />

WP0<br />

WP8<br />

WP1<br />

Technology Review Journal • Spring/Summer 2003<br />

WP4<br />

WP1<br />

WP3<br />

WP1<br />

WP4<br />

WP1<br />

WP2<br />

River<br />

WP1<br />

WP1<br />

WP8


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

The midshipman first created a base case from the historical record, setting a scale for<br />

the battle (in terms of miles per pixel), speeds of the combatants (pixels per time step),<br />

and various sensor and weapon capabilities. He estimated the capabilities using the<br />

historical record for ships sighted, weapons launched, and ship damage in the base case.<br />

He then altered the decision made by the Japanese, sending the bombers alone in one<br />

case and adding some of the available fighter escorts in another.<br />

He found that the results on the Japanese carrier fleet were the same—all four carriers<br />

were sunk regardless of the Japanese admiral’s decision. However, the decision to send<br />

the attack aircraft armed with bombs would have resulted in the loss of one to two U.S.<br />

carriers, had they gone in alone; or two to three U.S. carriers, had they gone with escorts<br />

and detected the U.S. carrier that was operating alone. Since the Japanese at the time<br />

still had carriers operating in the Aleutians and the Coral Sea, and the United States had a<br />

total of just three carriers in the Pacific, the strategic result could have been dramatically<br />

different, delaying the U.S. counteroffensive in the Pacific.<br />

The midshipman was able to build the base case in a few days, calibrate it, and complete<br />

the model runs in less than one week.<br />

Clearing Shallow-Water Obstacles. The Marine Corps was searching for a near-term<br />

solution to the problem of shallow-water obstacles used to disrupt or defeat a Marine<br />

Corps surface assault. One proposed option was to use bombs—specifically, the 2000-lb<br />

Joint Direct Attack Munition (JDAM)—to clear shallow-water obstacles and mines. A<br />

JDAM could use impulse and overpressure to detonate mines close to the explosion.<br />

More distant mines would be pushed aside by the blast plume, which propagates well in<br />

water. That capability was tested at Eglin Air Force Base, Florida, in a shallow pond,<br />

carefully measuring the effects of various sizes of bombs in various depths of water. The<br />

necessary number of bombs remained to be determined, as well as spacing and delivery<br />

accuracy. The question posed to Project Albert was, “Could <strong>Pythagoras</strong> help at all?”<br />

In answering that question, it was ascertained that, while physics can measure the<br />

behavior of objects in the physical world, <strong>Pythagoras</strong> can measure behaviors as well. To<br />

use <strong>Pythagoras</strong>, we had to reproduce in <strong>Pythagoras</strong>’ terms the physical behavior of the<br />

various components of the system. Mines and obstacle agents were created, as were<br />

amphibious assault vehicle (AAV) agents.<br />

The AAV agents’ behavior was modeled such that they maintained specified spacing<br />

between one other as they moved through a series of way points. That behavior allowed<br />

the AAVs to form a ragged column and move ashore. Each AAV stopped whenever it<br />

encountered an obstacle, because the obstacle would suppress the AAV by firing a<br />

nonlethal weapon at it. However, the mine would fire a lethal weapon at the AAV at the<br />

range of half its width, representing the effect that resulted when the AAV hit the mine.<br />

With just one shot per mine, each mine killed at most one AAV.<br />

To enable the JDAMs’ effects to work properly in <strong>Pythagoras</strong>, two components were<br />

required: destruction and movement. To model the destruction and movement effects, a<br />

bomber agent (B-2) was created to drop the JDAMs on hit-point agents. The placement<br />

of the hit points represented the various options for weapon delivery and overall<br />

accuracy, combining target location error and weapon delivery error into a single offset<br />

from the weapon aim point. The mines and obstacles initially perceived the aim points to<br />

be neutral, because appropriate sidedness (color) values were used. However, when the<br />

hit points were actually attacked by an indirect-fire weapon—the JDAM—all mines that<br />

Technology Review Journal • Spring/Summer 2003 55


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

were close enough to the explosion were detonated using <strong>Pythagoras</strong>’ cookie-cutter<br />

blast capability.<br />

However, because the aim points were modeled with a vulnerability setting of zero,<br />

they were unharmed by the JDAMs’ effects—so only their color was changed through<br />

<strong>Pythagoras</strong>’ paintball weapon capability. The aim points were also assigned a nonzero<br />

leadership value. When the aim points’ color changed, the mines and obstacles perceived<br />

the aim points to be their leaders and were assigned a behavior to move away from their<br />

leader to a distance equal to the blast plume of the bomb. When the JDAM impacts<br />

were spaced in time, some obstacles were blown forward along the lane that was<br />

being cleared through the obstacles. They were then blown backward along the same<br />

lane by a subsequent bomb, creating a seesaw effect.<br />

We found that, when the AAVs had poor ability to navigate through the lane created by<br />

the JDAMs, their survivability was even worse than if no JDAMs had been dropped at all,<br />

because the mines that were blown out of the channel combined with mines that were<br />

unaffected, resulting in a much denser minefield than was originally there. Although the<br />

result is intuitive, none of the analysts involved thought of that outcome until it was<br />

observed in <strong>Pythagoras</strong>. Thus, the lanes must be marked well enough to avoid navigation<br />

errors and must be wide enough to allow safe passage.<br />

Competing for Hearts and Minds. A test scenario demonstrated the use of soft rules.<br />

A set of villagers was created whose colors varied randomly from shades of red to<br />

shades of blue. A set of peacekeepers, armed with short-range, nonlethal weapons, was<br />

sent into the village. The short-range weapons represented leaflets or candy bars. A<br />

villager receiving a leaflet became more blue and friendly to the peacekeepers. Simultaneously,<br />

a charismatic enemy organizer in the town hall was using an indirect-fire, widearea-effect<br />

weapon—a bullhorn. Exposure slowly turned the villagers deeper red. Once<br />

red enough, the villagers perceived the charismatic enemy organizer to be their leader<br />

and moved off to the town hall. (One variant gave them rocks to throw at the peacekeepers,<br />

once they became hostile.)<br />

The peacekeepers were typically able to placate only a limited number of villagers, the<br />

rest going to the town hall to become followers of the charismatic organizer. Occasionally,<br />

however, when all remaining villagers had been pacified, a few peacekeepers would<br />

head to the town hall to attempt to turn some of the followers back into villagers.<br />

Eventually, a steady-state condition was created between the number of villagers and the<br />

number of followers. In one case, the charismatic leader ran out of batteries for his<br />

bullhorn. Soon the peacekeepers moved up to the town hall and pacified all of the villagers.<br />

Once the source of their discontent had been eliminated, pacification was easy.<br />

Summary<br />

The combination of changing color, changing strength of desire or motivation, behaviorchanging<br />

events/actions, and group and individual dynamics—all present in the current<br />

<strong>Pythagoras</strong> prototype—has already demonstrated that this new capability offers a<br />

powerful, flexible way to represent human behavior in military modeling and simulation.<br />

Soft rules allow each agent (or object, in a traditional legacy simulation) to be created<br />

slightly or greatly different from other agents of the same class. In a combat model, for<br />

example, some troops would be better marksmen, braver, or more obedient than others.<br />

56<br />

Technology Review Journal • Spring/Summer 2003


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

<strong>Pythagoras</strong>’ development continues with additional features, new desires and triggers,<br />

and other agent capabilities. Its application to various military problems is only now<br />

being uncovered, but agent-<strong>based</strong> simulation tools are the future of military modeling<br />

and simulation. <strong>Pythagoras</strong> will help to lead the way.<br />

Summary<br />

1. U.S. Marine Corps, Project Albert Web site, http://www.projectalbert.org or http://<br />

mcwl.quantico.usmc.mil/divisions/albert/index.asp.<br />

Author Profiles<br />

Edmund J. Bitinas, an operations research analyst for<br />

<strong>Northrop</strong> Grumman Mission <strong>System</strong>s’ Information and<br />

Technical Services Division, <strong>System</strong>s Analysis and Engineering,<br />

has specialized in developing military models and<br />

simulations for more than 24 years. He designed and developed<br />

Combat IV and has applied it to more than 50 different<br />

campaign-level studies and analyses. He has supported the<br />

Ballistic Missile Defense Organization on Theater Missile<br />

Defense campaign-level issues, performed campaign studies<br />

of the Joint Strike Fighter for the Turkish Air Force and<br />

Singapore Air Force, and supported the U.S. Air Force Air<br />

Combat Command in the 2001 Quadrennial Defense Review,<br />

also performing campaign analyses. Mr. Bitinas currently<br />

supports the U.S. Marine Corps on a variety of analysis tasks.<br />

He is also the lead analyst for the Marine Corps’ participation<br />

in the development and testing of the Joint Wargaming<br />

<strong>System</strong>. In addition, he is designing software for Project<br />

Albert. He holds a BS in computer science and an MS in<br />

operations research from the Illinois Institute of Technology.<br />

edmund.bitinas@ngc.com<br />

Zoe A. Henscheid, an operations research analyst for<br />

<strong>Northrop</strong> Grumman Mission <strong>System</strong>s’ Information and<br />

Technical Services Division, has supported a variety of<br />

analysis tasks for the U.S. Marine Corps. She has established<br />

baseline ammunition requirements for the proposed High<br />

Mobility Artillery Rocket <strong>System</strong>, assessed current and<br />

potential weapon system capabilities across several<br />

Expeditionary Fire Support missions, and established a<br />

multiattribute value model used to assess multirole radar<br />

system alternatives. She holds a BS in industrial engineering<br />

from the University of Illinois, Champaign-Urbana, and has<br />

completed graduate courses in industrial engineering.<br />

zoe.henscheid@ngc.com<br />

Technology Review Journal • Spring/Summer 2003 57


<strong>Pythagoras</strong>: A <strong>New</strong> <strong>Agent</strong>-<strong>based</strong> <strong>Simulation</strong> <strong>System</strong><br />

58<br />

Lap V. Truong, a software engineer for <strong>Northrop</strong><br />

Grumman Mission <strong>System</strong>s’ Information and Technical<br />

Services Division, has specialized in software development<br />

for more than six years. He supported the development<br />

of a secure Internet Web site for the Security and<br />

Exchange Commission’s Electronic Data Gathering<br />

Analysis and Retrieval <strong>System</strong>. He holds an MS in computer<br />

science with a concentration in software engineering<br />

from George Mason University. He is pursuing an MS<br />

in technology management at George Mason University.<br />

lap.truong@ngc.com<br />

Technology Review Journal • Spring/Summer 2003

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!