schaef01s

Embed Size (px)

Citation preview

  • 8/14/2019 schaef01s

    1/15

    Received: 31 Aug 2002 Copyright 2002 Accepted: Pending 1 http://www.csu.edu.au/ci/draft/schaef01/

    http://www.csu.edu.au/ci/

    Draft Manuscript

    Please note that this manuscript has yet to be accepted by Complexity International

    Simulation meta-architecture foranalyzing the emergent behavior of agents

    Lisa A. Schaefer

    The MITRE Corporation McLean, Virginia 22102

    Email: [email protected]

    Philip M. Wolfe, John Fowler

    Department of Industrial Engineering Arizona State University

    Tempe, AZ 85287 Email: [email protected], [email protected]

    Timothy E. Lindquist

    Department of Electronics and Computer Engineering Arizona State University East

    Mesa, AZ 85212Email: [email protected]

    Abstract

    This paper describes a meta-architecture, which includes functional segments, events, and acommunication link between functional segments and events. Using the object-orientedarchitecture systems of agents can be analyzed to determine their emergent behavior. In an agentsystem, each agent iteratively executes its own set of rules during its lifetime. Each agent is anindividual entity with its own intelligence defined by its rule set. Rule sets for any given system canhave many variations and it is not known a priori which variation will result in the most desiredoutcome. Since each agent is a separate entity, intelligence is distributed throughout the system,rather than existing in a centralized unit. The architecture in this paper is a framework that can beused for experimenting with variations of rule sets to assist in discovering a rule set that results indesirable system-level behavior. We also describe a case study in which the architecture is used tosimulate rule sets for a group of robot agents to determine the system-level average effective speedof the robots resulting from their interactions at the individual robot level.

  • 8/14/2019 schaef01s

    2/15

    Complexity International Draft Manuscript

    schaef01 2 Copyright 2002

    1. Introduction

    In complex agent systems, many interactions among the agents occur over time as they carryout their individual rule sets. It is difficult to analyze multi-agent systems due to the manypossible outcomes that can result from slight deviations from each interaction. However with

    modern computing capabilities, it is becoming faster and easier to analyze complex systems.We see an increasing trend in the number of systems that will be analyzed as multi-agentsystems. Thus we developed simulation architecture for analyses of multi-agent systems.Results of analyses performed within this architecture would be used to quantify the emergentbehavior of agent systems.

    The property of a system that emergent behavior represents is dependent upon the systembeing analyzed and the property that the systems observer is looking for. Emergent behaviorcan be defined as the system-level behavior resulting from the interactions at the level of theindividual (autonomous) components of the system [1]. According to Maes [2], one of thefounders of agent research, autonomous agents are computational systems that inhabit some

    complex dynamic environment, sense and act autonomously in this environment, and by doingso realize a set of goals or tasks for which they are designed. The means by which the agentmakes decisions on how to act in its environment can be a brain, such as in a bird [3], or couldbe the processor in an autonomous robot.

    Mataric conducted experiments with robots to understand system-level behaviors of therobots as a group that emerge when local behaviors were changed at the individual agentlevel. The concept of developing simulation architecture is similar to the concept of individualmobile robots in Mataric [4]. We conduct experiments within our architecture to understandsystem-level behavior of general agent-like entities as local agent behaviors changed.However since our analysis was a simulation, the experiment was much cheaper.

    Finding emergent behavior is similar to the goal of the architecture described in Oka et al.[5] in which they attempt to find the desired properties of agents. The architecture described inthis paper gives researchers an object-oriented structure in which to determine the emergentbehavior of an agent system. The researcher can experiment with the behaviors of agents todetermine which behaviors result in the desired properties of the system.

    Object-oriented modeling is well suited for simulating systems of many similar entities thatinteract [6]. In such a complex system with many agents, the attributes of each agent or thesystem state at future time steps cannot be predicted a priori. Simulated agents have a lot togain from using object-oriented programming, since it provides a better way to model theagents and their environment, their dependencies, and their relations [7].

    The specifications for the emergent behavior analysis architecture are discussed in Section2 of this paper. The architecture is described in Section 3. Its use is demonstrated in Section 4through a simulation of a group of free-range mobile robots with several variations of flockingrules to simulate the robots. In Section 5 we conclude with a table of possible applications forour simulation architecture.

    2. Model Specifications

    To guide the development of the architecture for this research, model specifications for ageneral agent simulation were defined. There are three aspects of this problem we needed toconsider when determining the specifications for our simulation architecture: the fact that thesystem will be analyzed with a discrete computer, the definition of the system to be simulated,

  • 8/14/2019 schaef01s

    3/15

    Complexity International Draft Manuscript

    schaef01 3 Copyright 2002

    and the type of emergent solution desired. We describe these three aspects and theirspecifications.

    A) Simulation abstraction: Since the simulation will be performed on a computer, the actionsof the real system must be defined in abstract terms. One must be able to mathematicallyabstract system and agent parameters and time into computer-understandable relations.

    B) System definition: The system to be simulated is a group of many agents changing their n-dimensional parameters over time according to a set of system-dependent rules. Theactions and results at each time step are dependent upon the rules and the system state atthat moment. The items that exist in the system are the agents and a communityrepresenting a group in which agents belong. The agents must be able to detect some of theparameters of other agents in their environment. The agents must be able to execute rulestoward achieving their individual goals.

    C) Type of emergent solution: The emergent behavior is the solution to the simulationanalysis in the form of parameters that describe system-level behavior. In order todetermine how the system-level behavior varies as a function of different system

    parameters and different agent rule sets, one must be able to change the system parametersand agent rules according to an experimental design. Each time the design parameters arereset, the simulation must execute several runs to develop and collect output. After alloutput is gathered, one must analyze the output to determine the results.

    The specifications derived for each aspect above are summarized in Figures 1a through 1c.

    3. Ability tokeep track of

    simulatedtime

    2. Initialconditions

    1. Executionorder

    blue,

    fast

    Advance time

    Execute agent rulesUpdate attributes

    goal=3,small

    red,lazy

    Figure 1a. Specifications to address computer-based simulation

    1. Many

    agents

    3. Communicationamong agents

    2. Group inwhich agentsare assigned

    4. Local rules

    Go..Get..

    blue,fastDo..

    If..

    5. Goals

    6. Attributes

    Figure 1b. Specifications to address type of system being simulated

  • 8/14/2019 schaef01s

    4/15

    Complexity International Draft Manuscript

    schaef01 4 Copyright 2002

    1. Ability tospecify input

    2. Ability to changeexperimental designvalues

    3. Ability togather output

    SYSTEM

    4. Analysis

    Figure 1c. Specifications to address type of solution required from simulation

    3. Architecture

    The architecture consists of elements that describe the architectural functional segments, thesimulation and analysis events, and the communication that links the segments and theirevents. Functional segments are groupings of software entities, such as agents. Events are thegrouping of software activities, such as execution of agent rule sets. Communication controlsthe timing at which each entity executes a specific activity.

    In this section we present both a high-level view and detailed-level view of the functionalsegments, high and detailed level views of the software events, and the communication thatlinks the segments with the events. Figure 2 shows the relationships of the architecturalelements as a meta-architecture.

    COMMUNICATIONsequence

    DETAILobject

    diagram

    DETAILalgorithms

    Architecturalcomponent diagram

    Hierarchicaldiagram

    FUNCTIONAL SEGMENTS EVENTS

    Figure 2. Meta architecture

    The purpose of the architectural component diagram is to show a general view of thefunctional segments of the architecture developed for this paper. The object diagram showsthe implementation view of the functional segments. The purpose of the hierarchical diagramis to show a general view of the events portion of our architecture. The algorithms show theimplementation view of the events. The communication sequence links functional segments toevents.

    3.1 Functional segmentsThe general view of the functional segments is shown in Figure 3 and mainly consists of

    control, community, and analysis. The Platform, which could exist on one or multipleprocessors, contains all functional segments required for the simulation described below.

  • 8/14/2019 schaef01s

    5/15

    Complexity International Draft Manuscript

    schaef01 5 Copyright 2002

    Input Control

    Community

    Analysis SystemBehavior

    Agent

    Simulation

    Behavior

    Platform

    Goal Parameters

    Figure 3. General view of functional segments: architectural component diagram

    The control segment is in charge of making sure the main activities required for asimulation analysis (initialization, simulation, and output analysis), are executed. The inputsegment is the interface for the user to specify simulation parameters.

    The community coordinates global data and communication among the group of agents,

    which belong to it. It contains information that the agents broadcast to the community forother agents to read. The community is similar to the open software-agent architecturedeveloped by Martin et al. [8], however a simulation capability resides within the communityin our architecture. The simulation uses the goals, parameters, and behaviors of the agents tochange the system state at each time step. The community can be considered as a field foranimals to run on, a factory floor with robots delivering materials, a traffic intersection withcars and pedestrians as agents, a network of computers, a group of stock traders, or a (virtual)auction room. Several instances would represent several floors or intersections in a singlesystem.

    Agents can be homogeneous or heterogeneous and could represent any type of real-world

    agent (e.g. pedestrians, robots, airplanes, cars, stockbroker, auction bidder) that can changewith respect to the state of its neighborhood. The state of the neighborhood is described bycharacteristics of other agents such as location, speed, or financial wealth. The agents areobjects that all exist on the same virtual machine or on their own virtual machine, dependingupon the nature of the simulation. The behavior, goals, and parameters describing each agentreside within their respective agent.

    The analysis segment converts data produced by the simulation into an analytical formatthat describes the behavior of the system that emerges during the simulation. Table 1 liststangible software and hardware entities that can be implemented to instantiate each of thefunctional segments.

  • 8/14/2019 schaef01s

    6/15

    Complexity International Draft Manuscript

    schaef01 6 Copyright 2002

    Table 1. Possible realizations for elements of agent simulation architectureFunctional Segment Possible RealizationPlatform Virtual machine

    ProcessorNetwork JavaSpace

    Input TextGUIControl Main objectCommunity Instance of object

    MachineServer

    Community simulation Set of object methodsAgent-accommodating simulation package

    Agents Instances of objectsMachinesClients

    Agent behavior Set of object methodsAnalysis Statistical software

    User-defined programSpreadsheet

    System behavior EquationSystem state defined by parameter sets

    Figure 4 shows a more detailed description of the architecture for the simulation andanalysis of emergent behavior in the form of an object diagram. There are three types of objects required for this simulation: a main program that controls the execution of eachfunctional mode of the simulation, the community in which the agents are grouped, and theagents themselves. The main program embodies the control element of the agent simulationarchitecture shown in Figure 3. The community object controls the simulation and ownsgroups of agents that belong within the community. Each instance of an agent within thecommunity inherits from an agent interface. Agents have rules and goals. The particular rulesand goals reflect the type of real-world entity that the agent represents. Pedestrians may have agoal that represents a destination and rules for walking. Robots may have goals to locate allland mines and rules for searching. The goal of an airplane may be to arrive on time with airtraffic control flight rules.

    RobotPedestrian Airplane

    Main

    Initialize systemExecute simulation

    Data manipulation

    Communitynumber agents in systemnumber time steps in runnumber runsagent group characteristicsvector of agentssystem stateTime loopInitiate agent simulation loopCheck agents in neighborhoodCheck for inconsistencies

    Agent agent characteristicscurrent stategoal locationDecision rulesTry to reach goalBroadcast information

    outputinput

    Figure 4. Implementation view of functional segments: object diagram

  • 8/14/2019 schaef01s

    7/15

    Complexity International Draft Manuscript

    schaef01 7 Copyright 2002

    3.2 EventsThe general view of the functional segments relates to control, community, and analysis,however the general view of the events relates to initialization, simulation, and analysis.Within initialization, the community object and agent objects are given all characteristicsneeded for participation within the simulation. The simulation activity loops through each

    time step to call each agent to execute iterations of its rules. The data manipulation activitytransforms output into usable information. The general view of the events is shown in Figure5.

    Simulate

    Community Agents

    ExecuteRules

    Change ExperimentalDesign Values

    Storage& Analysis

    CalculatePerformance Measures

    Execution

    Initialize Data Manipulation

    IncrementTime Step

    Check forInconsistancies

    ReadInput

    Figure 5. General view of events: hierarchical event diagram

    Each of the three activities contains several subactivities. Within initialization, inputsources are read and assigned as initial values to the community and agent attributes shown inthe object diagram. Within simulation, agent rules are executed, checks for inconsistenciesvalidate the system state, and system-level performance is assessed at each time step. Withindata manipulation, parameters are transformed to represent the desired experimental design.Attribute values in either the community or agents can be changed, agents can be created ordestroyed, or an indication of whether a certain rule set should or should not be executedduring subsequent time steps can be set. Upon completion of all time steps, the overallsystem-level performance throughout the entire simulation (emergent behavior) is assessed.

    3.3 AlgorithmsThe general algorithms for execution and the three activities are shown in Figure 6. The

    general algorithm for behavioral rule execution is shown in Figure 7. Inconsistency check andperformance calculation algorithms are specific to each system being simulated. The timeincrement can be a discrete event calendar or an iterative loop. A detailed example of allsimulation algorithms, with specific behavioral rules, for a robot application is included inSection 4.

  • 8/14/2019 schaef01s

    8/15

    Complexity International Draft Manuscript

    schaef01 8 Copyright 2002

    Initialize systemExecute simulationManipulate output

    Highest level execution algorithm

    While time remainingFor all agents

    Execute rulesFor all agents

    Check if inconsistencies existIf true, correct inconsistencies

    Update current values of performance measuresIncrement time

    Simulation algorithm

    Read inputCreate community

    Initialize system variablesCreate agents

    Initialize agent variables

    Initialization algorithm

    If at end of time stepWrite performance measures to fileIf n runs complete

    Change system and/or agent parametersIf all combinations of parameters complete

    Perform data analysis

    Output manipulation algorithm

    Figure 6. Implementation view of events: execution, initialization, simulation, and output algorithms

    If at goalCalculate new goal

    Check state of neighborhoodExecute rules

    Figure 7. Behavioral rule execution algorithm

    3.4 CommunicationCommunication is the link between the functional segments and events. Figure 8 is an activitydiagram that describes the order of events during a simulation run. The arrows depict thedirection of the communication that occurs among the main execution object, community, andagents when each algorithm is called. The sequence in which the communication causesalgorithms to execute can be followed from top to bottom of the communication diagram.

    Community

    Main

    Agent

    simulateexecute rules

    change parameters forexperimental design

    gather system parameters

    increment time step

    check goal

    make decision,update attributes

    read input

    AgentAgentAgent

    output manipulation

    check for inconsistencies

    Figure 8. Communication link between objects and algorithms

  • 8/14/2019 schaef01s

    9/15

    Complexity International Draft Manuscript

    schaef01 9 Copyright 2002

    4. Implementation

    The simulation architecture documented above was implemented in an object-orientedlanguage. We used the architecture on a case study for determining the emergent behavior of an agent system. The classification of agents we chose to simulate (out of the three typesgiven by Maes [9]) was a system of autonomous robots. An analysis was performed todetermine an appropriate navigation rule set to insert in the simulation architecture describedabove for simulating free-range (as opposed to track-guided) mobile robots for materialhandling in a manufacturing cell [10].

    The navigation rules used in this study were documented in Mataric [4]. Mataricexperimented with a herd of terrain-searching robots. Part of her thesis focused on thecombination of basis behaviors to form higher-level behaviors, such as flocking or herding, asshown in Figure 9. Basis behaviors are listed at the bottom with the higher levels of behaviorsin the upper layers. The basis behaviors are an analysis and extension of Reynolds [3]flocking algorithms.

    Matarics [4] agents were programmed with a set of four basis behaviors: homing, safe-wandering, dispersion, and aggregation. Since the agents in our study do not need to stay in agroup, aggregation was determined to be unnecessary for our agents. We decided to call thehigher-level behavior necessary for our research delivery. This behavior requires onlyhoming and safe-wandering. Thus the delivery (delivery agents also discussed in [11])behavior was added to Matarics behavior-level diagram, shown in Figure 9. Mataricsoriginal diagram is depicted in regular font. The additions to the original diagram created forthis document are depicted in bold.

    Herding

    Delivery Flocking Surrounding

    Homing Safe-wandering Dispersion Aggregation Following

    Figure 9. Behavior-level diagram of mobile robots (modified from Mataric [4])

    The basis behavior Homing is called at the Execute Rules command of the RuleExecution algorithm in Figure 7. The basis behavior Safe-Wandering is a collisionavoidance strategy and is also part of the Execute Rules call of the Rule Executionalgorithm. The rules for the homing and safe-wandering behaviors [4] are are described byvery simple rules, shown in Figure 10.

    Turn toward direction of goal locationGo forward

    If at goal, stop

    Homing algorithm

    If robot is in pathIf at the right only

    Turn left, go forwardIf at the left only

    Turn right, go forwardIf on both sides

    Wait

    Safe-wandering algorithm

    Figure 10. Homing rules and safe-wandering rule set [4]

  • 8/14/2019 schaef01s

    10/15

    Complexity International Draft Manuscript

    schaef01 10 Copyright 2002

    Each agent was modeled as an instance of the same object in an object-orientedprogramming language. Thus they will follow the same set of navigation rules and have thesame set of attributes, although the values of the attributes may be different for each agent.Each agent is given a random destination location as its goal and a random starting location.Other attributes of agents in this analysis include agent speed, x and y values for location,direction, goal location, current distance from goal, turning angle, distance traveled toward

    goal during current time step, and size. If animation is used, color may also be an attribute.The emergent behavior of this system was represented by equations that will assist in

    determining three solutions from our analysis:

    1. How many agents can exist on a given floor space before congestion becomes a problem(problem is user-defined)?

    2. What is the degree of inefficiency in delivering material due to maneuvering around otheragents and the effects of system characteristics on inefficiency?

    3. Which system characteristics affect inefficiency?

    Visual animation was used to qualitatively assess whether the system state had anyinconsistencies at each time step, such as agents running over each other. Figure 11 depicts ascreen shot of the animation. A check for collisions at the end of each time step, algorithmshown in Figure 12, was calculated to verify agents did not overlap each other. If an agent isin the state of having an inconsistency, the agents location is not advanced, thus it stops at itslocation before collision. It then continues to execute safe wandering rules at the next timestep. The simulation portion of Figure 5 is recreated in Figure 13 with the specific steps forthis application substituted in each module.

    Figure 11. Screen shot of agents navigating themselves on a floor space

    For all agentsCheck all other agents

    If distance to agent < (agent size + safety factor)Number of collisions ++Tag agent as having inconsistency

    Figure 12. System state validation algorithm

  • 8/14/2019 schaef01s

    11/15

    Complexity International Draft Manuscript

    schaef01 11 Copyright 2002

    Simulate

    Homing

    Safe-wander

    Calculate:

    effective speed,potential collisions

    Turn, stop,or

    go forward

    Determine if agents are onleft &/or right

    Determineangular

    directionto goal

    IncrementTime Step

    Check forCollisions

    Figure 13. Simulation hierarchy for physical agent case study

    Within the architecture, we varied safe-wandering rule sets and parameters according to anexperimental design. After performance measures were saved in a file, output was analyzedusing spreadsheets and statistical software to determine the emergent behavior of the system.The emergent behavior for this system was defined as a set of equations that specified thesystem performance measures (effective speed and collision probability) as a function of thesystem parameters. The equations can be used to determine good ranges of parameters to runan actual system. A discussion of the results of this analysis can be found in Schaefer [10].

    Figure 14 shows one of the equations and the plots of this equation derived fromsimulating the system using the safe-wandering rule set shown in Figure 10. This plot showsthat the average speed of the agents is reduced when the amount of floor space occupied byagents and variation in the directions the agents are traveling increases. The average speeddoes not increase significantly when they try to travel faster if the floor space occupancy ordirectional variation is high.

  • 8/14/2019 schaef01s

    12/15

    Complexity International Draft Manuscript

    schaef01 12 Copyright 2002

    Figure 14. Effective speed as a function of floor space utilization, amount of variation in agent travel direction, and agents desired speed.

  • 8/14/2019 schaef01s

    13/15

    Complexity International Draft Manuscript

    schaef01 13 Copyright 2002

    Conclusion

    The framework described in this paper allows one to experiment with and tune the itemsdepicted in Figure 1 to determine a systems emergent behavior, as we did in the abovesection with navigation rules and their parameters. Table 2 below summarizes other potential

    applications for that can be simulated within the simulation architecture described in thispaper. For each of the applications listed, examples of agents, communities, and theirattributes are shown.

    Table 2. Possible applications of agent simulation architectureApplication Agents Agent

    AttributesAgentGoal

    Community CommunityAttributes

    EmergentBehavior

    References

    Auction BuyerSeller

    Moneyavailable

    Minimizeprice

    Maximizeprofit

    Auction room Buyermembership

    Sellermembership

    Final prices [12 Wurmanet al. 1998]

    Criminalbehavior Criminal Last hit StealHideFind loot

    CityCountry Set of financialinstitutions

    Pattern of victims [13]

    Insect habits AntsRoaches

    GenderLast mealtime

    Followpheromones

    Find foodFind mate

    Picnic area List of ants Ant trail [14, 15, 16]

    Materialhandling

    RobotsParts

    SpeedCurrent

    locationTravel

    directionNext machine

    Go to machineMinimize

    timeAvoid

    collisions

    Factory floor Set of activerobots

    Machinelocations

    Delivery rate [10, 17, 18]

    Robot soccer Robots

    Ball

    Have ball

    Currentlocation

    Teamdesignation

    Bring ball to

    location

    Field Set of robots

    in eachteam

    Winning team [19]

    Scheduling PartsMachines

    Process time Schedulestart time

    Minimize wait

    Manufactur-ing cell

    Machine setParts set

    Schedule [20]

    Software Object codeVirtual

    machine

    MethodsAttributesObject type

    Access otherprocessors

    Changeparameters

    Computernetwork

    Computers,printers, etccurrently online

    Filterunwantedinformation

    [21]

    Stock market Traders $ available Maximizeportfolio

    Trading room Availablestocks

    Portfolioprofile

    [22]

    Street PedestriansVehicles

    SizeSpeed

    Avoidcollisions

    Minimizetime

    Crossintersection

    Intersection SizePedestrian

    countVehicle count

    Throughput [1, 17

    Terrainsearching

    Robots Speed Find a soilsample

    Find a mine

    Distant planetMine field

    Set of robotsMine

    locations

    Rate of locatingitems

    [4]

    War games SoldiersWeapons

    Ammo power Hit target Battle field Set of targets Targetaccuracy

    [23]

  • 8/14/2019 schaef01s

    14/15

    Complexity International Draft Manuscript

    schaef01 14 Copyright 2002

    Acknowledgements

    This work was partially supported by the Federal Highway Administration under contractDTFH61-97-P-00137.

    References

    [1] K. L. Sanford, J. A. Wentworth, and S. McNeil, A-Life in the Fast Lane, in Proceedingsof the AI 1995 15th International Conference, 1995, pp. 431-440.

    [2] P. Maes, Artificial Life meets Entertainment: Interacting with Lifelike AutonomousAgents, Communications of the ACM vol. 38-11, pp. 108-114, 1995.

    [3] C. W. Reynolds, Flocks, herds, schools: A distributed behavioral model, ComputerGraphics vol. 21-4, pp. 25-34, 1987.

    [4] M. Mataric, Designing and understanding adaptive group behavior, Adaptive Behaviorvol. 4-1, pp. 51-80, 1995.

    [5] T. Oka, J. Tashiro, and K. Takase, Object-oriented BeNet programming for data-focusedbottom-up design of autonomous agents, Robotics and Autonomous Systems 28, pp.127-139, 1999.

    [6] I. Jacobson, Object-Oriented Software Engineering, ACM Press and Addison-Wesley:Reading MA, 1990.

    [7] I. Tzikas, Agents and Objects: The Difference, M.Sc. Thesis, Department of Computer

    and Systems Sciences, Stockholm University, 1997.[8] D. Martin, A. Cheyer, and D. Moran, The Open Agent Architecture: A framework for

    building distributed software systems, Journal of Autonomous Agents and Multi-AgentSystems vol. 4, pp. 143-148, 2001.

    [9] P. Maes, Modeling adaptive autonomous agents, Artificial Life vol. 1, 1-2, ed. C. G.Langton, Cambridge, MIT Press, 1995.

    [10] L. A. Schaefer, Flow Theory for Flocks of Autonomous Mobile Physical Agents, Ph.D.Thesis, Department of Industrial Engineering, Arizona State University, 2000.

    [11] B. Hayes-Roth, K. Pfleger, P. Lalanda, P. Morignot, and M. Balabanovic, A Domain-Specific Software Architecture for Adaptive Intelligent Systems, IEEE Transactions onSoftware Engineering, 1994.

    Werner, G. M. and Dyer, M. G. 1992. Evolution of herding behavior in artificial animals.Proceedings, From Animals to Animats 2, Second International Conference onSimulation of Adaptive Behavior, 432-441.

    [13] Hexmoor, H., Lafary, M., and Trosen, M. 1999. Adjusting Autonomy by Introspection.AAAI Spring Symposium, Stanford, CA.

    [14] Millonas, M. M. 1992. A connectionist type model of self-organized foraging and

    emergent behavior in ant swarms. Journal of Theoretical Biology 159, 529-552.

  • 8/14/2019 schaef01s

    15/15

    Complexity International Draft Manuscript

    h

    [15] Schweitzer, F., Lao, K., and Family, F. 1997. Active random walkers simulate trunk trailformation by ants. Biosystems 41, 153-166.

    [16] Parunak, V. 1996. Go to the ant. Proceedings from the Santa Fe Institute Conference, 15-21.

    [17] Schaefer, L. A., Mackulak, G. T., Cochran, J. K, and Cherilla, J. L. 1998. Application of a General Particle System Model to Movement of pedestrians and vehicles. InProceedings of the 1998 Winter Simulation Conference, 1155-1160.

    [18] Doty, K. L. and Van Aken, R. E. 1993. Swarm robot materials handling paradigm for amanufacturing workcell. IEEE International Conference on Robotics and Automation.

    [19] Balch, T. 2000. Hierarchic Social Entropy: An Information Theoretic measure of robotgroup diversity. Autonomous Robots 8, 3.

    [20] Baker, Metaphor or Reality: A Case Study where Agents Bid with Actual Costs toSchedule a Factory, Market-Based Control: A Paradigm for Distributed Resource

    Allocation, S. H. Clearwatter (ed.) River Edge, NJ: World Scientific Publishing Co., pp.184-223, 1996.

    [21] De Bra, P. and Post, R. 1994. Information Retrieval in the World-Wide Web: MakingClient-Based Searching Feasible. Journal on Computer Networks and ISDN Systems 27,183-192.

    [22] Kephart, J. O., Hanson, J. E., and Greenwald, A. R. 2000. Dynamic pricing by softwareagents.

    [23] Lee, T., Ghosh S., and Nerode A. 2000. Asynchronous, Distributed, Decision-MakingSystems with Semi-Autonomous Entities: A Mathematical Framework. IEEETransactions on Systems, Man, and Cybernetics Part B: Cybernetics 30, 1.

    Sycara, K., Decker, K., Pannu, A., Williamson, M., and Zeng, D. 1996. Distributed IntelligentAgents. IEEE Expert.

    Tambe, M., Pynadath, D., and Chauvat, N. 2000. Building dynamic agent organizations incyberspace. IEEE Internet Computing 4, 2.