Post on 25-Dec-2015
Object Services and Consulting, Inc.
Craig Thompson 11
Agent Gridhttp://www.objs.com/agility/index.html
PI: Craig Thompson
Object Services and Consulting, Inc. (OBJS)thompson@objs.com, http://www.objs.com
DARPA coABS ProgramPM: Jim Hendler
Acknowledgements to Brian Kettler (ISX) and Frank Manola (OBJS)
Object Services and Consulting, Inc.
Craig Thompson 22
Agents + the Global Grid
Agent Grid - System Concept View
Server
Component
Service
Server
Data Service
AA
A
A
A
AA
A
A
A
A
A
A
A
AA
A
A
A
AA
A
A
A
A
A
A
A
A
A
AA
Server
Data Service
Server
Component
Service
Object Services and Consulting, Inc.
Craig Thompson 33
Agent Grid
• Our paper “Characterizing the Agent Grid”
• documents examples of grids
• describes views of the Agent Grid as• a set of agent mechanisms
• a global registry/system management backplane environment for agents and agent systems that provides resource, services, and system wide properties
• a collection of interacting semantic grids representing various kinds of collections: organizations, teams, … ensembles (including ALP) all acting like mini-grids to control local resources
• all of the above
• lists grid architecture issues• Is the agent grid itself a kind of agent system?
• Is the agent grid logically centralized? hierarchical?
• How can we use existing object services? Must they be wrapped as agent services?
• Is there a minimal set of services?
• will be published in Bradshaw’s agent book forthcoming
http://www.objs.com/agility/tech-reports/990623-characterizing-the-agent-grid.html
Object Services and Consulting, Inc.
Craig Thompson 44
Grid Vision: “Meta” Comments
• The Grid Vision is evolving…
– Goals of Grid Vision Effort
• capture shared vision for Grid from CoABS community to guide development of Grid prototypes
• communicate vision to potential Grid users
– GITI/ISX has put out a strawman draft for discussion
• GITI/ISX Vision Team coordinating the process
• Vision Doc Ver. 2.0 (June 1999) - released internally to CoABS
• Current version is not necessarily a proper subset of CoABS Program Vision...
– Will capture additional community inputs and iterate...
• discussions at the June workshop
• bottom-up inputs from prototype building experience
• establish “affinity groups” to produce interface descriptions for specific services
• coordination with ALP, CPOF, CAST, and other efforts
Object Services and Consulting, Inc.
Craig Thompson 55
The Challenge
• Information Systems in the Military (and elsewhere) are:– moving from “sneaker net” to network-centric to information-
centric systems exploiting interconnectivity• e.g., USAF Global Grid (C2 CONOPS), USAF SAB
Battlespace Infosphere, ABIS Information Grid, etc.– enabled by faster, cheaper hardware and software
technologies (telecomm, WWW, Java, etc.)• The Challenge:
– How do we go from isolated applications to interconnected and interoperating “super applications”* (aka “systems of systems”*) that can work together to solve complex tasks in dynamic environments and that are built with minimum effort and maximum reuse?
*need a new name for these concepts
Object Services and Consulting, Inc.
Craig Thompson 66
An Example
• Problem:
– Rapidly configure a collection of military command and control systems in 24 hours to handle a new kind of crisis involving a coalition of the US and various countries that have never worked together before….
– Need a “super application” tailored to the current crisis and battlespace...
• Tasks to achieve:
– establish interconnectivity (networks, etc.) over a wide area
– establish interoperability among systems (syntax and semantics of data exchanged)
– manage computing and data resources and protect them from misuse (by enemy and coalition members)
– allow human C2 staff to interact with the super application
– reconfigure the super application to handle changes in the mission, battlespace, coalition membership, collection of IT systems and resources (computing, comm, and data) available, etc.
Object Services and Consulting, Inc.
Craig Thompson 77
Target Agent Grid Capabilities
• “When your personal assistant connects to the Grid, it tells the Gridwhere you are, what you are doing, how your resources are configured,what supplies you need, and so on.”
• “Your forces might be dynamically reassigned to a new plan; your computer equipment…might briefly be recruited to run a meteorologicalsimulation by a load-balancing agent; due to your personal expertise inArabic, you might receive documents to translate, or perhaps not if theGrid realizes your time is already claimed by other responsibilities.”
• “All resources - mental and material, human and non-human, permanentand ephemeral - are balanced by the Grid. Goals are reconciled byagents in the Grid and priorities are established.”
• “Whatever kind of agent you are, when you enter the Grid, youimmediately become part of a larger, coherent system. And when you leave the Grid…the Grid prepares for your return by generating statusreports, reading and summarizing your mail, planning how to use yourresources, and so on.”
Object Services and Consulting, Inc.
Craig Thompson 88
Target operational requirements
• Humans and agents connect to the agent grid anytime from anywhere and get the information and capability they need. Enable teams led by humans and staffed by agents.
• Intelligent automation -- easier application connectivity where networks of agents self-organized at run-time. Reduce the 60% of time in command and control systems spent manipulating stovepipes; incrementally replace stovepipes.
• Connect the $40B worth of DoD equipment that currently only interoperates with one or two other components, permitting better knowledge sharing. Another example is a process improvement in factory 1 is broadcast immediately to factories 2..N.
• Agent-enable object and web applications to reconfigure as new data and function is added to the system. Add capability modularly. Stable, scaleable, evolvable, reliable, secure, survivable, ...
• Scale to millions of agents so agents are pervasive and information and computation is not restricted to machine or organization boundaries.
• Survivable so if one agent goes down, another takes its place;
Requirements View
Object Services and Consulting, Inc.
Craig Thompson 99
Super Applications: Key Requirements
• Built from heterogeneous software components– including legacy systems/applications, objects, agents– components built by different people for different tasks over
long periods of time• Must operate continuously, with high reliability, in dynamic
environments– requirements always changing– system (re)configuration must be done quickly, with minimal
programmer effort - ideally at runtime• Must interact with human users
– humans need to understand and influence the operation• Must “play nice” with other super applications
– share resources, avoid deadlock, etc.
Object Services and Consulting, Inc.
Craig Thompson 1010
Some Challenges in Using Agents to Build Super Applications
• How do agents from different agent architectures interoperate?– e.g., in CoABS there are agents from RETSINA, OAA,
TEAMCORE, etc.– they have different kinds of agents and different control
strategies and agent communication languages– what interoperability mechanisms are needed for agent
communication, etc?• standards, protocols, services
• How do non-agent components play?– objects, legacy applications, etc.– e.g., via wrappers, proxies, etc.
Object Services and Consulting, Inc.
Craig Thompson 1111
Sources of Requirements for the Grid
• Technology Integration Experiments (TIEs)– Integration/OOTW TIEs (initially NEO domain)
• 1-2 dozen agents from different agent architectures• manually assembled for initial demo• custom-built interoperability agents (e.g. RETSINA-OAA)• Grid will simplify above by providing more general
interoperability services and reducing the services that an agent developer must build
– Scalability TIEs (agent control, mobility, etc.)• Grid will provide testbed to host a set of agents and
collect data on those agents for hypothesis testing via Logging, Visualization, and other services
• Applications– Other user application domains will supply requirements for
Grid-enabled super applications
Object Services and Consulting, Inc.
Craig Thompson 1212
Agent Technology Enables Super Apps
• Components that are agents (or have been wrapped as agents) can assemble themselves into super applications: dynamic configurations or teams tailored to the problem/situation:
– components can discover one another at runtime:• agents can declare their capabilities: functions performed, interfaces,
languages, etc. (These capabilities and interfaces can adapt.)• middle agents can match needs to capabilities and provide brokering,
facilitation, translation, etc.– components can establish interoperability in order to cooperate on the task at
hand (exchange knowledge and provide services)• agents can communicate using shared languages, ontologies, & protocols.• agent can negotiate subtasking, resources, communication protocols
– the organization/configuration and behavior of the team can change if the task, situation, or computing environment changes
• agents can represent and reason about the goals and beliefs of other agents and users. They can self-organize into teams that have team goals.
• agents can detect changes and adapt their behavior
• agents can work offline, and some have mobility
Object Services and Consulting, Inc.
Craig Thompson 1313
The CoABS Agent Grid is…
• An infrastructure (or “meta-architecture”) that supports interoperability among agents from heterogeneous architectures– collection of standards, protocols, services, libraries, wrappers,
and low-level infrastructure– augments, but does not replace, services within particular
infrastructures: the Grid is not another “reference architecture” (i.e., heterogeneity is embraced)
– e.g., The Internet provides interoperability (via gateways, services, and standards) between heterogeneous computer networks.
• A dynamic collection of agents using this infrastructure– e.g., The Internet is both the plumbing and what uses it
Object Services and Consulting, Inc.
Craig Thompson 1414
A View of the Grid
internet
CORBA WWWJava RMIJINI E-mail etc...
Grid Services (and access protocols, ACLs, etc.)
O1Agent Community X(services, infrastructure)
Agent Community Y(services, infrastructure) O2 L1 L2
A1 A2 A3 A4 A5 A6
Super Application 1
L3
A1 A6 O2L2
Super Application 2
A1 A2 O1L3
GridInfrastructure
for Comm(multiplesubstratespossible)
Componentson Grid:AgentsObjects
Legacy Apps.
Super Applications:self-assembling (at run time), dynamic teams of
heterogeneous, distributed components(agents, objects, legacy applications)
for the problem/task/situation at hand:e.g., System of Systems, InfoSpheres, etc.
Enabled by the CoABS Grid.
Space of Grid-readycomponents
Components useGrid Services for
discoveryinteroperabilityteam formationmobility, etc.
The CoABS Grid
Object Services and Consulting, Inc.
Craig Thompson 1515
Super Application Self-assembly & Reconfiguration
• Capabilities– Component discovery– Component interoperability (with semantics)– Component adaptability– Teams of diverse, distributed components
• Services– Metadata directory services (white/yellow pages)– Ontology services (capability/need advertisement)– Facilitation services (find/recruit components)– Comm mechanisms/infrastructure (messaging)– Translation services (interoperability)
Object Services and Consulting, Inc.
Craig Thompson 1616
Smooth-running, Efficient Super Applications
• Capabilities– Efficiency– Adaptability– Reliability and Security– Understandability and Taskability
• Services– Team coordination services– Mobility services– Exception management, component lifecycle management,
security services– Logging and event services– Visualization services
Object Services and Consulting, Inc.
Craig Thompson 1717
Easy to Build/Maintain Super Applications
• Capabilities– Programmability– Customizability– Testability
• Services– Infrastructure services and adapters– Exception mgmt., translation, mobility, component
lifecycle– Logging, event, visualization, simulation, debugging– Policy and protocol management services– Grid mgmt. services (start, monitor, manage, maintain
Grid services and infrastructure)
Object Services and Consulting, Inc.
Craig Thompson 1818
Architectural View of the Agent Grid
• Grid concept implies:– A set of connected resources– Advanced capabilities for integrating them
• Agents + services such as:– Infrastructure (Jini discovery & join, messaging, …)– Metadata directory (naming, registration,…)– Translation– Facilitation (matchmakers, brokers, facilitators,…)– Team management – Lifecycle and Grid management – Mobility– Ontology management– Security– Logging & event management– Visualization
Object Services and Consulting, Inc.
Craig Thompson 1919
agent properties & kinds• communication
capability• computation capability• by role in system
• information agent• data sources
• interface agent• NLI, multimodal• coop response
• task agent• web/email agent• middleware agent
• mobile agent, itinerary• social, personality,
motivation, forgetting• intelligent agent
distributionmessaging svcs*agent life cycle* - start, stop,
checkpoint, name service**event monitoringleasing, compensationcatalog services*, registry/repository* register*, offer/accept/decline publish*, subscribe* trading*, matchmaking, advertising*, negotiating*, brokering*, yellow pages*security** authenticate* encrypt access control lists* firewall* CIA model agent suspectstransactionspersistence*query, profile (of metadata)*data fusionreplication* groups multicast(scarce) resource mgmt*,
allocate*, deallocate*, monitor*,
local, global optimization, load balancing*, negotiation for resources*
schedulingtime, geo-locationrules, constraintsplanning*property listversioning, config
Agent Reference Architecture
speech acts*: ACL* - KQML, FIPA ACL, OAA ICL
planning*• reactive*• goal interactions*• discrete vs. continuous*• constraints• iterative, revision• workflow
systemicgrid features
common services
AGENT SYSTEM• single Vs. multi-agentAGENT SYSTEM• single Vs. multi-agent
ensembles• # of agents*• teams, peers,
contracting,• org. responsibility• roles, capabilities,• mutual beliefs• hierarchy*• conversational
policies*
scalability*
policy*, management• resource dial
survivability
evolvability
reliable*
licensing & cost
QoS*• accuracy• priorities
GRID
time-constrained*
control*, coordination*,multi-agent synchronization• cooperation, competition
adaptation, evolution*via market model, ...
federates
infrastructureprimitives• reflection• serialization• threads• interceptors• proxies• filters• multicast • wrappers
• legacy sys• data sources
ONTOLOGY**• Ontolingua, OKBC• metadata representations
• interests, locations, availability, capability, price/cost
• XML and web object models
I*3BADDAICE
IA
EDCS
Quorum
OMGJTFJini
ALP, HLA, IA
Architecture Principle: separation of concernsdeconstructionist view - what can you take away
and still have an agent system
secure*, trust
societies• closed vs.. open,
communities of interest
learning• by example• ...
mobility**
heterogeneous*• computing environ. • agent systems• ACLs• content languages• ontologies• policies• services• open world
assumption
autonomousdecentralized*
xxx = Agility addresses these* = Architecture WG in Pittsburg* = Control WG in Pittsburg* = Interoperability WG in Pittsburgred = Sun Jini green = other DARPA programs
content languages• KIF, FOL, IDL, RDF
missing• views• MOP
More common services
instrumenting, loggingcachingqueuingrouting, reroutingpedigree, drill downtranslation*...
DDB
http://www.objs.com/agility/tech-reports/9808-agent-ref-arch-draft3.ppt
http://www.objs.com/agility/tech-reports/9810-agent-comparison.htmlhttp://www.objs.com/agility/tech-reports/9809-best-of-class-capabilities.htm
Object Services and Consulting, Inc.
Craig Thompson 2020
Migration foils goes here
Object Services and Consulting, Inc.
Craig Thompson 2121
Grid Services
• Provide Grid-wide (“global”) functionality• Augment services provided by “local” agent architectures• Grid limited in its visibility & control of indiv. agents• Need an architecture/infrastructure that allows plugging in of
services easily– various service access mechanisms (ACLs, APIs, etc.)
• Distinction between services in and on Grid is blurry– e.g., route planning agent could be used by military planning
agent or by Grid mobility service• Goal is to encourage “market” for Grid services
– standard interfaces with multiple implementations• Leverage existing CoABS/external technology
Object Services and Consulting, Inc.
Craig Thompson 2222
Grid Operation Services
• Infrastructure Services (for interconnectivity)– message delivery, bandwidth adaptability, etc.– leverage: Internet, CORBA, HTTP, Java RMI, JINI, etc.
• Grid Management (for administration of Grid)– enable human/agent control of Grid services, resources– leverage: visualization services, policy services, etc.
Object Services and Consulting, Inc.
Craig Thompson 2323
Component Interoperability Services
• Metadata Directory (for component discovery)– white pages, yellow pages– leverage: lightweight vocabularies, XML, RDF, LDAP, JINI,
CORBA Naming/Trader, OODB/DBMS, etc.• Ontology Management (compon. discovery, interop.)
– store & provide access to ontologies, inferencing– leverage: KB work, XML, etc.
• Translation (for interoperability)– between agent comm languages (primitives, content, ontologies)
• Facilitation (for interoperability, task achievement)– matchmakers, brokers, etc.– leverage: intelligent matching, blackboards, etc.
Object Services and Consulting, Inc.
Craig Thompson 2424
Super Application Operation Services (1)
• Lifecycle Management (for component mgmt.)– agent/component instantiation/birth, death, cloning, status
• Mobility (for dynamic adaptability)– agents move while running to other computing nodes via
docks, itineraries, etc.– leverage: Java, security services
• Security (for resource protection)– user/agent authentication, access ctrl, encryption, etc.– leverage: DARPA IA/IS work, CORBA/Java Security
• Team Coordination (for teams to achieve tasks)– dynamic team formation and tasking, team monitoring– leverage: team-oriented programming
Object Services and Consulting, Inc.
Craig Thompson 2525
Super Application Operation Services (2)
• Security (for resource protection)– user/agent authentication, access ctrl, encryption, etc.– leverage: DARPA IA/IS work, CORBA/Java Security, etc
• Exception Mgmt. (for fault tolerance/recovery)– detect and handle common agent exceptions– leverage: ontology of exception types & strategies
• Logging/Event Mgmt. (for debugging and analysis)– capture agent activities, messages, etc. - can mine this
data– enable sharing of common events (via triggers, etc.)– leverage: XML, CORBA Events, JINI Events, etc.
Object Services and Consulting, Inc.
Craig Thompson 2626
Super Application Operation Services (3)
• Visualization (for human understanding/control)– show agent activities/messages (for debugging, etc.)– show problem-solving activity/results (for end-users)– leverage: GUI technology (2D/3D, VR), HTML, etc.
• Policy/Protocol Mgmt. (for customization)– library of policies and protocols for security, comm, etc.– support building super applications on the Grid tailored to
particular domains/tasks– supports user admin of Grid and dynamic selection &
negotiation on protocols by agents at runtime– leverage: protocol/policy representation work
• Testing/Debugging– includes instrumentation, simulation, visualization, etc.
Object Services and Consulting, Inc.
Craig Thompson 2727
Directions
• Increased development of standards (technical and domain)• Further integration with Internet/Web technologies, e.g.,
– Use of XML in agent technologies– Internet as agent communication mechanism
• Further integration with components / service architectures, e.g.,– Increasing use of Java technology (e.g., Jini)– Agent Grid (CoABS): “agentized Object Services
Architecture”
Object Services and Consulting, Inc.
Craig Thompson 2828
Layered Grid Perspectives
• Layered functional grids– Information, Sensor, and Engagement grids– e.g., ABIS, Network Centric Warfare
• Layered technical grids– Computational grid – Data grid– Object grid
• adds behavior to data grid and links data and links them
• Object enhancements to the Web an illustration
– Agent grid (object grid plus “smarter objects”)
Object Services and Consulting, Inc.
Craig Thompson 2929
Layered Technical Grids
• Each technical grid layer provides advanced compositional mechanisms for things at that level, e.g.: – A computational grid allows formation of larger “virtual
computers” from combinations of physical computers– A data grid allows formation of federated data collections
from combinations of existing data– An agent grid allows formation of new agents (teams) from
combinations of existing agents• Ideally, the compositional mechanisms will support
a closure property– The resulting compositions can be treated as individual
entities at that level for further composition
Object Services and Consulting, Inc.
Craig Thompson 3030
Agent/Grid Architecture Issues
• What are agents? - code and data packets that are autonomous, adaptive, cooperative, mobile, interoperable … We want all these properties in future agent-based systems. We need experience building systems with these properties.
• Pervasiveness - How do we insure that the architecture stays lite-weight for wide-spread adoption. • Embracing heterogeneity - We must piggyback agent systems on already pervasive infrastructure like ORBs, the
Web, email, and DBMS systems. We must identify the specific kinds of heterogeneity we want agent system architectures to support.
• Separation of concerns• agent-agent separation - can agents access each other’s state directly• agent-service separation - do agents implement the long list of services that the grid provides or is that done via
underlying component-based middleware? • grid-agent separation - agents are autonomous but they cooperate and compete for resources within the
software grid. The grid provides some global systemic properties and some basic shared services. Is there an explicit grid or is it implicit in the way agents interact with each other? Are some “services” (like planning) optionally distributed into agents or are they available from the grid’s planing service? Can new services be autoloaded into a grid that does not have them?
• Semantic interoperability, ontology - do ontologies scale? How do they extend class libraries?• Licensing - Agents, data sources, and component software need an economic model so broad communities can get
value from them. A model of licensing might be critical to success in the large.• Agent communication language (ACL) - Is the ACL compositional and extensible so one can define new speech acts
from existing ones? How many speech acts is enough? 20 or 5000?• Control points - where are the control points where different control algorithms might be substituted into the
architecture• Grid federation issues - How are software grids federated - flat versus hierarchical models? If different grids contain
different policy choices or different services, how does that affect agents communicating across grid boundaries? Can we add new services and -ilities to a grid once it is deployed? how transparent is addition or subtraction of services and ilities
• Coordination - Insure Agent Reference Architecture augments DARPA ISO ATAIS architecture. Provide template for next generation unified OMG, FIPA, and W3C agent standards. Insure that reference implementations (toolkits) exist and are widely available.
Object Services and Consulting, Inc.
Craig Thompson 3131
Some Referencessee http://www.objs.com/reports.html
• Characterizing the Agent Grid– http://www.objs.com/agility/tech-reports/990623-characterizing-the-agent-grid.html
• Systemic Properties– http://www.objs.com/aits/9901-iquos.html
Object Services and Consulting, Inc.
Craig Thompson 3232
Object Component Agent ?
• state• behavior• encapsulation• inheritance
• reflection• packaging• serialization• repository
• TBD
What is an Agent?
deconstructionist view:agents augment objects with additional capabilities
• ACL• process inside• agent framework• planning• mobility• rules• …• goal/task-oriented• autonomous• ontologies• collaborative/teams
Object Services and Consulting, Inc.
Craig Thompson 3333
What is Interoperability?
• Definition: “the ability of two or more systems or components to exchange information and to use the information that has been exchanged” [IEEE]
• Information includes anything exchanged, e.g.:• Data (control or domain-related)• Operation invocations on objects• Error notifications
• Interoperability is based on various agreements (shared assumptions) among the interacting objects about the information exchanged
• Disagreements may limit the possible interoperability,(partial interoperability is possible) or deny it entirely