1 / 27

Mechanism Design with Execution Uncertainty

Mechanism Design with Execution Uncertainty. Ryan Porter, Amir Ronen, Yoav Shoham, and Moshe Tennenholtz Stanford University. Task Allocation. Motivating Example: Center = Government Task = Transport a package between two offices Agents = Shipping companies

alissa
Download Presentation

Mechanism Design with Execution Uncertainty

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mechanism Design withExecution Uncertainty Ryan Porter, Amir Ronen, Yoav Shoham, and Moshe Tennenholtz Stanford University

  2. Task Allocation • Motivating Example: • Center = Government • Task = Transport a package between two offices • Agents = Shipping companies • What protocol should the government use to allocate and pay for the task? • The general class of task allocation settings is well-studied, but standard settings assume that the task is always completed. Center Agent 1 value cost task Agent N cost Mechanism Design with Execution Uncertainty

  3. Execution Uncertainty • What protocol should we use if there is uncertainty about the execution of the task? • First, we need to decide which type of execution uncertainty to consider. • We assume that agents make a full effort, but there is an inherent probability of failure. We will revisit this assumption in the conclusion. • Why Mechanism Design? • Consider the case of costless tasks, but firms only succeed with some probability. • What protocol should the government use? Mechanism Design with Execution Uncertainty

  4. Mechanism Design • Naïve Protocol: • Firms declare probability to complete each task. • Government assigns the task to the firm with the highest declared probability for that task. • Government pays this agent a fixed, positive amount if succeeds, and nothing if it fails. • Problem: firms have incentive to lie about their probability of success. • This example shows the need for Mechanism Design (MD), the science of crafting protocols that give self-interested agents incentive to act in a way that achieves the goals of the center. Mechanism Design with Execution Uncertainty

  5. Outline • Single-Task Setting: • Formulation and mechanism goals • Mechanism that satisfies all goals • Multiple-Task Setting: • Different possible formulations • When dependencies exist: • Impossibility result • Possibility result for a relaxed set of goals • Conclusion Mechanism Design with Execution Uncertainty

  6. Formulation: Single-Task Setting • Single task t • N agents, each agent i is characterized by its privately-known type θi2 • θi = (pi,ci): • pi is the probability of completing t • ci is the cost of attemptingt • Let θ = (θ1,…,θn) • Let θ-i = (θ1,…,θi-1,θi+1,…,θn). Then, θ = (θi,θ-i) • Center: has a value V for the completion of the task • Necessary for making the correct allocation • V is common knowledge Mechanism Design with Execution Uncertainty

  7. Formulation: Mechanism • A mechanism  consists of the following steps: • Nature reveals to each agent its type θi • Each agent declares θi • Strategy for agent i is S:  →  (a direct mechanism) • Restriction allowed by the Revelation Principle • Center allocates task: A(θ) = ( A1(θ) , … , An(θ) ) • Agents attempt their assignment (only one agent in this case) • Result is recorded by the indicator variable µ • Center pays agents: R(θ,µ) = ( R1(θ,µ) , … , Rn(θ,µ) ) • A mechanism is defined by the pair  = (A(¢), R(¢)) Mechanism Design with Execution Uncertainty

  8. Utility Functions • Utility function for agent i: ui(ci,θ,µ) = Ri(θ,µ) – ci(Ai(θ) • Agents are assumed to be expected-utility maximizers • Expectations always taken before the task is attempted (that is, the expectation is over µ | p,A(θ)) • Social welfare: W(A(θ),c,µ) = V·µ - ici(Ai(θ)) • Key idea of MD: align utility of each agent with social welfare Mechanism Design with Execution Uncertainty

  9. Mechanism Goals • Incentive Compatibility (IC): truth-telling (8θi, si(θ i) = θi) is a dominant strategy – 8 i,θ,θ-i,θi E[ui(ci,(θi,θ-i),µ)] ¸ E[ui(ci,(θi,θ-i),µ)] • Individual Rationality (IR): truthful agents always have nonnegative expected utility – 8 i,θ,θ-i E[ui(ci,(θi,θ-i),µ)] ¸ 0 • Center Rationality (CR): center’s utility always nonnegative – 8θ,µ V·µ - iRi(θ,µ) ¸ 0 • Social Efficiency (SE): allocation function maximizes expected social welfare based on the true types – 8θ, equilibria θ A(θ) = argmaxA' E[W(A',c,µ)] • Shows the use of IC, because A(·) can only depend on θ. IC allows us to conclude that θ = θ. Mechanism Design with Execution Uncertainty

  10. Single-Task Setting: Only Costs • Second-Price Reverse Auction: • Aj(θ) = {t} iff cj = c[1] (That is, assign t1 to the agent with the lowest declared cost.) • Rj(θ,µ) = c[2] (That is, pay this agent the second-lowest declared cost.) Example: V = 10 Mechanism Design with Execution Uncertainty

  11. Single-Task Setting: Only Probabilities • Mechanism: • Aj(θ) = {t} iff pj = p[1] (Assign t1 to the agent with the highest declared probability.) • Rj(θ,µ) = – V·p[2] + V·µ (Pay this agent according to the second-highest declared probability.) • Intuition: V·µ aligns the agent’s utility with social welfare, while (–V·p[2]) gives us IC because no other agent could profit from Rj(·). Example: V = 10 Mechanism Design with Execution Uncertainty

  12. Single-Task Setting: General Case Single-Task Mechanism: • Aj(θ) = {t} iff j = argmaxi (pi ·V – ci) (Assign the task to the agent i that maximizes expected welfare E[W(A(θ),c,µ)] based on the declared types.) • Rj(θ,µ) = – E[W-j(A(θ-j),c,µ)] + V·µ (Starting with a baseline loss of the expected welfare of the system without this agent, agent j gets the value of the task if it successfully completes the task.) Theorem: Single-Task Mechanism satisfies IC, IR, CR, and SE. Mechanism Design with Execution Uncertainty

  13. Proof Sketch of IC • Plan: Derive an equation for the expected utility of a truthful agent, and then show it cannot do better. • Consider both cases for a truthful agent i: • If agent i is assigned the task, then: E[ui(ci,(θi,θ-i),µ)] = – E[W-i(A(θ-i),c,µ)] + pi·V – ci = – E[W-i(A(θ-i),c,µ)] + E[W(A(θi,θ-i),c,µ)] • If agent i is not assigned the task, then E[ui(·)] can be written the exact same way. • Agent i can only affect the second term, and the mechanism optimizes this term assuming that agent i’s true type is θi. Mechanism Design with Execution Uncertainty

  14. Outline • Single-Task Setting: • Formulation and mechanism goals • Mechanism that satisfies all goals • Multiple-Task Setting: • Different possible formulations • When dependencies exist: • Impossibility result • Possibility result for a relaxed set of goals • Conclusion Mechanism Design with Execution Uncertainty

  15. Multiple-Task Setting • Simple Extension of the Single-Task Setting: • All variables become vectors of variables: t = (t1,…,ts), pi = (p1i,…,psi), etc. • Since the tasks are independent (for both the center and the agents), we can simply apply the Single-Task Mechanism to each task separately. • Alternative formulations (skipped due to time constraints): • Combinatorial costs or probabilities for the agents • Combinatorial valuation function for the center Mechanism Design with Execution Uncertainty

  16. t2 t4 Nodes = tasks Arcs = dependencies (or, prerequisites) t1 t3 t5 Multiple-Task Setting: Dependencies • Interesting settings have dependencies. • For example, object must be shipped from SF to Denver before it can be shipped from Denver to Boston. • Definition: A task t2 is dependent on task t1 if t2 cannot be attempted unless t1 is completed. • Dependencies induce a partial order in which the tasks are attempted, and an agent does not incur the cost for an assigned task that it cannot attempt. Mechanism Design with Execution Uncertainty

  17. t1 t2 Impossibility Result • Theorem: When dependencies exist between tasks, there does not exist a mechanism that satisfies IC, IR, CR, and SE, for any n,s ¸ 2. • Full proof is long, and it’s in the paper. • Intuition: • Consider the case of: t1 assigned to agent 1 and t2 to agent 2. • How do you pay agent 2 in a way that satisfies IC? • A key part of the payment rule for the Single-Task Mechanism was the ability to “test” the agent’s true probability of success. • However, agent 1 can block this test, and does so with a probability that is unknown to the mechanism. Mechanism Design with Execution Uncertainty

  18. Possibility Result • Relaxed set of goals: • ex post Nash equilibrium versions of IC, IR, and SE. • No CR • The ex post Nash equilibrium: all agent truthfully reveal their type (8 i,θi si(θi) = θi). That is, even if each agent knew the true types of the other agents, truth-telling is still a best response. • Ex Post Nash Equilibrium Mechanism: • A(θ) = A*(θ) (Tasks are assigned according to A*(θ), the socially optimal allocation rule for the declared the types.) • 8i, Ri(θ,µ) = – E[W-i(A*(θ-i),c,µ)] + W-i(A*(θ),c,µ) (Each agent i start with a loss equal to the expected social welfare if this agent did not exist, and is then paid the actual welfare of the entire system except for agent i.) Mechanism Design with Execution Uncertainty

  19. Conclusion • Main Idea: Add the dimension of execution uncertainty to a basic Mechanism Design problem for task allocation. • Main Results: • Single-Task Setting: We present a mechanism that satisfies all goals. • Multiple-Task Setting: Dependencies prevent us from satisfying all goals, but we present a mechanism that satisfies a relaxed set of goals. Mechanism Design with Execution Uncertainty

  20. Future Work • Classes of execution uncertainty: This work: • Full effort, but inherent probability of failure • Rational, intentional failures Future work: • “Irrational”, intentional failures Mechanism Design with Execution Uncertainty

  21. Mechanism Design withExecution Uncertainty Ryan Porter, Amir Ronen, Yoav Shoham, and Moshe Tennenholtz Stanford University

  22. Mechanism Design with Execution Uncertainty

  23. Introduction • Basic mechanism design problem for task allocation: • Center has a set of tasks it wants completed • Agents have private costs to complete the tasks • Center constructs a protocol (mechanism) where: • Agents pass information (e.g., bids) to the center • Center assigns tasks and makes payments • We add the dimension of uncertainty for the completion of tasks Mechanism Design with Execution Uncertainty

  24. Dependencies t2 t4 Nodes = tasks Arcs = dependencies (or, prerequisites) t1 t3 t5 Mechanism Design with Execution Uncertainty

  25. Single-Task Setting: Only Probabilities • Straw-man Mechanism: • Each agent declares a probability pi1 • Assign the task to the agent with the high probability (p[1]1) • Pay this agent the difference in E[W-i(·)] (regardless of the outcome of the attempt): (p[1]1 – p[2]1) ·V1 t1 Example: V1 = 10 Mechanism Design with Execution Uncertainty

  26. p21 = 0.5 p11 = 0.6 Impossibility Result: Proof Sketch • SE implies: A1(θ) = {t2} and A2(θ) = {t1} • Three variables to set: R1(θ , ;) , R1(θ , {t1}) and R1(θ , {t1,t2}) • R1(θ , ;) = 0 – otherwise, IR violated or a1 would lie if p12 = 0 • So, set up “sequential” mechanisms, where the second is only implemented if t1 is completed: R1(θ , {t1,t2}) = 9(if a1 succeeds) R1(θ , {t1}) = -1(if a1 fails) • This lack of IC because of the dependency is unavoidable t1 t2 V1 , V2 = 10 8 i,s cis = 0 { Mechanism Design with Execution Uncertainty

  27. Example: V1 = 10 t1 Mechanism Design with Execution Uncertainty

More Related