1 / 48

Introduction Outline

Introduction Outline. The Problem Domain Network Design Spanning Trees Steiner Trees Triangulation Technique Spanners Spanners Application Simple Greedy Algorithm. Introduction Outline. The Problem Domain Network Design Spanning Trees Steiner Trees Triangulation Technique Spanners

muncel
Télécharger la présentation

Introduction Outline

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. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  2. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  3. The Problem Domain • General network design problem: Given a set Sof n points in Rd, how to construct a good network that connects these points ?

  4. Property 1: Any network connecting a set of npoints must have at least n-1edges. Sparse network – the number of edges is linear to the number of points. (i.e. O(n) edges)

  5. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  6. Network Design Network quality measures: • Size • Weight • Stretch factor • Degree • Diameter • Connectivity - Fault Tolerance

  7. Network quality measures (cont.) • Number of Steiner points (To be covered) • Load Factor e Bottle Neck

  8. Motivation by examples • Scandinavian rail network (prior 2000) Copenhagen Malmo

  9. Motivation by examples • Stretch Factor Imagine set of highways connecting cities. We need to upgrade the highway system in the cost-effective manner. Should we upgrade ALL existing highways ? Upgrade only carefullyselected subset of existing highways !

  10. Significance of Network Analysis Queries examples: What is the size, weight, stretch factor, diameter, degree or connectivity of the network ? Which edge (or K edges) should be added to the network to achieve the greatest decrease in the stretch factor and/or load factor ? What is the total length of the edges to be added to the network to achieve a desired fault-tolerance and stretch factor without destroying the planarity ? For which pair of the cites the stretch factor is the largest ? What is the farthest pair of cites in the network ?

  11. Network Design Tradeoffs • Bounded degreevs. the small diameter • Small stretch factorvs. the small size/weight Thus, network quality measures can be thought of as multicriteria optimizationproblems

  12. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  13. Spanning Trees • Spanning Tree: • given set S of n points, ST(S) is an acyclicconnected graph on these points. • Spanning tree is goodin sense that it has minimum number of edges • Sylvester(1857),Cayley(1889) formula: A set of npoints has exactlynn-2 spanning trees

  14. Spanning Trees • Let Tbe a spanning tree of the setS. • Weight ωt(T) is defined to be thesumof thelengthof its edges • lengthof an edge {p,q} is the Euclidian distance |pq| between p and q • Minimum Spanning Tree - MST(S) of set S • is a spanning tree of minimum weight.

  15. MST Properties • Let S be a set of n points in the plane, then: • A MST(S)is a shortest network connecting the points of S • In MST(S), each point has degreeat most 6.

  16. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  17. Steiner Trees • Interconnect set S of pointsby a network (graph) of shortest length, where the length is the sum of thelengthsofall edges. • We allow additional points (Steiner points) to be added to the graph, in order to reduce the total length MST…? • We define: • Steiner Minimum Tree - SMT(S) be a graph with minimum total length(weight)

  18. A B C Steiner Trees • Ex.1 X MST(S) = SMT(S) =

  19. A B C D Steiner Trees • Ex.2 X1 MST(S) = SMT(S) = X2

  20. Steiner Trees • Lemma (1.1.4) • Let S be a finite set of points in Rd, then: ωt(MST(S)) ≤ 2 ∘ ωt(SMT(S)) • Proof : Let : SMT(S)=T • we will construct a spanning tree T*of S • having at most twice the weight of T

  21. A B C Steiner Trees (cont.) • Proof (construction): SMT(S)=T W= X Euler’s tour: W’ ωt(W’ ) = ωt(W ) = 2∘ ωt(T )

  22. Steiner Trees (cont.) • We will construct T* of points of S from W’ (Euler’s tour) applying the short-cuts technique: • As result we have: • T* that visits each point of S exactly once • ωt(T*) ≤ 2∘ωt(T) • remove all Steiner points • For each pointpofS, remove allvisits top except the first one

  23. A B C Steiner Trees (cont.) • Recall: ? X Euler tour: W’

  24. Steiner Trees (cont.) • Is factor 2 is the best possible…? • Gilbert & Pollack (1968) conjectured that: • is the best possible • That is, for any finite set S of points of R2 : ωt(MST(S)) ≤ ∘ ωt(SMT(S)) After 20 years, Du&Hwang settled the conjecture

  25. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  26. X X Y Y Triangulation • Define: Convex Hull of set of points S in a real vector space V is the minimalConvex Set containing S In Euclidian Space, an object is convex if : for every pair of points within the object, every point on the straight line segment that joins them is also within the object A non-Convex set A Convex set

  27. Triangulation • Convex Hull S =

  28. Triangulation • General: • Subdivision of geometric object into simplices • In particular: • In the plane it is a subdivision into triangles, hence the name. • Let S be a set of points in the plane • A triangulationis a partition of theconvex hullintotriangles , such that vertices of these triangles areexactlypoints of S

  29. Triangulation • Ex.3 S =

  30. Delaunay Triangulation • Boris Delaunay (1934) • Delaunay triangulation for a set S of points in the plane is a triangulation DT(S) that: • no point of S, is inside the circumcircle of any triangle in DT(S) • Property: • DT(S) containsMST(S)

  31. Delaunay Triangulation • Example

  32. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  33. Spanners • Spanner Definition. Let S be a set of n points in Rd and let t ≥ 1 be a real number. A t-spanner for S is an undirected graph G with vertex set S, such that for any two points p and q of S, there is a path in G between p and q, whose length is less than or equal to t|pq|. Any path satisfying this condition is called a t-spannerpath between p and q.

  34. Spanners 1-spanner 3-spanner 1.5-spanner

  35. Spanners • Stretch Factor Definition. Let S be a set of n points in Rd and let G be a Euclidean graph with vertex set S. The stretch factor of G is the smallest real numbert such that G is a t-spanner of S.

  36. Spanners • Spanner Property. Let S be a set of n points in Rd and let t ≥ 1 be a real number. Any t-spanner of S has: • Number of edges - at least n – 1 • Weight - at least ωt(MST(S))

  37. Spanners • Basic Spanner Problem Let S be a set of n points in Rd and let t ≥ 1 be a real number. Does there exist a t-spanner for S having at mostctdn edges, where ctd is a real number that depends only on t and d? If so, how much time does it take to compute such a t-spanner?

  38. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  39. Spanners Application • Approximating Minimum Spanner Trees Let S be a set of n points in the plane. Since any MST(S) of S is contained in Delanay triangulationDT(S) of S, we can compute MST(S) in the following way: • Compute DT(S) in O(n log n) time. • Compute MST of DT(S), which is in fact an Euclidean MST of the set S. Since DT(S) contains only linear number of edges, entire algorithm runs O(n log n)

  40. Theorem Let S be a set of n points in Rd, let t ≥ 1 be a real number and let G be an arbitrary t-spanner for S. A minimum spanning tree of G is t-approximate minimum spanning tree of S, that is the weight of any MST of G is at most t∘ωt(MST(S))

  41. Proof • Let T be a minimum spanning tree of S, and number its edges arbitrarily as e1, e2,…en-1. Consider edge ei. Since G is a t-spanner for S, there exists a t-spanner path Pi in G between the endpoints of ei. Thus the length wt(Pi) of Pi is at most t times the length of ei. It follows that:

  42. Proof (cont.) • Let G’ be the subgraph of G, whose edge set is the union of the edge sets of the paths Pi, 1 ≤ i ≤ n-1. Then G’ is a connected graph with vertex set S and its weight is at most t*wt(MST(S)). Since the weight of the minimum spanning tree of G is less than of equal to the weight of G’, the proof is complete.

  43. Introduction Outline • The Problem Domain • Network Design • Spanning Trees • Steiner Trees • Triangulation Technique • Spanners • Spanners Application • Simple Greedy Algorithm

  44. Greedy Spanner Algorithm Algorithm PathGreedy (S, t) Input: Set S of n points in Rd , t > 1 Output: G=(S, E) – a t-spanner for S • Sort the ( ) pairs of distinct points in nondecreasing order of their distances and store them in list L • E  {} • G  (S, E) • for each pair (u,v) єL (considering pairs in sorted order) • let dG(u,v) be the length of the shortest path in G between u and v • if dG(u,v) > t |u,v| • add (u,v) to E • Output G

  45. Greedy Spanner Algorithm (example 1) G Consider: S = {A, B, C, D}, t = 2 AD = BC = 3 AB = DC = 4 AC = BD = 5 Sorting Pairs of S: L = {AD, BC, AB, DC, AC, BD} A B D C Deciding (D, C): (dG(D,C) = 10 > 2 * 4)? True!  DC is added to G Deciding (A, C): (dG(A,C) = 7 > 2 * 5)? False!  AC is not added to G Deciding (B, D): (dG(B,D) = 7 > 2 * 5)? False!  BD is not added to G

  46. Greedy Spanner Algorithm (example 2) G Consider: S = {A, B, C, D}, t = 1.3 AD = BC = 3 AB = DC = 4 AC = BD = 5 Sorting Pairs of S: L = {AD, BC, AB, DC, AC, BD} A B D C Deciding (D, C): (dG(D,C) = 10 > 1.3 * 4)? True!  DC is added to G Deciding (A, C): (dG(A,C) = 7 > 1.3 * 5)? True!  AC is added to G Deciding (B, D): (dG(B,D) = 7 > 1.3 * 5)? True!  BD is added to G

More Related