250 likes | 499 Views
Euler tours, postman tours and mixed graphs. Samsung Telecommunications America, Inc. and The University of Texas at Dallas veerasam@utdallas.edu. Jeyakesavan Veerasamy*. * Joint work with Balaji Raghavachari. Approximation Algorithms. An algorithm for solving a minimization problem that
E N D
Euler tours, postman tours and mixed graphs Samsung Telecommunications America, Inc. and The University of Texas at Dallas veerasam@utdallas.edu Jeyakesavan Veerasamy* * Joint work with Balaji Raghavachari
Approximation Algorithms • An algorithm for solving a minimization problem that • runs in polynomial time and outputs a feasible solution S • performance ratio = Cost(S) / Cost(Opt) • In practice, if problem is NP-hard (intractable), • we can apply exact algorithms (if time permits), or • apply heuristic algorithms and approximation algorithms, and select best solution obtained. • Critical part of approximation algorithm analysis is lower-bound analysis of optimal solution • Such lower bounds can be used in practice to speed up exact algorithms such as branch and bound, and evaluate performance of heuristic algorithms.
Euler Tour Problem Find a tour that traverses all edges exactly once. A Input Output A graph is Eulerian if and only if it is connected andthe degree of each vertex is even (Euler, 1736!) Even degree node
Non-Eulerian graph A B Odd degree node Walk starting at A got stuck at B Even degree node
Directed Euler Tour Problem Find a tour in a directed graph that traverses all edges exactly once. A A directed graph is Eulerian if and only if it is strongly connected and indegree = outdegree at each vertex Balanced node
Non-Eulerian Directed Graph A B Balanced node Walk starting at A got stuck at B Surplus node Deficit node
Chinese Postman Problem (CPP) Find shortest tour visiting all edges at least once. A Input Augmented Output Add a minimum-weight T-join which has odd degree at odd-degree nodes and even-degree at even-degree nodes Even-degree node Odd-degree node
Directed CPP Input Output Add a minimum-weight subgraph which has outdegree = indegree + surplus at surplus nodes indegree = outdegree + deficit at deficit nodes Balanced node Deficit node Surplus node
Directed CPP: Another example Input Output Balanced node Deficit node Surplus node
Mixed Postman Problem (MPP) Includes both undirected and directed edges Input Solution 1 Solution 2 NP-hard! Balanced node Unbalanced node
Applications: City Management Elm Main Commerce Houston Jackson Street cleaning, Mail delivery, Snow removal, Courier delivery route
Previous work • Edmonds, Johnson, 1973 • Frederickson, 1979: • Designed two approximation algorithms • Select the best of the two solutions computed • Worst-case performance ratio = 5/3 • Christofides, 1984 • Ralphs, 1993: Linear Programming formulation • Nobert, Picard, 1996: Applied LP-based solution to schedule snow removal in Montreal • Raghavachari, Veerasamy, 1998: • Improved Frederickson’s algorithm for MPP • Performance ratio = 3/2
Properties of Eulerian Graphs • Even-degree condition: degree of each node is even • Balanced set condition: For any cut (S, V \ S), the difference between number of directed edges crossing cut in each direction is at most the number of undirected edges crossing cut • Eulerian mixed graphs can be detected in polynomial time S V \ S Given a graph satisfying even-degree condition, Frederickson showed how to find minimum-cost augmentation to make it Eulerian.
Even-degree mixed graphs • Solve flow problem and obtain IN = OUT at every node • Consider undirected edges and duplicated edges only • Traverse cycles formed by these edges and correct parity Balanced node Unbalanced node
Frederickson’s Algorithm (Part 1) Solution S1 Input G H Evenparity Match Flow C(H) C(Opt) C(S1) C(Opt) + 2C(D) Balanced node Unbalanced node
Frederickson’s Algorithm (Part 2) Input G Solution S2 D Flow Double U C(Opt) C(D) + C(U) C(S2) C(D) + 2C(U) 2C(Opt) - C(D) Solution S = min(S1, S2) C(S) 5/3 C(Opt)
Remarks Flow Directed edges D Undirected edges U • Input G IN=OUT • Cost(Opt) C(D) + C(U) • Flow augmentation cost CIO(G) = C(D) + C(U) - C(G) • D may contain any number of copies of edges in G. • H is obtained from G by adding a T-join of odd-degree nodes, ignoring the directions. • If H-G contains only edges of D: C(S1) 2C(D) + C(U) C(S) (3/2) C(Opt)
Idea for Improvement • Modify computation of S1 as follows: • When H is computed, make cost of edges in D to be 0. • T-join prefers edges of D to U. • Problem: We may be forced to duplicate some edges of U. Components of D may have odd-number of odd-degree nodes
Improved lower bound Shrink each directed component to a single node, and compute T-join between odd degree components. X, subset of U, forms the T-join. Optimal solution also has to pay C(X) to satisfy even degree condition. If we can prove that adding X to G does not decrease Flow augmentation cost, then C(Opt) C(D) + C(U) + C(X)
Lower bound proof Input G New input H INOUT solution INOUT solution x Can CIO(H) < CIO(G)? No. In fact, adding any edge in U does not decrease INOUT augmentation cost. Alternating cycle
Our Mixed algorithm (part 2) Input G Solution S2 D Flow Double U C(Opt) C(D) + C(U) C(S2) C(D) + 2C(U) 2C(Opt) - C(D)
Our Mixed Algorithm (part 1) H Solution S1 Input G Evenparity Match Flow X C(S1) C(U) + C(X) + 2C(D) C(Opt) + C(D) Solution S = min(S1, S2) C(S) 3/2 C(Opt) Balanced node Unbalanced node
Performance of Algorithms C(S1) C(new S1) 2C(Opt) C(S2) C(Opt) Cost of solution C(Opt) C(D)
Concluding Remarks • Worst case performance ratio for our algorithm is 1.5 (Analysis is tight). • Windy Postman Problem: Asymmetric version of MPP C(U,V) C(V,U) V U • LP relaxation of WPP is half-integral - gives 2 approximation algorithm. • Recently we have improved ratio of WPP to 1.5 • Open: Improvements? Planar Graphs?
Further Research • Explore MPP with additional constraints: • duplicate only undirected edges • duplicate only directed edges • Explore shortest path problem in mixed graphs when negative costs are allowed. • Implement a few heuristic algorithms and analyze the performance.