365 Days of Thanking God_ Cultivating a Heart of Thanksgiving Everyday (Revis...
A Knapsack Approach to Sensor-Mission Assignment with Uncertain Demands
1. SPIE Europe Security+Defence 2008
A Knapsack Approach to
Sensor-Mission Assignment with
Uncertain Demands
Diego Pizzocaro a Matthew P. Johnson b Hosam Rowaihy c
Stuart Chalmers d Alun Preece a Amotz Bar-Noy b Thomas La Porta c
a Cardiff University b The City University of New York c Pennsylvania State University
d University of Aberdeen
3. Motivation
• An homogeneous sensor network which is already deployed.
• It is usually required to support multiple missions to be accomplished
simultaneously.
• Missions compete for the exclusive usage of a sensor:
we need a scheme to assign individual sensors to missions.
X
X
Target
Target X
Target 2
X X
Target X
Target 1 X Target
Target
X
X Target X
Target Target
• Missions have an uncertain demand for sensing resource capabilities
(due to weather, unexpected events, ...)
4. Formal Model
• We model this assignment problem by introducing the Sensor Utility Maximization
(SUM) model.
Sensors
• SUM can be represented as a bipartite graph: S1
(e11, p1
1 )
Missions
(e
12
,p
‣ (d1, p1)
M1
Vertex sets: 12
)
Sensors {Si}, Missions {Mj} S2
‣ For each mission (Mj):
S3
M2 (d2, p2)
dj = utility demand
pj = priority
S4
‣ For each sensor-mission pair:
eij = utility that Si could contribute to Mj
pij = eij / dj * pj profit of Si for mission Mj
• Goal: a sensor assignment that maximizes the total profit.
5. Formal Model (contd)
• Integer Linear Programming (ILP) formulation:
m n
Maximize: j=1 i=1 pij xij , where pij = eij /dj × pj .
n
Such that: i=1 xij eij ≤ dj , for each mission Mj ∈ M ,
m
j=1 xij ≤ 1, for each sensor Si , and
xij ∈ {0, 1}, for each variable xij
• Most important constraint (knapsack-style):
Total utility cumulated by each mission Mj ≤ its demand dj
• This assumption is based:
‣ on the uncertainty of the demands,
‣ on the principle that sensing resources are in high demand
and should not be wasted.
(from “JP 2-01 joint and national intelligence support to military operations”, see ref, in the paper)
6. Pre-existent Algorithms
• Problem hardness: it is NP-Complete
- Proof by showing that SUM is a generalization of the knapsack problem
• We adapted three pre-existent algortihms to solve SUM:
1. Mission-side greedy
- Sort missions by decreasing priority ( pj )
- For each mission: Assign sensors with highest utilities ( eij ) to the mission,
until the cumulated utility does not exceed its demand ( dij ).
2. Sensor-side greedy
- Unsorted sensors
- For each sensor: Assign the sensor to the mission where that sensor is of most use
(the one which maximizes the profit of each sensor pij)
3. State-of-the-art approximation algorithm for GAP
- Proved that SUM is a special case of Generalized Assignment Problem (GAP)
- Provide a very good guaranteed approximation of the optimal solution
7. Novel algorithm
• It is an improved version of Sensor-side greedy:
‣ Ordered Sensor-side greedy
- IDEA: Sorts sensors by decreasing max profit offer between all the missions to which
the sensor can contribute ( max{pij} ).
X S1 M1
Sensor 2 Target 2
X Sensor 3
S2 M2
Target 1
Sensor 3
X S3 M3
Target 3
- Like basic Sensor-Side Greedy: Assign sensor to the mission where that sensor
is of most use (the one which maximizes the profit pij).
- Further improvement: If a sensor cannot be assigned to the mission which
maximize its profit, we consider the second most profitable mission, and so on ...
8. Novel algorithm
• It is an improved version of Sensor-side greedy:
‣ Ordered Sensor-side greedy
- IDEA: Sorts sensors by decreasing max profit offer between all the missions to which
the sensor can contribute ( max{pij} ).
S1 M1
S2 M2
S3 M3
- Like basic Sensor-Side Greedy: Assign sensor to the mission where that sensor
is of most use (the one which maximizes the profit pij).
- Further improvement: If a sensor cannot be assigned to the mission which
maximize its profit, we consider the second most profitable mission, and so on ...
9. Novel algorithm
• It is an improved version of Sensor-side greedy:
‣ Ordered Sensor-side greedy
- IDEA: Sorts sensors by decreasing max profit offer between all the missions to which
the sensor can contribute ( max{pij} ).
S1 M1
M1
.1
=0
S2 M2 p11
S1
p12 = 0.3 M2
p13
=0
S3 M3 .4
M3
- Like basic Sensor-Side Greedy: Assign sensor to the mission where that sensor
is of most use (the one which maximizes the profit pij).
- Further improvement: If a sensor cannot be assigned to the mission which
maximize its profit, we consider the second most profitable mission, and so on ...
10. Novel algorithm
• It is an improved version of Sensor-side greedy:
‣ Ordered Sensor-side greedy
- IDEA: Sorts sensors by decreasing max profit offer between all the missions to which
the sensor can contribute ( max{pij} ).
S1 M1
.3 M1 M1
p21 = 0 = 0.1
S2 M2 S2 p11
p22 = p12 = 0.3
S1 0.2 M2 M2
p13
=0
S3 M3 .4
M3
- Like basic Sensor-Side Greedy: Assign sensor to the mission where that sensor
is of most use (the one which maximizes the profit pij).
- Further improvement: If a sensor cannot be assigned to the mission which
maximize its profit, we consider the second most profitable mission, and so on ...
11. Novel algorithm
• It is an improved version of Sensor-side greedy:
‣ Ordered Sensor-side greedy
- IDEA: Sorts sensors by decreasing max profit offer between all the missions to which
the sensor can contribute ( max{pij} ).
S1 M1
.6 M2
p32 = 0
.3 M1 M1
S3
p21 = 0 = 0.1
S2 M2 p
S233 = 0 p11
.2 M3
p22 = p12 = 0.3
S1 0.2 M2 M2
p13
=0
S3 M3 .4
M3
- Like basic Sensor-Side Greedy: Assign sensor to the mission where that sensor
is of most use (the one which maximizes the profit pij).
- Further improvement: If a sensor cannot be assigned to the mission which
maximize its profit, we consider the second most profitable mission, and so on ...
12. Novel algorithm
• It is an improved version of Sensor-side greedy:
‣ Ordered Sensor-side greedy
- IDEA: Sorts sensors by decreasing max profit offer between all the missions to which
the sensor can contribute ( max{pij} ).
+
S1 M1
.6 M2 S3 p32 = 0.6
p32 = 0
.3 M1 M1
S3
p21 = 0 = 0.1
S2 M2 p
S233 = 0 p11 S1 p13 = 0.4
.2 M3
p22 = p12 = 0.3
S1 0.2 M2 M2
p13
=0
S3 M3 .4 S2 p21 = 0.3
-
M3
- Like basic Sensor-Side Greedy: Assign sensor to the mission where that sensor
is of most use (the one which maximizes the profit pij).
- Further improvement: If a sensor cannot be assigned to the mission which
maximize its profit, we consider the second most profitable mission, and so on ...
13. Novel algorithm
• It is an improved version of Sensor-side greedy:
‣ Ordered Sensor-side greedy
- IDEA: Sorts sensors by decreasing max profit offer between all the missions to which
the sensor can contribute ( max{pij} ).
X
Sensor 2 Target 2
X Sensor 1
Target 1
Sensor 3
X
Target 3
- Like basic Sensor-Side Greedy: Assign sensor to the mission where that sensor
is of most use (the one which maximizes the profit pij).
- Further improvement: If a sensor cannot be assigned to the mission which
maximize its profit, we consider the second most profitable mission, and so on ...
14. Performance evaluation
• Simulation environment implemented in Java.
• Missions and Sensors are deployed in random positions in the field.
• Utility of sensor Si to mission Mj is a function
1
2 if Dij ≤ SR
1+Dij /c
of the distance Dij between sensor and mission. eij =
0 otherwise
• For each experiment:
- Constant number of sensors (200, 500, 1000)
- Number of simultaneous missions was varied from 10 to 150.
• Experiments divided into two main groups to test algs’ efficiency:
18000
84
% Optimal Fractional Solution
16000
82
14000
80
Running Time (ms)
Optimality Time
12000
78
76 10000
74 8000
72 6000
70 4000
68 2000
66 0
10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Number of Missions Number of Missions
1000 sensors
15. Performance evaluation (Optimality)
• The graphs show the sum of the profits pij of each sensor-mission assignments
(i.e. the value of the objective function in the ILP formulation)
500 sensors 1000 sensors
96
92 GAP approx alg GAP approx alg
% Optimal Solution
% Optimal Solution
88 92
84
Ordered Sensor-side greedy 88 Ordered Sensor-side greedy
10 30 50 70 90 110 130 150 10 30 50 70 90 110 130 150
Number of Missions Number of Missions
• We show only the best two algs: Sensor-Side Greedy and GAP approx algorithm
‣ Optimality results differ only by 1% in average.
‣ The best solution quality: GAP approx algorithm
16. Performance evaluation (Time)
Effective running time (1000 sensors)
Running Time (ms)
8000 GAP approx alg
6000
4000
2000 Ordered Sensor-side greedy
0
10 30 50 70 90 110 130 150
Number of Missions
• Best effective running time: Ordered Sensor-side greedy
‣ Best trade off optimality/running time: Ordered Sensor-side greedy
17. Conclusion
• We considered an homogeneous sensor network which was already deployed,
to support competing simultaneous missions with uncertain demands.
• We developed a formal model and a new greedy algorithm.
• Simulation results show that:
our novel Ordered Sensor-side greedy algorithm offers the best trade-off between
optimality of the solution and effective running time.
• Future work:
‣ Heterogeneous sensor types
‣ Sharing of a sensing resource