Title: A survey of some results on the Firefighter Problem
1A survey of some results on the Firefighter
Problem
Wow! I need reinforcements!
2A simple model
3A simple model
4A simple model
5A simple model
6A simple model
7A simple model
8A simple model
9A simple model
10Some questions that can be asked (but not
necessarily answered!)
- Can the fire be contained?
- How many time steps is required before fire is
contained? - How many firefighters per time step are
necessary? - What fraction of all vertices will be saved
(burnt)? - Does where the fire breaks out matter?
- Smart fires?
- Fire starting at more than 1 vertex?
- Consider different graphs. Construction of
(connected) graphs to minimize damage. - Complexity/Algorithmic issues
11Some references
- The firefighter problem for graphs of maximum of
degree three (Finbow, King, MacGillivray, Rizzi) - Graph-theoretic models of spread and competition
(Hartke) - On the firefighter problem (MacGillivray, Wang)
- Catching the fire on grids (Fogarty)
- Fire control on graphs (Wang, Moeller)
- Firefighting on trees How bad is the greedy
algorithm? (Hartnell, Li) - On minimizing the effects of fire or a virus on a
network (Finbow, Hartnell, Li, Schmeisser) - On designing a network to defend against random
attacks of radius two (Finbow, Hartnell) - The optimum defense against random subversions in
a network (Hartnell) - On minimizing the effects of betrayals in a
resistance movement (Gunther, Hartnell)
12Four general classes of problems
- Containing fires in infinite grids where
is the dimension.
13Four general classes of problems
- 2. Saving vertices in finite grids of dimension 2
or 3.
14Four general classes of problems
- 3. Firefighting on trees. Algorithmic and
complexity issues.
15Four general classes of problems
- 4. Construction of graphs that minimizes damage.
16Containing fires in infinite grids Ld
- Fire starts at only one vertex
- d 1 Trivial.
- d 2 Impossible to contain the fire with 1
firefighter per time step
17Containing fires in infinite grids Ld
- d 2 Two firefighters per time step needed to
contain the fire.
18Containing fires in infinite grids Ld
Fact If G is a k-regular graph, k 1
firefighters per time step is always sufficient
to contain any fire outbreak (at a single vertex)
in G.
19Containing fires in infinite grids Ld
Fact If G is a k-regular graph, k 1
firefighters per time step is always sufficient
to contain any fire outbreak (at a single vertex)
in G.
Shown 2d 2 firefighters per time step are not
enough to contain an outbreak in Ld
Thus, 2d 1 firefighters per time step is the
minimum number required to contain an outbreak in
Ld and containment can be attained in 2 time
steps.
20Containing fires in infinite grids Ld
Theorem (Hartke) Let be a rooted graph,
a positive integer, and positive integers each
at least such that the following holds
- Every nonempty satisfies
- For , every where
- satisfies
- For , every such that
- satisfies
21Containing fires in infinite grids Ld
Theorem (Hartke)
Suppose that at most firefighters per time
step are deployed. Then
regardless of the sequence of firefighter
placements. Specifically, firefighters per
time step are insufficient to contain an outbreak
that starts at the root vertex.
22Containing fires in infinite grids Ld
- Fire can start at more than one vertex.
d 2 Two firefighters per time step are
sufficient to contain any outbreak at a finite
number of vertices.
23Saving vertices in finite grids G
- Assumptions
- 1 firefighter is deployed per time step
- Fire starts at one vertex
- Let
- MVS(G, v) maximum number of vertices that can
- can be saved in G
if fire starts at v.
24Saving vertices in finite grids G
25Saving vertices in finite grids G
26Saving vertices in finite grids G
27Saving vertices in finite grids G
28Saving vertices in finite grids G
29Saving vertices in finite grids G
30Saving vertices in
31Saving vertices in
If
32Some asymptotic results
Let
if fire starts at
33Some asymptotic results
Let
if fire starts at
34Some asymptotic results
Fire starts at
35Some asymptotic results
36Some asymptotic results
37Some asymptotic results
38Some asymptotic results
Let be any vertex of
Then the maximum number of vertices which
can be saved by deploying one firefighter per
time step with an initial outbreak at grows at
most as In particular,
39Algorithmic and Complexity matters
FIREFIGHTER
Instance A rooted graph and an
integer
Question Is That
is, is there a finite sequence
of vertices of such that if the fire breaks
out at then,
40Algorithmic and Complexity matters
FIREFIGHTER is NP-complete for bipartite graphs.
41Algorithmic and Complexity matters
Suppose an instance of X3C (
C ) is given. We construct a rooted bipartite
graph and a positive integer such
that
42Algorithmic and Complexity matters
43Algorithmic and Complexity matters
If has an exact cover
44Algorithmic and Complexity matters
45Algorithmic and Complexity matters
Firefighting on Trees
46Algorithmic and Complexity matters
Greedy algorithm
For each
At each time step, save place firefighter at
vertex that has not been saved such that weight
(v) is maximized.
47Algorithmic and Complexity matters
48Algorithmic and Complexity matters
Greedy
Optimal
49Algorithmic and Complexity matters
Theorem
For any tree with one fire starting at the root
and one firefighter to be deployed per time step,
the greedy algorithm always saves more than ½ of
the vertices that any algorithm saves.
Sgreedy number of vertices saved by greedy
algorithm
Soptimal number of vertices saved by optimal
algorithm
number of vertices saved by optimal moves whose
corresponding greedy moves performs no worse
50Algorithmic and Complexity matters
Greedy
Optimal
because s ancestor has already been selected
? Sgreedy gt ½ Soptimal
51Algorithmic and Complexity matters
p vertices
52Algorithmic and Complexity matters
Slight modification Suppose we are allowed to
defend one vertex per time step for every burnt
vertex there are at the end of the previous time
step.
- Greedy algorithm saves at least ½ as many
vertices as the optimum algorithm
- (Integer) Linear Programming and Dynamic
Programming can be used
53Algorithmic and Complexity matters
0-1 integer program for trees
subject to
for each level i
for every leaf of
54Algorithmic and Complexity matters
Additional linear constraints can also be added
to narrow the integrality gap.
55Algorithmic and Complexity matters
First, recall the definition of a perfect graph
If G is a perfect graph, we can find a maximum
weight independent set of G in polynomial time.
56Algorithmic and Complexity matters
A rooted tree is said to be a P-tree if
it does not contain the following configuration
level i
level i1
level i2
No requirement for this to be an induced subgraph
57Algorithmic and Complexity matters
- Adding edges joining each vertex to all its
descendants
2. Adding edges joining each vertex to all
vertices at the same level
58Algorithmic and Complexity matters
can compute MVS(T,r) in poly. time
59Some further questions to ponder
1. For infinite graphs (like what we did for
infinite grids), what is the minimum number of
firefighters per time step so that only a finite
number of vertices are burned? (Percolation
theory?)
2. (For trees) Characterization of when the
greedy algorithm is optimal.
3. Narrowing integrality gap.
4. Determination of MVP for pre-emptive
vaccination.
5. Construction of networks that are resistant to
attacks.
6. Can we include weight on edges to represent
rate of transmission?
7. Game theory?
60THE END
One firefighter is enough!