COUGAAR 1 A CRITICAL STUDY OF THE COUGAAR AGENT-ARCHITECTURE Submitted to Prof. Lawrence Chung Tarun R. Belagodu Sasikiran Kandula.

Slides:



Advertisements
Similar presentations
Computer Systems & Architecture Lesson 2 4. Achieving Qualities.
Advertisements

Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Chapter 10: Execution Models Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Database Architectures and the Web
Silberschatz and Galvin  Operating System Concepts Module 16: Distributed-System Structures Network-Operating Systems Distributed-Operating.
Towards Autonomic Adaptive Scaling of General Purpose Virtual Worlds Deploying a large-scale OpenSim grid using OpenStack cloud infrastructure and Chef.
Effective Coordination of Multiple Intelligent Agents for Command and Control The Robotics Institute Carnegie Mellon University PI: Katia Sycara
Distributed Processing, Client/Server, and Clusters
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
Chapter 16 Client/Server Computing Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Technical Architectures
University of Jyväskylä An Observation Framework for Multi-Agent Systems Joonas Kesäniemi, Artem Katasonov * and Vagan Terziyan University of Jyväskylä,
Distributed Database Management Systems
Ensuring Non-Functional Properties. What Is an NFP?  A software system’s non-functional property (NFP) is a constraint on the manner in which the system.
Using Architecture Frameworks
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Objectives The key roles an architecture description plays in a software project. The key roles an architecture description plays in a software project.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
Course Instructor: Aisha Azeem
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Summary :- Distributed Process Scheduling Prepared BY:- JAYA KALIDINDI.
What is Software Architecture?
Adaptive Optimization of Solution Time In A Distributed Multi-agent System Amy Fedyk, Gary Kratkiewicz, Jeff Berliner, Mark Davis, Beth DePass, Rich Lazarus,
International Workshop on Web Engineering ACM Hypertext 2004 Santa Cruz, August 9-13 An Engineering Perspective on Structural Computing: Developing Component-Based.
DM Rasanjalee Himali CSc8320 – Advanced Operating Systems (SECTION 2.6) FALL 2009.
An Introduction to Software Architecture
Advanced Web Forms with Databases Programming Right from the Start with Visual Basic.NET 1/e 13.
Architecture-Based Runtime Software Evolution Peyman Oreizy, Nenad Medvidovic & Richard N. Taylor.
Integrating a Distributed Agent-Based Simulation into an HLA Federation Gary Kratkiewicz Amelia Fedyk Daniel Cerys.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Distributed Systems: Concepts and Design Chapter 1 Pages
Week 5 Lecture Distributed Database Management Systems Samuel ConnSamuel Conn, Asst Professor Suggestions for using the Lecture Slides.
Cracow Grid Workshop, October 27 – 29, 2003 Institute of Computer Science AGH Design of Distributed Grid Workflow Composition System Marian Bubak, Tomasz.
Chapter 14 Part II: Architectural Adaptation BY: AARON MCKAY.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Architectural Design of Distributed Applications Chapter 13 Part of Design Analysis Designing Concurrent, Distributed, and Real-Time Applications with.
Grid programming with components: an advanced COMPonent platform for an effective invisible grid © 2006 GridCOMP Grids Programming with components. An.
Distributed database system
1 KIMAS 2003Dr. K. Kleinmann An Infrastructure for Adaptive Control of Multi-Agent Systems Dr. Karl Kleinmann, Richard Lazarus, Ray Tomlinson KIMAS, October.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system architecture 1 after designing to meet functional requirements, design the system.
Shuman Guo CSc 8320 Advanced Operating Systems
Scalability Aspects of Agent-based Naming Services Todd Wright, Karl Kleinmann BBN Technologies
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Multi-Tier Communication Abstractions for Distributed Multi-Agent Systems Michael Thome
CSC 480 Software Engineering High Level Design. Topics Architectural Design Overview of Distributed Architectures User Interface Design Guidelines.
HADOOP Carson Gallimore, Chris Zingraf, Jonathan Light.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 15. Review Interaction-Oriented Software Architectures – MVC.
Basic Concepts and Definitions
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Basic Concepts of Software Architecture. What is Software Architecture? Definition: – A software system’s architecture is the set of principal design.
Operating Systems Distributed-System Structures. Topics –Network-Operating Systems –Distributed-Operating Systems –Remote Services –Robustness –Design.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
Gary Kratkiewicz Amelia Fedyk Daniel Cerys
Software Architecture
Self Healing and Dynamic Construction Framework:
System Design and Modeling
Software Architecture
CHAPTER 3 Architectures for Distributed Systems
#01 Client/Server Computing
Software Architecture
Introduction to Databases Transparencies
An Introduction to Software Architecture
Design Yaodong Bi.
#01 Client/Server Computing
Software Architecture
Presentation transcript:

COUGAAR 1 A CRITICAL STUDY OF THE COUGAAR AGENT-ARCHITECTURE Submitted to Prof. Lawrence Chung Tarun R. Belagodu Sasikiran Kandula

COUGAAR 2 COUGAAR Cognitive agent architecture (COUGAAR) is an agent architecture developed for DARPA under the Advanced Logistics program (ALP), by a consortium of companies during the period and further developed till 2004 under the DARPA program UltraLog

COUGAAR 3 What is it?  Its main purpose was to develop techniques to capture and solve problems related to military logistics planning and execution...  Cougaar is a large-scale workflow engine built on a component-based, distributed agent architecture.  The agents communicate with one another by a built-in asynchronous message-passing protocol.  Cougaar agents cooperate with one another to solve a particular problem, storing the shared solution in a distributed fashion across the agents.  Cougaar agents are composed of related functional modules, which are expected to dynamically and continuously rework the solution as the problem parameters, constraints, or execution environment change.

COUGAAR 4Society Society Community1 Node1Node 2 Agent2Agent1Agent2Agent1 Community2 Node1Node2 Agent2Agent1Agent2Agent1 Inter –agent communication Agent2 Agent 1 Relay Tier1

COUGAAR 5 Inter-Agent Relationships

COUGAAR 6 Inter-agent Relationships (cont.)  Superior/sub-ordinate relationship  long-term binding between the agents.  The designated supervisor can ask its subordinate to perform a certain function.  The sub-ordinate agent can make use of its resources, negotiate with other agents and work to achieve the goal. It keeps reporting to the supervisor agent at regular intervals.  Customer/provider relationship,  short-lived binding in which the customer requests for a service and the provider replies with the results of the service.

COUGAAR 7 Agent Internals Plugin2 Plugin1 Blackboard Tier2 Intra –agent communication

COUGAAR 8 Agent Internals (cont.) PLUGINS  Provide behavior and business logic to the agent’s operations.  Plugins are self-contained elements of software and are not dependent on other plugins.  Can communicate with other plugins only through the agent’s blackboard. They can publish results to the blackboards and react to events from the blackboard.

COUGAAR 9 Agent Internals (cont.) BLACKBOARD  It is an agent-local, partitioned, distributed memory store that supports subscribe/publish semantics.  Blackboards use the implicit invocation style of architecture.  The components (plugins) of the agent can be assigned objects. The components can add/delete/update objects from the blackboard. At the same time, they can subscribe to add/change/remove notification for certain objects. Only the owner of an object can modify it.  The COUGAAR blackboards are local to an agent and this provides for scalability. If a global blackboard had been used it would have been a single point of failure (as in JMS).

COUGAAR 10 ISSUES

COUGAAR 11 ROBUSTNESS  Each agent or cluster of agents reacts independently when it detects a potential loss of hardware components.  Locally optimizes the performance in the event of an attack; the overall performance may be adversely affected.  A much better alternative would be to have a coordinated recovery which can ensure that the overall performance suffers minimal hindrance.

COUGAAR 12 Robustness (cont.) Alternatives  When an agent or group of agents, identify a threat, they can query whether any other agents are facing the same threat. In case the attack is being faced by a group of agents, then these agents can negotiate with each other to determine which is the most appropriate action for each of the agents.  A separate agent, co-ordinator, can be assigned to take the necessary action to ensure survivability. This agent needs to be informed by any agent that perceives a threat and it is the responsibility of the coordinator agent to use other coordinator agents and arrive at a possible course of action.

COUGAAR 13 Blackboard-related issues  The blackboards used in the agents are local only to the agent i.e. contents of the blackboard are visible only to the agent in which it resides.  Blackboards are independent of each other and there is no existing control over the contents of the blackboard or the consistency between the elements of the blackboard.  For applications that require the agents to be asynchronous and more independent, this architecture can provide a good framework.

COUGAAR 14 Constructing societies and communities Interfaces  One significant requirement for a community is that it should provide single-coherent interface to other communities in the society.  Agents do not share state Alternative: Make a single agent as a gateway to a set of agents within the community. Drawbacks:  Scalability  Security

COUGAAR 15 Constructing societies and communities (cont.) Distribution All agents of one community:  One single LAN + communication - robustness  Distributed + robustness - communication overhead - expensive

COUGAAR 16 Agent Initialization and Node Agents  Static initialization  XML file which contains information regarding the agents that have to be created and the plugins that have to be loaded to each agent.  A node initializes an agent by granting it some resources and specifying the part of the XML file which is relevant to that agent.  Dynamic initialization  Each node can be run as a generic agent server i.e. it creates or remove agents from the node depending on the requests from other nodes.

COUGAAR 17Conclusions Other Concerns…  High-Bandwidth Requirement  Steep learning curve  Suitable only for very large applications  Synchronous / Asynchronous ?

COUGAAR 18References  Cougaar Architecture Document, BBN Technologies,  Christopher Matthews, An Expose of Autonomous Agents in Command and Control Planning, Command and Control Research and Technology Symposium,  Aaron Helsinger, Michael Thome, Todd Wright, Cougaar: A Scalable, Distributed Multi-Agent Architecture, IEEE SMC,  Dana Moore, Aaron Helsinger, David Wells, Deconfliction in Ultra-large MAS: Issues and a Potential Architecture, Proceedings of the first COUGAAR conference, 2004.