control. importance of control how to maintain global coherence without explicit global control?...

Download Control. Importance of Control How to maintain global coherence without explicit global control? Important aspects include how to determine shared goals

Post on 21-Dec-2015




0 download

Embed Size (px)


  • Slide 1
  • Control
  • Slide 2
  • Importance of Control How to maintain global coherence without explicit global control? Important aspects include how to determine shared goals determine common tasks avoid unnecessary conflicts pool knowledge and evidence
  • Slide 3
  • Task Decomposition A divide-and-conquer approach can reduce the complexity of a task: smaller subtasks require less capable agents and fewer resources The system must decide among alternative decompositions, if available Successful task decomposition depends greatly on a designers choice of operators The decomposition process must consider the resources and capabilities of the agents. Also, there might be interactions among the subtasks and conflicts among the agents
  • Slide 4
  • Task Decomposition Methods Inherent (free!): the representation of the problem contains its decomposition, as in an AND-OR graph System designer (human does it): decomposition is programmed during implementation. (There are few principles for automatically decomposing tasks) Hierarchical planning (agents do it): decomposition again depends heavily on task and operator representation
  • Slide 5
  • Task Decomposition Examples Spatial decomposition by information source or decision point: Functional decomposition by expertise: Pediatrician Internist Psychologist Neurologist Cardiologist Agent 1 Agent 2 Agent 3
  • Slide 6
  • Task Distribution Criteria Avoid overloading critical resources Assign tasks to agents with matching capabilities Make an agent with a wide view assign tasks to other agents Assign overlapping responsibilities to agents to achieve coherence Assign highly interdependent tasks to agents in spatial or semantic proximity. This minimizes communication and synchronization costs Reassign tasks if necessary for completing urgent tasks
  • Slide 7
  • Task Distribution Mechanisms Market mechanisms: tasks are matched to agents by generalized agreement or mutual selection (analogous to pricing commodities) Contract net: announce, bid, and award cycles Multiagent planning: planning agents have the responsibility for task assignment Organizational structure: agents have fixed responsibilities for particular tasks Recursive allocation: responsible agent may further decompose task and allocate the resultant subtasks
  • Slide 8
  • The Contract Net Protocol An important generic protocol A manager announces the existence of tasks via a (possibly selective) multicast Agents evaluate the announcement. Some of these agents submit bids The manager awards a contract to the most appropriate agent The manager and contractor communicate privately as necessary
  • Slide 9
  • Task Announcement Message Eligibility specification: criteria that a node must meet to be eligible to submit a bid Task abstraction: a brief description of the task to be executed Bid specification: a description of the expected format of the bid Expiration time: a statement of the time interval during which the task announcement is valid
  • Slide 10
  • Bid and Award Messages A bid consists of a node abstractiona brief specification of the agents capabilities that are relevant to the task An award consists of a task specificationthe complete specification of the task
  • Slide 11
  • Applicability of Contract Net The Contract Net is a high-level communication protocol a way of distributing tasks a means of self-organization for a group of agents Best used when the application has a well-defined hierarchy of tasks the problem has a coarse-grained decomposition the subtasks minimally interact with each other, but cooperate when they do
  • Slide 12
  • Cognitive Economy Prefer the simpler (more economical) explanation ("but not too simple" - Einstein) Implications of Cognitive Economy: Agents must represent their environment Agents must represent themselves Agents must represent other agents ad infinitum Zero-order model: other agents are the same as oneself
  • Slide 13
  • An Agent Should Act Benevolently Predictably consistent with its model of itself consistent with its model of other agents beliefs about itself
  • Slide 14
  • Social Engineering for Agents Computers are making more and more decisions autonomously: when airplanes land and take off (fuel vs. tax) how phone calls are routed (pricing; choose carrier dynamically) how loads are controlled in an electrical grid when packages are delivered which stocks are bought and sold electronic marketplaces
  • Slide 15
  • Market-Oriented Programming An approach to distributed computation based on market price mechanisms Effective for coordinating the activities of many agents with minimal communication Goal: build computational economies to solve problems of distributed resource allocation
  • Slide 16
  • Benefits For agents, the state of the world is described completely by current prices Agents do not need to consider the preferences or abilities of others Communications are offers to exchange goods at various prices Under certain conditions, a simultaneous equilibrium of supply and demand across all of the goods is guaranteed to exist, to be reachable via distributed bidding, and to be Pareto optimal.
  • Slide 17
  • Market Behavior Agents interact by offering to buy or sell quantities of commodities at fixed unit prices At equilibrium, the market has computed the allocation of resources and dictates the activities and consumptions of the agents
  • Slide 18
  • Agent Behavior Consumer agents: exchange goods Producer agents: transform some goods into other goods Assume individual impact on market is negligible Both types of agents bid so as to maximize profits (or utility)
  • Slide 19
  • Multiagent Frameworks ABE "Agent Building Environment" from IBM written in C++ and Java, agents have rule-based reasoning and interfaces to the web (http), news groups (nntp), and email (smtp) JAT "Java Agent Template" and JAT-Lite from Stanford enables simple Java agents to communicate over a LAN via KQML JESS "Java Expert System Shell" CLIPS in Java, enables solitary reasoning agents to be constructed Voyager from ObjectSpace Inc. an Object Request Broker for Java agents Open Agent Architecture from SRI agents are based on a logic-based declarative InterAgent Communication Language, running on top of CORBA; a facilitator agent distributes tasks to other agents, with results sent to user agents
  • Slide 20
  • Information Agent Applications Financial Decision Support WARREN from CMU is a system of agents for managing your financial portfolio: one agent monitors stock prices, while others monitor newswires for items about the companies whose stock you own Decision Support from Firefly, AgentSoft, Verity, and Amulet: information agents that learn and adapt to users' information needs and then proactively retrieve and organize targeted information; Firefly uses collaborative filtering Information Filtering from Intel: a Smart News Reader sorts and ranks newsgroup articles based on learned user preferences Hyperlink Assistance Intel's Selection Recognition Agent looks at anything copied to your clipboard and, if it recognizes a URL, email address, or date, automatically launches the right application to view the URL, or send mail, or modify your scheduler
  • Slide 21
  • Mobility
  • Slide 22
  • Anything that can be done with mobile agents can be done with conventional software technology, so the key question is Are there tasks that are easier to develop using mobile agents? or Are mobile agents a useful part of a distributed computing platform? Appropriate Applications: Disconnected operation, especially for PDAs Testing distributed network hardware (a multihop application) Concerns: Security Efficiency Survivability - too short or too long!
  • Slide 23
  • Itinerant Agents Itinerant agents are remote computational entities that are most useful when a large amount of data must be processed and the remote site does not have the procedures to perform the processing. Itinerant agents can be used to initiate and maintain long-lived sessions over intermittent communications
  • Slide 24
  • Mobile Agent Frameworks Tabriz from General Magic agents are programmed in Telescript ARA "Agents for Remote Action" from the University of Kaiserslautern agents are programmed in Tcl, C/C++, or Java MOA "Mobile Objects and Agents" from The OpenGroup uses OS process migration technology Concordia from Mitsubishi Electric Information Technology Center agents are programmed in Java Aglets from IBM agents are programmed in Java TKQML from University of Maryland Baltimore County migrating agents are programmed in Tcl and communicate in KQML Most of the frameworks allow agents to be started, stopped, moved, and monitored
  • Slide 25
  • Enabled Email Generic term for ways to extend email capabilities, by enhancing functionality at delivery time (sender controls message) receipt time (receiver controls message) activation time (receiver processes message) Conceptually, a superset of multimedia email and filtering mechanisms. Enabled email messages can perform computations in receiver's environment Borenstein proposed a language, Safe-Tcl, for enabled email. There are proposed standards afoot
  • Slide 26
  • Rosette The Carnot Project at MCC has developed the Rosette language, whi