1 / 44

Guy Kortsarz Joint work with Dinitz and Nutov

Approximating the k Steiner Forest and Capacitated non preemptive dial a ride problems, with almost uniform weights. Guy Kortsarz Joint work with Dinitz and Nutov. The Steiner k-forest problem. T 5. T 1. S 1. T 2. 4. 30. 4. 20. 1. 7. 10. 1. 2. 10. T 4. 6. T 3. S 5.

cassie
Download Presentation

Guy Kortsarz Joint work with Dinitz and Nutov

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Approximating the k Steiner Forest and Capacitated non preemptive dial a ride problems, with almost uniform weights Guy Kortsarz Joint work with Dinitz and Nutov

  2. The Steiner k-forest problem T5 T1 S1 T2 4 30 4 20 1 7 10 1 2 10 T4 6 T3 S5 1 3 1 1 12 1 10 5 S2 1 3 9 S4 S3 K=3

  3. The Steiner k-forest problem T1 S1 T2 4 1 2 T3 T4 1 3 1 S2 1 S3 K=3

  4. The capacitated non Preemptive Dial a Ride Problem • We are given a graph and input of m pairs {s I , t I } and a a car with capacity k. A client is located at s Iand needs to be taken to t I. • Once you take a passenger at s Ishe only leaves the car when the car reaches t I • Note that a Steiner k-forest can be turned into a path of no larger cost. The problems are closely related (see later).

  5. This talk • We present only the approximation for the k Steiner forest problem. • Gupta, Hajiaghyi, Nagarajan and Ravi : an approximation within  forSKFimplies a polylog(n)rho for Capacitated non preemptive dial a ride. • The algorithm for Dial a ride uses the algorithm for SKF as a black box. Thus we concentrate on approximating SFK

  6. What is known for the problems • SKF: ratio min{O(sqrt k), O(sqrt n)} by Gupta, Hajiaghyi, Nagarajan and Ravi. • SKF is harder to approximate than this problem: Given G(V,E) and a number m’ find a a minimum size set U, so that e(U)≥m’. • This MSME problem is the minimization version of the Dense k-subgraph problem. Given G(V,E) and k find a set U of size k and maximize e(U).

  7. About dense subgraphs • A  ratio for the minimization version implies a 2 for theDense k-subgraph problem. • The first ratio for the problem in 1993. Kortsarz and peleg. n2/5 • Today 21 years later best known is n1/4by Bhaskara ,Charikar , Chlamtacand Feige • No hardness under PNP

  8. The Dense k-subgraph problem seems to admit only polynomial ratios • In case we show a Dense k-subgraphhardness do not look for polylogarithmic ratio. • Thus the Steiner k-Forest problem and the Non Preemptive Dial a Ride problem probably admit only polynomial ratios. • A typical question is: can we break the sqrt{n}? • We give partial answer: yes if the weights are (almost) equal.

  9. Our main result • If the weights are uniform, the Steiner k-Forest problem admits a n0.449 approximation ratio. • Dial a ride admits an O(sqrt{n}) ratio by Charikar, Raghavahari. • We get n0.449 to the Dial a ride problem for uniform weight. • Using spanners we can show that if the average weightisnandis small enough we still improve the sqrt{n}.

  10. Why cant we handle the weighted case • We get a graph with “few vertices” and this implies that a tree on this this graph has “few edges”. This does not work for the weighted case. • We will later show what is the problem we may need to solve to break the ratio for the weighted case. • Some problems have better ratio when non weighted case. For example hard capaity vertex cover. (log n) for weighted 2 for non weighted.

  11. Enough pairs and few trees • When we say that we connect enough pairs from now on it means k/polylog(n). • We have a very simple idea. Find  trees for small enough  that cover enough pairs. This means that there are enough pairsso that s I is in one tree and in one of them and t Iis in the another. • We show how to connect only far pairs of distance at least 2d for some parameter d. Close pairs are treated in another way (omitted).

  12. Clustering separately for s and t vertices • We start building the trees from s I vertices • It some t pvertex belongs to the tree then we change the names of s pt p • Of course if both s pt pbelong to the tree they are treated as a close pair. • Because they distance is d up to log factors. • Indeed every tree has diameter d up to log factors. Thus the graph we get is bipartite.

  13. The “Distance” between each pair is at most opt s20 S15 S 1 S 5 S7 S 3 S6 S 12 S8 T5 T20 T12 T 15 T3 T1 T7 T8 T6

  14. The edges of the trees already have been payed for. s20 S15 S 1 S 5 S7 S 3 S6 S 12 S8 T5 T20 T12 T 15 T3 T1 T7 T8 T6

  15. A vertex s need to get to any vertex in its tree t s20 S15 S 1 S 5 S7 S 3 S6 S 12 S8 T5 T20 T12 T 15 T3 T1 T7 T8 T6

  16. We just need a forest on the trees s20 S15 S 1 S 5 S7 S 3 S6 S 12 S8 T5 T20 T12 T 15 T3 T1 T7 T8 T6

  17. S1has a long way, but still they are connected S 1 S 5 S 3 S6 S 12 S8 T5 T3 T1 T6

  18. We get a forest with  trees • The distance between every two trees we take is at most opt. • Such a forest contains at most  paths • Therefore cost opt • To get ratio smaller than sqrt{n}  has to be less than sqrt{n}. • We now explain how to do it.

  19. How to get few trees and a cover of enough pairs • A cluster is a collection of trees with special properties. • The number of clusters we build is O(log n) • But with polylogarithmic loss we may assume that there are two clusters Cs Ctso that the trees of Cs contain s vertices and Ctcontains t vertices and the union of the two clusters has enough input pairs.

  20. A property we achieve • Let OPT be the optimum and opt its value. • We carefully choose a parameter d. • We manage to prove this: • Lemma 1: at most opt/d trees contain Si that are connected by OPT to their Ti. • Important remark: it may be that the distance of all pairs is at most 2d. But we have a different procedure to deal with that (not shown her).

  21. How do we achieve that? • A property that holds in our cluster is that the distance between every two sources in different trees is at least 2d. • Consider an Sithat is connected by OPT to its Ti and Spthat is in another tree and is connected to its Tp • Note that the paths between the two pairs have nothing to do with the trees we constructed but depend on OPT.

  22. However we get the following • Since the distance between Si and Sp more than 2d, the first d edges in the optimum paths of Siand Sp do not intersect. • This gives a function from the trees to d edges in the optimum that are pairwise disjoint. • We can not seem to use the fact that the trees contains many terminals because their paths maybe almost the same.

  23. What does the mapping imply • Clearly it implies that at most opt/d trees in a cluster have Sior Tithat OPT connects. • Now say that all the trees we find have “few vertices” (the exact parameters will not help the understanding ) • Thus we are willing to take all the tree into the solution. • The reason is: there are few trees and each has few vertices.

  24. What does this mean • The union of the trees has few vertices thus few edges. • However, a major problem is how do we find these few trees? • A major tool: recall the problem of given a number m’ and a graph G find minimum number of vertices U so that e(U)≥m’

  25. ChlamtacDinicKrauthgamer • This problem admisn ratio for some  much smaller than 0.25. • Consider all the “small trees”. Treat them as a vertex. Between two trees put weight equals the number of pairs that get connected if these trees are joined. • By taking powers of 2 and loosing O(log n) ratio we may assume that the graph is edge unweighted.

  26. In this graph there are opt/d vertices that cover enough pairs. A pair here corresponds to sources versus sinks (the same number almost for every connected pair)

  27. What we find • We find =n opt/d trees that cover enough pairs. • If the trees each have at most S (for small) vertices then the total amount of vertices is n S opt/d • By a carful choice of parameters we get that n S/d is smaller than sqrt{n}. • Gives better than sqrt{n} ratio.

  28. However this does not work for trees with many vertices • For trees with many vertices we cant take the entire tree. • Thus we do something else that does work • We do not contract the trees • In fact we ignore the trees and make a graph of terminals in the trees and join a terminal pair if they are an input pair.

  29. We do not treat trees as vertices S6 S8 s20 S7 S 3 S 5 S 1 S 12 T7 T20 T5 T13 T12 T3 T1 T6 T8

  30. Consider the number of terminalsthat are connected by OPT • We can bound the number of terminals as above by opt because every terminal is touched by at least one edge. Thus the number of terminals is not much larger than sqrt{n}. • Otherwise by retuning a spanning forest with at most n edges we get better than sqrt{n} ratio. • We also use an important property of the trees: a vertex in any tree has distance at most d (up to logarithmic terms) from the leader.

  31. Thus if we treat it as dense subgraph • We find a collection of at most n optterminals that induce a graph with enough pairs. • How do we connect the tree? • First remove the terminals not chosen by the dense subgraph procedure. • Show me to your leader: connect each chosen terminal to its leader.

  32. How many edges • The distance from every chosen terminal to its leader is d. • There are ≤opt terminals that cover enough pairs. • Because of the approximation we get noptvertices. • As the number of edges to connect all trees is at most n optd.

  33. How large is ? • However, why is would  be small? • Say that a terminal is chosen from a tree. • This means that at least S vertices are associated with this terminal. • Here it helps us that the trees are heavy. • Because ≤ n/S. • Choosing S larger than sqrt{n} we get a better than sqrt{n} ratio to connect the trees.

  34. A third case • It may be that all pairs go from light trees to heavy trees. • In this case in the side that we have light trees we contract the tree to a vertex and in the side that we have heavy trees we have terminals. • Because of the different roles of the trees and terminals we need to give then different weights.

  35. The vertex weighted density problem • Therefore as an aside, we show a (non trivial) density problem in which vertices have weights and there is a bound m’ and we need to select a minimum weight collection of vertices with at least m’ edges has the same ratio as the original problem. • This is given by a separate theorem based on the original algorithm.

  36. How to get clusters with nice properties? • A combinatorial and careful sphere growing technique. • Such techniques were already used by Awerbuch in 1983 • Our techniques are not exactly the same as previous ones. The details can not be the exactly the same. • However the crux of this technique can be describes as follows.

  37. Start with a single vertex • We define the border of a tree as terminals not in the tree but at distance at most 2d from the tree. • Thus we have two type of terminals: those who are already in the tree. Denote their number by q. • The terminals on the border, a collection of disjoint to the internal terminals. Denote their number by b.

  38. The procedure • Consider the current q. Compare it to the number of terminals b in the border. • If b≥qadd a shortest path from every border terminal to the tree. • Else, we stop. • Consider the time so that b<q. Then the loop stops, • Now remove the border vertices.

  39. How many clusters will we have? • Consider what happens when you construct a cluster. • For every b vertices deleted, we have in the tree q terminals so that q>b. • This means that each time we construct a cluster the number of terminals is cut in half. • Giving at most O(log n) clusters.

  40. To solve the weighted case the following problem is neccesary (but may not be enough) • Consider an instance of the Dense k-Subgraphso that the graph is bipartite G(A,B,E). • Say that A= Ai andB= Bi • Usually we want few vertices to get at least m’ edges. • Here we need to cover m’ edgeswith few vertices taken from few sets.

  41. How hard is that problem? • This seems to be required for the case the trees are all heavy. • Seems a difficult problem. • The clear open problem is to get a similar ratio for the weighted case. • However, we bound the distance between Si and TI by opt

  42. This seems way too much • If the diameter of the input graph is less than opt we get a better ratio. • Maybe split into the case that there are many trees in the forest, and so, the distance between pairs can not be opt. • How do we handle the case of few trees in the forest? These trees can be pairwise very far.

  43. Any questions?

  44. Any questions? • Thank you for your attention!

More Related