computing equilibria of security games using linear integer programming dima korzhyk...

19
Computing equilibria of security games using linear integer programming Dima Korzhyk [email protected]

Upload: jared-page

Post on 16-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Computing equilibria of security games using linear integer programming

Dima [email protected]

Page 2: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Problem Description

• Targets t• Utilities • Resources nd, na

)()(),()( tutututu ca

ua

ud

cd

Page 3: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Mixed strategies

• Defender strategy: probability of defending target t is dt, s.t.

• Attacker strategy: similarly, the probability of attacking t is at, s.t.

t

dt nd

t

at na

Page 4: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Stackelberg strategy

• The defender commits to a mixed strategy d• The attacker observes d and plays a best

response a• Note that the attacker’s best response doesn’t

need to be randomized, so we can assume a is binary

Page 5: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Stackelberg – first formulation

tat

tdt

taua

ca

taua

ca

t

udt

cdtt

na

nd

atudtud

atudtud

tudtuda

1)()1()(

0)()1()(

Subject to

)]()1()([ Maximize

tt

tt

Page 6: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Trick – fixing an implication with a binary right-hand side

Suppose b is binary and we have implicationif g(x) > 0 then b=1

Fix this as follows:b >= g(x) / M

Here M is a sufficiently large number

Page 7: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Fixed conditions

We can rewrite the implication

As0)()1()( tt ta

ua

ca atudtud

00)()1()( tt tua

caa atudtud

)()1()()1(

/)]()1()([1

tt

tt

tudtudaM

Mtudtudaua

caat

ua

caat

Page 8: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Fixing the objective

Note that the objective contains a product of two variables at and dt

t

udt

cdtt tudtuda )]()1()([ Maximize

Page 9: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Trick – fixing a product of a binary and a continuous variable in the objective

Suppose the objective is Maximize bx

Where b is binary, and x>=0 is a continuous variable.Replace this with

Maximize vv <= xv <= bM

Where M is a sufficiently large number

Page 10: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

MIP for computing a Stackelberg strategy

binary

10

)()1()(

)1()]()1()([

)()1()(

Subject to

Maximize

t

t

tt

tt

t

t

at

dt

aua

cat

tua

caa

tt

udt

cdtt

tt

a

d

na

nd

tudtudMa

aMtudtud

Mav

tudtudv

v

Page 11: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Nash equilibriumFind a pair of mixed strategies d,a such that both players are best-responding. d,a are not binary.

0))()((

1))()((

sconstraintdefender Similar

1)()1()(

0)()1()(

sconstraintattacker Same

tt

tt

tdud

cdt

tdud

cdt

taua

ca

taua

ca

dtutua

dtutua

atudtud

atudtud

Page 12: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Trick – fixing the implications [aimms.com]

Suppose we have an implicationIF [g(x) > 0] THEN [h(x) > 0]

This is equivalent to [g(x) <= 0] OR [h(x) > 0]

Now, we can use the either-or trick (next slide)

Page 13: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Either-Or Trick

Suppose we have a constraint [g(x)>0] OR [h(x)>0]

We need to change this to ANDReplace with the following:

g(x) + M b > 0h(x) + M (1-b) > 0

where M is a sufficiently large numberb is binary

Page 14: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Fixing the implications in the NE program

integer

10

)1(0

)()1()(

0 OR )()1()(

0)()1()(

tt

tt

tt

t

t

tt

taua

ca

taua

ca

taua

ca

b

a

bMa

-Mbθtudtud

atudtud

atudtud

Page 15: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

MIP for computing a Nash equilibrium

Mbd

Mbtutua

Mbd

Mbtutua

Mba

Mbtudtud

Mba

Mbtudtud

dtt

dtd

ud

cdt

dtt

dtd

ud

cdt

att

ata

ua

ca

att

ata

ua

ca

)1(1

))()((

)1(0

))()((

)1(1

)()1()(

)1(0

)()1()(

1

1

0

0

1

1tt

0

0tt

10

10

t

t

tat

tdt

a

d

na

nd

Page 16: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Scaling of the NE MIP in the number of targets/variables

0 20 40 60 80 100 120 140 1600

0.005

0.01

0.015

0.02

0.025

0.03

Page 17: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Conclusion

• NE MIP is simpler than a specialized algorithm, but may take longer to execute

• A benefit is that we can combine the two MIPs in this presentation to find a defender strategy that is both a Stackelberg and a Nash strategy

Page 18: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

Thank you!

I thank Vince Conitzer, Ron Parr for detailed discussions.

Page 19: Computing equilibria of security games using linear integer programming Dima Korzhyk dima@cs.duke.edu

ReferencesSecurity games (with a single attacker resource) were introduced in: Christopher Kiekintveld, Manish Jain, Jason Tsai, James Pita, Fernando Ordóñez, and Milind Tambe. Computing Optimal Randomized Resource Allocations for Massive Security Games. AAMAS-2009.

Computing a Stackelberg strategy in a security game with multiple attacker resources s is NP-hard: Zhengyu Yin, Dmytro Korzhyk, Christopher Kiekintveld, Vincent Conitzer, and Milind Tambe. Stackelberg vs. Nash in security games: interchangeability, equivalence, and uniqueness. AAMAS-2010.

Computing a Nash equilibrium in security games with multiple attacker resources can be done in polynomial time. The algorithm by Dmytro Korzhyk, Vincent Conitzer, Ronald Parr is currently unpublished and is under submission.

Some of the integer programming tricks in this presentation were taken from AIMMS Modeling Guidehttp://www.aimms.com/aimms/download/manuals/aimms3om_integerprogrammingtricks.pdf