CSCI 3210: Computational Game Theory Linear Programming and - - PDF document

csci 3210 computational game theory linear programming
SMART_READER_LITE
LIVE PREVIEW

CSCI 3210: Computational Game Theory Linear Programming and - - PDF document

2/14/18 CSCI 3210: Computational Game Theory Linear Programming and 2-Player Zero-Sum Games Ref: Wikipedia and [AGT] Ch 1 Mohammad T . Irfan Email: mirfan@bowdoin.edu Web: www.bowdoin.edu/~mirfan Course Website:


slide-1
SLIDE 1

2/14/18 1

CSCI 3210: Computational Game Theory

Mohammad T . Irfan Email: mirfan@bowdoin.edu Web: www.bowdoin.edu/~mirfan Course Website: www.bowdoin.edu/~mirfan/CSCI-3210.html

Linear Programming and 2-Player Zero-Sum Games

Ref: Wikipedia and [AGT] Ch 1

2-player zero-sum game

u Prove that NE exists– in two ways

  • 1. Nash's theorem

u

Doesn't give an algorithm (why?)

  • 2. Linear programming

u Gives an algorithm

slide-2
SLIDE 2

2/14/18 2

Example: 2-player zero-sum game

u Penalty kick game Left (0.42) Right (0.58) Left (0.38)

0.58, 0.42 0.95, 0.05

Right (0.62)

0.93, 0.07 0.70, 0.30

Shooter Goalkeeper

Example: 2-player zero-sum game

u Assumption (wlog): sum of payoffs in each

cell is 0

u More than 2 actions?

u Need an algorithm

L R U

2, -2

  • 1, 1

D

  • 3, 3

4, -4

Row player Column player L R U

2

  • 1

D

  • 3

4

slide-3
SLIDE 3

2/14/18 3

Linear Programming (LP)

Will come back to game theory later

Applications

u Optimization

u Production, machine scheduling, employee

scheduling, supply chain management, etc.

u Game theory u In general: optimization

slide-4
SLIDE 4

2/14/18 4

LP

  • 1. Variables (or decision variables)

u We can choose the values of these variables u What's the goal? u What values can we choose?

  • 2. Objective function (What's the goal?)

u Minimization or maximization u Must be linear in the variables

  • 3. Constraints (What values?)

u Restricts the values of choice variables u Must be linear in the variables

Example: LP formulation & geometric interpretation

u One is planning his day-to-day life. Outside of 10

hours of sleep every day, he wants to set aside a few hours for studying and a few hours for connecting with friends.

u Gets 10 units/hr of payoff from study and 20

units/hr of payoff from connecting with friends.

u Must study at least 6 hours every day. Also, feels

guilty if spends more than 6 hours with friends.

u How should he allocate time optimally?

u Variables? u Objective function? u Constraints?

slide-5
SLIDE 5

2/14/18 5

x1 x2 (0,0) 14 14 6 6

Note: x1, x2 >= 0: white region

Feasible region One of the vertices (black dots) will give the optimal solution

Example: infeasible LP

u Want to study at least 10 hours/day and do

  • ther activities for at least 5 hours/day. How

to allocate time?

slide-6
SLIDE 6

2/14/18 6

Example: more var. & constraints

u Gets 15 units/hr of payoff for studying up to

3 hours and 10 units/hr of payoff after 3 hours of studying (basically, brain slows down). Also gets 20 units/hr of payoff from connecting with friends.

u Wants at least 6 hours of study u Wants at most 6 hours of time with friends

Example: unbounded LP

u A tennis player is making a plan for

practicing service and volley. She gets a payoff of 10 from every service and 5 from every volley.

u She wants to practice service at least 100

times a day and doesn't want to practice volleys more than 500 times a day. What's her

  • ptimal plan?
slide-7
SLIDE 7

2/14/18 7

Matrix algebra

u Images from this tutorial:

http://www.intmath.com/matrices- determinants/3-matrices.php

u 4x1 matrix (AKA vector) u 3x3 matrix

Matrix multiplication

u 2x3 matrix multiplied by 3x2 matrix u Result is a 2x2 matrix

must match

slide-8
SLIDE 8

2/14/18 8

Transpose of matrix

u Transpose operator: superscript T u (A B)T = BT AT

A = 1 2 3 4 5 6 ! " # # # $ % & & & AT = 1 2 3 4 5 6 ! " # # $ % & &

slide-9
SLIDE 9

2/14/18 9

Algorithms for solving LP

u Simplex (Dantzig, 1947)

u Worst case exponential time u Practically fast

u Ellipsoid (Khachiyan, 1979)

u O(n4 L) for n variables and L input bits u Pseudo-polynomial

u Karmarkar's algorithm (Karmarkar, 1984)

u O(n3.5 L) for n variables and L input bits u Pseudo-polynomial, but breakthrough for practical

reasons u Open problem: strongly polynomial algorithm?

LP Duality (von Neumann, 1947)

u Interview with Dantzig

u http://www.personal.psu.edu/ecb5/Courses/

M475W/WeeklyReadings/Week%2015/ An_Interview_with_George_Dantzig.pdf u If the "primal" LP is maximization, its "dual"

is minimization and vice versa.

u Every variable of the primal LP leads to a

constraint in the dual LP and every constraint

  • f the primal LP leads to a variable in the

dual LP .

u Dual of dual is primal.

slide-10
SLIDE 10

2/14/18 10

Definition of dual LP

Source: Applied Mathematical Programming book

Primal Maximize cTx subject to: Ax <= b x >= 0 Dual Minimize bTy subject to: ATy >= c y >= 0

Example: LP duality

u How many Bowdoin logs and chocolate cakes should

Thorne make to maximize its revenue?

u Objective function. Each log has a satisfaction of 10 (or

price of $10), each cake 5.

u Constraints. For both desserts, the chef needs to use an

  • ven, a food processor, and a boiler.

Processing time/log Processing time/cake Total available time Oven

5 min 1 min 85 min

Food processor

1 min 10 min 300 min

Boiler

4 min 6 min 120 min Derive primal and dual LP

slide-11
SLIDE 11

2/14/18 11

Dual: intuition

u Moulton wants to borrow Thorne's equipment

for a day. Thorne wants to charge "reasonable" prices $y1/min, $y2/min, and $y3/min for the 3 equipment, resp.

u Dual objective: minimize total cost of

renting

u Dual constraints: recuperate lost payoff for

each dessert

Daily planner example

Primal LP Maximize 10 x1 + 20 x2 Subject to x1 >= 6 (or, -x1 <= -6) x2 <= 6 x1 + x2 <= 14 x1, x2 >= 0 Dual LP

?

Work out the solutions by hand. What's the dual interpretation?

slide-12
SLIDE 12

2/14/18 12

Complementary slackness

u primal constraint non-binding (not equal) =>

corresponding dual variable = 0

u Similar condition holds for dual constr. & primal

var. u The reverse implication may not hold

Weak duality theorem

Primal LP Maximize ... Dual LP Minimize ...

Increasing

  • bjective

function

Gap?

slide-13
SLIDE 13

2/14/18 13

Weak duality theorem

u Any feasible solution of the dual LP (minimization) gives an

upper bound on the optimal solution of the primal LP (maximization).

u Proof

u Any feasible solution of the primal LP (maximization) is a

lower bound on the optimal solution of the dual LP (minimization). Primal LP (max) Dual LP (min)

Increasing

  • bjective

function Gap?

Weak duality theorem

u Implications

u Primal unbounded è Dual infeasible u Dual unbounded è Primal infeasible

u Both primal and dual may be infeasible

(although not implied by this theorem)

Primal LP (max) Dual LP (min)

Increasing

  • bjective

function Gap?

slide-14
SLIDE 14

2/14/18 14

Strong duality theorem

u If the primal LP has a finite optimal solution,

then so does the dual LP . Moreover, these two optimal solutions have the same

  • bjective function value.

u In other words, if either the primal or the dual LP

has a finite optimal solution, the gap between them is 0.

2-player zero-sum game

Algorithm via LP duality

slide-15
SLIDE 15

2/14/18 15

Example: 2-player zero-sum game

u Assumption (wlog): sum of payoffs in each

cell is 0

L R U

2, -2

  • 1, 1

D

  • 3, 3

4, -4

Row player Column player L R U

2

  • 1

D

  • 3

4

Matrix A

Row player

u How much (vr) can row guarantee from col.?

u Want largest vr possible

u Row: choose mixed strategy p (vector of

prob.) to maximize vr

u Expected payoff of row when of col. plays j

= (pTA)j = Σi (pi Ai,j)

slide-16
SLIDE 16

2/14/18 16

Row player's LP

vr = max v subject to piAi, j

i

≥ v, for each action j of column player pi =1

i

pi ≥ 0, for each action i of row player

Row player's thought process: maximize my guaranteed payoff v from column player knowing that column player will always minimize her payout to me (in

  • ther words, v is the least for any

action j of column player).

Column player

u How little (vc) can col. player pay to row? u Choose mixed strategy q (vector of

probabilities) to minimize vc

u Expected payoff of row player for action i =

(Aq)i = Σj (Ai,j qj)

u LP

vc = min u subject to

  • Col. player's thought process:

minimize my guaranteed payout u to row player knowing that row player will choose to maximize her payoff.

Ai, jqj

j

≤ u, for each action i of row player qj =1

j

qj ≥ 0, for each action j of column player

slide-17
SLIDE 17

2/14/18 17

Column player's LP

vc = min u subject to

  • Col. player's thought process:

minimize my guaranteed payout u to row player knowing that row player will choose to maximize her payoff.

Ai, jqj

j

≤ u, for each action i of row player qj =1

j

qj ≥ 0, for each action j of column player

Minimax Theorem

u At an equilibrium, vr = vc

u Proof:

  • 1. The two LPs are duals of each other.
  • 2. Primal LP has a finite optimal solution (it's feasible

+ bounded).

  • 3. By the strong duality theorem, vr = vc.

u Another proof:

  • 1. Let v* be row player's payoff at a NE.
  • 2. vr <= v*, because is vr is row player's guaranteed

payoff and v* cannot be lower than that.

  • 3. By assumption of NE, column player will not give

row player more than vr. So, vr = v*. SImilarly, vc = v*.

u This quantity vc or vr is known as the value of

the game (v*)

slide-18
SLIDE 18

2/14/18 18

More LP duality example

Vertex cover problem

Vertex cover problem

u Given a graph, select the minimum number

  • f nodes such that at least one endpoint of

every edge is selected.

u Answer?

4 5 6 7 8 9 2 3 1

slide-19
SLIDE 19

2/14/18 19

Optimization

u xt is 1 if node t is picked and 0 otherwise u Is the following a usual linear program?

Minimize Σt xt Subject to xu + xv >= 1, for each edge (u, v) xt ε {0, 1}, for each node t

Integer linear program (ILP) In general "NP-hard" to solve

LP relaxation

Minimize Σt xt Subject to xu + xv >= 1, for each edge (u, v) xt >= 0, for each node t

Approximation algorithm: Rounding the LP solution gives a 2-approximation

slide-20
SLIDE 20

2/14/18 20

Maximum matching problem

u Select the maximum number of edges so that

the selected edges do not share any vertex.

u What's your solution?

4 5 6 7 8 9 2 3 1

Dual of LP relaxation

u Primal

Minimize Σt xt Subject to xu + xv >= 1, for each edge (u, v) xt >= 0, for each node t

u Dual

Maximize Σe ye Subject to Σall edges e incident on t ye <= 1, for each node t ye >= 0, for each edge e

c and b are vectors of 1s. Maximum matching problem (relaxed)