Homework 2: Multi-unit combinatorial auctions (due Nov. 7 before class)

Similar documents
Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

1. Lecture notes on bipartite matching February 4th,

Duality. Primal program P: Maximize n. Dual program D: Minimize m. j=1 c jx j subject to n. j=1. i=1 b iy i subject to m. i=1

GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI

Combinatorial Auctions: A Survey by de Vries and Vohra

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY

Approximation Algorithms

AM 121: Intro to Optimization Models and Methods Fall 2017

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Solving lexicographic multiobjective MIPs with Branch-Cut-Price

A List Heuristic for Vertex Cover

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Approximation Techniques for Utilitarian Mechanism Design

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Heuristic Optimization Today: Linear Programming. Tobias Friedrich Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam

Practice Final Exam 2: Solutions

Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way.

Combinatorial Optimization

11 Linear Programming

Approximation Algorithms

Linear Programming Duality and Algorithms

Discrete Optimization. Lecture Notes 2

DM515 Spring 2011 Weekly Note 7

Econ 172A - Slides from Lecture 9

Approximation Algorithms

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

Algorithmic Game Theory and Applications. Lecture 6: The Simplex Algorithm

Introduction. Linear because it requires linear functions. Programming as synonymous of planning.

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

Linear Programming. Course review MS-E2140. v. 1.1

The Ascendance of the Dual Simplex Method: A Geometric View

CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi

Lec13p1, ORF363/COS323

1 Linear programming relaxation

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

BCN Decision and Risk Analysis. Syed M. Ahmed, Ph.D.

Stanford University CS261: Optimization Handout 1 Luca Trevisan January 4, 2011

Notes for Lecture 20

Read: H&L chapters 1-6

Section Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

1. Lecture notes on bipartite matching

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Chapter II. Linear Programming

MATHEMATICS II: COLLECTION OF EXERCISES AND PROBLEMS

Mathematics for Decision Making: An Introduction. Lecture 18

Linear Programming Motivation: The Diet Problem

5.3 Cutting plane methods and Gomory fractional cuts

CSE 417 Network Flows (pt 4) Min Cost Flows

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs

Unit.9 Integer Programming

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

An introduction to pplex and the Simplex Method

Some Advanced Topics in Linear Programming

Convex Optimization CMU-10725

Linear Programming. them such that they

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs

Econ 172A - Slides from Lecture 8

4 Greedy Approximation for Set Cover

ORF 307: Lecture 14. Linear Programming: Chapter 14: Network Flows: Algorithms

Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

16.410/413 Principles of Autonomy and Decision Making

Linear programming and duality theory

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

CMPSCI611: The Simplex Algorithm Lecture 24

DETERMINISTIC OPERATIONS RESEARCH

9.4 SOME CHARACTERISTICS OF INTEGER PROGRAMS A SAMPLE PROBLEM

COMP260 Spring 2014 Notes: February 4th

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

Parallel Auction Algorithm for Linear Assignment Problem

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

What s Linear Programming? Often your try is to maximize or minimize an objective within given constraints

Linear Programming. L.W. Dasanayake Department of Economics University of Kelaniya

Linear Programming. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015

Noam Nisan. Abstract. When an auction of multiple items is performed, it is often desirable to allow bids on combinations

Civil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

Approximation Algorithms for Item Pricing

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

MATLAB Solution of Linear Programming Problems

Problem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel.

Simulation. Lecture O1 Optimization: Linear Programming. Saeed Bastani April 2016

Optimization. A first course on mathematics for economists Problem set 6: Linear programming

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018

Lecture 5: Duality Theory

ONLY AVAILABLE IN ELECTRONIC FORM

Artificial Intelligence

LARGE SCALE LINEAR AND INTEGER OPTIMIZATION: A UNIFIED APPROACH

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

12 Introduction to LP-Duality

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

J Linear Programming Algorithms

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

Integer Programming Theory

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

Transcription:

CPS 590.1 - Linear and integer programming Homework 2: Multi-unit combinatorial auctions (due Nov. 7 before class) Please read the rules for assignments on the course web page. Contact Vince (conitzer@cs.duke.edu) with any questions. All questions have the same number of points. In this assignment, we again consider combinatorial auctions. 1 In class, the combinatorial auctions that we considered were single-unit combinatorial auctions, in the sense that there was only one unit (copy) of each item. Now, we consider multi-unit combinatorial auctions. In these, for each item i, we have some number of units (copies) q i of this item for sale. For example, suppose there are two items (or, if you prefer, two types of item), A and B. We have 10 units of item A for sale, and 5 units of item B for sale. We have the following bids: ({10A, 4B}, 11) ({8A, 1B}, 8) ({5A, 10B}, 10) This means, for example, that the first bidder wants to buy 10 units of A and 4 units of B, and is willing to pay 11 for this. Throughout this assignment, we will allow fractional acceptance of bids for example, it is possible to accept 1/2 of the first bid, giving the first bidder 5 units of A and 2 units of B, and collecting 5.5 from this bidder. In fact, for simplicity, throughout this assignment, you are also allowed to accept a bid more than once. For example, it is possible to accept the second bid 1.25 times, giving that bidder 10 units of A and 1.25 units of B, and collecting 10 from this bidder. Of course, we cannot accept this bid (say) 1.3 times, because we do not have enough units of A for this. 1 In auction theory terms, we consider first-price combinatorial auctions, meaning that every winning bidder simply pays what she bid. We will not concern ourselves with strategic/game-theoretic bidding, etc., in this assignment; we focus on the winner determination problem (just as we did in class). 1

1. Give a linear program formulation for the winner determination problem, trying to maximize the value that we can collect from the bidders under the constraint that we cannot allocate more units of an item than we have available. Note that you should give a general formulation, not just one for the 3-bid example above. (You will use this throughout the assignment, so make it clean and elegant...) 2. Give the dual of this linear program formulation. Interpret it in terms of prices, and give an intuitive argument for weak duality (that is, why does a feasible solution to the dual give you an upper bound on what you can obtain?). 2

3. Solve the specific 3-bid example given above by using the simplex algorithm (by hand) on the linear program formulation, starting from the dictionary where every (non-slack) variable is set to 0. You can use whatever pivoting rule you like (think before you pivot!). For the final dictionary, you only need to write down enough of it to prove that you are done. You should state what the optimal primal solution is, and what the optimal dual solution is. 3

B 2 4 2 5 A C D Figure 1: The graph for an instance of the network combinatorial auction problem. We now consider a version of the multi-unit combinatorial auction winner determination problem where there are exponentially many bids. We will call this problem the network combinatorial auction problem. Specifically, we consider a directed graph G with vertices V and edges E. The edges are the items, and for every edge e, there are q e units available of this edge. For every bidder b, there is an starting vertex s b and a target vertex t b. Bidder b bids v b for every path from s b to t b, that is, for every bundle of items (edges) corresponding to a path between s b and t b. (We can think of this as follows: a single bidder places multiple bids; there is one bid for each path.) Again, a bid can be accepted fractionally; it can also be accepted more than once. As an example, consider the graph in Figure 1. We have 2 units of edge AB, 2 of AC, 4 of BC, and 5 of CD. Now suppose we have the following 3 bidders: s 1 = A, t 1 = D, v 1 = 10 s 2 = A, t 2 = C, v 2 = 6 s 3 = C, t 3 = D, v 3 = 3 We can reformulate this in terms of the original multi-unit combinatorial auction winner determination problem as follows. The first bidder really places two bids, corresponding to the two different paths from A to D. One of these bids is ({1AB, 1BC, 1CD}, 10), and one of them is ({1AC, 1CD}, 10). (Note that the coefficients on the edges within the bids must always be 1 in a network combinatorial auction.) The third bidder corresponds to only a single bid, namely ({1CD}, 3). It is easy to see that the optimal solution here is to accept the first bidder 4 times (namely, 2 times ({1AB, 1BC, 1CD}, 10) and 2 times ({1AC, 1CD}, 10)), and the third bidder 1 time, for a total of 4 10 + 1 3 = 43. 4

4. To solve these instances, we can still use the same linear program as the one that you developed in the first questions of this assignment; the only problem is that there are exponentially many bids, one for every path. (The number of items is fine; we can easily enumerate them.) To make this work, describe a simple (and efficient) algorithm for finding the most violated constraint. (Do you need to find the most violated constraint in the primal or in the dual?) 5

5. Instead of using your general combinatorial auction winner determination problem LP formulation with the help of constraint/column generation, we can also create a more specific and direct LP formulation for the network combinatorial auction problem that uses only polynomially many variables and constraints. Give such a formulation; make it as elegant as possible. (For once, you do not have to give the dual... Not that it isn t interesting...) 6

6. We know that for the combinatorial auction problem in general, it is possible to give examples where, even though the input numbers are all integers, the only optimal solution is fractional (bids are accepted only partially) this is true even in the single-unit case. Is it also possible to give such an example in the network combinatorial auction problem, or is there an integrality theorem for this problem? If the former, give such an example. If the latter, prove it. You will get no points for simply guessing without an explanation. 7