robust network design with exponential scenarios
DESCRIPTION
Robust Network Design with Exponential Scenarios. By: Rohit Khandekar Guy Kortsarz Vahab Mirrokni Mohammad Salavatipour. Outline. Robust vs. Stochastic Optimization Robust Two-stage Network Design Problems Related Work: Stochastic vs. Robust Our Results - PowerPoint PPT PresentationTRANSCRIPT
Robust Network Design with Robust Network Design with Exponential ScenariosExponential Scenarios
By:By:Rohit KhandekarRohit Khandekar
Guy Kortsarz Guy Kortsarz Vahab MirrokniVahab Mirrokni
Mohammad SalavatipourMohammad Salavatipour
OutlineOutline Robust vs. Stochastic OptimizationRobust vs. Stochastic Optimization Robust Two-stage Network Design Robust Two-stage Network Design
ProblemsProblems Related Work: Stochastic vs. RobustRelated Work: Stochastic vs. Robust Our ResultsOur Results Algorithm for Robust Steiner TreeAlgorithm for Robust Steiner Tree ConclusionConclusion
Optimization Against Optimization Against UncertaintyUncertainty
Stochastic Optimization.Stochastic Optimization. Optimize the expected cost given the Optimize the expected cost given the
probability distributionprobability distribution on the scenarios on the scenarios Playing against a Playing against a randomizedrandomized
uncertainty.uncertainty. Robust OptimizationRobust Optimization..
Optimize for the Optimize for the worst caseworst case scenarios. scenarios. Playing against an Playing against an adversaryadversary..
Two-stage OptimizationTwo-stage Optimization Construct a partial solution in stage Construct a partial solution in stage
one.one. Wait for a real scenario to show up.Wait for a real scenario to show up. Complete the solution and pay more Complete the solution and pay more
if you buy things in the second step.if you buy things in the second step. GoalGoal: Decide what to buy in advance : Decide what to buy in advance
and what to do in step two for each and what to do in step two for each scenario.scenario.
Exponential vs. Polynomial Exponential vs. Polynomial Scenarios.Scenarios.
Polynomial Scenarios: explicit Scenarios.Polynomial Scenarios: explicit Scenarios. Stochastic OptimizationStochastic Optimization: The probability of each : The probability of each
scenario is explicitly given.scenario is explicitly given. Robust OptimizationRobust Optimization: All scenarios are specified.: All scenarios are specified.
Exponential Scenarios: Exponential Scenarios: implicit Scenariosimplicit Scenarios Stochastic OptimizationStochastic Optimization: Implicit probability : Implicit probability
distribution is given, e.g., each client distribution is given, e.g., each client tt will show will show up with probability up with probability pptt..
Robust OptimizationRobust Optimization: Family of scenarios are : Family of scenarios are defined implicitly, e.g., an upper bound on the defined implicitly, e.g., an upper bound on the number of clients is given, i.e., number of clients is given, i.e., at most at most kk clients clients will show upwill show up..
2-stage Robust Steiner 2-stage Robust Steiner TreeTree GivenGiven: :
Edge-weighted graph Edge-weighted graph G(V, E)G(V, E) each edge each edge ee with cost with cost ccee.. Nodes of Nodes of GG correspond to clients. correspond to clients. Scenarios Scenarios TT11, T, T22, …, T, …, Tpp which are the subsets of nodes which are the subsets of nodes
one of which we will need to connect at the end.one of which we will need to connect at the end. An inflation factor An inflation factor qq for the increased cost in the second for the increased cost in the second
step.step. OutputOutput: Buy a subset : Buy a subset EE11 of edges of of edges of GG in advance. in advance. Adversary will choose (the worst) scenario Adversary will choose (the worst) scenario TTii and and
we need to buy another subset of edges we need to buy another subset of edges E’E’ at a at a larger cost larger cost qcqcee for each edge for each edge ee such that such that EE11 U E’ U E’ connects all nodes in connects all nodes in TTii
GoalGoal: minimize total cost = : minimize total cost = c(Ec(E11) + q c(E’)) + q c(E’)
2-stage Robust Steiner Tree (Exponential 2-stage Robust Steiner Tree (Exponential Scenarios)Scenarios)
GivenGiven: : edge-weighted graph edge-weighted graph G(V, E);G(V, E); a set of terminals a set of terminals
TT A parameter A parameter kk:: kk terminals (clients) will show terminals (clients) will show
up.up. Inflation factor Inflation factor q:q: edge costs increase in second edge costs increase in second
step.step. OutputOutput: Buy a subset : Buy a subset EE11 in stage one; in stage one; kk
terminals are given in stage 2 and we need terminals are given in stage 2 and we need to buy another subset of edges to buy another subset of edges E’E’ at cost at cost qcqcee for each edge for each edge ee s.t. s.t. EE11 U E’ U E’ connects all connects all the the kk terminals. terminals.
GoalGoal: minimize total cost = : minimize total cost = c(Ec(E11) + q c(E’)) + q c(E’)
Other Robust 2-stage ProblemsOther Robust 2-stage Problems Robust Network Design: Robust Network Design:
Robust Steiner Forest: at most Robust Steiner Forest: at most kk pairs show up.pairs show up. Robust Facility Location.Robust Facility Location.
At most At most kk clients will show up. We buy a set of clients will show up. We buy a set of facilities in advance.facilities in advance.
Adversary chooses the worst Adversary chooses the worst kk clients for us to cover. clients for us to cover. We should open new facilities at larger cost & We should open new facilities at larger cost &
minimize the total opening cost + connection costs.minimize the total opening cost + connection costs. Other Robust Covering Problems:Other Robust Covering Problems:
Robust Set Cover. Robust Set Cover. Robust Vertex Cover.Robust Vertex Cover.
Robust two-stage Min-cut.Robust two-stage Min-cut.
Robust Min Cut ProblemRobust Min Cut Problem Robust 2-stage Min-cut: Robust 2-stage Min-cut:
GivenGiven: : An edge-weighted graph An edge-weighted graph G(V, E)G(V, E) each edge each edge ee with cost with cost c_ec_e.. Pairs of nodes of Pairs of nodes of GG correspond to clients. correspond to clients. An inflation factor An inflation factor qq for the increased cost in the second for the increased cost in the second
step.step. OutputOutput: Buy a subset : Buy a subset E_1E_1 of edges of of edges of GG in advance. in advance. Adversary will choose (the worst) pair Adversary will choose (the worst) pair (s_i, t_i)(s_i, t_i) and and
we need to buy another subset of edges we need to buy another subset of edges E’E’ at a at a larger cost larger cost qc_eqc_e for each edge for each edge ee such that such that E_1 U E’E_1 U E’ disconnects disconnects s_is_i andand t_it_i..
GoalGoal: Choose a subset : Choose a subset E_1E_1 with the minimum total with the minimum total cost (cost (Total CostTotal Cost = cost of = cost of E_1E_1 + + qq times cost of times cost of E’E’).).
OutlineOutline Robust vs. Stochastic OptimizationRobust vs. Stochastic Optimization Robust Two-stage Network Design Robust Two-stage Network Design
ProblemsProblems Related Work: Stochastic vs. RobustRelated Work: Stochastic vs. Robust Our ResultsOur Results Algorithm for Robust Steiner TreeAlgorithm for Robust Steiner Tree ConclusionConclusion
Related WorkRelated Work Stochastic Two-stage Optimization:Stochastic Two-stage Optimization:
Dye, Stougie, and Tomasgard: Two-stage matching Dye, Stougie, and Tomasgard: Two-stage matching problemsproblems
Considered by Immorlica, Karger, Minkoff, and Mirrokni Considered by Immorlica, Karger, Minkoff, and Mirrokni [IKMM] (SODA03) and Ravi and Sinha (IPCO03) (Two-[IKMM] (SODA03) and Ravi and Sinha (IPCO03) (Two-stage covering problems).stage covering problems).
IKMM considered the exponential scenarios: each client IKMM considered the exponential scenarios: each client shows up with probability shows up with probability pp. .
Improved by Gupta, Pal, Ravi, and Sinha (STOC03) Improved by Gupta, Pal, Ravi, and Sinha (STOC03) using Boosted Sampling: constant-factor approximation using Boosted Sampling: constant-factor approximation for Steiner tree. Also later considered the black box for Steiner tree. Also later considered the black box model.model.
Swamy and Shmoys (FOCS04): Swamy and Shmoys (FOCS04): O(log n)-O(log n)-approximation approximation algorithm for two-stage stochastic set cover via solving algorithm for two-stage stochastic set cover via solving an exponential linear program.an exponential linear program.
Multi-stage Optimization:Multi-stage Optimization: Swamy and Shmoys (FOCS05): sample average Swamy and Shmoys (FOCS05): sample average
approximation. approximation.
Related WorkRelated WorkRobust Two-stage Optimization:Robust Two-stage Optimization:
Initiated by Ben-Tal, Gorashko, Guslitzer, Initiated by Ben-Tal, Gorashko, Guslitzer, and Nemirovski. and Nemirovski.
Polynomial Number of Scenarios: Polynomial Number of Scenarios: Introduced by Dhamhere, Goyal, Ravi, and Introduced by Dhamhere, Goyal, Ravi, and
Singh (FOCS05): Facility Location & Steiner Singh (FOCS05): Facility Location & Steiner TreeTree
Constant-factor approximation algorithmsConstant-factor approximation algorithms Improved by Golovin, Goyal, and Ravi Improved by Golovin, Goyal, and Ravi
(STACS06): Min Cut.(STACS06): Min Cut. Constant-factor approximation algorithm for Min-Constant-factor approximation algorithm for Min-
cut (cut (Is it NP-Hard?Is it NP-Hard?))
Exponential Scenarios: Known Exponential Scenarios: Known ResultsResults
Feige, Jain, Mahdian, Mirrokni (IPCO 07)Feige, Jain, Mahdian, Mirrokni (IPCO 07) LP-based Approximation Algorithms for Robust LP-based Approximation Algorithms for Robust
Covering: Exponential Size LP.Covering: Exponential Size LP. General Framework for covering problems: General Framework for covering problems:
Online Competitive Algorithms Online Competitive Algorithms Two-stage Two-stage Robust Approximation Algorithms.Robust Approximation Algorithms.
constant-factor approximation for robust vertex.constant-factor approximation for robust vertex. O(log m log n)O(log m log n)--approximationapproximation for robust set for robust set
covercover O(log m)O(log m)--approximationapproximation for robust metric for robust metric
facility location: facility location: Constant-factor approximation Constant-factor approximation for facility location?for facility location?
LP-based algorithm does not work for Robust LP-based algorithm does not work for Robust Network Design: Network Design: Robust Steiner Tree?Robust Steiner Tree?, or , or Robust Steiner Forest?Robust Steiner Forest?
Our ResultsOur Results Constant-factor for robust Steiner tree and Constant-factor for robust Steiner tree and
robust Facility Location. robust Facility Location. Thm. Thm. 5.5-5.5-approx for approx for two-stage robust two-stage robust
Steiner TreeSteiner Tree Combinatorial AlgorithmCombinatorial Algorithm
Thm.Thm. 10-10-approx for approx for robust facility locationrobust facility location.. Combinatorial AlgorithmCombinatorial Algorithm
Thm.Thm. 3-3-approx for approx for robust Steiner Forest on robust Steiner Forest on Trees.Trees. At most At most kk pairs of nodes show up to be pairs of nodes show up to be
connected.connected. LP-based AlgorithmLP-based Algorithm
Our ResultsOur Results Hardness ResultsHardness Results Thm.Thm. Better than Better than O(logO(log1/2-1/2- n)- n)-approximation approximation
factor for two-stage factor for two-stage robust Steiner Forest robust Steiner Forest with two inflation factorswith two inflation factors is hard, even if is hard, even if only each scenario is only one pair. only each scenario is only one pair. implies quasi-polynomial-time algorithms for NP.implies quasi-polynomial-time algorithms for NP.
Thm.Thm. Robust two-stage Min-cut Robust two-stage Min-cut is APX-hard.is APX-hard. Even with uniform inflation factor.Even with uniform inflation factor. Even with one source and three sinks.Even with one source and three sinks. NP-hardness was posed as an open problem (by NP-hardness was posed as an open problem (by
Golovin, Goyal, Ravi)Golovin, Goyal, Ravi)..
Robust Steiner Tree AlgorithmRobust Steiner Tree Algorithm Let Let OPT = OPTOPT = OPT11 + q OPT + q OPT22.. OPTOPT11: Optimum in the first Stage.: Optimum in the first Stage. OPTOPT22: Optimum in the second Stage.: Optimum in the second Stage. Algorithm AAlgorithm A::
A: first stage:A: first stage: 1) Guess 1) Guess OPTOPT22 [Binary search to find it]. [Binary search to find it]. 2) Find-Centers2) Find-Centers: Find centers : Find centers cc11, c, c22, …, c, …, ckk and assign and assign
nodes to these centers s.t.nodes to these centers s.t. Distance of each two centers is at least Distance of each two centers is at least r OPTr OPT22 / k / k.. Each node is close to its assigned center is at most Each node is close to its assigned center is at most r OPTr OPT22 / k / k..
3) Buy an approx optimal Steiner tree on 3) Buy an approx optimal Steiner tree on cc11, c, c22, …, c, …, ckk.. B) Second Stage: Buy the shortest path from B) Second Stage: Buy the shortest path from
each client to the closest terminal.each client to the closest terminal.
Algorithm (Cont’)Algorithm (Cont’) Find-CentersFind-Centers: Find centers : Find centers cc11, c, c22, …, c, …, ckk and and
assign nodes to these centers s.t.assign nodes to these centers s.t. Distance of each two centers is at least Distance of each two centers is at least r OPTr OPT22 / k / k.. Each node is close to its center, dist is at most Each node is close to its center, dist is at most r r
OPTOPT22 / k / k.. Find-Centers AlgorithmFind-Centers Algorithm::
1) Set of centers 1) Set of centers U= V(G)U= V(G) and and C=emptyC=empty;; and and i = i = 0.0.
2) 2) i = i+1i = i+1. . 3) Select an arbitrary node 3) Select an arbitrary node cc11 in in UU and add it to and add it to CC.. 4) Remove all nodes in distance4) Remove all nodes in distance ·· rOPT rOPT22 / k / k from from UU.. 5) If 5) If UU is nonempty, is nonempty, go back to step 2go back to step 2, , otherwise terminate.otherwise terminate.
AnalysisAnalysis Second Stage: Second Stage: kk clients, each with cost clients, each with cost q(r OPTq(r OPT22 / k), / k),
thus thus q OPTq OPT22 First Stage: First Stage:
Lemma: The cost is at most Lemma: The cost is at most (r/r-4)OPT(r/r-4)OPT11 + OPT + OPT22.. Proof: By contradiction Proof: By contradiction Otherwise the optimum Otherwise the optimum
solution pays more than solution pays more than q OPTq OPT22 in the second in the second stage. stage.
Prove this by constructing the right mapping Prove this by constructing the right mapping between the optimum and our solution (Details in between the optimum and our solution (Details in the paper).the paper).
Final Algorithm:Final Algorithm: If If q<3.51q<3.51, Run a trivial algorithm (not buy , Run a trivial algorithm (not buy
anything in the first stage), anything in the first stage), otherwise, Run otherwise, Run Algorithm AAlgorithm A. .
ConclusionConclusion Constant-factor Approximation Algorithms for Constant-factor Approximation Algorithms for
2-stage robust Steiner tree2-stage robust Steiner tree 2-stage robust facility location2-stage robust facility location 2-stage robust Steiner forest (on trees)2-stage robust Steiner forest (on trees)
Hardness ResultHardness Result 2-stage robust min-cut is APX-hard.2-stage robust min-cut is APX-hard. 2-stage robust Steiner forest (with 2 inflation 2-stage robust Steiner forest (with 2 inflation
factors) in not approximable better than factors) in not approximable better than O(logO(log1/2-1/2-n).n).
Open Problems: Robust Multiway-Cut, Robust Open Problems: Robust Multiway-Cut, Robust Steiner Forest, Robust Buy-at-Bulk Network Steiner Forest, Robust Buy-at-Bulk Network Design.Design.
Please find a revised version of the paper at: Please find a revised version of the paper at: http://people.csail.mit.edu/mirrokni/ESA08.pdfhttp://people.csail.mit.edu/mirrokni/ESA08.pdf