Stackelberg Security Games for Security Fernando Ord贸帽ez Universidad de Chile

Stackelberg Games for Security Fernando Ord贸帽ez Universidad de Chile

Stackelberg Games for Security Fernando Ordóñez Milind Tambe, P. Paruchuri, C. Kiekintveld, B. An, J. Pita, M. Jain, J. Tsai, R. Yang, A. Jiang, M. Brown, E. Shieh… and others

Stackelberg Security Game

4

Stackelberg Security Game

5

Stackelberg Security Game Monday Tuesday

6

Stackelberg Security Game Wednesday

7

Outline • Stackelberg Games • Deployed Applications • Challenges in Stackelberg Security Games – Problem Size – Uncertainty/rationality – Model Inputs (data, game definition)

• Ongoing work

Game Theory: Stackelberg Game • Stackelberg: defender goes first, attacker second • Non zero sum utilities • A mixed strategy is optimal for the leader Adversary

Target #1

Target #2

Patrol #1

7, -4

-2, 3

Patrol #2

-7, 7

4, -3

Police

Game Theory: Stackelberg Game

Deployed Security Game Applications

ARMOR: LAX (2007)

IRIS: FAMS (2009)

GUARDS: TSA (2010)

PROTECT: USCG (2011)

Optimization Model (Rational Adversary) max x ,a

s.t

d U ik ik ( x, q)

x

 Total_Resources

(1)

x=

A a A

(2)

i

iT

Constraint on x to enforce a feasible marginal coverage on targets

j

A a j

j

k

j

1

0  a j  1,

j

(3)  feasible assignment A j

qk  1

qk  0,1

q  arg max q ik U ika ( x, q )

(4) (5) ( 6) (7 )

USCG Patrols

Port of Boston (Not actual areas)

Challenges in SSG • • • •

Problem Size Uncertainty/rationality Model Inputs (data, game definition) Evaluation

Federal Air Marshals (FAMS) Strategy 1

Strategy 2

Strategy 3

Strategy 1

Strategy 2

Strategy 3

Strategy 4

Strategy 5

Strategy 6

Strategy 1

Strategy 1

Strategy 2

Strategy 3

Strategy 4

Strategy 5

Strategy 6

Strategy 2

Strategy 3

Multiple Defense Resources Pure strategies are joint schedules: Each air marshal assigned to a tour

4 Flights 2 Air Marshals

6 Schedules

100 Flights 10 Air Marshals

17,000,000,000,000 Schedules

Speedup: Compact Representation ARMOR: 10 tours, 3 defenders ARMOR Actions

Tour combos

Prob

1 2 3 … 120

1,2,3 1,2,4 1,2,5 … 8,9,10

x1 x2 x3 … x120

Compact Action

Tour

Prob

1 2 3 … 10

1 2 3 … 10

y1 y2 y3 … y10

Payoff duplicates: Depends on target covered

1,2,3 1,2,4 1,3,5

Attack 1 Attack 2 Attack …

Attack 6

5,-10 5,-10 5,-10 …

-20,9 -20,9 -20,9 …

4,-8 4,-8 4,-8 …

… … … …

MILP similar to ARMOR 10 instead of 120 variables y1+y2+y3…+y10 = 3

Algorithm Development • Tight formulations • Decomposition Methods – Column generation – Constraint generation

• Heuristic Methods

Uncertainty/Rationality

Uncertainty/Rationality

Optimization Model (Partially Rational Adversary) Fractional and Non-Convex

F ( x)  i

max x ,a

s.t

e

 U ia ( x )

k e

d U i ( x)  U a ( x ) k

x

 Total_Resources

(1)

x=

A a A

(2)

iT

i

j

A a j

j

j

j

1

0  a j  1,

(3)  feasible assignment A j

(4)

Experimental Results

PT = Prospect theory QRE = Quantal Response Equilibrium

Model Inputs

Steps to build SSG 1. 2. 3. 4. 5.

Gather representative data Define targets to protect Define time periods to protect Types of Attackers Defender and Attacker utilities

1: Relevant Data • 2 year crime event data • Horizon: annual averages of crime – No daily variation – No seasons

• Baseline patrol strategy

2: Targets Clustering, nodes with > 10 events in 20 meters

3/4: Periods/Attacker types 8 attacker types (clustering crime data) 7 Periods (cross police shifts with crime types) Prob. de un tipo de atacante en un periodo Cluster

Total

S1

S2

S3

S4

S5

S6

S7

Total

0 1 2 3 4 5 6 7

0,234 0,078 0 0,032 0 0,253 0,023 0

0,516 0,057 0 0,018 0 0,091 0,027 0

0,624 0,048 0 0,018 0 0,063 0,022 0

0 0,142 0,47 0 0,26 0,079 0,048 0

0,603 0,049 0 0,012 0 0,066 0,033 0

0,562 0,079 0 0,027 0 0,093 0,016 0,223

0,395 0,097 0 0,05 0 0,15 0,024 0,285

1815 679 545 369 405 808 419 575

8

0,381

0,291

0,225

0

0,238

0

0

1110

727

457

1892

1217

939

881

612

5: Utilities Crime events have a value information

Cluster

Días Reclusión

Cluster

Avalúo (\$) 0 1 2 3 4 5 6 7

\$ 91.175 \$ 104.448 \$ 67.976 \$ 225.985 \$ 87.650 \$ 108.717 \$ 69.481 \$ 69.246

8

\$ 109.174

Tasa Descuento

Costo (\$)

0 1 2 3 4 5 6 7

91175 104448 67976 225610 87650 108717 69481 69246

61 1752 63 1746 1747 1686 74 1757

40% 40% 40% 40% 40% 40% 40% 40%

319113 365568 237916 789636 306776 380511 243184 242362

8

109174

1739

40%

382109

Results A frequency with which each node should be protected to maximize utilities

Evaluation • Computer • Anectdote • Tests on field

Robustness Results: Observation Noise -0,2 -0,4

-0,6

PASAQ(λ=1.5)

-0,8

DOBSS(λ=∞)

-1

PASAQ(noise high)

-1,2

DOBSS(noise high)

-1,4 -1,6 0 0,5 1 1,5 2 2,5 3 3,5 4 4,5 5 5,5 6

Defender's Expected Utility

0

Attacker λ value

Patrol Schedules – before/after PROTECT From the Port of Boston 30 25

Pre-PROTECT

Count

20 15

10 5 0 Day 1

Day 2

Day 3

Day 4

Day 5

Day 6

Day 7

140 120 100 80

Count

Post-PROTECT

Base Patrol Area

60 40 20 0 Day 1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7

Adversarial Perspective Team (APT) Conduct pre- and post-PROTECT assessment Effectiveness (tactical deterrence) increased from pre- to postPROTECT observations

On going work: protecting the border

Sampled patrols from optimal solution

Research Questions • Efficient algorithms to solve real instances (patrolling on a network) • Automatically determine payoff values • Multiple types of security resources • Validation

Fernando Ordoñez
Fernando Ordoñez

Presentación de Fernando Ordoñez en el marco de la Primera Cumbre Internacional de Análisis Criminal Científico. 23 de abril de 2014.