1 / 13

Improving Steiner Trees in Network Theory and VLSI Projects

This project focuses on improving the run-time and quality of Steiner trees in network theory and VLSI projects by implementing fast algorithms and approximation algorithms.

goodwinr
Download Presentation

Improving Steiner Trees in Network Theory and VLSI Projects

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. Projects Network Theory VLSI PSM 1. Network 1. Steiner trees survivability - run time (Purav doing it)improvement (B) 2. Arbitrary - quality improvement (A) (theoretical) 2. Zero-skew trees problems - run time (B) (problems from - theory (quality impr.) (A) conferences, 3. Floor planning metric problems - computational with graphs ..) geometry 3. Implement fast MST O(E+V logV) (Karger algorithm)

  2. Approximation Algorithm Steiner trees in graphs G = (V,E,cost), cost:E  R+ S  V set of terminals if S = V  MST algorithm exactly if S  V  problem is NP-hard MST - heuristic for the Steiner tree problem 1. Construct graph G’= (S,E’,cost’) (for any pair of points define distance=cost of the shortest path between them) there is an algorithm (Mehlhorn) for this problem with O(E+VlogV) 2. Find T=MST(G’) O(n3) Run Dijkstra from one point

  3. MST - heuristic for the Steiner tree problem 3. Construct H = T* T*={G-paths corresponding to edges at T} (T* may have some cycles, remove arbitrary edges from cycles) 4. Toutput = MST(H) a a  G’ G c b b c cycles cannot appear, but duplicates are possible

  4. Approximation ratio of MSTH Theorem: Approximation ratio of MST heuristic  2 Proof: 2 OPT = Tour  Shortcut Tour  MST  Toutput (+ cost of the longest edge in the green tour) terminals Steiner points

  5. Approximation ratio of MSTH Proof that approximation ratio = 2:   > 0  I  STP such that: MST (I)  (2- ) OPT(I) OPT(Ik) = k MST( Ik ) = 2(k-1) supIk (2k-2)/k = 2 1 2 k terminals 2 distance between any 2 terminals=2

  6. Traveling Salesperson Problem (TSP) -first problem proved to be NP-hard Given: complete graph G=(V,E,cost) Find: minimum cost tour which visits all nodes traveling salesperson problem - if we have -inequality in G  MST-heuristic = 2 approximation

  7. Traveling Salesperson Problem (TSP) 1. Find T = MST(G) 2. H = T+T (traverse this tree visiting each node twice) 3. Tour  Shortcut (H) output tour (heuristic) make a shortcut OPT  MST Approx  2 MST 2 OPT

  8. Eulerian Graphs Eulerian graph - you can traverse all edges visiting each only once (Euler, 18th cent., problem: Köningsberg’s bridges) graph Eulerian  all degrees are even Theorem: Graph G is Eulerian  D(G) is bipartite Proof: homework Theorem: In every graph the number of odd degree nodes is even. Proof: Homework red = G black = D(G) - dual of G

  9. 1.5 Approximation for TSP Christophides (in 1976) - better heuristic, approx. ratio 1.5 Matching problem Given G = (V,E,cost) |V|=even matching - no 2 edges have common point (there is exact algorithm with run time O(v3)that will find minim. cost) 3 matchings bipartite graph

  10. 1.5 Approximation for TSP Algorithm: 1. Find MST 2. Find minimum weight matching M of odd- degree nodes 3. Make Tour M  MST Proof that approx. is 1.5: we know : MST  OPT need to prove: M  0.5 OPT then  Tour  1.5 OPT ?

  11. 1.5 Approximation for TSP Proof that M  0.5 OPT optimal  shortcut = M1 +M2  2*M shortcut for odd nodes (shorter because of triang.ineq.) optimal other mathing M2 one matching M1

  12. Minimum Vertex Cover • NP - hard problem Given: G = (V,E,cost) cost: V  R+ Find: C  V cost(C)  min such thateach edge in E has at least one end point in C C 2 approximation : - pick an edge e - delete both endpoints of e - repeat until no edges are left

  13. Minimum Vertex Cover Let Ce be output of edge-deletion heuristic. Then |Ce|  2 OPT. Proof: Let M be the set of chosen edges in the heuristic Ce = 2|M| OPT  |M| |M| = OPT (M)  OPT(G) we proved  |Ce|  2 OPT ? here all edges of G need to be covered number of edges in M only some edges of G to cover

More Related