developing a deterministic patrolling strategy for security agents nicola basilico, nicola gatti,...
Post on 21-Dec-2015
216 views
TRANSCRIPT
Developing a Deterministic Patrolling Strategy for Security AgentsNicola Basilico, Nicola Gatti, Francesco Amigoni
N. Basilico, N. Gatti, F. Amigoni
Strategic Patrolling
• Determination of an efficient strategy for the patroller agent• A patrolling strategy determines how the patroller moves in the
environment• An efficient patrolling strategy minimizes the intrusion probability
• Usually, patrolling strategies use randomized movements[Agmon et al., ICRA2008] [Paruchuri et al., AAMAS2008] [Amigoni et al., IAT2008] [Basilico et al., AAMAS2009]
• Sometimes, a deterministic patrolling strategy (a fixed path) can prevent intrusions
• Problem: determine an efficient deterministic patrolling strategy for a security agent
3
N. Basilico, N. Gatti, F. Amigoni
Problem Formulation: Environment
The environment is represented as a weighted directed graphG = (V,A,w,d)• V: vertexes are locations to
patrol• A: arcs are direct connections
between adjacent locations• w:A➛R: weights are temporal
costs to traverse an arc• d:V➛R: penetration times for
vertexes• time the intruder needs to
penetrate the vertex
• time interval between two successive visits of the patroller to the vertex
4
N. Basilico, N. Gatti, F. Amigoni
Problem Formulation: Agents
• The patroller agent moves between adjacent vertexes• Movement between v and v’ requires a time w(v,v’)
• The patroller agent senses the presence of the intruder only in its current vertex
• The intruder can appear at any vertex at any time• Once intruder appears at vertex v, it stays there for d(v) time
5
N. Basilico, N. Gatti, F. Amigoni
Problem Formulation: Solution
• Sequence of vertexes: S(1), S(2), …, S(s)• Time interval between visits to two vertexes S(j) and S(j’):
Σi=j, j+1…,j’-1 w(S(i),S(i+1))
• A solution is a sequence of vertexes such that:§ It is cyclical S(1) = S(s)§ Every vertex is visited at least one time§ When indefinitely repeating the sequence, the time interval
between two successive visits to a vertex v is not larger than d(v)
• If a solution is found, no intrusion can occur• A rational intruder will never attempt to enter• When an intruder attempts to enter, it is always detected by the
patroller• The length s of the solution is part of the problem
6
N. Basilico, N. Gatti, F. Amigoni
Related Works
• Visiting vertexes of graphs under temporal deadlines has been extensively studied • Deadline travel salesman problems
[Tsitsiklis, Networks 1992]
• Vehicle routing problems with time windows[Kolen et al., Operations Research 1987]
• Period routing problems[Christofides and Beasley, Networks 1984]
• …• However, our problem
• has relative deadlines (“two successive visits to a vertex v”) and• is a feasibility problem
7
N. Basilico, N. Gatti, F. Amigoni
The Proposed Solving Algorithm (1)
• Idea:formulate the problem of finding a solution as a Constraint Satisfaction Problem (CSP)
• Variables: S(j) (their number is a priori unknown!)• Domains: D(S(j)) = V (they will be restricted!)• Constraints:
1. Cycle: S(1) = S(s)
2. Every vertex is visited at least one time
3. When indefinitely repeating the sequence, the time interval between two successive visits to a vertex v is not larger than d(v)
• Solution of the CSP: assignment of values to variables such that all the constraints are satisfied
8
N. Basilico, N. Gatti, F. Amigoni
The Proposed Solving Algorithm (2)
• Our CSP is solved by a brute-force backtracking search
• Forward checking is used to reduce search complexity• Forward checking eliminates from the domains the values that are
not compatible with the current partial assignment
9
S(1)=v
S(1)=vS(2)=v’
S(1)=vS(2)=v’S(3)=?
S(1)=vS(2)=v’’
N. Basilico, N. Gatti, F. Amigoni
The Proposed Solving Algorithm: Example (1) 10
S(1)=01
S(1)=01S(2)=02
S(1)=01S(2)=02S(3)=03
D(S(2)) = {02,05} D(S(3)) = {01,03,05}
05 is eliminated because:w(01,05)+we(05,03)+we(03,01) > d(03)7+2+7 > 14
N. Basilico, N. Gatti, F. Amigoni
The Proposed Solving Algorithm: Example (2) 11
stopping criterion!
backtracking
N. Basilico, N. Gatti, F. Amigoni
Some Properties of the Proposed Solving Algorithm
• The algorithm is sound and complete• If a solution exists, it is independent of the first vertex S(1)• At least a solution (if one exists) has a temporal length not larger than
maxi V∊ {d(vi)}
• Definition of a new stopping criterion• With linear environments, if a solution exists, then the linear sequence
is a solution
• Computational complexity is hard to characterize
12
N. Basilico, N. Gatti, F. Amigoni
Experimental Results
• Randomly-generated graphs with n vertexes and m [n, (n-1)n] ∊ arcs• 500 runs for each value of n• Metrics:
• % of termination within 10 minutes• Computational time (for terminated runs)
13
N. Basilico, N. Gatti, F. Amigoni
Conclusions
Method for finding deterministic patrolling strategies for security agents • Method for finding a cyclic sequence of vertexes on a graph under
temporal constraints
Future works:• More sophisticated stopping criteria for blocking search earlier• Extending patroller’s sensing abilities beyond the current vertex• Extension to multiagent settings
14