Presentation is loading. Please wait.

Presentation is loading. Please wait.

UML for Behavior-Oriented Multi-Agent Simulations Christoph Oechslein, Franziska Klügl, Rainer Herrler, and Frank Puppe University Würzburg, Germany.

Similar presentations


Presentation on theme: "UML for Behavior-Oriented Multi-Agent Simulations Christoph Oechslein, Franziska Klügl, Rainer Herrler, and Frank Puppe University Würzburg, Germany."— Presentation transcript:

1 UML for Behavior-Oriented Multi-Agent Simulations Christoph Oechslein, Franziska Klügl, Rainer Herrler, and Frank Puppe University Würzburg, Germany

2 UML for Behavior-Oriented Multi-Agent Simulations Christoph Oechslein, Franziska Klügl, Rainer Herrler, and Frank Puppe University Würzburg, Germany

3 UML for Behavior-Oriented Multi-Agent Simulations Christoph Oechslein, Franziska Klügl, Rainer Herrler, and Frank Puppe University Würzburg, Germany Motivation UML Behavior-Oriented Multi-Agent Simulation (bMASim)Behavior-Oriented Multi-Agent Simulation (bMASim) Using UML for bMAS Small Example Conclusion & Future Work

4 CEEMAS 2001 - UML for bMAS Motivation Model concept to running experiment non trivial: Top-down analysis  bottom-up implementation Concurrent (inter)actions Complex agent behavior leads to large models Huge amount of parameters Own non standard specification language  Need for tools and frameworks which Are easy to learn, clear and understandable and Solve the above problems, e.g. scale for concrete domains.

5 CEEMAS 2001 - UML for bMAS UML Already established framework in software engineering. Diagram types for static and dynamic parts (e.g. activity graph and sequence diagram).activity graphsequence diagram Includes OCL a formal language for attaching additional information, like invariants, constraints, etc..OCL  Meets criteria for ‘ideal’ framework

6 CEEMAS 2001 - UML for bMAS Behavior-Oriented Multi-Agent Simulation (bMASim) Focus not on the internal reasoning process, but on the agent behavior and its interactions. Associate task fulfillment with activities. Incorporating organizational concepts like roles. Includes a simulated environment. Agent entails state variables and a rule-based behavior representation (based on activities).

7 Using UML for bMASim

8 CEEMAS 2001 - UML for bMAS Class Diagrams Shows state variables: Type Visibility attribute (private or public) Constant Interaction methods: Visibility attribute (private or public) Interaction partner Ant – energy_level: double + const size: double + deposit_trail (Pheromone) + following_trail (Pheromone) + forage (Environment) – feed (Ant)

9 CEEMAS 2001 - UML for bMAS OCL in Class Diagrams Class invariants: local and global Ant – energy_level: double + const size: double + deposit_trail (Pheromone) + following_trail (Pheromone) + forage (Environment) energy_level > 0 Ant.allInstances->sum(energy_level) < MAX_VALUE local invariants + ants: List of Ants + preys: List of Prey ants.count > 0 ants.sum(size) + preys.sum(size) < MAX_SIZE Nest global invariants

10 CEEMAS 2001 - UML for bMAS Activity Graphs for bMAS Describing the behavior of an agent as an activity graph State-like activities also well suited Transitions are conditions on external and internal state variables Example Missing:Describing the interactions

11 CEEMAS 2001 - UML for bMAS Interaction Types Pheromone deposit trail follow trail... Ant behavior a)Interaction via Object Flow creating larva... transform interaction via creating larva interaction via creating adult Adult behavior Larva behavior b)Interaction via Agent Generation forage Ant behavior... interaction via variable food in nest c)Interaction via Variable Modification Nest + food: double

12 CEEMAS 2001 - UML for bMAS ‘Predator – Prey’ Example Searching random movement Perishing always same position as predator  Energy > RC same position as prey - with prob succ always generate new predator instance energie = -RC Reproduce Predator_class Energy: number Reproduction_Cost (RC) Absorbable_Energy_from_prey (abE) Success_probability (prob succ ) Energy_boundary (E bound ) energy = energy + prey.energy*abE Capure Prey Searching random movement always same position as prey  Energy > RC generate new prey instance energie = -RC Reproduce Prey_Class Energy : number Reproduction_Cost (RC) Absorbable_Energy_from_food (abE) Energy_boundary (E bound ) always same position as food instance Feeding energy := energy + Food.Energy *abE Perishing always energy := 0 Succumb same position as successful predator Generate new predator instance withEnergy:= StartEnergy Generate new prey instance withEnergy:= StartEnergy Food_Class Energy :number Prey acquiresenergyof food instance, no change in food instance of prey Predator takes all energy instance Energy <abE Energy <abE

13 CEEMAS 2001 - UML for bMAS OCL in activities or states Pre- and post conditions: in activities or states describing interactions OCL for adding precise and unambiguous information basis for validation and verification lower the gap between implementation and design Pick up Prey precondition: jaw  full ! = true post condition jaw  full = = true

14 CEEMAS 2001 - UML for bMAS Conclusion and Future Work Using various parts of UML for bMASim: Activity graphs prominent mean Describing interactions in activity graph Using OCL for adding precise and unambiguous information Classification of interaction types Future work: Structuring the information in documentation nodes Methodology from concept model to UML Application of this framework in real world models

15 CEEMAS 2001 - UML for bMAS Object Constraint Language Specifying invariants for classes Describing pre- and post conditions Describing guards and event triggers Tracing associations in object graphs Constraints as definition for the operation

16 CEEMAS 2001 - UML for bMAS Sequence Diagrams Message passing between objects X-axis: participants of interaction; y-axis: time- line Direct concurrently interaction: AgentUML In bMASim: no complex negotiation Indirect interactions Asynchrony and undirectedness Sequence diagrams are not well suited, since only one possible path is shown

17 CEEMAS 2001 - UML for bMAS Activity Graphs in general Standard node types: Start- and end node Activity node (primitive or compound) Other node types: State, decision, signal receiving and sending, Object flow nodes and documentation nodes Standard edge types: Transitions between activities/states Other edge types: Signal flow, object flow and documentation links


Download ppt "UML for Behavior-Oriented Multi-Agent Simulations Christoph Oechslein, Franziska Klügl, Rainer Herrler, and Frank Puppe University Würzburg, Germany."

Similar presentations


Ads by Google