Download presentation

Presentation is loading. Please wait.

Published byKoby Penton Modified about 1 year ago

1
Exact algorithms for the minimum latency problem Exact algorithms for the minimum latency problem 吳邦一 黃正男 詹富傑 樹德科大 資工系

2
Routing in a network P1 P2 Which is better, P1 or P2?

3
Routing in a network P1 P2 Total length Total delay P = =225 P = =138

4
Routing in a network System ’ s aspect System ’ s aspect –Minimize the total length –Traveling salesperson problem Customers ’ aspect Customers ’ aspect –Minimize the total delay –The minimum latency problem

5
Complexity and approximability Polynomial-time solvable Polynomial-time solvable –Path, unweighted tree, tree of diameter 3, tree with constant leaves NP-hard even for weighted tree NP-hard even for weighted tree Approximation ratios Approximation ratios –(STOC 94)144 → 21.5 → 10.8 → 3.59 (FOCS 03)

6
Our result Exact algorithms using a technique combining the advantages of both Dynamic Programming and Branch- and-Bound Exact algorithms using a technique combining the advantages of both Dynamic Programming and Branch- and-Bound Experimental results on random and real data Experimental results on random and real data

7
Dynamic programming Solution space: all permutations Solution space: all permutations –(n-1)! (except the starting node) Configuration (S,r) of a subtour P Configuration (S,r) of a subtour P –S: the visited node, i.e., V(P) –r: the last node of P Only one subtour for each configuration is needed, the best one but not the shortest one. Only one subtour for each configuration is needed, the best one but not the shortest one. –Only O(n2^n) configurations

8
Dynamic programming Configurations for k visited nodes Configurations for k+1 visited nodes

9
Branch-and-bound A tree searching algorithm A tree searching algorithm –A lower bound function for each subtour –A global upper bound for the optimal (a feasible solution) –A subtour with lower bound >= UB is useless subtour P extend P by one node All possible successive nodes

10
Dynamic programming with pruning Configurations for k visited nodes Configurations for k+1 visited nodes If lower bound >=UB, discard If lower bound

11
What we need A global UB A global UB –A greedy method A lower bound function A lower bound function –A series of lower bound functions B k (P) –Preprocessing time: O(n k+1 ) –For each subtour: O(kn) time Trade-off between quality and time Trade-off between quality and time A data structure to store the configurations A data structure to store the configurations

12
How to search a configuration Configurations for k visited nodes Configurations for k+1 visited nodes If lower bound >=UB, discard If lower bound

13
In a traditional DP In a traditional DP –Encoding each configuration into an integer –Using a BIG array –O(1) for searching but the whole array needs to be scanned. It ’ s just what we want to avoid An AVL tree is employed. An AVL tree is employed.

14
Experiments: random data

15
Experiments: real data TSPLIB Perform much better than on random data

16
Discussion A good modification for DP and B&B A good modification for DP and B&B Using a good data structure such as the AVL tree is very important. Using a good data structure such as the AVL tree is very important. For small j>i, DPP(j) is better than DPP(i) when n is sufficiently large. For small j>i, DPP(j) is better than DPP(i) when n is sufficiently large. Theoretically, we have more precise lower bound functions. But it suffers from a long computation time and therefore has a worse performance. Theoretically, we have more precise lower bound functions. But it suffers from a long computation time and therefore has a worse performance. In fact, we have tried several other lower bound functions. Some of them eliminate much more subtours than B1 but has a worse performance In fact, we have tried several other lower bound functions. Some of them eliminate much more subtours than B1 but has a worse performance

17
Thank you

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google