A survey of some results on the Firefighter Problem Kah Loon Ng DIMACS Wow! I need reinforcements!

Slides:



Advertisements
Similar presentations
Lower Bounds for Additive Spanners, Emulators, and More David P. Woodruff MIT and Tsinghua University To appear in FOCS, 2006.
Advertisements

Lecture 15. Graph Algorithms
Great Theoretical Ideas in Computer Science
Covers, Dominations, Independent Sets and Matchings AmirHossein Bayegan Amirkabir University of Technology.
1 A Graph-Theoretic Network Security Game M. Mavronicolas , V. Papadopoulou , A. Philippou  and P. Spirakis § University of Cyprus, Cyprus  University.
Approximation Algorithms
Bipartite Matching, Extremal Problems, Matrix Tree Theorem.
1 Discrete Structures & Algorithms Graphs and Trees: III EECE 320.
Bart Jansen, Utrecht University. 2  Max Leaf  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least.
The Firefighter Problem On the Grid Joint work with Rani Hod.
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
Leonard Lopez Sergio Sandoval Applying Line Graphs to Resource Allocation During Extreme Events.
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
Los Angeles September 27, 2006 MOBICOM Localization in Sparse Networks using Sweeps D. K. Goldenberg P. Bihler M. Cao J. Fang B. D. O. Anderson.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Great Theoretical Ideas in Computer Science.
Computability and Complexity 23-1 Computability and Complexity Andrei Bulatov Search and Optimization.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
Computational problems, algorithms, runtime, hardness
1 Spanning Trees Lecture 20 CS2110 – Spring
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
A general approximation technique for constrained forest problems Michael X. Goemans & David P. Williamson Presented by: Yonatan Elhanani & Yuval Cohen.
Approximation Algorithms
1 Vertex Cover Problem Given a graph G=(V, E), find V' ⊆ V such that for each edge (u, v) ∈ E at least one of u and v belongs to V’ and |V’| is minimized.
Increasing graph connectivity from 1 to 2 Guy Kortsarz Joint work with Even and Nutov.
EXPANDER GRAPHS Properties & Applications. Things to cover ! Definitions Properties Combinatorial, Spectral properties Constructions “Explicit” constructions.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
Fighting the Plane Patricia Fogarty University of Vermont January 17, 2003.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
1 Graph-theoretical Problems Arising from Defending Against Bioterrorism and Controlling the Spread of Fires Fred Roberts, DIMACS.
Introduction to Graph Theory
MCS312: NP-completeness and Approximation Algorithms
Design Techniques for Approximation Algorithms and Approximation Classes.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
1 Graph-theoretical Models of the Spread and Control of Disease and of Fighting Fires Fred Roberts, DIMACS.
Foundations of Discrete Mathematics
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Edge-disjoint induced subgraphs with given minimum degree Raphael Yuster 2012.
Approximation Algorithms
1 Graph-theoretical Models of the Spread and Control of Disease and of Fighting Fires Fred Roberts, DIMACS.
1 The Price of Defense M. Mavronicolas , V. Papadopoulou , L. Michael ¥, A. Philippou , P. Spirakis § University of Cyprus, Cyprus  University of Patras.
Techniques for Proving NP-Completeness Show that a special case of the problem you are interested in is NP- complete. For example: The problem of finding.
5.5.3 Rooted tree and binary tree  Definition 25: A directed graph is a directed tree if the graph is a tree in the underlying undirected graph.  Definition.
Introduction to Graph Theory
Graph Colouring L09: Oct 10. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including the famous.
Agenda Review: –Planar Graphs Lecture Content:  Concepts of Trees  Spanning Trees  Binary Trees Exercise.
5.5.2 M inimum spanning trees  Definition 24: A minimum spanning tree in a connected weighted graph is a spanning tree that has the smallest possible.
1 Graph-theoretical Models of the Spread and Control of Disease and of Fighting Fires Fred Roberts, DIMACS.
The Evolution of a Hard Graph Theory Problem – Secure Sets Ron Dutton Computer Science University of Central Florida 1.
Extensions of Graph Pebbling Carl R. Yerger*, Prof. Francis Edward Su (Advisor), Prof. Anant P. Godbole (Second Reader) Introduction Given a graph, G,
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
NP-completeness NP-complete problems. Homework Vertex Cover Instance. A graph G and an integer k. Question. Is there a vertex cover of cardinality k?
1 Graph-theoretical Problems Arising from Defending Against Bioterrorism and Controlling the Spread of Fires Fred Roberts, DyDAn.
1 Graph-theoretical Problems Arising from Defending Against Bioterrorism and Controlling the Spread of Fires Fred Roberts, DIMACS.
Approximation Algorithms by bounding the OPT Instructor Neelima Gupta
Approximation Algorithms Greedy Strategies. I hear, I forget. I learn, I remember. I do, I understand! 2 Max and Min  min f is equivalent to max –f.
Approximation Algorithms based on linear programming.
1 Variations of the maximum leaf spanning tree problem for bipartite graphs P.C. Li and M. Toulouse Information Processing Letters 97 (2006) /03/14.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
Graph theory Definitions Trees, cycles, directed graphs.
Design and Analysis of Algorithm
Chapter 5. Optimal Matchings
Computability and Complexity
Approximation Algorithms
Linear Programming Duality, Reductions, and Bipartite Matching
Miniconference on the Mathematics of Computation
Graph-theoretical Problems Arising from Defending Against Bioterrorism and Controlling the Spread of Fires Fred Roberts, DIMACS.
Presentation transcript:

A survey of some results on the Firefighter Problem Kah Loon Ng DIMACS Wow! I need reinforcements!

A simple model

Some 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

Some references 1.The firefighter problem for graphs of maximum of degree three (Finbow, King, MacGillivray, Rizzi) 2.Graph-theoretic models of spread and competition (Hartke) 3.On the firefighter problem (MacGillivray, Wang) 4.Catching the fire on grids (Fogarty) 5.Fire control on graphs (Wang, Moeller) 6.Firefighting on trees: How bad is the greedy algorithm? (Hartnell, Li) 7.On minimizing the effects of fire or a virus on a network (Finbow, Hartnell, Li, Schmeisser) 8.On designing a network to defend against random attacks of radius two (Finbow, Hartnell) 9.The optimum defense against random subversions in a network (Hartnell) 10.On minimizing the effects of betrayals in a resistance movement (Gunther, Hartnell)

Four general classes of problems 1. Containing fires in infinite grids where is the dimension.

Four general classes of problems 2.Saving vertices in finite grids of dimension 2 or 3.

Four general classes of problems 3.Firefighting on trees. Algorithmic and complexity issues.

Four general classes of problems 4.Construction of graphs that minimizes damage.

Containing fires in infinite grids L d Fire starts at only one vertex: d= 1: Trivial. d = 2: Impossible to contain the fire with 1 firefighter per time step

Containing fires in infinite grids L d d = 2: Two firefighters per time step needed to contain the fire. 8 time steps 18 burnt vertices

…… Containing fires in infinite grids L d d  3: 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..….

Containing fires in infinite grids L d d  3: 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 L d Thus, 2d – 1 firefighters per time step is the minimum number required to contain an outbreak in L d and containment can be attained in 2 time steps.

Containing fires in infinite grids L d Theorem (Hartke): Let be a rooted graph, a positive integer, and positive integers each at least such that the following holds: 1.Every nonempty satisfies 2.For, every where satisfies 3.For, every such that satisfies

Containing fires in infinite grids L d 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.

Containing fires in infinite grids L d 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. d  3: For any d  3, and any positive integer, firefighters per time step is not sufficient to contain all finite outbreaks in L d. In other words, for d  3 and any positive integer, there is an outbreak such that firefighters per time step cannot contain the outbreak.

Saving vertices in finite grids G Assumptions: 1.1 firefighter is deployed per time step 2.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.

Saving vertices in finite grids G

Saving vertices in

If Saving vertices in

Some asymptotic results Letif fire starts at For example,

Some asymptotic results Letif fire starts at For example, So for any

Some asymptotic results Fire starts at

Some asymptotic results

Conjecture:

Some 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, In fact, the optimal number of vertices that can be saved given an initial outbreak at (0,0,0) in when deploying one firefighter per time step is between

Algorithmic 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, 1.vertex is neither burning nor defended at time 2.At time no undefended vertex is adjacent to a burning vertex, and 3.At least vertices are saved at the end of time

Algorithmic and Complexity matters FIREFIGHTER is NP-complete for bipartite graphs. EXACT COVER BY 3-SETS (X3C) Instance: A set with and a collection C of 3- element subsets of Question: Does C contain an exact cover for That is, is there a sub-collection C’ C such that each element of occurs in exactly one member of C’ ?

Algorithmic and Complexity matters Suppose an instance of X3C ( C ) is given. We construct a rooted bipartite graph and a positive integer such that At least vertices of can be saved There is an exact cover of by elements of C

Algorithmic and Complexity matters for each element in C :::: CiCi CjCj For each pair of C i, C j such that ( C i  C j =  ) join their respective vertices ( ) by paths of length two ( ) Note that the graph is bipartite.

Algorithmic and Complexity matters :::: CiCi CjCj If has an exact cover… … save the vertices that corresponds to the subsets ( ) in the exact cover.

Algorithmic and Complexity matters :::: CiCi CjCj If at least vertices can be saved… …at most of the vertices ( ) can be saved by time … …if, at most ( ) ( + ) can be saved…

Algorithmic and Complexity matters Firefighting on Trees:

Algorithmic 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.

Algorithmic and Complexity matters Firefighting on Trees:

Algorithmic and Complexity matters GreedyOptimal = 7 = 9

number of vertices saved by optimal moves whose corresponding greedy moves performs no worse Algorithmic 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. S greedy = number of vertices saved by greedy algorithm S optimal = number of vertices saved by optimal algorithm S optimal A B +

* A Algorithmic and Complexity matters GreedyOptimal S optimal B B S greedy  S optimal A S optimal = S optimal + A S optimal B why was this vertex chosen on second move and not this? …because *’s ancestor has already been selected… S greedy …vertices saved by moves have already been saved by S optimal B  S greedy > S optimal B  S greedy > ½ S optimal

p vertices :::: … Algorithmic and Complexity matters Assume Greedy: Optimal:

Algorithmic 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

Algorithmic and Complexity matters 0-1 integer program for trees: subject to: for each level i for every leaf of

Algorithmic and Complexity matters for each level i for every leaf of For each vertex v  r, and each descendant w of v, add the constraint Additional linear constraints can also be added to narrow the integrality gap.

Algorithmic and Complexity matters A class of trees whose can be computed in polynomial time. First, recall the definition of a perfect graph: is a perfect graph if If G is a perfect graph, we can find a maximum weight independent set of G in polynomial time.

level i Algorithmic and Complexity matters A class of trees whose can be computed in polynomial time. A rooted tree is said to be a P-tree if it does not contain the following configuration: level i+1 level i+2 No requirement for this to be an induced subgraph not a P-treea P-tree

Algorithmic and Complexity matters A class of trees whose can be computed in polynomial time. Given, let be the graph obtained from T by: 1.Adding edges joining each vertex to all its descendants 2. Adding edges joining each vertex to all vertices at the same level Now assign a weight to each vertex defined by: wt(r) = 0; wt(v) = desc(v) +1.

Algorithmic and Complexity matters A class of trees whose can be computed in polynomial time. Theorem (MacGillivray, Wang) A rooted tree is a P-tree if and only if is a perfect graph Note that an independent set in corresponds to a subset of vertices in with at most one vertex in each level. So, (T,r) is a P-tree  P(T,r) is a perfect graph  can find max. wt. indep set in poly. time  can compute MVS(T,r) in poly. time

Some 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?

THE END One firefighter is enough!