Reverse Auctions & Voting Mechanisms Outline • • • • • • • • • Definitions Auction Types Auction Mechanisms Mechanism Design Revenue Equivalence Mechanism Design (Again) Contract Net Coalition Formation Voting 2 Auctions and Reverse Auctions • An auction is: – a mechanism for establishing a contract for the sale of goods/services by – a single seller (possibly through an auctioneer) to – one of a number of potential buyers. • A reverse auction is: – a mechanism for establishing a contract for the sale of goods/services by – one of a number of potential sellers to – a single buyer. 3 Auction Types • How do people value items offered for auction? – In a private value auction the value of the item depends only on the agent’s individual preferences; e.g. the sale of bananas – In a common value auction the value of the item depends entirely on how others value it; e.g. the sale of stocks and shares – In a correlated value auction the value of the item depends both on the agent’s preferences and how others value it; e.g. the sale of art 4 Auction Mechanisms (1) • English: first-price, open-cry – The dominant strategy in an English auction is for a participant to bid the current price plus some delta until the agent reaches its reservation price. • First-price sealed-bid – There is no dominant strategy for this type of auction. • Dutch: descending price – This is equivalent to the first-price sealed-bid auction. • Vickrey: second-price sealed-bid – If agents value items on the private value basis, then the dominant strategy is to bid their true valuation 5 Auction Mechanisms (2) • All auction mechanisms allocate item Pareto efficiently to the bidder who wants it the most – if the item is valued solely on individual preference • The Vickrey and English auctions do not encourage counter-speculation (both have a dominant strategy) 6 Mechanism Design • Suppose that you are setting up an Internet-based auction house. • You want to advertise your service as using an auction mechanism that maximises the revenue raised for your clients. • Which auction makes the seller the most money? 7 Revenue Equivalence • If bidders have independent private valuations for the good in sale, all auction mechanisms lead – To the same expected revenue to the auctioneer, and – To the same expected profits of the bidders, which award object to bidder that submits highest bid regardless of the specific payment rule of the auction • E.g., the equilibrium expected payments in first price sealed bid auction are the same as in the English auction. 8 Mechanism Design Again • If, however, the bidders are risk-averse then – Dutch auction and – First-price auction give higher expected revenues. – This is because a risk-averse agent can insure himself by bidding more than would be required to secure the item. • Most auctions are not private value. – In correlated value auctions the English auction with more than 3 bidders leads to higher revenue. – This is because increasing price causes others to increase their valuation. 9 The Contract Net (1) • The Contract Net Protocol (CNet) is the most common oneshot reverse auction. • The protocol is as follows: – – – – – An agent recognises that it has a problem. It announces that it needs the problem solved. Agents may bid for the contract to solve the problem. The contract is awarded. The successful agent solves the problem. 10 The CNet (2) • Diagrammatically: I have a problem… (a) Recognising the problem (c) Bidding (b) Task announcement (d) Awarding the contract 11 The CNet (3) CNet Protocol: – Standardised by FIPA – One-to-many protocol – AUML 12 Recognising the Problem • Agent recognises it has a problem it wants help with • The agent has a goal to achieve, and either: – Realises it cannot achieve the goal in isolation (it may not have the capability), or – Realises it would prefer not to achieve the goal in isolation • The quality of the solution that another agent can supply is higher, or a solution can be found more quickly through delegation 13 Announcement • Agent with problem to be solved (the manager) sends out an announcement of the problem • The announcement must include: – a description of the task, – constraints (e.g. deadlines, quality constraints), and – meta-task information (e.g. deadline for receipt of bids). • The announcement is then broadcast to all bidders 14 Bidding • Agents that receive the announcement decide for themselves whether they wish to bid for the task • The factors involved in this choice are: – Agent must decide if it is capable of doing the task; and – Agent must determine quality constraints & pricing info (if relevant). • If they choose to bid, then they submit a tender 15 Awarding and Expediting • The manager agent upon receipt of bids… – Chooses a bid and awards the contract to someone – Result is communicated to agents that submitted bids • The successful contractor then does the task – This may involve generating further manager-contractor relationships (i.e., sub-contracting) 16 Implementation Issues • Various issues must be addressed when implementing the CNet: – – – – How to specify tasks? How to specify the quality of service? How to select between competing offers? How to differentiate between offers based in multiple criteria? 17 Limitations of the CNet • The contract net protocol is one-shot – What if the manager cannot (or doesn’t wish to) distinguish between offers and wishes to go to another round? • There is a single contract considered – What if it is essential to consider more than one contract at a time? – What if no single agent can fulfill the contract, but more than one agent in combination can deliver? 18 The Iterated Contract Net • CNet extended to multiple rounds • Rather than simply accepting a single initial bid – Manager may select a subset of the agents and request further bids. • Eventually the manager will make the choice of a single contractor. • Standardised FIPA protocol 19 Coalition Formation (1) • Suppose contract for the delivery of q units of item b – What if no single agent can fulfill this contract? • Modify the CNet protocol so that – The manager can select a subset of agents – Each agent may supply a part of the contract • Furthermore, if the manager splits the supply, it may be able to get a better price for the whole contract 20 Coalition Formation (2) • Suppose manager requires q units of item b • It receives bids from all agents, each bid of the form ai ,qi ,ci that is, agent ai offers qi units of b each at cost ci • Manager stores bids in set Bids. • While q > 0 and Bids {} do: – Select bid ai ,qi ,ci Bids, with lowest cost per unit – If q qi then accept quantity q from ai and reject all other bids from all other agents in Bids. – If q qi then accept quantity qi from ai – Update q q qi and Bids Bids {ai ,qi ,ci } 21 Coalition Formation (3) • What if more than one item is required? – The algorithm must then be modified to select the subset of the bidding agents so that the required quantity of each item is obtained. • What if the items are not independent? – E.g. bidder may specify that if item 1 is accepted then item 2 must also be accepted. • What if offers are all or nothing? • As assumptions are relaxed, the problem becomes harder. 22 Making group decisions • Social choice theory (or voting theory) • Voting protocols are strategic – Agents have preferences over possible outcomes – Agents take into account their own preferences as well as the other agents’ when deciding on how to vote – Agents want to bring about their most preferred outcome (or to avoid the least wanted outcome) • Voting protocols have intriguing properties! 23 Social Welfare Functions • We have a set of agents Ag = {1, ..., n} – – – – Referred to as voters Participants of the group decision-making process Number of agents is finite We assume n is an odd number (to avoid ties) • Voters make group decisions with respect to a set of possible outcomes or candidates = {1, 2, ...} – For instance, could be the politicians of an election – If = {1, 2} (two elements) then we have a pairwise election – If more than 2 then we have a general voting scenario • Voters aim at ranking or ordering candidates – Sometimes just picking the top-ranked candidate 24 Social Welfare Functions (Cont’d) • Each voter has preferences over • Preferences defined as an ordering over – For example, an agent’s preference is (2, 3, 1), that is, the agent prefers 2 over 3, and prefers 3 over 1 • Preference orders of agents 1, ..., n is 1, ..., n • >i ’ represents that outcome is ranked above outcome ’ in agent’s i preference order i • () is the set of all preference orderings over 25 Social Welfare Functions (Cont’d) • The fundamental problem of social choice theory is Agents might naturally have different preference orders. So, given a collection of preference orders, one for each agent, how do we combine these to derive a group decision? • A social welfare function takes voters preferences and produces a social preference order: f : () ... () () n times • A simpler problem is to obtain just one of the possible candidates – this is a social choice function: f : () ... () n times 26 Social Welfare Functions (Cont’d) • We use >* to refer to the outcome of a social welfare function, that is, >* ’ means that is ranked above ’ in the social outcome • We shall look next at voting procedures – These are mechanisms for agents to use – They did not happen by accident – they were designed – They have guarantees and properties; these are required otherwise agents would not use them – A bad example: I own the ball, so I choose who to play... 27 Plurality voting • Simplest and best-known voting procedure • Commonly used to select a single candidate – That is, it is a social choice function – Can be generalised for a social welfare function • How it works 1. Each voter submits their preference order 2. Mechanism counts how many times each outcome is ranked first in a preference order 3. Winner is outcome that appears first in the preference orders the largest amount of times • Advantages – Straightforward to implement; easily understood by voters 28 Plurality voting: an example • Fifteen academics are trying to decide whether to buy – Beer, – Wine or – Milk for a party • How do they decide what to buy? • Plurality vote – – – – Each votes for their most preferred Beer gets 6 votes. Wine gets 2 votes. Milk gets 7 votes. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Beer 3 3 3 3 3 3 1 1 1 1 1 1 2 2 2 Wine 2 2 2 2 2 2 2 2 2 2 2 2 1 1 3 Milk 1 1 1 1 1 1 3 3 3 3 3 3 3 3 1 29 Plurality voting: paradoxes • If we have more than two candidates (as in the previous example), then anomalous properties arise • Example: UK politics – – – – – – Labour, Liberal Democrats, and Conservative Parties Let’s represent the outcomes as L , D , and C Left-wing voter L > D > C (44%) Centre-left voter D > L > C (12%) Right-wing voter C > D > L (44%) Plurality voting: C wins, although for 56% of voters (the majority of the electorate) C was the least preferred option 30 Other voting mechanisms • Runoff – The two with most votes the first time around are voted for again (e.g. Political party leadership elections) – First round: Beer=6, Wine=2, Milk=7. – Second round: Beer=8, Milk=7. • Pair-wise comparison – – – – Compare all pairs and pick one that wins most comparisons Beer wins 15 pair-wise comparisons. Wine wins 16 pair-wise comparisons. Milk wins 14 pair-wise comparisons. 31 Symmetry • Establish fairness via symmetry • Reflectional symmetry – If an agent prefers A to B and another prefers B to A then their votes cancel. • Rotational symmetry – If an agent prefers A, B, C and another prefers B, C, A and another C, A, B then their votes cancel. • Plurality & runoff voting violate reflectional symmetry • Pair-wise comparison violates rotational symmetry 32 Borda Count • In 1770 members of an academy of Science (Paris) pondered on a fair way to elect a new leader • Borda proposed the following mechanism: – With x candidates, each voter awards x points to his first choice, x 1 points to his second, and so on – The candidate with the most points wins Wikipedia’s entry: http://en.wikipedia.org/wiki/Borda_count J-C de Borda • Borda satisfies both reflectional & rotational symmetry • In the example, Wine wins! 33 Voting Schemes (1) • Each agent i has a preference function >i over the set of outcomes. • >* denotes the global preference function – I.e. what we want to find! • What are the ideal characteristics of >* ? 34 Ideal features of voting schemes 1 2 3 4 >* exists for all possible set of inputs >i >* exists for every pair of outcomes >* is asymmetric and transitive over outcomes >* should be Pareto efficient: If all agents prefer Beer over Milk, then >* should also prefer Beer over Milk 5 Scheme for >* should be independent of irrelevant alternatives: – E.g., if in one world all agents prefer Beer to Milk and in another world agents prefer Beer to Milk then in both cases the rankings of Beer and Milk should be the same, regardless of how the agents feel about wine 6 No agent should be a dictator in the sense that >* is always the same as >i no matter what the other >j are 35 Arrow’s Impossibility Theorem – Borda: c=20, b=19, a=18, d=13. • Without d, Borda is: a=15, b=14 and c=13. Wikipedia’s entry: http://en.wikipedia.org/wiki/Arrow's_impossibility_theorem 1. 2. 3. 4. 5. 6. 7. a>b>c>d b>c>d>a c>d>a>b a>b>c>d b>c>d>a c>d>a>b a>b>c>d K. J. Arrow • No social choice rule (no voting scheme) satisfies all six conditions • For example, Borda violates 5 • Consider preference functions 1-7 36 Strategic Voters • Voters need not vote their true preference. • The ideal is to design a voting mechanism so that, if agents chose what is best for them, then a desirable social outcome follows. • However, the Giddard-Satterthwaitte Impossibility Theorem states that if the agents’ preference functions are unlimited then the only voting mechanism that is robust to strategic voters is a dictatorship 37 Strategic Voters (Cont’d) • A social choice function f is manipulable if, for some collection of voter preference profiles 1, ..., i , ..., n And a voter i, there exists some ’i such that f (1, ..., ’i , ..., n) >i f (1, ..., i , ..., n) – A voter can obtain a better outcome for themselves by unilaterally changing their preference profiles – That is, by misreporting their preferences to the voting procedure 38 Strategic Voters (Cont’d) • Can we engineer voting procedures that are not manipulable? Do such procedures exist? – Yes, dictatorship is one of them! – But what about democracy? • Although voting procedures are manipulable, their manipulation is computationally complex – It is not easy to manipulate voting procedures intelligently – Various unknowns (other voters’ preferences, if they also are trying to manipulate the voting, etc.) – Computation of a “lie” ’i is costly – Democracy still has some hope... 39 Further reading • An Introduction to Multi-Agent Systems, 2nd Edition, M. Wooldridge (Chapter 12) • How hard is it to control an election?, J. J. Bartholdi, C. A. Tovey and M. A. Trick, 2003 http://www2.isye.gatech.edu/~jjb/papers/agenda.pdf 40