many uses of linear programming, mixed integer (linear) programming in this course linear...

30
Many uses of linear programming, mixed integer (linear) programming in this course Linear programming Mixed integer linear programming Game theory Dominated strategies Minimax strategies Correlated equilibrium Optimal mixed strategies to commit to Nash equilibrium Optimal mixed strategies to commit to in more complex settings Social choice, expressive marketplac es Winner determination in auctions, exchanges, … with partially acceptable bids Winner determination in: auctions, exchanges, … without partially acceptable bids;

Upload: destiny-dowding

Post on 31-Mar-2015

376 views

Category:

Documents


12 download

TRANSCRIPT

Page 1: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Many uses of linear programming, mixed

integer (linear) programming in this courseLinear programming Mixed integer linear

programming

Game theory

Dominated strategiesMinimax strategies

Correlated equilibriumOptimal mixed strategies to

commit to

Nash equilibriumOptimal mixed strategies

to commit to in more complex settings

Social choice, expressive

marketplaces

Winner determination in auctions, exchanges, … with

partially acceptable bids

Winner determination in: auctions, exchanges, …

without partially acceptable bids; Kemeny, Slater, other voting rules;

kidney exchange

Mechanism design

Automatically designing optimal mechanisms that use

randomization

Automatically designing optimal mechanisms that do not use randomization

Page 2: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Brief introduction to linear

and mixed integer

programming

Page 3: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Properties of Linear

Programming (LP) Models

1) Seek to minimize or maximize

2) Include “constraints” or limitations

3) There must be alternatives available

4) All equations are linear

Page 4: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Example LP Model Formulation:

The Product Mix ProblemDecision: How much to make of two

products?

Objective: Maximize profit

Constraints: Limited resources

Page 5: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Example

Two products: Chairs and Tables

Decision: How many of each to make this

month?

Objective: Maximize profit

Page 6: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Flair Furniture Co. DataTables

(per table)Chairs

(per chair)

Hours Available

Profit Contribution

$7 $5

Carpentry Req 3 hrs 4 hrs 2400

Painting Req 2 hrs 1 hr 1000

Other Limitations:• Make no more than 450 chairs• Make at least 100 tables

Page 7: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Decision Variables:

T = Num. of tables to make

C = Num. of chairs to make

Objective Function: Maximize Profit

Maximize $7 T + $5 C

Page 8: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Constraints:

• Have 2400 hours of carpentry time

available

3 T + 4 C < 2400 (hours)

• Have 1000 hours of painting time

available

2 T + 1 C < 1000 (hours)

Page 9: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

More Constraints:• Make no more than 450 chairs

C < 450 (num. chairs)

• Make at least 100 tables T > 100 (num. tables)

Nonnegativity:Cannot make a negative number of chairs or

tables

T > 0C > 0

Page 10: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Model Summary

Maximize 7T + 5C

(profit)

Subject to the constraints:

3T + 4C < 2400 (carpentry hrs)

2T + 1C < 1000 (painting hrs)

C < 450 (max # chairs)

T > 100 (min # tables)

T, C > 0(nonnegativity)

Page 11: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Graphical Solution

• Graphing an LP model helps provide

insight into LP models and their solutions.

• While graphing can only be done in two

or three dimensions, the same properties

apply to all LP models and solutions.

Page 12: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Carpentry

Constraint Line

3T + 4C = 2400

Intercepts

(T = 0, C = 600)

(T = 800, C = 0)

0 800 T

C

600

0

Feasible

< 2400 hrs

Infeasible

> 2400 hrs

3T + 4C = 2400

Page 13: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Painting

Constraint Line

2T + 1C = 1000

Intercepts

(T = 0, C = 1000)

(T = 500, C = 0)

0 500 800 T

C1000

600

0

2T + 1C = 1000

Page 14: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

0 100 500 800 T

C1000

600

450

0

Max Chair Line

C = 450

Min Table Line

T = 100

Feasible

Region

Page 15: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

0 100 200 300 400 500 T

C

500

400

300

200

100

0

Objective Function Line

7T + 5C = Profit

Think of line of solutions at a

particular profit.

Anywhere on that line yields the same profit

7T + 5C = $2,100

7T + 5C = $4,040

Optimal Point(T = 320, C =

360)

7T + 5C = $2,800

Page 16: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

0 100 200 300 400 500 T

C

500

400

300

200

100

0

Additional Constraint

Need at least 75 more chairs than tables

C > T + 75

Or

C – T > 75

T = 320C = 360

No longer feasible

New optimal pointT = 300, C = 375

Page 17: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

LP Characteristics

• Feasible Region: The set of points that

satisfies all constraints

• Corner Point Property: An optimal

solution must lie at one or more corner

points

• Optimal Solution: The corner point with

the best objective function value is

optimal

Page 18: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

In higher dimensions• In multiple dimensions, the region of interest is

of higher dimension.

• polytope – a polygon in higher dimension - a

geometric object with flat sides

• simplex – a generalization of the notion of a

triangle or tetrahedron to arbitrary dimension –

a convex hull

• Algorithmic method – optimal value will always

be on a vertex of the polytope – walking along

edges to vertices of higher objective function

Page 19: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated
Page 20: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Linear programs: example

If x is the number of painting 1

and y is the number of

painting 2, state this poroblem

as a series of equations of

requirements: Something to

maximize and inequalities to

satisfy;

• We make reproductions of two paintings

• Painting 1 sells for $30, painting 2 sells for $20

• Painting 1 requires 4 units of blue, 1 green, 1 red

• Painting 2 requires 2 blue, 2 green, 1 red

• We have 16 units blue, 8 green, 5 red

Page 21: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Linear programs: example

maximize 30x + 20y

subject to

4x + 2y ≤ 16

x + 2y ≤ 8

x + y ≤ 5

x ≥ 0

y ≥ 0

• We make reproductions of two paintings

• Painting 1 sells for $30, painting 2 sells for $20

• Painting 1 requires 4 units of blue, 1 green, 1 red

• Painting 2 requires 2 blue, 2 green, 1 red

• We have 16 units blue, 8 green, 5 red

Page 22: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Solving the linear program graphically

maximize 30x + 20y

subject to

4x + 2y ≤ 16

x + 2y ≤ 8

x + y ≤ 5

x ≥ 0

y ≥ 0

2

0

4

6

8

2 4 6 8

optimal solution: x=3, y=2

Think of dotted lines as various

values for 30x+20y

Page 23: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Modified LPmaximize 30x +

20y

subject to

4x + 2y ≤ 15

x + 2y ≤ 8

x + y ≤ 5

x ≥ 0

y ≥ 0

Optimal solution: x = 2.5,

y = 2.5

Solution value = 7.5 + 5 =

12.5

Half paintings? –

interested in integer

answers

Page 24: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Integer (linear) program

maximize 30x + 20y

subject to

4x + 2y ≤ 15

x + 2y ≤ 8

x + y ≤ 5

x ≥ 0, integer

y ≥ 0, integer

2

0

4

6

8

2 4 6 8

optimal LP solution: x=2.5,

y=2.5 (objective 125)

optimal IP solution: x=2,

y=3 (objective 120)

Page 25: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Mixed integer (linear) program

maximize 30x + 20y

subject to

4x + 2y ≤ 15

x + 2y ≤ 8

x + y ≤ 5

x ≥ 0

y ≥ 0, integer

2

0

4

6

8

2 4 6 8

optimal LP solution: x=2.5,

y=2.5 (objective 125)

optimal IP solution: x=2,

y=3 (objective 120)

optimal MIP solution: x=2.75,

y=2 (objective 122.5)

Page 26: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Solving linear/integer programs• Linear programs can be solved efficiently

– Simplex, ellipsoid, interior point methods…

• (Mixed) integer programs are NP-hard to solve

– Quite easy to model many standard NP-complete

problems as integer programs (try it!)

– Search type algorithms such as branch and bound

• Standard packages for solving these

– GNU Linear Programming Kit, CPLEX, …

• LP relaxation of (M)IP: remove integrality

constraints

– Gives upper bound on MIP (~admissible heuristic)

Page 27: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Practice modeling hard problems

as LP or (M)IP problems

Page 28: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Exercise in modeling: knapsack-type problem

• We arrive in a room full of precious objects• Can carry only 30kg out of the room• Can carry only 20 liters out of the room• Want to maximize our total value• Unit of object A: 16kg, 3 liters, sells for $11

– There are 3 units available

• Unit of object B: 4kg, 4 liters, sells for $4– There are 4 units available

• Unit of object C: 6kg, 3 liters, sells for $9– Only 1 unit available

• What should we take?

Page 29: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Exercise in modeling: cell phones (set cover)

• We want to have a working phone in every continent (besides Antarctica)

• … but we want to have as few phones as possible

• Phone A works in NA, SA, Af• Phone B works in E, Af, As• Phone C works in NA, Au, E• Phone D works in SA, As, E• Phone E works in Af, As, Au• Phone F works in NA, E

Page 30: Many uses of linear programming, mixed integer (linear) programming in this course Linear programmingMixed integer linear programming Game theory Dominated

Exercise in modeling: hot-dog stands

• We have two hot-dog stands to be placed in somewhere along the beach

• We know where the people that like hot dogs are, how far they are willing to walk

• Where do we put our stands to maximize #hot dogs sold? (price is fixed)

location: 4#customers: 1

willing to walk: 2

location: 7#customers: 3

willing to walk: 3

location: 9#customers: 4

willing to walk: 3

location: 1#customers: 2

willing to walk: 4

location: 15#customers: 3

willing to walk: 2