Cake Cutting is and is not a Piece of Cake Jeff Edmonds, York University Kirk Pruhs, University of Pittsburgh.

Slides:



Advertisements
Similar presentations
Routing Complexity of Faulty Networks Omer Angel Itai Benjamini Eran Ofek Udi Wieder The Weizmann Institute of Science.
Advertisements

Introduction to Algorithms Quicksort
Ariel D. Procaccia (Microsoft)  A cake must be divided between several children  The cake is heterogeneous  Each child has different value for same.
MATH 224 – Discrete Mathematics
1 SOFSEM 2007 Weighted Nearest Neighbor Algorithms for the Graph Exploration Problem on Cycles Eiji Miyano Kyushu Institute of Technology, Japan Joint.
Cakes, Pies, and Fair Division Walter Stromquist Swarthmore College Rutgers Experimental Mathematics Seminar October 4, 2007.
Comp 122, Spring 2004 Greedy Algorithms. greedy - 2 Lin / Devi Comp 122, Fall 2003 Overview  Like dynamic programming, used to solve optimization problems.
Greedy Algorithms Greed is good. (Some of the time)
Approximation, Chance and Networks Lecture Notes BISS 2005, Bertinoro March Alessandro Panconesi University La Sapienza of Rome.
22C:19 Discrete Structures Trees Spring 2014 Sukumar Ghosh.
Study Group Randomized Algorithms 21 st June 03. Topics Covered Game Tree Evaluation –its expected run time is better than the worst- case complexity.
© The McGraw-Hill Companies, Inc., Chapter 8 The Theory of NP-Completeness.
Cake Cutting is and is not a Piece of Cake Jeff Edmonds, York University Kirk Pruhs, University of Pittsburgh Jaisingh Solanki, York University.
Dividing a Cake Fairly among n players Thomas Yeo
International Workshop on Computer Vision - Institute for Studies in Theoretical Physics and Mathematics, April , Tehran 1 IV COMPUTING SIZE.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
CSC 2300 Data Structures & Algorithms March 27, 2007 Chapter 7. Sorting.
Randomized Algorithms and Randomized Rounding Lecture 21: April 13 G n 2 leaves
DAST, Spring © L. Joskowicz 1 Data Structures – LECTURE 1 Introduction Motivation: algorithms and abstract data types Easy problems, hard problems.
Online Algorithms for Network Design Adam Meyerson UCLA.
CSE 421 Algorithms Richard Anderson Lecture 4. What does it mean for an algorithm to be efficient?
SubSea: An Efficient Heuristic Algorithm for Subgraph Isomorphism Vladimir Lipets Ben-Gurion University of the Negev Joint work with Prof. Ehud Gudes.
Randomness in Computation and Communication Part 1: Randomized algorithms Lap Chi Lau CSE CUHK.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 11 Instructor: Paul Beame.
Lecture 20: April 12 Introduction to Randomized Algorithms and the Probabilistic Method.
Module #1 - Logic 1 Based on Rosen, Discrete Mathematics & Its Applications. Prepared by (c) , Michael P. Frank and Modified By Mingwu Chen Trees.
Finding a maximum independent set in a sparse random graph Uriel Feige and Eran Ofek.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
1 Fair Allocations of Indivisible Goods Part I: Minimizing Envy Elchanan Mossel Amin Saberi Richard Lipton Vangelis Markakis Georgia Tech CWI U. C. Berkeley.
A General Approach to Online Network Optimization Problems Seffi Naor Computer Science Dept. Technion Haifa, Israel Joint work: Noga Alon, Yossi Azar,
Priority Models Sashka Davis University of California, San Diego June 1, 2003.
DAST, Spring © L. Joskowicz 1 Data Structures – LECTURE 1 Introduction Motivation: algorithms and abstract data types Easy problems, hard problems.
Ch. 8 & 9 – Linear Sorting and Order Statistics What do you trade for speed?
Data Structures and Algorithms Graphs Minimum Spanning Tree PLSD210.
May 5, 2015Applied Discrete Mathematics Week 13: Boolean Algebra 1 Dijkstra’s Algorithm procedure Dijkstra(G: weighted connected simple graph with vertices.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
MST Many of the slides are from Prof. Plaisted’s resources at University of North Carolina at Chapel Hill.
Yossi Azar Tel Aviv University Joint work with Ilan Cohen Serving in the Dark 1.
Distributed Coloring Discrete Mathematics and Algorithms Seminar Melih Onus November
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Analysis of Algorithms
May 1, 2002Applied Discrete Mathematics Week 13: Graphs and Trees 1News CSEMS Scholarships for CS and Math students (US citizens only) $3,125 per year.
Télécom 2A – Algo Complexity (1) Time Complexity and the divide and conquer strategy Or : how to measure algorithm run-time And : design efficient algorithms.
Private Approximation of Search Problems Amos Beimel Paz Carmi Kobbi Nissim Enav Weinreb (Technion)
Discrete Structures Lecture 12: Trees Ji Yanyan United International College Thanks to Professor Michael Hvidsten.
Graph Colouring L09: Oct 10. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including the famous.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Data Structures and Algorithms in Parallel Computing Lecture 2.
Topics in Algorithms 2007 Ramesh Hariharan. Tree Embeddings.
A Optimal On-line Algorithm for k Servers on Trees Author : Marek Chrobak Lawrence L. Larmore 報告人:羅正偉.
CS425: Algorithms for Web Scale Data Most of the slides are from the Mining of Massive Datasets book. These slides have been modified for CS425. The original.
Computer Sciences Department1.  Property 1: each node can have up to two successor nodes (children)  The predecessor node of a node is called its.
Unique Games Approximation Amit Weinstein Complexity Seminar, Fall 2006 Based on: “Near Optimal Algorithms for Unique Games" by M. Charikar, K. Makarychev,
Approximating Buy-at-Bulk and Shallow-Light k-Steiner Trees Mohammad T. Hajiaghayi (CMU) Guy Kortsarz (Rutgers) Mohammad R. Salavatipour (U. Alberta) Presented.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 14, 2014.
Iterative Improvement for Domain-Specific Problems Lecturer: Jing Liu Homepage:
Models of Greedy Algorithms for Graph Problems Sashka Davis, UCSD Russell Impagliazzo, UCSD SIAM SODA 2004.
Clustering Data Streams A presentation by George Toderici.
Theory of Computational Complexity Yusuke FURUKAWA Iwama Ito lab M1.
Theory of Computational Complexity M1 Takao Inoshita Iwama & Ito Lab Graduate School of Informatics, Kyoto University.
A simple parallel algorithm for the MIS problem
Introduction to Randomized Algorithms and the Probabilistic Method
Minimum Spanning Tree 8/7/2018 4:26 AM
Mathematical Foundations of AI
Lecture 18: Uniformity Testing Monotonicity Testing
Randomized Algorithms CS648
Richard Anderson Lecture 29 Complexity Theory
Stability Analysis of MNCM Class of Algorithms and two more problems !
The Theory of NP-Completeness
Switching Lemmas and Proof Complexity
Presentation transcript:

Cake Cutting is and is not a Piece of Cake Jeff Edmonds, York University Kirk Pruhs, University of Pittsburgh

Informal Problem Statement n self interested players wish to divide items of value such that each player believes that they received at least 1/n of the value Players may not agree on the values of items Players may be deceitful, cunning, dishonest, etc.

An Instance of Cake Cutting From History

A Politically Incorrect Reference to Cake Cutting

Classic Problem Definition n players wish to divide a cake = [0, 1] Each player p has an unknown value function V p V p [x, y] = how much player p values piece/interval [x, y] The protocol’s goal is Fairness: Each honest player p is guaranteed a piece of cake of value at least V p [0,1]/n = 1/n

History Originated in 1940’s school of Polish mathematics Picked up by social scientists interested in fair allocation of resources Texts by Brams and Taylor, and Robertson and Webb A quick Google search reveals cake cutting is used as a teaching example in many algorithms courses

Classic Two Person Discrete Algorithm (n=2): Cut and Choose Person A cuts the cake into two pieces Person B selects one of the two pieces, and person A gets the other piece

Two Person Continuous Algorithm (n=2): Moving Knife Protocol moves the knife continuously across the cake until the first player say stop This player gets this piece, and the rest of the players continue Moving knife algorithms are considered cheating by discrete algorithmic researchers and we do not consider them here

Formalizing Allowed Operations Queries the protocol can make to each player: Eval[p, x, y]: returns V p [x, y] Cut[p, x, v]: returns a y such V p [x, y] = v All know algorithms can be implemented with these operations

Two Person Algorithm (n=2): Cut and Choose y = cut(A, 0, ½) If eval(B, 0, y) ≤ ½ then Player A gets [0, y] and player B gets [y, 1] Else Player B gets [0, y] and player A gets [y, 1]

Three Person Algorithm (n=3): Steinhaus Y A = cut(A, 0, 1/3) Y B = cut(B, 0, 1/3) Y C = cut(C, 0, 1/3) Assume wlog Y A ≤ Y B ≤ Y C Player A gets [0, y A ], and players B and C “cut and choose” on [y A, 1]

O(n log n) Divide and Conquer Algorithm: Evan and Paz Y i = cut(i, 0, 1/2) for i = 1 … n m = median(y 1, …, y n ) Recurse on [0, m] with those n/2 players i for which y i < m Recurse on [m, 1] with those n/2 players i for which y i > m

Problem Variations Contiguousness: Assigned pieces must be subintervals Approximate fairness: A protocol is c-fair if each player is a assured a piece that he gives a value of at least c/n Approximate queries (introduced by us?): AEval[p, ε, x, y]: returns a value v such that V p [x, y]/(1+ε) ≤ v ≤ (1+ ε) V p [x, y] ACut[p, ε, x, v]: returns a y such V p [x, y]/(1+ε) ≤ v ≤ (1+ ε) V p [x, y]

Problem Variations Deterministic vs. Randomized Exact vs. Approximate Queries Exact vs. O(1) Fairness Contiguous vs. General Pieces Complexity = number of queries Reference *Exact**O(n log n) Even and Paz 1984 **ExactContiguousΩ(n log n) Sgall and Woeginger 2003 Deterministic***Ω(n log n) Edmonds and Pruhs *Approximate**Ω(n log n) Edmonds and Pruhs RandomizedExactApproximateGeneralO(n) Edmonds and Pruhs* * The proof is currently only roughly written up at this point

Outline Deterministic Ω(n log n) Lower Bound Definition of Thin-Rich game Sufficiency to lower bound Thin-Rich Definition of value tree cakes Lower bound for Thin-Rich Hint at Randomized Ω(n log n) Lower Bound with Approximate Cuts Randomized O(n) Upper Bound

Thin-Rich Game Game Definition: Find a thin rich piece for a particular player A piece is thin if it has width ≤ 2/n A piece is rich if it has value ≥ 1/2n Theorem: The complexity of cake cutting is at least n/2 times the complexity of thin-rich Proof: In cake cutting, at least n/2 players have to end up with a thin rich piece

Value Tree ½*¼ ½*½¼*¼¼*½¼*¼ ¼*½¼*¼ 1/2 1/4 1/2 1/4 1/2 1/4 1/2 1/4 0 1/9 2/9 3/9 4/9 5/9 6/9 7/9 8/9 1 Value = Product of edge labels

Deterministic Ω(log n) Lower Bound for Thin-Rich Theorem: To win at Thin-Rich, when the input is derived from a value tree, the protocol has to find a leaf where at least 40% of the edge labels on root to leaf path are ½ Theorem: From each query, the protocol learns the edge labels on at most two root to leaf paths Theorem: The deterministic complexity of Thin-Rich is Ω(log n) Proof: Reveal edges with label ¼ on the two paths learned by the protocol

Randomized Lower Bound Theorem: From each approximate query, the protocol learns the edge labels on at most two root to leaf paths, and at most one constant depth triangle Theorem: The randomized complexity of thin-rich with approximate queries is Ω(log n) Proof: Use Yao’s technique. For each vertex in the value tree, uniformly at random pick the edge to label ½. The expected number of labels of ½ on all known labeled paths after k queries is O( (log 3 n)/3 + k)

Outline Deterministic Ω(n log n) Lower Bound Hint at Randomized Ω(n log n) Lower Bound with Approximate Cuts Randomized O(n) Upper Bound O(1) complexity randomized protocol for Thin-Rich Cake cutting algorithm Generalized offline power of two choices lemma Non-independent random graph model

O(1) Complexity Randomized Protocol for for Thin-Rich 1. Pick an i uniformly at random from 0 … n-1 2. x = Cut[0, i/n] 3. y = Cut[ 0, (i+1)/n] 4. If (y-x) ≤ 2/n then return piece [x, y] 5. Else goto step 1

Randomized Protocol for Cake Cutting Protocol Description: Each player repeatedly applies randomized thin-rich protocol to get 2d pieces For each player, pick one of the two tentative pieces in such a way that every point of cake is covered by at most O(1) pieces. If this is not possible, then start over again. Theorem: This protocol is approximately fair We need to show that the second step of the protocol is successful with probability Ω(1)

Digression(1) Power of Two Choices Setting: n balls, each of which can be put into two of n bins that are selected independently uniformly at random Online Theorem: The online greedy assignment guarantees maximum load of O(log log n) whp Offline Theorem: There is an assignment with maximum load O(1) whp

Digression(2): Proof of Offline Power of Two Choices Theorem Consider a graph G Vertices = bins One edge for each ball connecting the corresponding vertices Important: Edges are independent Lemma: If G is acyclic then the maximum load is 1 Classic Theorem: If a graph G has n/3 independent edges, then G is acyclic whp Proof: Union Bound. Prob[G contains a cycle C] ≤ Σ C Prob[C is in the graph] ~ Σ i (n choose i) * (1/3n) i

Key Theorem for O(n) Bound: Generalized Offline Balls and Bins Each of n players arbitrarily partition [0, 1] into n pieces Each player picks uniformly at random 2*d pieces Then with probability Ω(1), we can assign to each player one of its 2*d pieces so that every point is covered by at most O(1) pieces This is equivalent to offline balls and bins if the partition is into equal sized pieces, except that: We may need d > 1, and We don’t get high probability bound

Why a High Probability result is Not Achievable Probability of overlap of k ~ (n choose k) / n k

Problem Case: Forks Theorem: With probability Ω(1) there is no fork of depth ω(1) Therefore we throw out forked paths, and proceed Fork of depth 3

Directed Graph for Cake Cutting (d=1) picked Vertex

Sufficiency Condition Theorem: The maximum load is at most 1 if there is not directed path between the two pieces of the same person

One Difficulty: Edges May Not be Independent

Dealing with Dependent Edges Lemma: There are not many dependent edges Lemma: Each possible path, between two pieces of the same player, can have at most two dependent edges Lemma: With probability Ω(1) there is no path between two pieces of the same player

Conclusions Generalized offline balls and bins theorem may be useful elsewhere The model of random graphs, where there are some dependencies on the edges, and our analysis may be useful elsewhere Is dependent random graph model novel ?