Techniques for truthful scheduling Rob van Stee Max Planck Institute for Informatics (MPII) Germany.

Slides:



Advertisements
Similar presentations
Alexander Kononov Sobolev Institute of Mathematics Siberian Branch of Russian Academy of Science Novosibirsk, Russia.
Advertisements

Truthful Mechanisms for Combinatorial Auctions with Subadditive Bidders Speaker: Shahar Dobzinski Based on joint works with Noam Nisan & Michael Schapira.
Comp 122, Spring 2004 Order Statistics. order - 2 Lin / Devi Comp 122 Order Statistic i th order statistic: i th smallest element of a set of n elements.
SMA 6304/MIT2.853/MIT2.854 Manufacturing Systems Lecture 19-20: Single-part-type, multiple stage systems Lecturer: Stanley B. Gershwin
Algorithmic mechanism design Vincent Conitzer
Incremental Linear Programming Linear programming involves finding a solution to the constraints, one that maximizes the given linear function of variables.
Truthful Mechanism Design for Multi-Dimensional Scheduling via Cycle Monotonicity Ron Lavi IE&M, The Technion Chaitanya Swamy U. of Waterloo and.
CSE 330: Numerical Methods
Order Statistics Sorted
Transportation Problem (TP) and Assignment Problem (AP)
An Approximate Truthful Mechanism for Combinatorial Auctions An Internet Mathematics paper by Aaron Archer, Christos Papadimitriou, Kunal Talwar and Éva.
Algorithmic Game Theory and Scheduling Eric Angel, Evripidis Bampis, Fanny Pascual IBISC, University of Evry, France GOTha, 12/05/06, LIP 6.
Quick Sort, Shell Sort, Counting Sort, Radix Sort AND Bucket Sort
Scheduling with Outliers Ravishankar Krishnaswamy (Carnegie Mellon University) Joint work with Anupam Gupta, Amit Kumar and Danny Segev.
Infinite Horizon Problems
Planning under Uncertainty
Truthful Approximation Mechanisms for Scheduling Selfish Related Machines Motti Sorani, Nir Andelman & Yossi Azar Tel-Aviv University.
Computational problems, algorithms, runtime, hardness
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
CPSC 411, Fall 2008: Set 4 1 CPSC 411 Design and Analysis of Algorithms Set 4: Greedy Algorithms Prof. Jennifer Welch Fall 2008.
Tirgul 8 Universal Hashing Remarks on Programming Exercise 1 Solution to question 2 in theoretical homework 2.
Quicksort.
This material in not in your text (except as exercises) Sequence Comparisons –Problems in molecular biology involve finding the minimum number of edit.
Truthful Mechanisms for One-parameter Agents Aaron Archer, Eva Tardos Presented by: Ittai Abraham.
Preference Analysis Joachim Giesen and Eva Schuberth May 24, 2006.
Competitive Analysis of Incentive Compatible On-Line Auctions Ron Lavi and Noam Nisan SISL/IST, Cal-Tech Hebrew University.
Approximation Algorithms Motivation and Definitions TSP Vertex Cover Scheduling.
Incentive-compatible Approximation Andrew Gilpin 10/25/07.
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
Minimizing Flow Time on Multiple Machines Nikhil Bansal IBM Research, T.J. Watson.
Simple Sorting Algorithms. 2 Bubble sort Compare each element (except the last one) with its neighbor to the right If they are out of order, swap them.
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
Improved results for a memory allocation problem Rob van Stee University of Karlsruhe Germany Leah Epstein University of Haifa Israel WADS 2007 WAOA 2007.
Minimizing Makespan and Preemption Costs on a System of Uniform Machines Hadas Shachnai Bell Labs and The Technion IIT Tami Tamir Univ. of Washington Gerhard.
Called as the Interval Scheduling Problem. A simpler version of a class of scheduling problems. – Can add weights. – Can add multiple resources – Can ask.
Difficult Problems. Polynomial-time algorithms A polynomial-time algorithm is an algorithm whose running time is O(f(n)), where f(n) is a polynomial A.
Yossi Azar Tel Aviv University Joint work with Ilan Cohen Serving in the Dark 1.
Approximation schemes Bin packing problem. Bin Packing problem Given n items with sizes a 1,…,a n  (0,1]. Find a packing in unit-sized bins that minimizes.
© 2009 IBM Corporation 1 Improving Consolidation of Virtual Machines with Risk-aware Bandwidth Oversubscription in Compute Clouds Amir Epstein Joint work.
Approximation Algorithms for Knapsack Problems 1 Tsvi Kopelowitz Modified by Ariel Rosenfeld.
Batch Scheduling of Conflicting Jobs Hadas Shachnai The Technion Based on joint papers with L. Epstein, M. M. Halldórsson and A. Levin.
Scheduling policies for real- time embedded systems.
Packing Rectangles into Bins Nikhil Bansal (CMU) Joint with Maxim Sviridenko (IBM)
The Selection Problem. 2 Median and Order Statistics In this section, we will study algorithms for finding the i th smallest element in a set of n elements.
Unlimited Supply Infinitely many identical items. Each bidder wants one item. –Corresponds to a situation were we have no marginal production cost. –Very.
Games. Adversaries Consider the process of reasoning when an adversary is trying to defeat our efforts In game playing situations one searches down the.
Princeton University COS 423 Theory of Algorithms Spring 2001 Kevin Wayne Approximation Algorithms These lecture slides are adapted from CLRS.
Honors Track: Competitive Programming & Problem Solving Optimization Problems Kevin Verbeek.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Deadlocks II.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Yang Cai Oct 06, An overview of today’s class Unit-Demand Pricing (cont’d) Multi-bidder Multi-item Setting Basic LP formulation.
1 Network Models Transportation Problem (TP) Distributing any commodity from any group of supply centers, called sources, to any group of receiving.
Sorting: Implementation Fundamental Data Structures and Algorithms Klaus Sutner February 24, 2004.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
NP-Complete Problems Algorithm : Design & Analysis [23]
The bin packing problem. For n objects with sizes s 1, …, s n where 0 < s i ≤1, find the smallest number of bins with capacity one, such that n objects.
Algorithmic Mechanism Design Shuchi Chawla 11/7/2001.
CS 3343: Analysis of Algorithms Lecture 19: Introduction to Greedy Algorithms.
1 Ch. 2: Getting Started. 2 About this lecture Study a few simple algorithms for sorting – Insertion Sort – Selection Sort (Exercise) – Merge Sort Show.
CSC321: Introduction to Neural Networks and Machine Learning Lecture 23: Linear Support Vector Machines Geoffrey Hinton.
CS 361 – Chapter 10 “Greedy algorithms” It’s a strategy of solving some problems –Need to make a series of choices –Each choice is made to maximize current.
Feb 23, 2010 University of Liverpool Minimizing Total Busy Time in Parallel Scheduling with Application to Optical Networks Michele Flammini – University.
Approximation Algorithms based on linear programming.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
Chapter 15 Running Time Analysis. Topics Orders of Magnitude and Big-Oh Notation Running Time Analysis of Algorithms –Counting Statements –Evaluating.
Possibilities and Limitations in Computation
Objective of This Course
A new and improved algorithm for online bin packing
Selfish Load Balancing
György Dósa – M. Grazia Speranza – Zsolt Tuza:
Presentation transcript:

Techniques for truthful scheduling Rob van Stee Max Planck Institute for Informatics (MPII) Germany

2 Overview Algorithmic mechanism design Machine scheduling Monotonicity Monotone approximation algorithms

3 Approximation algorithms Input is given (correctly) Output is controlled by algorithm Problem is to get efficiently from input to output Note: efficient means fast! (polynomial-time) Performance measure: approximation ratio

4 Economics Correct data is not directly available Output is not controlled: agents cannot be told what to do Algorithmic mechanism design: [NR99] Optimize some function Not necessarily social welfare or profit of seller / mechanism Agents´ preferences and goal of mechanism are tied to secret data of agents

5 Today: One-parameter agents Output: set of loads placed on the agents Private data: cost per unit load Goal of agent: maximize profit = payment – cost Goal of mechanism: optimize some function of the loads

6 Machine scheduling m related machines (controlled by agents) n jobs must be assigned to the machines Possible goals: Minimize maximum load (makespan) maximize minimum load (cover) Max-min fairness Minimize p-norm

7 Motivation for covering Fair division: give as much as possible to the agent that gets the least Each agent should contribute to the work: egalitarian division of chores Some systems are only alive (productive) if all machines are alive Jobs = batteries Backup on parallel harddisks: backup capacity = minimum load

8 Cover vs. makespan 1 Low makespan often good cover Optimal schedules can be different! Input optimal opt. cover makespan=18 =

9 Cover vs. makespan 2 A good approximation for makespan may be very bad for cover! Optimal makespan = optimal cover Cover of this schedule

Motivation for p-norm Another way of allocating jobs “reasonably” Bansal and Pruhs: “The standard way to compromise between optimizing for the average and optimizing for the worst case is to optimize the p-norm, generally for something like p = 2 or p = 3.” 10

11 Monotonicity and truthfulness Machines are controlled by selfish agents They report speeds to a mechanism and get assigned works w i and payments The assignment must be monotone, else agents might lie (s 1,…,s i,….,s m )  (w 1,….,w i,…,w m ) (s 1,…,s i ’,….,s m ) Increase in s i no decrease in w i !  (w 1 ’,….,w i ’,…,w m ’)

12 Monotonicity and truthfulness Monotonicity is necessary and sufficient That is, given that the allocation is monotone, truthtelling is a dominant strategy for the agents We can define payouts based on the allocation curve (graph of allocation as a function of reported speed)

Allocation must be monotone 13 Truth = y: save A+B by bidding x Truth = x: extra cost of A for bidding y Motivate truthfulness: payment for bidding y instead of x should be at least A+B, at most A...

Overbidding does not help 14 Bid x instead of true t_i: cost decreases by A, payment by A+B Payment to agent = constant – marked area

Technique 1: fixed ordering of machines 15

Technique 1: fixed ordering of machines Often there are multiple schedules which achieve the optimal objective value To achieve monotonicity, we need a fixed way to choose between such schedules [AT01]: use a fixed ordering for the machines (independent of speeds!) use the lexicographically minimal optimal schedule What happens if some machine (agent) claims to be faster? 16

17 Monotonicity If it is not the bottleneck, nothing changes Makespan: bottleneck = machine with maximum load Cover: bottleneck = machine with minimum load If there existed a lexicographically smaller optimal assignment with the new speed, it would have been optimal previously, a contradiction

Monotonicity Proof for makespan objective: If machine i is bottleneck, it will get less work (objective= makespan!) or the same work If original assignment is still the best, amount allocated to i does not change, has load C´ (less than before) If another assignment is now better, machine i must get less work to get a load below C´ 18

Technique 2: randomization 19

Technique 2: randomization We can use randomization in our mechanisms Assumption: agents are risk-neutral Profit of M with probability 1/M means expected profit 1 Humans are more likely to say: most likely profit = 0 Expected profit of the agents should be monotone We get mechanisms that are truthful in expectation (not universally truthful) 20

Example: makespan Idea: use fractional assignment Calculate simple lower bound on optimal makespan Assign jobs machine by machine (fastest first) and fill them up to makespan level Last job on each machine may be split over two machines Each machine gets at most two partial jobs To get a valid assignment, we can put every split job on its first machine Simple 2-approximation! 21

... But not monotone Jobs 5,4,2,1 rounding 7 4 1Speeds rounding Speeds

Randomized rounding Solution: use randomized rounding Every partial job gets rounded to machine i with probability proportional to the fraction assigned to machine i Each machine has at most two partial jobs, so gets at most 2 extra jobs We have a 3-approximation for every choice of the random bits We can show that the expected load of every machine is monotone 23

Randomized rounding Randomized rounding is NOT used to improve the approximation ratio! In fact, the approximation ratio goes up Only use: achieve monotonicity Dhangwatnotai et al.[2008]: randomized PTAS for makespan and cover objective with the same property PTAS = arbitrarily good approximation ratio in polynomial time Deterministic QPTAS for makespan QPTAS = almost but not quite polynomial time 24

Achieving a deterministic monotone PTAS seemed much harder Christodoulou & Kovacs achieved this for makespan [2010] Very complicated proof, several special cases I will come back to this later 25

Technique 3: ignoring the speeds 26

27 Technique 3: ignore the speeds completely Conflict: mechanism wants to allocate jobs based on reported speeds Agents may lie about speeds to get better assignments/profit Possible solution: just ignore the agents’ bids completely Example: machine covering [EvS 08]

28 Next Cover [Azar & Epstein 1997] Input: Guess value G m machines sorted by speed (fastest first) n jobs sorted by size (largest first) Algorithm: for each machine assign jobs in sorted order until load G is reached G

29 Next Cover [Azar & Epstein 1997] If no jobs are left and some machine has load less than G, return fail If load G is reached everywhere: Assign remaining jobs (if any) to machine m, return success Next Cover is a 2-approximation if value of OPT is known

Sorted Next Cover [EvS 08] Initial guess: run LPT on identical machines, gives value A We know: (On identical machines, LPT is a 4/3-approximation [CKW92, DFL82]) Next Cover is a 2-approximation if value of OPT is known [AE97] Thus, NC will succeed with guess A/2 Do geometric search Initial upper bound is U = 4A/3 Initial lower bound is L = A/2 Guess value G = (UL) 1/2 30

31 Sorted Next Cover For each guess value, we run NC We stop the search when We use geometric search since we want to have a bound on the ratio U/L Geometric search is the fastest way to get this

32 Sorted Next Cover Finally, we need to assign the jobs to the actual (related) machines We use the job sets that NC creates We assign them to machines in sorted order: fastest machine gets largest set This ensures monotonicity

33 Monotonicity The job sets do not depend on speeds They are created for identical machines If a machine claims to be faster than it really is, it can only get a larger set If a machine claims to be slower than it really is, it can only get a smaller set

34 Approximation ratio At most : SNC has load on machine i NC cannot find a cover above U on identical machines, Optimal cover on identical machines of speed 1 is at most Optimal cover on identical machines of speed is at most Ratio

35 Approximation ratio At most m : (complicated) proof by induction This was the best known result if m is part of the input until WINE 2010 [CKvS10] (new ratio: 2+epsilon)...and the best known efficient/practical algorithm until earlier this year [O12]

Technique 4: check all possible bid vectors 36

Technique 4: try all possible assignments We are given a bid vector We want to ensure that if one bid changes, that agent does not improve Idea (Andelman, Azar, Sorani 05): for every possible bid vector, find best assignment Test this assignment on actual bid vector Use best assignment found We need to limit the number of possible bid vectors 37

38 Monotone FPTAS [AAS05] Round bids up geometrically Bid = announced cost per unit load Very high bids are cut off Such bids correspond to extremely slow machines These are easy to cover: only one job is needed Maximum rounded bid is

39 Monotone FPTAS [AAS05] Apply classical FPTAS to all possible bid vectors Sort output assignment such that i th fastest machine gets i-th largest amount of work Test all assignments on actual bids Return the (lex. smallest) optimal one Works for makespan [AAS05] and cover [EvS08] Only works for constant m

Technique 5: optimize over limited set 40

Optimizing over a limited set A main problem is the existence of “tiny” jobs Usually, in a PTAS, we group jobs below a certain threshold size, and don’t use their exact size in calculations Furthermore, we round job sizes to have only a limited number of different job sizes Monotonicity is an exact requirement! 41

Optimizing over a limited set The PTAS for makespan [CK10] does the following. Instead of rounding jobs, always use a fixed order to allocate them to machines To deal with tiny jobs, these were rounded using a much finer coarsity than the rounding of machine speeds Blocks of tiny jobs were always moved towards faster machines, which were kept filled up to makespan level Then use dynamic programming Special case for last machines... 42

Optimizing over a limited set What about other objective functions? Consider covering Bottleneck machines now collect tiny jobs instead of getting rid of them Tiny jobs means uncertain workload Monotonicity argument breaks down 43

Optimizing over a limited set We found a way to exactly represent schedules where the job size ratio on a machine can be unbounded (!) Idea: not every job size can occur on a machine, only a polynomial number of classes Thus we completely avoid “tiny” jobs with uncertain (rounded) size This is sufficient to get very close to optimality: For every optimal schedule, a “nearby” highly structured schedule exists with the above property We look for this structured schedule using dynamic programming 44

New results This works for every objective function that is a “nice” function of the loads ELvS12 (arxiv 15 July 2012) : deterministic monotone PTAS for makespan cover p-norm No special cases No need to round speeds (!) Objective function only goes into the dynamic program 45

Summary / open questions We can approximate any nice objective that is based on the loads arbitrarily well This basically resolves truthful one-parameter scheduling What is the next interesting one-parameter/simple problem? General problem: how much more difficult is it to solve (one-parameter) problems truthfully than to solve them classically? So far only separations known for fairly difficult problems 46

47 Thank you!