You are on page 1of 43

Intelligent Agent Technology

Jeffrey M. Bradshaw Bob Carpenter Rob Cranfill Mark Greaves Heather Holmback Renia Jeffers Luis Poblete Amy Sun

Applied Research and Technology Shared Services Group The Boeing Company jeffrey.m.bradshaw@boeing.com

Why Software Agents?

Original agent work instigated by researchers studying distributed intelligence New wave of agent research motivated by two practical concerns: Overcoming the limitations of current user interface approaches Simplifying the complexities of distributed computing Though each of these problems can be solved in other ways, the aggregate advantage of agent technology is that it can address both of them at once: by supplementing direct manipulation with indirect management approaches by building in high-level, loosely-coupled collaborative capabilities out of the box

Evolution of System Connectivity


Disjoint

Ad hoc

Encapsulated

Cooperating Systems with Single Agent as Global Planner

Cooperating System with Distributed Agents


A

Agent-Enabled System Architecture

What is a Software Agent?

Agents are software entities that function continuously and autonomously in a particular environment that is often inhabited by other agents and processes Ideally a software agent should be able to: carry out activities without requiring constant human guidance learn from its experience communicate and collaborate with people and other agents move from place to place over a network as necessary

Not all software agents need be intelligent (agents vs. minions)


There is no hard dividing line between object technology and multiagent technology

Basic Agent Characteristics


Agents act autonomously to accomplish objectives.
Goal-Directed Knowledgeable Persistent Proactive & Reactive

Autonomous

Agents cooperate to achieve common goals.


Communication Protocols Knowledge-Sharing Coordination Strategies Negotiation Protocols

Agents adapt to their environment.


Dynamic Interaction Alternate Methods Machine Learning

Adaptive

Cooperative

Note: Agents can be either static or mobile, depending on bandwidth requirements, data vs. program size, communication latency, and network stability
(Dyer, DARPA CoABS)

Agents and Objects


Basic unit Objects instance Agents agent

State-defining parameters

unconstrained

knowledge, desires, intentions, capabilities,


messages defined in suites defined in conversations honesty, consistency,

Process of computation Message types Message sequences Social conventions

operations defined in classes implicit none

(Adapted from Shoham)

Applications of Software Agents

Office automation/engineering support


mail filtering meeting scheduling intelligent assistance training and performance support

Information access

retrieval, filtering, and integration from multiple sources Internet, intranet, extranet fair allocation of limited computing resources dynamic rerouting and reassignment of tasks

Resource brokering

Active document interfaces


intelligent integration and presentation to suit the task dynamic configuration according to resource availability and platform constraints

Intelligent collaboration

between systems among people mixture of people and agent-assisted systems

Boeing IAT Program Objectives


u

More powerful agent frameworks


New KAoS release UtterKAoS: Conversations, Security, Persistence, Mobility, Middle Agents, Planning Incorporation of COTS components (e.g., Voyager, Java platform enhancements)

Easier creation of sophisticated agents


ADT, comprised initially of CDT, SDT, PDT

Deploy in spectrum of application areas


Current areas: Information Access, DIG-IT, NASA Aviation Extranet, DARPA JumpStart New opportunities: Spacecraft autonomy, hybrid networking QoS, security, UCAV, engineering, manufacturing

Some Long-Term Requirements for Industrial-Strength Agents


Architecture appropriate for a wide variety of domains and operating environments Hardware-, operating-system-, programming-languageindependent Separability of message and transport layers Foundation of distributed-object/middleware (e.g.,CORBA, DCOM) and Internet technologies Fits well into component integration architectures (e.g., ActiveX, JavaBeans, Web browsers) Principled extensibility of agent-to-agent protocol Designed to work with other agent architectures, and to allow easy agentification of existing software Must be able to incorporate agent interoperability standards as they evolve

KAoS Implementation Context


Adaptive Virtual Document

Component integration framework

T
SGML/XML Component

Database Component Multimedia Component

Agents CORBA
Web and other Internet services Link Servers Object Request Broker Component tools and services Fine-grained data objects

Local and remote databases and services

KAoS Structure and Dynamics


Birth Life Update Structure Formulate/Act on Intentions

Agent Structure
Knowledge Facts Beliefs Desires Intentions Capabilities

Death

Cryogenic State

KAoS Extension and Generic Agent


Agent Extension Specific to Particular Agents Shared by All Agents Optional Planner Various Capabilities

Conversation Support Security

Transport-Level Communication

Generic Agent

Agent-to-Agent Communication Within an Agent Domain


Agent Domain

Generic Agent Instance Agent A Agent-toAgent Protocol

Agent B

Generic Agent Instance

Domain Manager and Matchmaker


The Domain Manager: Controls entry/exit of agents within a domain, governs proxy agents (i.e., security) Maintains a set of properties on behalf of the domain administrator Provides the address of the Matchmaker to agents within its domain (i.e., naming) The Matchmaker: Helps clients find information about the location of agents that have advertised their services Forwards requests to Matchmakers in other domains as appropriate Can be built on top of native distributed object system services (e.g., trader) Agents Providing Services: Advertise their services to the Matchmaker Are notified by the Matchmaker if their services have been registered Withdraw their services when they no longer wish to provide them Agents Requesting Services Ask the Matchmaker to recommend agents that match certain criteria Are given unique identifiers for the agents that match the criteria Communicate directly with these agents for services

Anatomy of a KAoS Domain


Telesthetic Extension
External Resource Proxy to Another KAoS Domain

Mediation Extension

GA KAoS Agent Domain


Ext. from Foreign Domain Adapter

GA
Proxy Extension

Domain Mgr. Extension

GA

GA
Matchmaker Extension

GA

GA

GA = Generic Agent

Conversations

Social interaction is more appropriately modeled when conversations rather than isolated illocutionary acts are taken as the fundamental unit of discourse Two approaches to implementing agent conversations (Walker and Wooldridge):

off-line design: social laws are hard-wired in advance emergence: conventions develop from within a group of agents

KAoS currently provides only for off-line design of conversations, represented as state-transition networks

Shared knowledge about message sequencing conventions enables agents to coordinate frequently recurring interactions of a routine nature simply and predictably. Cohen and Smiths semantics and joint intention theory have been used to analyze KAoS conversation policies In the future, more sophisticated agents will either be able to use less constraining landmark-based conversation policies or fall back to more rigid policies with identical semantics to communicate with simpler agents In support of this, DARPA is funding us to develop a ConversationDesign Tool (CDT)

KAoS Conversation Policies


u
u

Interaction among agents best modeled at the conversational level, rather than isolated speech acts Conversation policies are agent dialogue building-blocks that provide a set of constraints that define and restrict what can take place in individual agent conversations
Policies can be expressed via many different representation formalisms, from regular expression grammars to dynamic logics

Conversation policies ensure reliable communication among heterogeneous agents while lessening agents burden of inference
Agents choose between a greatly reduced number of possible conversational moves Conversation manager (component of generic agent) assures compliance with policy; handles exceptions

References: http://www.coginst.uwf.edu/~jbradsha/

Conversation for Action Policy

Communication about commitments (promise, renege) is handled explicitly, and A can notify B when the request was not fulfilled to its satisfaction (decline report) See formal analysis of Conversation for Action Policy in Smith and Cohen 1996 AAAI paper

KAoS Applications

DIG-IT: Boeing digital data integration effort to integrate agents in next-generation PMA and BOLD NASA Aviation Extranet: Agent-assisted access to information and services over a large-scale virtual private network AHCPR CDSS Project: Long-term follow-up support for bone marrow transplant patients at the Fred Hutchinson Cancer Research Center DARPA Jumpstart Project: Development of agent design toolkit (Boeing, UWF Cognition Institute, Sun Microsystems, IntelliTek) Agents for space applications: Proposal to use KAoS for a multi-agent testbed in satellite operations, and in the development of a Personal Satellite Assistant (in preparation)

JumpStart Project Overview


u

Selected under the DARPA CoABS Program


Approximately 20 other participants

u u u

Partners: Boeing , Sun, UWF, IntelliTek Collaborator: Oregon Graduate Institute (CHCC) Deliverables:
Prototype software (CDT and SDT) Periodic technical reports and demos Interoperability demos with other CoABS participants

DARPAs Vision of the Future of Agents


u

The Future of Agent Ensembles


Agents authored by different vendors at different times Wide variety of agent reasoning and action capabilities Complex operational environment:
Unpredictable universe of action Dynamic task-specific agent teams Collaborative, negotiated problem-solving behavior

The Future of Agent Developers


More agents written by domain experts; fewer agents written by agent-technology experts Decreased ability to control agent contexts of use

Simple Agents May Not Need a Complex Theory


u

Simple agent systems may require only simple models of communication to achieve their ends
Limited tasks, collaborations, interactions with one another Predictable all simple-agent universe of action Limited and domain-specific reasoning requirements Conversations are atomic transactions

Example:
Simple personal information retrieval agents
interact mainly with non-agent information sources little negotiation or bargaining

Sophisticated Agents Require Sophisticated Theory


u

But, consider more complex applications, involving:


Higher reliability, verifiability, precision of expression Arbitrary, dynamic agent collaboration with negotiation Unpredictable universe of action Complex autonomous reasoning about other agents, plans Extensive human-agent interaction

Examples:
Electronic Commerce/Electronic Trading, Air Traffic Control, Health Care, Military, etc.

This requires a sophisticated multiagent communication model, e.g., conversations, with an explicit semantic foundation.

Operating in Heterogeneous What Weve Got Here is a Failure To Communicate Environments

Mixture of different agent frameworks Mixture of simple and sophisticated agents Approach: shared conversation and security policies, generated off-line, that increase interoperability and robustness in heterogeneous agent environments

JumpStart Technical Objectives

Current Focus: Communication and Security tools


More agents written by domain experts; fewer agents written by agent-technology experts CP scenarios require that agent policy configuration be rapid and robust Additional classes of development tools needed in future

Help developers design reliable agent conversations


Help develop ACL semantic and pragmatic theory and standards Provide a prototype conversation design tool (CDT)
Aid agent developers in understanding ACL semantics Help select, specialize or generate appropriate conversation policies

Help developers design reliable systems with desired agent security characteristics
Develop foundations for agent security and mobility standards Provide prototype security design tool (SDT) allowing agent developers to easily select, specialize or generate appropriate agent security policies

Conversation Policy Example: Winograd and Flores CFA

Combining Finite-State-Based and Plan-Based Conversation Policy Approaches


u u

Intelligent agents can use less constraining plan-based policies that give them flexibility of determining many specifics of conversational moves on-the-fly Constraints governing plan-based conversation policies make them less complicated to implement than unrestricted agent dialogue models Simpler agents will continue to rely on more rigidly defined FSM-based policies where the universe of possible moves has been pre-computed off-line FSM and plan-based versions of same policy must comply to same semantics and pragmatics Appropriate version can be negotiated between agents at runtime

Extending Semantics/Pragmatics
u

Participate in ongoing ACL development


KAoS, AgentTalk, FIPA, KQML-Lite, KQML-Rite Ultimate goal of consensus on a compositional semantics with principled extensibility

Analyze the ACL speech acts & conversation policies


We will study/develop basic conversation properties (e.g., the ordering, timing, sequences of communication acts) Match representations of conversation policies to diverse levels of agent capability:
Finite-state-machine models Landmark models Emergent conversations

FSM and landmark models of same policy must comply to same semantics and pragmatics; choice of model negotiated at runtime between agents We will also investigate other pragmatic conditions imposed by context (e.g., meta-conditions on agent conversations)

CDT: An Extensible Java Toolkit for Agent Conversation Design


u u

The CDT is a formal design and verification system for a given theory of agency and ACL Stanfords OpenProof will be the core framework
OpenProof is a component-based (JavaBeans) formal heterogeneous reasoning environment
Allows development of various representations (sentences, reasoning trees, FSMs, Dooley graphs, Petri nets, etc.) Logical fragments (deductive rules, theorem-provers) Heterogeneous transfer rules

Extensible to different logics and theories of agency


u

Generate resultant conversation policies


Off-line design simplifies agent development and reduces burden of inference for agents at runtime Policies mediate interaction, helping increase interoperability and robustness in heterogeneous environments

Java Security and Mobility


u u

Java is currently the most popular and arguably the most security-conscious mainstream language for agent development Its cross-platform nature makes it well-suited for heterogeneous environments However Java 1.0-1.1 failed to address many of the challenges posed by agent software
All or nothing philosophy in sandbox Lack of fine-grained resource control Security policy implementation requires writing your own security manager Applet mechanisms are insufficient for autonomous agent mobility

New Developments in Java Security and Mobility


u u

Mechanisms for increasing configurability, extensibility, and fine-grained access control are under development at Sun Microsystems Java 1.2 enhancements
Applets and applications on equivalent security footings Finer-grained configurability and better resource control Specification of much of the security policy via an external policy file, thus separating policy from mechanism

These new developments provide an initial foundation for support of agent-unique requirements

Security Design Tool (SDT)


u

Accelerate incorporation of required agent security and mobility features into the Java platform
Foundation of new Java security model + changes to Java VM Work with vendors, developers, standards organizations

Issues for Java platform enhancement and SDT development


Agent authentication and PKI management Secure communication Enhanced configurability and resource management
Denial of service issues: CPU, disk, memory, display Load balancing and grid resource dial

Support for secure agent mobility


u

SDT Benefits
Configurable starter set of agent security policies Interoperability among different agent frameworks (grid security dial?) Faster creation of robust agents by non-experts

Agent Scram Capabilities for Anytime Mobility

Anytime Mobility
u

Telescript provided completely transparent agent mobility Current Java-based agent systems do not
Agent system code runs inside the VM; no access to execution state

Advantages of transparent agent mobility


Agent code need not be structured with many entry points Allows the agent system (as well as the agents themselves) to move agents between hosts May be transparent to the agent (may require additional redirection of agent resources) Supports load balancing of long running agents in the grid

Requires modifications to the Java VM

Airplane Troubleshooting Evolution


"PAPER" BASED REFERENCE
(Standalone / Linearly Organized / Org Driven Tools (Stovepipes) / Unsync Revs / Not @ Jobsit e / Rev Cycle 2 Mo.) Today's Environment (Not Process Oriented) Variable Fault Dow nload Tools ACARS Reporting FRM Anecdotal BITE DDG FIM AMM CLG Troubleshooting CBT IPC

COMPUTER BASED REFERENCE


(Relevant Standalone Ref Data / Hyperlinked / Org Driven (StovePipe) / Semi-Sync Revs / @ Jobsite / Rev Cycle 2 Mo.)

PMA Prototype (Bridge to Process Oriented) Variable Fault Dow nload Tools ACARS Reporting FRM Anecdotal BITE

Dispatch Deviation Guide (DDG) Fly or Fix

Fault Isolation Manual (FIM) Troubleshooting

Airplane Maintenance Manual (AMM) Remove/Replace Test/Restore

Illustrated Parts Catalog (IPC) Parts Where & When Needed

INTELLIGENT PERFORMANCE SUPPORT & REFERENCE TOOLS


(Process Based / Hyperlinked / Intelligent Agents / Multimedia / Seamless Fault Det - Fly or Fix Res / Rev Cycle 2 Mo.)

Vision (Process Oriented) Process Steps Approach


In Flight Fault Detection & Downlink Electronic QRH & ACARS Personnel Readiness Component Location Multimedia Training Enterprise Data Fault Isolation Agent Assisted Trouble Shooting Fly / Fix Return to Service Multimedia (JIT) Agent Assisted R&R, Test & Return to Service Update Data "Documents" Feedback to the Fault Fix System

Update Airline Enterprise Data System Feedback to Airline Enterprise System

Underlying New Technologies Required

Component Integration Architecture

Intelligent Agents

Independent Links

Wireless & Wearable Computing

Media Servers
11.130.6 Evolution

Agent Roles in Technical Information


u

Agent-Assisted Document Construction At the user-interface, agents work in conjunction with compound document and web browser frameworks and document management tools to select the right data, assemble the needed components, and present the information in the most appropriate way for a specific user and situation.
A

Agent-Assisted Software Integration Behind the scenes, agents take advantage of distributed object management, database, workflow, messaging, transaction, web, and networking capabilities to discover, link, manage, and securely access the appropriate data and services.

Aviation Extranet Goals


By the turn of the century, airlines will be able to dynamically reconfigure their flight operations for improved safety and more efficient transportation for the traveling public

Develop middleware components to integrate and extend the capabilities of aviation legacy systems on a secure extranet to support:

Real-time aircraft and airport situational awareness and scheduling and planning functions Maintenance and operations procedures enhancements Feedback data mechanisms to design/manufacturing models and simulators

Develop Extranet Global Information Services


Intelligent agents Metadatabases and Data Warehouses

Conduct advanced research in decision support tools for the Aviation Community

Aviation Extranet Middleware Architecture


Industry Data Sources Industry Data Sources Real-Time Ops Meta-Dbases
Doman Service Stations

Industry Data Sources Maintenance/ Ancillary Meta-Dbases


Domain Service Design/ Stations Manufacturing

Meta-Dbases

Domain Service Stations

Regulations/ Documentation Meta-Dbases

Intelligent Web Servers


Domain Service Stations

Industry Data Sources CORBA Inter faces Intelligent A gents Web Browser

Extranet Security

Authenticate Once Permission-Based Access Encryptable Communication

Agent-Based Framework for Information Access


User Agent User Agent

Matchmaker Agent Metadata/ Ontology Agent

Information Broker Agent

Information Broker Agent

Matchmaker Agent Metadata/ Ontology Agent

Information Service Agent

Information Service Agent

Information Service Agent

* Matchmaker is connected to

Information Sources

almost every agent

You might also like