Upload
lee-whall
View
218
Download
2
Tags:
Embed Size (px)
Citation preview
Intelligent Agent TechnologyIntelligent 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
Why Software Agents?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
A
Cooperating System with Cooperating System with Distributed AgentsDistributed Agents
A
A
A
AA
Agent-Enabled System Agent-Enabled System ArchitectureArchitecture
Integrated interface to knowledge media
Agent as personal assistant
Agents as intelligent interface managers
Agents behind the scenes
Interapplication communication
Agent-to-agent communication
What is a Software Agent?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 multi-agent technology
Basic Agent CharacteristicsBasic Agent Characteristics
Agents adapt to their environment.
• Dynamic Interaction• Alternate Methods• Machine Learning
Agents cooperate to achieve common goals.
• Communication Protocols• Knowledge-Sharing• Coordination Strategies • Negotiation Protocols
Agents act autonomously to accomplish objectives.
• Goal-Directed• Knowledgeable• Persistent• Proactive & Reactive
Note: Agents can be either static or mobile, depending on bandwidth requirements, data vs. program size, communication latency, and network stability
Note: Agents can be either static or mobile, depending on bandwidth requirements, data vs. program size, communication latency, and network stability
AutonomousAutonomous
AdaptiveAdaptive CooperativeCooperative
(Dyer, DARPA CoABS)
Agents and ObjectsObjects Agents
instance agent
unconstrained knowledge, desires,intentions,
capabilities,…
operations messages
defined in classes defined in suites
implicit defined in conversations
none honesty, consistency,…
Basic unit
State-defining parameters
Process of computation
Message types
Message sequences
Social conventions
(Adapted from Shoham)
Applications of Software AgentsApplications 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
Resource brokering– “fair” allocation of limited computing resources– dynamic rerouting and reassignment of tasks
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 ObjectivesBoeing 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)
u Easier creation of sophisticated agents– ADT, comprised initially of CDT, SDT, PDT
u 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-language-independent
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
T
KAoS Implementation ContextAdaptive Virtual
Document
Web and other
Internet services
Link Servers
Fine-grained data objects
Component tools and services
Object Request Broker
SGML/XML Component
Database Component
Multimedia Component
Component integration framework
Agents
CORBA
Local and remote databases and services
KAoS Structure and Dynamics
Formulate/Act on Intentions
Life Agent Structure
• Knowledge • Facts • Beliefs• Desires• Intentions• Capabilities
Update Structure
Birth
DeathCryogenic
State
KAoS Extension and Generic AgentKAoS Extension and Generic Agent
Generic Agent
Agent Extension
Conversation Support
Transport-Level Communication
Security
Optional Planner
Various Capabilities
Shared by All Agents
Specific to Particular
Agents
Agent-to-Agent Communication Within an Agent Domain
Generic Agent
Instance
Generic Agent
Instance
Agent A
Agent B
Agent-to-Agent Protocol
Agent Domain
Domain Manager and MatchmakerThe 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
Generic Agent
GA
GA GA
GA
GA
MediationExtension
ProxyExtension
Adapter
MatchmakerExtension
DomainMgr. Extension
TelestheticExtension
Ext. fromForeignDomain
KAoS AgentDomain
ExternalResource
Proxy toAnother
KAoSDomain
GA
GA =
Anatomy of a KAoS DomainAnatomy of a KAoS Domain
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 Smith’s 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 Conversation-Design Tool (CDT)
KAoS Conversation PoliciesKAoS Conversation Policiesu Interaction among agents best modeled at the conversational
level, rather than isolated speech actsu 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
u Conversation policies ensure reliable communication among heterogeneous agents while lessening agent’s 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
u References: http://www.coginst.uwf.edu/~jbradsha/
“Conversation for Action” Policy
1A->B: Request
4
B->A:Promise
6
87
5
A->B: Decline Report
B->A: Renege
A->B: Accept Report
A->B: Counter
B->A: Counter
A->B: Withdraw
B->A: Decline
A->B: Withdraw
A->B: Accept
2 3B->A: Report Satisfied
A->B: Withdraw
A->B: Withdraw
9
• 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 OverviewJumpStart Project Overviewu Selected under the DARPA CoABS Program
– Approximately 20 other participants
u Partners: Boeing , Sun, UWF, IntelliTeku Collaborator: Oregon Graduate Institute (CHCC)u Deliverables:
– Prototype software (CDT and SDT)
– Periodic technical reports and demos
– Interoperability demos with other CoABS participants
DARPA’s Vision of the Future of DARPA’s Vision of the Future of AgentsAgents
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
u 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
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
u Example:– Simple personal information retrieval agents
• interact mainly with non-agent information sources
• little negotiation or bargaining
Simple Agents May Not Need a Simple Agents May Not Need a Complex TheoryComplex 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
u Examples:– Electronic Commerce/Electronic Trading, Air Traffic Control,
Health Care, Military, etc.
u This requires a sophisticated multiagent communication model, e.g., conversations, with an explicit semantic foundation.
Sophisticated Agents Require Sophisticated Agents Require Sophisticated TheorySophisticated Theory
Operating in Heterogeneous Operating in Heterogeneous EnvironmentsEnvironments
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
“What We’ve Got Here is a Failure To Communicate”
JumpStart Technical ObjectivesJumpStart 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: Conversation Policy Example: Winograd and Flores CFAWinograd and Flores CFA
1A->B: Request
4
B->A:Promise
6
87
5
A->B: Decline Report
B->A: Renege
A->B: Accept Report
A->B: Counter
B->A: Counter
A->B: Withdraw
B->A: Decline
A->B: Withdraw
A->B: Accept
2 3B->A: Report Satisfied
A->B: Withdraw
A->B: Withdraw
9
Combining Finite-State-Based Combining Finite-State-Based and Plan-Based Conversation and Plan-Based Conversation
Policy ApproachesPolicy Approachesu Intelligent agents can use less constraining plan-based policies that give them
flexibility of determining many specifics of conversational moves on-the-flyu Constraints governing plan-based conversation policies make them less complicated
to implement than unrestricted agent dialogue modelsu 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”u FSM and plan-based versions of same policy must comply to same semantics and
pragmaticsu Appropriate “version” can be negotiated between agents at runtime
Extending Semantics/PragmaticsExtending Semantics/Pragmaticsu Participate in ongoing ACL development
– KAoS, AgentTalk, FIPA, KQML-Lite, KQML-Rite
– Ultimate goal of consensus on a compositional semantics with principled extensibility
u 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 CDT: An Extensible Java Toolkit for Agent Conversation Designfor Agent Conversation Design
u The CDT is a formal design and verification system for a given theory of agency and ACL
u Stanford’s 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 MobilityJava Security and Mobilityu Java is currently the most popular and arguably the most
security-conscious mainstream language for agent developmentu Its cross-platform nature makes it well-suited for heterogeneous
environmentsu 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 New Developments in Java Security and MobilitySecurity and Mobility
u Mechanisms for increasing configurability, extensibility, and fine-grained access control are under development at Sun Microsystems
u 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
u These new developments provide an initial foundation for support of agent-unique requirements
Security Design Tool (SDT)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
u 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 Agent “Scram” Capabilities for Anytime MobilityAnytime Mobility
Anytime MobilityAnytime Mobilityu Telescript provided completely transparent agent mobilityu Current Java-based agent systems do not
– Agent system code runs inside the VM; no access to execution state
u 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
u Requires modifications to the Java VM
Airplane Troubleshooting EvolutionAirplane Troubleshooting Evolution
Today's Environment(Not Process Oriented)
• Variable Fault Download Tools• ACARS Reporting• FRM• Anecdotal• BITE
DDG FIM AMM CLG TroubleshootingCBT
IPC
"PAPER" BASED REFERENCE
COMPUTER BASED REFERENCE
Fly or Fix Troubleshooting Remove/ReplaceTest/Restore
Parts Where &When Needed
(Standalone / Linearly Organized / Org Driven Tools (Stovepipes) / Unsync Revs / Not @ Jobsite / Rev Cycle 2 Mo.)
(Relevant Standalone Ref Data / Hyperlinked / Org Driven (StovePipe) / Semi-Sync Revs / @ Jobsite / Rev Cycle 2 Mo.)
PMA Prototype(Bridge to Process Oriented)
• Variable Fault Download Tools• ACARS Reporting• FRM• Anecdotal• BITE
Vision (Process Oriented)
INTELLIGENT PERFORMANCE SUPPORT & REFERENCE TOOLS
(Process Based / Hyperlinked / Intelligent Agents / Multimedia / Seamless Fault Det - Fly or Fix Res / Rev Cycle Š 2 Mo.)
DispatchDeviation
Guide(DDG)
FaultIsolationManual(FIM)
AirplaneMaintenance
Manual(AMM)
IllustratedParts
Catalog(IPC)
In Flight FaultDetection & Downlink
PersonnelReadiness
Fault Isolation Fly / FixReturn to Service
Update Data"Documents"
Update AirlineEnterprise Data
SystemProcess Steps
Electronic QRH &ACARS
Component LocationMultimedia Training
Enterprise Data
Agent AssistedTrouble Shooting
Multimedia (JIT)Agent Assisted
R&R, Test &Return to Service
Feedback to the FaultFix System
Feedback to AirlineEnterprise SystemApproach
Component IntegrationArchitecture
Intelligent AgentsUnderlying NewTechnologies Required
Wireless & WearableComputing
Media ServersIndependent Links
11.130.6 Evolution
Agent Roles in Technical Informationu 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.
u 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.
A
A
A
AA
Aviation Extranet GoalsAviation Extranet Goals““By the turn of the century, airlines will be able to dynamically reconfigure their flight operations 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 publicfor 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 ArchitectureAviation Extranet Middleware Architecture
Design/ManufacturingMeta-Dbases
Regulations/DocumentationMeta-Dbases
Real-Time OpsMeta-Dbases
Maintenance/AncillaryMeta-Dbases
Web Browser
Intelligent Web Servers
CORBA Inter faces Intelligent Agents
Industry DataSources
IndustryData Sources
Industry DataSources
Industry DataSources
DomainServiceStations
DomainServiceStations
DomanServiceStations
DomainServiceStations
Authenticate Once Permission-Based Access Encryptable Communication
Airline
Boeing
DB
DB
DB
Web Server DB
Certificate Check
Certificate Check
User Client
Certificate Check
Agent
Agent
Authenticate (Reverse Proxy)
& Certificate
Check
DB
Agent
CORBA Server
Certificate Check
Agent
Agent
CORBA Server
DB
Agent
CORBA Server
CORBA Server
Agent
Gov't
Agent
A2A (over IIOP, TCP/IP, COM)
HTTP
IIOP
Data Access
Extranet SecurityExtranet Security
InformationService Agent
Metadata/Ontology
Agent
Information BrokerAgent
UserAgent
InformationService Agent
UserAgent
Information BrokerAgent
Metadata/Ontology
AgentInformation
Service Agent
Agent-Based Framework for Agent-Based Framework for Information AccessInformation Access
Information Sources
MatchmakerAgent
MatchmakerAgent
* Matchmaker is connected to almost every agent