© B.Raghavachari & J.Veerasamy, UTD 1 Euler tours, postman tours and mixed graphs Jeyakesavan...
-
Upload
cornelius-johnson -
Category
Documents
-
view
216 -
download
0
Transcript of © B.Raghavachari & J.Veerasamy, UTD 1 Euler tours, postman tours and mixed graphs Jeyakesavan...
1 © B.Raghavachari & J.Veerasamy, UTD
Euler tours, postman tours and mixed graphs
Jeyakesavan Veerasamy*
* Joint work with Balaji Raghavachari
Samsung Telecommunications America, Inc. and
The University of Texas at Dallas
2 © B.Raghavachari & J.Veerasamy, UTD
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.
3 © B.Raghavachari & J.Veerasamy, UTD
Euler Tour Problem
Find a tour that traverses all edges exactly once.
Even degree node
A
Input Output
A graph is Eulerian if and only if it is connected andthe degree of each vertex is even (Euler, 1736!)
4 © B.Raghavachari & J.Veerasamy, UTD
Non-Eulerian graph
A
B
Even degree node
Odd degree node
Walk starting at A got stuck at B
5 © B.Raghavachari & J.Veerasamy, UTD
Directed Euler Tour Problem
A
Balanced node
Find a tour in a directed graph that traverses all edges exactly once.
A directed graph is Eulerian if and only if it is strongly connected and indegree = outdegree at each vertex
6 © B.Raghavachari & J.Veerasamy, UTD
Non-Eulerian Directed Graph
A B
Balanced node
Deficit node
Surplus nodeWalk starting at A got stuck at B
7 © B.Raghavachari & J.Veerasamy, UTD
Chinese Postman Problem (CPP)
Find shortest tour visiting all edges at least once.
Even-degree node
Odd-degree node
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
8 © B.Raghavachari & J.Veerasamy, UTD
Directed CPP
Balanced node
Deficit node
Surplus node
Input Output
Add a minimum-weight subgraph which has outdegree = indegree + surplus at surplus nodesindegree = outdegree + deficit at deficit nodes
9 © B.Raghavachari & J.Veerasamy, UTD
Directed CPP: Another example
Balanced node
Deficit node
Surplus node
Output
Input
10
© B.Raghavachari & J.Veerasamy, UTD
Mixed Postman Problem (MPP)
Balanced node
Unbalanced node
Solution 1 Solution 2
Includes both undirected and directed edges
Input
NP-hard!
11
© B.Raghavachari & J.Veerasamy, UTD
Applications: City Management
Elm
Commerce
Main
JacksonHouston
Street cleaning, Mail delivery, Snow removal, Courier delivery route
12
© B.Raghavachari & J.Veerasamy, UTD
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
13
© B.Raghavachari & J.Veerasamy, UTD
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.
14
© B.Raghavachari & J.Veerasamy, UTD
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
15
© B.Raghavachari & J.Veerasamy, UTD
Input G
Frederickson’s Algorithm (Part 1)
Match Flow
H
Evenparity
Solution S1
C(H) C(Opt)
C(S1) C(Opt) + 2C(D) Balanced node
Unbalanced node
16
© B.Raghavachari & J.Veerasamy, UTD
Frederickson’s Algorithm (Part 2)
Input G
Flow Double
C(Opt) C(D) + C(U)
C(S2) C(D) + 2C(U) 2C(Opt) - C(D)
Solution S2
Solution S = min(S1, S2)
C(S) 5/3 C(Opt)
D
U
17
© B.Raghavachari & J.Veerasamy, UTD
Remarks
• Input GFlow
IN=OUT
Directed edges DUndirected edges U
• Cost(Opt) C(D) + C(U)
• 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)
• Flow augmentation cost CIO(G) = C(D) + C(U) - C(G)
18
© B.Raghavachari & J.Veerasamy, UTD
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
19
© B.Raghavachari & J.Veerasamy, UTD
Improved lower bound
Shrink each directed componentto 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, thenC(Opt) C(D) + C(U) + C(X)
20
© B.Raghavachari & J.Veerasamy, UTD
Lower bound proof
Input G New input HINOUT solution INOUT solution
Can CIO(H) < CIO(G)?
No. In fact, adding any edge in U does not decrease INOUT augmentation cost.
Alternating cycle
x
21
© B.Raghavachari & J.Veerasamy, UTD
Our Mixed algorithm (part 2)
Input G
Flow Double
C(Opt) C(D) + C(U)
C(S2) C(D) + 2C(U) 2C(Opt) - C(D)
Solution S2
D
U
22
© B.Raghavachari & J.Veerasamy, UTD
Input G
Our Mixed Algorithm (part 1)
Match Flow
H
Evenparity
Solution S1
C(S1) C(U) + C(X) + 2C(D)
C(Opt) + C(D) Balanced node
Unbalanced node
Solution S = min(S1, S2)
C(S) 3/2 C(Opt)
X
23
© B.Raghavachari & J.Veerasamy, UTD
Performance of Algorithms
C(D)
Cost of solution
C(Opt)
2C(Opt) C(new S1)
C(S2)
C(S1)
C(Opt)
24
© B.Raghavachari & J.Veerasamy, UTD
Concluding Remarks
• Worst case performance ratio for our algorithm is 1.5 (Analysis is tight).
• Windy Postman Problem: Asymmetric version of MPP
• 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?
U VC(U,V) C(V,U)
25
© B.Raghavachari & J.Veerasamy, UTD
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.