Agent-mediated Interaction. From Auctions to Negotiation and Argumentation Carles Sierra IIIA-CSIC Barcelona Utrecht, October 13, 2000 IIIA-CSIC IIIA-CSIC Talk plan Auctions: FISHMARKET Negotiation Argumentation Robot navigation Electronic Institutions SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Introduction Agents inhabiting the same environment need to co-ordinate their activities to improve their individual or collective performance. The aim of DAI is to design intelligent sistems that behave efficiently. A common assumption in many applications, specially in AMEC, is that agents are self-interested and utility maximisers. In others, agents are co-operative. DAI is divided in two big areas: Distributed problem solving, where the designer determines the protocol and the strategy (relation between state and action) of each agent, and Multi Agent Systems, where the agents are provided with an interaction protocol but chose the strategy to follow. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Auctions SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Auctions Auctions are mechanisms very frequent in M AS. They have been deeply analysed by economists. There are three types: 1) Of private value, e.g. a cake. 2) Of common value, e.g. treasure bonds. 3) Of correlated value, e.g. contracts. Protocols: English. If it is of private value, the strategy is to increase the bids until the reserve price. In those of correlated value the auctioneer may increase the price in predetermined amounts. Sealed bid. There is no dominant strategy. Dutch. Equivalent to sealed bid. They are very efficient. Vickrey. The dominant strategy is to bid for the reserve price. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Auctions: the Fishmarket AR RR ba sa B uyers' regi ster Goods' regist er AH auct Goods' show and auct ion Credi ts and goods del ivery Seller’s admitter SIKS-dag 2000, Utrecht, 13/10/00 S ell ers' sett lem ents bm sm DR BO IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Auctions IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Buyer and Electronic Panel IIIA-CSIC Scenes AR RR ba sa B uyers' regi ster Goods' regist er AH auct Goods' show and auct ion Credi ts and goods del ivery SIKS-dag 2000, Utrecht, 13/10/00 S ell ers' sett lem ents bm sm DR BO IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Auction protocol IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 FM IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 eBuyers (browser) IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 eBuyers (agent) IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 eAuctioneer IIIA-CSIC Implementation LAN LLotja virtual Auditor Modems Cap Servidor Admissió de compadors Gestió de compadors Subhastador Admissió de venedors Admissió de peix Gestió de venedors Interagent comprador Interagent venedor Agent comprador SIKS-dag 2000, Utrecht, 13/10/00 Agent venedor IIIA-CSIC Tournaments Para ver esta película, debe disponer de QuickTime™ y de un descompresor Microsoft Video 1. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Para ver esta película, debe disponer de QuickTime™ y de un descompresor Microsoft Video 1. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Monitoring Para ver esta película, debe disponer de QuickTime™ y de un descompresor Microsoft Video 1. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC • • • • • • • FM 1.0: A test-bed for Electronic Auctions Realistic.Grown out of a complex real world application. Multi-user Architecturally neutral Customizability and repeatibility Agent-builder facility (Library of agent templates) Monitoring and Analysis facilities Market scenarios as tournament scenarios. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Negotiation SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Bargaining In bargaining, agents may make deals that are mutually beneficial, but they are in conflict over which deal to chose. Negotiation mechanisms fall mainly on strategic bargaining. Axiomatic Theory. The desired solutions are not those found in a certain equilibrium, but those that satisfy a set of axioms. Classical axioms are those of Nash: outcome u*=(u1(o*), u2(o*)) must satisfy: Invariance: The numerical utilities of agents represent ordinal preferences, numerical values don’t matter. Thus, the utility functions must satisfy that for any f linear and increasing: u*(f(o), f(ofail))=f(u*(o, ofail)) Anonimity: Changing the labels of the players does not affect the outcome. Independence of irrelevat alternatives: if we eliminate some o, but not o*, o* is still the solution. Pareto eficiency: we cannot give more utility to both players over u*=(u1(o*), u2(o*)). SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Bargaining Strategic Theory: No axioms on the solution are given, the interaction is modelled as a game. The analysis consists on finding which strategies of the players are in equilibrium. It explains the behaviour of utility maximisers better than the axiomatic theory (where the notion of strategy does not make much sense). The theory of negotiation is basically here. Without assuming perfect rationality, the computational costs of the deliberation and the potential benefits of bargaining conflict. AI has many things to say on this task. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Negotiation • Commerce is about interaction – Between buyers and sellers at all stages: finding, purchasing, delivery. • First generation – Passive web query – Simple interactions: auctions • Second generation – Rich and flexible interactions • Negotiation is the key type of interaction – Process by which groups of agents communicate with one another to try and come to a mutually acceptable agreement on same matter. – Many forms exist: auctions, contract net, argumentation. – It is key because agents are autonomous: an acquaintance needs to be convinced to be influenced. – Negotiation is achieved by making proposals, trading options, offering concessions. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Negotiation components • Negotiation objects. Issues of the agreements. Number of them, types of operations on them. • Negotiation protocols. Rules that govern the interaction: permissible participants, valid actions, negotiation states. • Agents reasoning model. Decision making apparatus. From simple bidding to complex argumentation. • Challenges – Trust – Protocol engineering – Reasoning models SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Negotiation object example Real State Agency. Seller b and buyer a. Issues={Address,Surface,Rooms,Brightness,Price,Garage} Negotiation thread: X tab {xtab , xtba , xtab , xtba , xtab ,accept} 5 xt 1 a b xt 2 b a xt 3 a b xt 4 b a xt 5 a b SIKS-dag 2000, Utrecht, 13/10/00 1 2 3 4 [?,140m2 ,4,Very _ Bright ,$400K] [# 21,60m2 ,4,Slightly _ Bright ,$400K] [?,120m2 ,4,Very _ Bright ,$400K] [# 69,120m2 ,3, Bright ,$600K,true] [# 69,120m2 ,3, Bright ,$500K,true] 5 IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Negotiation protocol IIIA-CSIC Negotiation reasoning model Each agent a negotiates over a number of issues that have a: 1) Delimited range [minj, maxj] 2) Monotonic scoring function Vja: [minj, maxj]-> [0,1] 3) Relative importance, wja The utility function for an agent a has the following form: V a (x) w V ( x ) a j a j j i j n The negotiation protocol consists of an iterative process of offers and counteroffers until a deal is reached. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Tactic: Concession IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Tactic: Imitative Tactic: trade-offs IIIA-CSIC Price:2 Quality:5 B ? Price:9.9 Quality:1.1 SIKS-dag 2000, Utrecht, 13/10/00 A IIIA-CSIC Trade-off Mechanism (I) • Trade-off is lowering of utility on some issues and simultaneously demanding more on others. • Steps: given x (a’s offer) and y (b’s offer) – (1) Generate all / subset of contracts with the same utility () » isoa() = {x | Va(x) = } – (2) selection of a contract (x´) that agent a believes is most preferable by b. » Ba (Ub(x´) > Ub(x)) » Ua(x´) + Ub(x´) > Ua(x) + Ub(x) (maximization of joint utility) » Ua(x) = Ub(x´) • Step (2) is an uncertain evaluation: must model Ba SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Fuzzy Similarity • Select a contract from isoa() = {x | Va(x) = } that is “closest” or most similar to y. • Implications of this choice: – not the probable choice of the other, but rather, the closeness of two contracts » Not modeling of others but the domain – need a logic of degrees of truth (Zadeh) as opposed to binary truth values of true or false SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Definition of Similarity • Sim( ) defined as: Sim(x,y) = j J wj Simj(xj,yj) Simj(xj,yj) = 1i m(hi(xj) hi(yj)) • where wj is the agent´s belief about the importance the other places on each issue in negotiation • hi( ) is ith comparison criteria function (e.g warmth) • is the conjunction operator (e.g minimum) • is the equivalence operator (e.g 1-| hi(xj)-hi(yj)|) SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC An Example of Similarity • Dcolours{yellow,orange,green,cyan,red,...} • Similarity of colours according to different perceptive criteria: » » » » » Temperature (warm v.s cold colours) Luminosity Visibility Memory dynamicity ht = {(yellow, 0.9), (violet, 0.1), (magenta, 0.1), (green, 0.3), (cyan, 0.2), (red, 0.7),...} hl = {(yellow, 0.9), (violet, 0.3), (magenta, 0.6), (green, 0.6), (cyan, 0.4), (red, 0.8),...} hv = {(yellow, 1), (violet, 0.5), (magenta, 0.4), (green, 0.1), (cyan, 1), (red, 0.2),...} SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Similarity of Colours • sim(yellow,green) and sim(yellow,red) • simcolour(colour,colour) = 1i m(hi(xcolour) hi(ycolour)) • i={temperature,luminosity,visibility} • Simcolour(yellow, green) = min( 1- |ht(yellow)- ht(green)|, 1-| hl(yellow)- hl(green)|, 1- |hv(yellow)- hv(green)|)= min(0.4,0.7,0.1) = 0.1 • Simcolour(yellow, red) = min( 1- |ht(yellow)- ht(red)|, 1-| hl(yellow)- hl(red)|, 1- |hv(yellow)- hv(red)|)= min(0.8,0.9,0.2) = 0.2 • yellow is more similar to red than to green on these criteria SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC The Trade-off Algorithm To be beneficial to the other the preference of the other must match the similarity function y trade-offa(x,y) = arg maxz iso () {Sim(z,y)} a y ? x complexity kn X´ x SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Tactic: Issue-set manipulation Y Ships = 4 Price = 80 Quantity = 2 Spain UK Ships = 10 Price = 55 Quantity = 10 X X1 Ships = 8 Quantity = 6 X2 Price = 5 0 Q uan tity = 9 Sh ips = 8 Q uan tity = 6 Sh ips = 12 Price = 5 0 X3 Sim() W_Ships = 0.3 1 h1(ships) 4 8 12 16 20 24 W_quantity = 0.3 W_Price = 0.4 1 h2(price) 50 60 70 1 80 h3(quantity) 2 4 6 8 10 s i m ( x 1 , y ) = ( ( 0 . 4 * 1 - (0.9 - 0.01)) + ( 0. 3 * 1 - ( 0.3 - 0.1) )) = 0.28 s i m ( x 2 , y ) = ( ( 0 . 3 * 1 - (0.1 - 0.08) ) + ( 0.3 * 1 - ( 0.1 - 0.1))) = 0.59 s i m ( x 3 , y ) = ( ( 0 . 3 * 1 - (0.4 - 0.08)) + ( 0.4 * 1 - ( 0.9 - 0.01))) = 0.25 SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 CASBA general architecture IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Agent Architectures IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Case-based negotiating agent IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Fuzzy Agent IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 GA populations IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 GA on negotiating agents IIIA-CSIC Argumentation SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Argumentation • Autonomy leads to negotiation and to argumentation. • Many problems cannot be solved by a simple offer/counter offer negotiation protocol. • When arguing, agent offers may include knowledge, information, explanations. • The dialogue includes critiques on each others proposals. • Agents must be able to generate arguments as well as rebutting and undercutting other agents’ arguments. • Which argument to prefer may depend on logical criteria or on social considerations. • A logically-based approach to building agents seems natural. SIKS-dag 2000, Utrecht, 13/10/00 S + S+ -> Hang Mirror + + -> Hang Picture A Hang Picture + Hang Mirror + -> Hang Mirror B S + S+ -> Hang Mirror + + -> Hang Picture A I know agent B has a nail + + -> Hang Mirror B S + S+ -> Hang Mirror + + -> Hang Picture A + ? + -> Hang Mirror B S + S+ -> Hang Mirror + + -> Hang Picture A + + + -> Hang Mirror + -> Hang Mirror B S + S+ -> Hang Mirror + + -> Hang Picture A + S + + S + -> Hang Mirror + -> Hang Mirror + -> Hang Mirror B S + S+ -> Hang Mirror + + -> Hang Mirror + + -> Hang Picture + S+ -> Hang Mirror A ? B S + S+ -> Hang Mirror + + -> Hang Mirror + + -> Hang Picture + S+ -> Hang Mirror A B S + S+ -> Hang Mirror + + -> Hang Mirror + + -> Hang Picture + S+ -> Hang Mirror A ? B S + S+ -> Hang Mirror + + -> Hang Mirror + + -> Hang Picture + S+ -> Hang Mirror A B S + S+ -> Hang Mirror + + -> Hang Mirror + + -> Hang Picture + S+ -> Hang Mirror A S ? B S + S+ -> Hang Mirror + + -> Hang Mirror + + -> Hang Picture + S+ -> Hang Mirror A B S + S+ -> Hang Mirror + + -> Hang Mirror + + -> Hang Picture + S+ -> Hang Mirror A OK!!! OK!!! B IIIA-CSIC Multi-context agents • Units: Structural entities representing the main components of the architecture. • Logics: Declarative languages, each with a set of axioms and a number of rules of inference. Each unit has a single logic associated with it. • Theories: Sets of formulae written in the logic associated with a unit. • Bridge Rules: Rules of inference which relate formulae in different units. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC planner resource manager SIKS-dag 2000, Utrecht, 13/10/00 An argumentative agent goal manager rebutting module social manager undercutting module IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 A module GOAL MANAGER IIIA-CSIC Bridge rules DONE: G:goal(X),R:X ==> G:done(X) ASK: G:goal(X),G:not(done(ask(X))),G:not(done(X)),R:not(X),P:not(plan(X,Z)) ==> CU:ask(self/G,self/All,goal(X),[]),G:done(ask(X)) RESOURCE: CU>answer(self/RM,self/G,have(X,Z),[])==> R:X PLAN: CU>answer(self/_,self/G,goal(Z),P)==> P:plan(Z,P) MONITOR: G:goal(X),R:not(X),P:plan(X,P) ==> G:monitor(X,Z) NEW_GOAL: CU>inform(self/_,self/_,newGoal(X),_) ==> G:goal(X) FREE: R:X,GM:not(goal(X,_)) ==> FREE2: R>free(X),R>X ==> CU:free(X) FAILURE_R: R>done(ask(X,Y)) [t1] ==> GM:fail_R(X,Y) SIKS-dag 2000, Utrecht, 13/10/00 R:free(X) FAILURE_P: P>done(ask(X,Y)) [t2] ==> GM:fail_P(X,Y) IIIA-CSIC Robot navigation SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC • Outdoor unknown environment navigation • Legged robot • No precise odometry (or very imprecise one) • No location system (GPS) • Visual feedback only • No distance to objects estimation SIKS-dag 2000, Utrecht, 13/10/00 The problem IIIA-CSIC Objectives • Landmark based navigation (robust, animal-like) • Qualitative navigation (fuzzy distances) • Map generation (topological, landmark based) With the aim of leading the robot to an initially given visual target in an unknown environment SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Robot Architecture Target Navigation System bids Move to direction Pilot bids bids Vision System actions actions System Robot SIKS-dag 2000, Utrecht, 13/10/00 Camera Look for target Identify landmarks IIIA-CSIC Example Obstacle avoidance QuickTime™ and a Microsoft Video 1 decompressor are needed to see this picture. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Multiagent Navigation System MM TT RM RE bids and illocutions DE MM: Map Manager TT: Target Tracker RM: Risk Manager RE: REscuer CO DE: Distance Estimator CO: COmmunicator SIKS-dag 2000, Utrecht, 13/10/00 information bids IIIA-CSIC Obstacle avoidance Landmark regions Topological map SIKS-dag 2000, Utrecht, 13/10/00 Example IIIA-CSIC Electronic Institutions SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Electronic Institutions “Institutions are the rules of the game in a society or, more formaly, are the humanly devised constraints that shape human interaction” • “The major role of institutions in a society is to reduce uncertainty by establishing a stable (but not necessarily efficient) structure for human interaction” D.C.North: Institutions, Institutional Change and Economic Performance. Cambridge (1990) SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Agent-Mediated Institutions (fundamental elements) Role. Standardized patterns of behaviour required of all agents playing a part in a given functional relationship. Agent. The players of the institution. Each agent may take on several roles. Dialogic Framework. Ontologic elements and communication language (ACL) employed during an agent interaction. Scene. Agent meetings whose interaction is shaped by a welldefined protocol. Each scene models a particular activity. Performative Structure. Complex activities composed of multiple scenes specified as connections among scenes. Normative Rules. Determine both subsequent commitments and constraints on (dialogic) agent actions. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC Performative structure (rationale) • Complex activities can be specified by establishing relationships among scenes that: • capture causal dependency among scenes; • define synchronisation mechanisms involving scenes; • establish paralellism mechanisms involving scenes; • define choice points that allow roles leaving a scene to choose which activity to engage in next; and • establish the role flow policy among scenes. SIKS-dag 2000, Utrecht, 13/10/00 IIIA-CSIC SIKS-dag 2000, Utrecht, 13/10/00 Specification tool IIIA-CSIC Final words • The study of interaction becomes a cornerstone for intelligent systems. • Need for platforms and specification languages to model interaction • Challenges for negotiation: – Trust – Protocol standards – Preference modelling • Challenges for engineering: • • – Adaptability and learning – Mobility – Open and closed market design Collaborators: Juan Antonio Rodriguez, Pablo Noriega, Peyman Faratin, Nick Jennings, Simon Parsons, Jordi Sabater, Noyda Matos, Didac Busquets, Ramon Lopez de Mantaras. Papers and software at http://www.iiia.csic.es SIKS-dag 2000, Utrecht, 13/10/00