Gary Kratkiewicz Amelia Fedyk Daniel Cerys

Slides:



Advertisements
Similar presentations
UNIVERSITY OF JYVÄSKYLÄ Mobile Chedar – A Peer-to-Peer Middleware for Mobile Devices Presentation for International Workshop on Mobile Peer-to- Peer Computing.
Advertisements

Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Technical Architectures
Software Engineering Techniques for the Development of System of Systems Seminar of “Component Base Software Engineering” course By : Marzieh Khalouzadeh.
1 Software Testing and Quality Assurance Lecture 15 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Fundamentals of Information Systems, Second Edition
Building Parallel Time-Constrained HLA Federates: A Case Study with the Parsec Parallel Simulation Language Winter Simulation Conference (WSC’98), Washington.
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Maintaining and Updating Windows Server 2008
Enterprise Resource Planning
Connector Types Interaction services broadly categorize connectors Many details are left unexplained. They fail to provide enough detail to be used in.
IMPROUVEMENT OF COMPUTER NETWORKS SECURITY BY USING FAULT TOLERANT CLUSTERS Prof. S ERB AUREL Ph. D. Prof. PATRICIU VICTOR-VALERIU Ph. D. Military Technical.
Integrating a Distributed Agent-Based Simulation into an HLA Federation Gary Kratkiewicz Amelia Fedyk Daniel Cerys.
Software Agents: An Overview by Hyacinth S. Nwana and Designing Behaviors for Information Agents by Keith Decker, Anandeep Pannu, Katia Sycara and Mike.
High Level Architecture Overview and Rules Thanks to: Dr. Judith Dahmann, and others from: Defense Modeling and Simulation Office phone: (703)
The High Level Architecture Introduction. Outline High Level Architecture (HLA): Background Rules Interface Specification –Overview –Class Based Subscription.
Tool Integration with Data and Computation Grid GWE - “Grid Wizard Enterprise”
Systems Analysis and Design in a Changing World, Fourth Edition
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Parallel and Distributed Simulation Distributed Virtual Environments (DVE) & Software Introduction.
1 KIMAS 2003Dr. K. Kleinmann An Infrastructure for Adaptive Control of Multi-Agent Systems Dr. Karl Kleinmann, Richard Lazarus, Ray Tomlinson KIMAS, October.
Framework of a Simulation Based Shop Floor Controller Using HLA Pramod Vijayakumar Systems and Industrial Engineering University of Arizona.
Jini Architecture Introduction System Overview An Example.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Design Reuse Earlier we have covered the re-usable Architectural Styles as design patterns for High-Level Design. At mid-level and low-level, design patterns.
Multi-Tier Communication Abstractions for Distributed Multi-Agent Systems Michael Thome
Providing web services to mobile users: The architecture design of an m-service portal Minder Chen - Dongsong Zhang - Lina Zhou Presented by: Juan M. Cubillos.
Tool Integration with Data and Computation Grid “Grid Wizard 2”
COUGAAR 1 A CRITICAL STUDY OF THE COUGAAR AGENT-ARCHITECTURE Submitted to Prof. Lawrence Chung Tarun R. Belagodu Sasikiran Kandula.
Maintaining and Updating Windows Server 2008 Lesson 8.
System Software Laboratory Databases and the Grid by Paul Watson University of Newcastle Grid Computing: Making the Global Infrastructure a Reality June.
1 The XMSF Profile Overlay to the FEDEP Dr. Katherine L. Morse, SAIC Mr. Robert Lutz, JHU APL
Air Force Institute of Technology
INTRODUCTION TO WIRELESS SENSOR NETWORKS
Chapter 7: Modifiability
Development of a Simulator for the HANARO Research Reactor (Communication Protocol) H.S. Jung.
Chapter 1: Introduction to Systems Analysis and Design
Materials in Projects Scenario Overview
Fundamentals of Information Systems, Sixth Edition
Self Healing and Dynamic Construction Framework:
Presented by Munezero Immaculee Joselyne PhD in Software Engineering
Java Beans Sagun Dhakhwa.
Objectives State the reasons for the complexity involved in the development of software Define the following terms Objects Classes Messages Methods Explain.
Peer-to-peer networking
Parallel and Distributed Simulation Techniques
Distribution and components
High Level Architecture
The Client/Server Database Environment
Understanding the OSI Reference Model
#01 Client/Server Computing
Anne Pratoomtong ECE734, Spring2002
Enterprise Service Bus (ESB) (Chapter 9)
Introduction to Software Testing
Fault Tolerance Distributed Web-based Systems
Module 01 ETICS Overview ETICS Online Tutorials
Analysis models and design models
SOA in Action Chapter 10 B. Ramamurthy 1/16/2019.
A Component-based Architecture for Mobile Information Access
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
Chapter 1: Introduction to Systems Analysis and Design
E-BUSINESS E-Business is the powerful business environment that is
AIMS Equipment & Automation monitoring solution
Presented By: Darlene Banta
Chapter 13: I/O Systems.
System architecture, Def.
Chapter 1: Introduction to Systems Analysis and Design
#01 Client/Server Computing
ONAP Architecture Principle Review
Current Status of GlobalSim Link between JTLS-GO + GESI
Presentation transcript:

Gary Kratkiewicz Amelia Fedyk Daniel Cerys Integrating a Distributed Agent-Based Simulation into an HLA Federation Gary Kratkiewicz Amelia Fedyk Daniel Cerys

Purpose of this Session Understand how to: Use distributed multi-agent systems, with a specific emphasis on the Cougaar architecture Integrate a distributed multi-agent simulation into an HLA federation Design a full-scale Cougaar society for integration with an HLA federation

Outline Motivation and Goals Distributed Agent Computing and Cougaar Integration Approach Lessons Learned Design considerations for Cougaar societies Conclusion

Motivation Military combat simulations lack sophisticated logistics components Logistics support is critical to combat operations Cougaar-based logistics simulations provide capabilities not available in current military simulation systems Roadblock: lack of interoperability

Purpose Demonstrate the ability of Cougaar societies to interact with other simulations via HLA This would allow the following: Credible proposals of simulation systems based on Cougaar-HLA linkages The addition of realistic simulation of logistics to combat simulations

Technical Goals (1) Demonstrate that a Cougaar-based society of agents can act as an HLA federate Show that Cougaar time mechanisms can integrate with HLA time synchronization Confirm that a Cougaar society can work with a variety of RTIs: HLA 1.3 and HLA 1516 Fully asynchronous and partially asynchronous Java and non-Java based

Technical Goals (2) Develop techniques for creating or modifying Cougaar societies to be HLA federates Identify Further areas of research Additional functionality required in a full-scale Cougaar HLA federate

Outline Motivation and Goals Distributed Agent Computing and Cougaar Integration Approach Lessons Learned Design considerations for Cougaar societies Conclusion

Agents Agents are independent software entities that react to events and initiate actions by themselves Different agent-based architectures yield agents with varying capability levels Agents can have or define roles, tasks, beliefs, desires, or intentions Agents can be static or mobile Some agents or agent systems are considered intelligent

Distributed Agent Computing A distributed system is a collection of separate processes or information systems that can act together as a single system Distributed agent computing involves agent-based systems that operate in a distributed manner Purpose: Implement complex behavior Model or simulate complex systems

Cougaar Cognitive Agent Architecture Java-based architecture Rich design can model diverse objects and interactions Agents are Cougaar components with a defined functionality and local memory store (Blackboard) The behavior of the agent emerges from the composite of plugins

Cougaar Blackboard(BB) implements a publish/ subscribe API Plugins view objects on the BB by creating subscriptions Logic Providers are lightweight agent components responsible for messaging and BB modifications A collection of agents make up a cougar society

Cougaar Plugin, Agent, and Node Structure of the Cougaar Architecture (K. Kleinmann et al, 2003)

UltraLog 4 year project sponsored by DARPA Layer built on top of Cougaar Architecture Developed to model military logistics within a distributed multi-agent system Added Security, Robustness and Adaptivity to the cougar infrastructure. Test society models interaction between large set of military organizations. Military logistics is a wonderful exercise for the cougar architecture because of the complex reporting structure and interactions.(Like any large-scale system)

UltraLog Society runs in strictly planning mode(predictive solution) and execution mode(simulated solution) Solution includes detailed transportation and supply chain plan Society capable of garbage collection of completed/stale BB objects Military logistics is a wonderful exercise for the cougar architecture because of the complex reporting structure and interactions.(Like any large-scale system)

FCS Supportability Future Combat Systems (FCS) Supportability extends Ultralog Functionality Agents designed to reduce the logistics footprint Additional business logic added to plugins to model highly mobile, self-sufficient units. Plugins enhanced to accept 3rd party simulation data

Outline Motivation and Goals Distributed Agent Computing and Cougaar Integration Approach Lessons Learned Design considerations for Cougaar societies Conclusion

Runtime Infrastructure (RTI) HLA Overview Simulations Data Collectors Interfaces to Live Players Simulations Data Collectors Interfaces to Live Players Simulations Data Collectors Interfaces to Live Players Simulations Data Collectors Interfaces to Live Players Interface Runtime Infrastructure (RTI)

Federation and Society Design Created small UltraLog logistics society Pared down to model only bulk fuel consumption 2 fuel-consuming organizations (agents) 18 other organizations in supply chain and chain of command Two society federates based on above: High-fidelity logistics society for general simulation Demand generation society to model fuel demand

Prototype Society

Non-Cougaar Federate Performed verification with Java-based, non-agent, non-Cougaar federate Demand generation society to model fuel demand

RTI Selection Tested prototypes with following HLA RTIs: Pitch 1516 LE Pitch 1.3 LE DMSO NG 1.3 Demonstrated the feasibility of using Cougaar with: HLA 1.3 and IEEE 1516 RTIs Fully asynchronous (Pitch) and partially asynchronous (DMSO) RTIs Java-based (Pitch) and non-Java (DMSO) RTIs

Simulation Models Cougaar time: Mapping to simulation model: Continuously advances with real (wall clock) time Can be advanced ahead to some future time Mapping to simulation model: Advance time with real time or ahead in equal steps  time-stepped simulation model Advance time in unequal steps  event-driven model Most Cougaar simulations run for hours and simulate operations over months Equal steps  scaled real-time Unequal steps  non-real-time

Time Management Cougaar time Cougaar and HLA time synchronization Initialized to physical time Advances at same rate as wall clock Can be stepped to future point in time Society should be in quiescence before stepping Cougaar and HLA time synchronization None: not useful for simulation, OK for planning Conservative: appropriate Optimistic: not appropriate; Cougaar cannot roll back time OK since different federates can use different synchronization methods

Iterative Development Approach Build a federation without HLA time management Two federates Allowed us to get running quickly Build a federation with HLA time management Added RTI time synchronization Build a federation with a multi-node Cougaar society Three federates total Two federates map to one society

Phase 2: HLA Time Management High - Fidelity Logistics Society NCA 1 35 ARBN Ambassador Service 6 INFBN Advance Time Cougaar Node Demand Generation Society HLA RTI Supply Task Interaction Time Management Federate 1 Federate 2

Phase 3: Multi-Node Society High - Fidelity Logistics Society Demand Generation Society HLA RTI Supply Task Interaction Time Management NCA 1 35 ARBN Ambassador Service 6 INFBN Advance Time Cougaar Node Federate 1 Federate 3 Federate 2

Results of Integration Experiments Demonstrated interoperability between Cougaar and HLA RTIs in various combinations Demonstrated various operations: Subscribing a Cougaar federate and plugins to specific HLA interactions Interfacing a Cougaar society to the RTI via a single ambassador class Interfacing a Cougaar society to the RTI via a Cougaar service Synchronizing society time via the HLA mechanism using conservative synchronization Detecting tasks in one society, transferring the task info via HLA interactions, reconstituting the tasks in a second society Learned techniques and identified design considerations

Outline Motivation and Goals Distributed Agent Computing and Cougaar Integration Approach Lessons Learned Design considerations for Cougaar societies Conclusion

Interfacing Between Society and RTI Singleton ambassador class Separate ambassador class per RTI Performs following actions: Instantiates the RTI’s ambassador class Joins the federation execution (creating it first if necessary) Connects to interactions and objects Handles the interactions and object attributes from the federation Distributes them to the appropriate agent in the society Later moved ambassador class to Cougaar service Separate class instantiated per Cougaar node

Time Synchronization: Phase 1 Used a servlet-based, user-directed time advancement mechanism Allowed us to operate with a variety of simulation models Used for all phases Initially implemented without HLA time management For development purposes only Advanced time in high-fidelity society Time advance passed to demand generation society via interactions Small society – always ready

Time Synchronization: Phase 2 Conservative time synchronization Standard HLA mechanism Modified version of the user-directed Cougaar time advancement mechanism. Cougaar mechanism modified Obtains permission from the RTI before advancing time in the society Required ambassador class, adding plugins to handle time, and modifying the time advance servlet

Time Management Details User manually advances time via servlet Must manually determine quiescence Servlet places time change request object on agent’s blackboard Time plugin subscribes to object on blackboard Reads it when it appears and calls ambassador service Service checks for pending request; if not, sends request to RTI RTI grants advance when appropriate Service calls callback method in plugin Changes society time Stores new federation time RTI delivers appropriate messages to society

Mapping Agents, Actions, and Objects Cougaar societies contains many objects Map these objects to HLA actions and objects carefully to ensure acceptable performance Data can be transferred in HLA via interactions (events) and/or object attributes Mapping is heavily dependent on the society design Cougaar agents or asset objects map to HLA objects Cougaar events map to HLA interactions Cougaar objects such as UltraLog tasks could be mapped either way Depends on how long they can live and whether their contents change

Outline Motivation and Goals Distributed Agent Computing and Cougaar Integration Approach Lessons Learned Design considerations for Cougaar societies Conclusion

Federate Granularity Federate granularity: the level of mapping of federates to portions of a Cougaar society Consider size and organization of the society, and design of other (non-Cougaar) federates In our demonstration prototypes, each Cougaar node mapped to a federate. In a large complex society, a logical group of agents (covering multiple nodes) might constitute a single federate Transportation organization, combat organization, etc. Single agents could map to individual federates Make sure this makes sense

Society Design Selection of agents when federation contains multiple societies Functional split Same agents, different functions Organizational split Different agents in logical groupings

Time Synchronization Need automated time advance mechanism Trigger time advance requests automatically Based on schedule or events Check for quiescence before making request Society time is always advancing Time step needs to be large enough that society time advances an insignificant amount between steps

Adaptive Society Design Prototype HLA ambassador class hardcodes HLA interactions, objects, attributes Need to modify class when plugins change Better way: hardcode nothing in the ambassador class Each plugin would Register with the ambassador class Tell it which interactions and objects it was interested in The ambassador class would then Dynamically subscribe to the requested interactions Read the FOM file to get the attributes for each interaction Dynamically get the attribute handles Leverage Cougaar object discovery to match up objects in federates with those in the society

Operation Independent of Federation For more flexibility and survivability, design your society to operate Whether or not the appropriate federates are present If not available, use default plugins Or, use the Cougaar Message Transport Service (MTS) and create an HLA-specific link protocol Appropriate where a society May or may not be a member of a federation Has a number of other communication channels at its disposal MTS would select communication method based on availability and prioritization of channels Allows interoperation with simulations that exist outside of both the Cougaar society and the HLA federation

Outline Motivation and Goals Distributed Agent Computing and Cougaar Integration Approach Lessons Learned Design considerations for Cougaar societies Conclusion

Conclusion (1) Successfully Integrated a Cougaar-based agent society as a federate in V1.3 and 1516 HLA federations Integration leverages the benefits of both architectures Distributed agent-based architecture Standard simulation interoperability architecture Established how to Interface the society and the HLA RTI Synchronize society time with HLA RTI time Map agents, objects, and actions in the society to HLA objects and interactions

Conclusion (2) Examined integrating a full-size Cougaar society with an HLA federation Lessons learned can be applied to large-scale efforts Such as integrating large Cougaar-based logistics simulations with combat simulations Such integrated simulations would provide greater effectiveness than combat-only simulations

Gary Kratkiewicz Amelia Fedyk Daniel Cerys Integrating a Distributed Agent-Based Simulation into an HLA Federation Gary Kratkiewicz Amelia Fedyk Daniel Cerys