Fernando Ordoñez
description
Transcript of Fernando Ordoñez
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
5
Stackelberg Security Game
Stackelberg Security Game
6
Monday Tuesday
Stackelberg Security Game
7
Wednesday
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
Police
Adversary
Target #1 Target #2
Patrol #1 7, -4 -2, 3
Patrol #2 -7, 7 4, -3
Game Theory: Stackelberg Game
ARMOR: LAX (2007)
Deployed Security Game Applications
IRIS: FAMS (2009)
GUARDS: TSA (2010) PROTECT: USCG (2011)
Optimization Model (Rational Adversary)
)7( ),(maxarg
)6( 0,1
)5( 1
)4( assignment feasible ,10
)3( 1
)2( =
)1( urcesTotal_Reso .
),( max,
ik
a
ikq
k
k k
jj
jj
jjj
Ti
i
ik
d
ikax
qxUq
q
q
Aa
a
Aax
xts
qxU
A
AConstraint on x to enforce a feasible marginal coverage on targets
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 2 Strategy 3
Strategy 1
Strategy 2
Strategy 3
Strategy 4
Strategy 5
Strategy 6
Multiple Defense Resources
4 Flights 2 Air Marshals
100 Flights 10 Air Marshals
6 Schedules
17,000,000,000,000 Schedules
Pure strategies are joint schedules: Each air marshal assigned to a tour
Payoff duplicates: Depends on target covered
Speedup: Compact Representation
ARMOR Actions
Tour combos
Prob
1 1,2,3 x1
2 1,2,4 x2
3 1,2,5 x3
… … …
120 8,9,10 x120
CompactAction
Tour Prob
1 1 y1
2 2 y2
3 3 y3
… … …
10 10 y10
Attack 1 Attack 2 Attack …
Attack 6
1,2,3 5,-10 4,-8 … -20,9
1,2,4 5,-10 4,-8 … -20,9
1,3,5 5,-10 4,-8 … -20,9
… … … … …
ARMOR: 10 tours, 3 defenders
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
)4( assignment feasible ,10
)3( 1
)2( =
)1( urcesTotal_Reso .
)( )( max)(
)(
,
jj
jj
jjj
Ti
i
i
d
ie
e
ax
Aa
a
Aax
xts
xUxF
A
A
k
xak
U
xaiU
Playing against Human Adversaries
Experimental Results
PT = Prospect theory QRE = Quantal Response Equilibrium
Model Inputs
Steps to build SSG
1. Gather representative data
2. Define targets to protect
3. Define time periods to protect
4. Types of Attackers
5. 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 S1 S2 S3 S4 S5 S6 S7 Total
0 0,234 0,516 0,624 0 0,603 0,562 0,395 1815
1 0,078 0,057 0,048 0,142 0,049 0,079 0,097 679
2 0 0 0 0,47 0 0 0 545
3 0,032 0,018 0,018 0 0,012 0,027 0,05 369
4 0 0 0 0,26 0 0 0 405
5 0,253 0,091 0,063 0,079 0,066 0,093 0,15 808
6 0,023 0,027 0,022 0,048 0,033 0,016 0,024 419
7 0 0 0 0 0 0,223 0,285 575
8 0,381 0,291 0,225 0 0,238 0 0 1110
Total 727 457 1892 1217 939 881 612
5: Utilities
Crime events have a value information
Cluster Avalúo ($)
0 $ 91.175
1 $ 104.448
2 $ 67.976
3 $ 225.985
4 $ 87.650
5 $ 108.717
6 $ 69.481
7 $ 69.246
8 $ 109.174
Cluster Promedio de Utilidad Días Reclusión Tasa Descuento Costo ($)
0 91175 61 40% 319113
1 104448 1752 40% 365568
2 67976 63 40% 237916
3 225610 1746 40% 789636
4 87650 1747 40% 306776
5 108717 1686 40% 380511
6 69481 74 40% 243184
7 69246 1757 40% 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
-1,6
-1,4
-1,2
-1
-0,8
-0,6
-0,4
-0,2
00
0,5 1
1,5 2
2,5 3
3,5 4
4,5 5
5,5 6
Def
en
de
r's
Exp
ect
ed
Uti
lity
Attacker λ value
PASAQ(λ=1.5)
DOBSS(λ=∞)
PASAQ(noise high)
DOBSS(noise high)
Robustness Results: Observation Noise
Patrol Schedules – before/after PROTECT
0
5
10
15
20
25
30
Day 1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7C
ou
nt
0
20
40
60
80
100
120
140
Day 1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7
Co
un
t
Base Patrol Area
Pre-PROTECT
Post-PROTECT
From the Port of Boston
Conduct pre- and post-PROTECT assessment Effectiveness (tactical deterrence) increased from pre- to post- PROTECT observations
Adversarial Perspective Team (APT)
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