a polynomial-space exact algorithm for tsp in degree-7 graphs · a polynomial-space exact algorithm...

Post on 22-May-2020

10 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

A Polynomial-Space Exact Algorithmfor TSP in Degree-7 Graphs

Norhazwani Md Yunos, Aleksandar Shurbevski, Hiroshi Nagamochi

Graduate School of InformaticsKyoto University, Japan

AAAC 2016Taipei, Taiwan

14 - 16 May 2016

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 1 / 20

Traveling Salesman Problem

One of the most widely studied problems in combinatorial optimization.

A famous and important NP-hard optimization problem.

Input:An undirected edge-weighted graphG = (V,E).

Output:The minimum cost/length of a tour inG that passes all vertices of V exactlyonce; or

A message for the infeasibility of G.

5 2

3

6

2

1

4 3

2 2

G

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 2 / 20

Traveling Salesman Problem

One of the most widely studied problems in combinatorial optimization.

A famous and important NP-hard optimization problem.

Input:An undirected edge-weighted graphG = (V,E).

Output:The minimum cost/length of a tour inG that passes all vertices of V exactlyonce; or

A message for the infeasibility of G.

5 2

3

6

2

1

4 3

2 2

G

11

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 2 / 20

Traveling Salesman Problem

One of the most widely studied problems in combinatorial optimization.

A famous and important NP-hard optimization problem.

Input:An undirected edge-weighted graphG = (V,E).

Output:The minimum cost/length of a tour inG that passes all vertices of V exactlyonce; or

A message for the infeasibility of G.

5 2

3

6

2

1

4 3

2 2

G

2

1

21

1

infeasible

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 2 / 20

TSP in Degree-k Graphs

Input:

An undirected edge-weighted degree-k graph G = (V,E).

Degree-k graphs = graphs in which vertices have at most k incident edges.

Output:The minimum cost of a tour in G that passes all vertices of V exactlyonce; or

A message for the infeasibility of G.

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 3 / 20

Previous ResultsGraphs Time Space Method Authors (Year)

General 2n 2n DynamicProgramming Bellman (1960)

General 4nnlog n Poly. Divide andConquer Gurevich & Shelah (1987)

Degree-3 1.2312n Poly. BranchingAlgorithm Xiao & Nagamochi (2013)

Degree-4 1.692n Poly. BranchingAlgorithm Xiao & Nagamochi (2015)

Degree-5 2.4723n Poly. BranchingAlgorithm

Md Yunos, Shurbevski &Nagamochi (2015)

Degree-6 3.0335n Poly. BranchingAlgorithm

Md Yunos, Shurbevski &Nagamochi (2015)

Degree-k,k ≥ 7 3.5939n Poly. Branching

Algorithm This presentation (2016)

Degree-k,k ≥ 8 open Poly.

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 4 / 20

Forced TSP

Input:An undirected edge-weighted graphG = (V,E),

Set of forced edges F ⊆ E.

Output:

The minimum cost of a tour in (G,F)that passes all vertices of V exactlyonce, and all forced edges of F; or

A message for the infeasibility of(G,F).

5 2

3

6

2

1

4 3

2 2

G

: unforced edges

: forced edges

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 5 / 20

Forced TSP

Input:An undirected edge-weighted graphG = (V,E),

Set of forced edges F ⊆ E.

Output:

The minimum cost of a tour in (G,F)that passes all vertices of V exactlyonce, and all forced edges of F; or

A message for the infeasibility of(G,F).

5 2

3

6

2

1

4 3

2 2

G

: unforced edges

: forced edges

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 5 / 20

Design a polynomial-space branching algorithmReduction procedure.

Branching operations.

Time analysis: Measure-and-conquer methodA weight for each of the vertices.

Branching vector.

Branching factor.

The worst branching factor determines the running time.

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 6 / 20

Various Types of Vertices

: degree-3 vertex

: degree-4 vertex

: degree-5 vertex

: degree-6 vertex

: degree-7 vertex

: unforced edges : forced edges

G

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 7 / 20

Types of Vertices and their Weight, w

: unforced edges : forced edges w(v) = 0, otherwise

Forced

vertices:

w’3 ≤ w’4 ≤ w’5 ≤ w’6 ≤ w’7

f3 vertex f4 vertex f5 vertex f6 vertex f7 vertex

Unforced

vertices:

w3 ≤ w4 ≤ w5 ≤ w6 ≤ w7 u3 vertex u4 vertex u5 vertex u6 vertex u7 vertex

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 8 / 20

Measure-and-Conquer

Measure µ for a given instance I = (G,F) of forced TSP:

µ(I) =∑

v∈V(G)

(ω(v))

ω(v) =

w7 = 1 for a u7 vertexw′7 = 0.5081 for an f7 vertexw6 = 0.8675 for a u6 vertexw′6 = 0.4491 for an f6 vertexw5 = 0.7076 for a u5 vertexw′5 = 0.3780 for an f5 vertexw4 = 0.5037 for a u4 vertexw′4 = 0.2855 for an f4 vertexw3 = 0.2319 for a u3 vertexw′3 = 0.1298 for an f3 vertex

0 otherwise

u4

u4

u4 u3

u3

u3

f3

u5

u6

f7

µ(I) = w4 + w3 + w6 + w4 + w3 + w4 + w′7 + w5 + w3 + w′3= 4.4198

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 9 / 20

Reduction Procedure

Infeasibility conditions:

i)

ii)

or

Reduction Rules:

i)

ii)

: unforced edges : forced edges : deleted edges

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 10 / 20

Branching Operation

force(e) delete(e)

Ge

Instance I with size µ

G’

Instance I’

with size µ-a

G’’

Instance I’’

with size µ-b

: unforced edges : forced edges : deleted edges

(a, b) is a branching vector of the branching rules.This implies the linear recurrence: T(µ) ≤ T(µ− a) + T(µ− b).

T(µ) = O(cµ), where c is the branching factor of the branching vector (a, b)Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 11 / 20

Branching Operation

force(e) delete(e)

Ge

Instance I with size µ

G’

Instance I’

with size µ-a

G’’

Instance I’’

with size µ-b

Choose edge eand branch on

force(e) delete(e)

G’’G’

µ(I) = 4.4198

G

e

: unforced edges : forced edges : deleted edges

(a, b) is a branching vector of the branching rules.This implies the linear recurrence: T(µ) ≤ T(µ− a) + T(µ− b).

T(µ) = O(cµ), where c is the branching factor of the branching vector (a, b)Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 11 / 20

Branching Operation

force(e) delete(e)

Ge

Instance I with size µ

G’

Instance I’

with size µ-a

G’’

Instance I’’

with size µ-b

Choose edge eand branch on

force(e) delete(e)

G’’G’

µ(I) = 4.4198

G

e

: unforced edges : forced edges : deleted edges

(a, b) is a branching vector of the branching rules.This implies the linear recurrence: T(µ) ≤ T(µ− a) + T(µ− b).

T(µ) = O(cµ), where c is the branching factor of the branching vector (a, b)Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 11 / 20

Branching Operation

force(e) delete(e)

Ge

Instance I with size µ

G’

Instance I’

with size µ-a

G’’

Instance I’’

with size µ-b

Choose edge eand branch on

force(e) delete(e)

G’’G’

µ(I’) = 2.1225

µ(I) = 4.4198

G

e

: unforced edges : forced edges : deleted edges

(a, b) is a branching vector of the branching rules.This implies the linear recurrence: T(µ) ≤ T(µ− a) + T(µ− b).

T(µ) = O(cµ), where c is the branching factor of the branching vector (a, b)Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 11 / 20

Branching Operation

force(e) delete(e)

Ge

Instance I with size µ

G’

Instance I’

with size µ-a

G’’

Instance I’’

with size µ-b

Choose edge eand branch on

force(e) delete(e)

G’’G’

µ(I’) = 2.1225

µ(I) = 4.4198

G

e

: unforced edges : forced edges : deleted edges

(a, b) is a branching vector of the branching rules.This implies the linear recurrence: T(µ) ≤ T(µ− a) + T(µ− b).

T(µ) = O(cµ), where c is the branching factor of the branching vector (a, b)Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 11 / 20

Branching Operation

force(e) delete(e)

Ge

Instance I with size µ

G’

Instance I’

with size µ-a

G’’

Instance I’’

with size µ-b

Choose edge eand branch on

force(e) delete(e)

G’’G’

µ(I’) = 2.1225

µ(I) = 4.4198

G

e

: unforced edges : forced edges : deleted edges

(a, b) is a branching vector of the branching rules.This implies the linear recurrence: T(µ) ≤ T(µ− a) + T(µ− b).

T(µ) = O(cµ), where c is the branching factor of the branching vector (a, b)Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 11 / 20

Branching Operation

force(e) delete(e)

Ge

Instance I with size µ

G’

Instance I’

with size µ-a

G’’

Instance I’’

with size µ-b

Choose edge eand branch on

force(e) delete(e)

G’’

µ(I’’) = 3.6189

G’

µ(I’) = 2.1225

µ(I) = 4.4198

G

e

: unforced edges : forced edges : deleted edges

(a, b) is a branching vector of the branching rules.This implies the linear recurrence: T(µ) ≤ T(µ− a) + T(µ− b).

T(µ) = O(cµ), where c is the branching factor of the branching vector (a, b)Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 11 / 20

How to Choose an Edge to Branch On

Branching rules applied to an edge e = vt:

v

t

e

While there is a vertex of degree 7,

For the choice of a vertex v of degree 7:

Higher Priority Less Priorityv v

f7 vertex u7 vertex

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 12 / 20

How to Choose an Edge to Branch On

For the choice of a vertex t :

Higher Priority Less Priority

f3-vertex

v

t

u3-vertex

v

t

f4-vertex

v

t

u4-vertex

v

t

f5-vertex

v

t

u5-vertex

v

t

f6-vertex

v

t

u6-vertex

v

t

f7 vertex

v

t

u7 vertex

v

t

v

t1

t2 t3 t4

e

t5

t6

t7

v

t1

t2 t3 t4

e

t5

t6

There are 24 cases which make our branching rules.

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 13 / 20

Switching to the TSP in Degree-(k − 1) Graphs

G’’G’

: degree-3 vertex

: degree-4 vertex

: degree-5 vertex

: degree-6 vertex

When the graph has no more degree-k vertices, switch and use analgorithm of the TSP in degree-(k − 1) graphs.

Here, switch and use the O∗(3.0335n)-time algorithm for the TSP indegree-6 graphs by Norhazwani et al. (2015).

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 14 / 20

Analysis

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 15 / 20

Analysis (Example for c-3)

force(vt1) delete(vt1)

: unforced edges

: forced edges

: newly deleted edges : newly forced edges

t7 t8

v

t1

t2 t3

e

t4

t5

t6

t7 t8

v

t1

t2 t3

e

t4

t5

t6

t7 t8

v

t1

t2 t3

e

t4

t5

t6

Branching vector:(w′

7 + w3 − w′3 + 5m3 , w′

7 − w′6 + w3 + 2m2)

wherem2 = min{w′

3, (w3 − w′3), w′

4, (w4 − w′4), w′

5, (w5 − w′5), w′

6, (w6 − w′6), w′

7, (w7 − w′7)}.

m3 = min{w3, (w′4 − w′

3), (w4 − w3), (w′5 − w′

4), (w5 − w4), (w′6 − w′

5), (w6 − w5), (w′7 − w′

6), (w7 − w6)}.

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 16 / 20

Analysis

When there exist degree-7 vertices:Each of the 24 branching vectors has a branching factor ≤ 3.593854.

For switching1 to TSP in degree-6 graphs, the running time bound forTSP in degree-6 graphs is:

T(µ) ≤ O(3.0335z)

where

z = maxv∈V(G)

ω̂(v)ω(v)

and ω̂ = weight function for TSP6.

1Xiao, M., Nagamochi, H.: Exact Algorithms for Maximum Independent Set. In:Algorithms and Computation. Lecture Notes in Computer Science, vol. 8283, pp. 328–338(2013)

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 17 / 20

Branching Factor

Quasiconvex program introduced by Eppstein2 to find the weights ω(v)which will give us the best branching vector subject to the constraints,and therefore deriving a branching factor.The constraints in our quasiconvex program:

All the branching vectorsSwitching equation

2Eppstein, D.: Quasiconvex Analysis of Backtracking Algorithms. In: Proceedings of the15th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2004), ACM Press, pp.781–790 (2004)

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 18 / 20

Conclusion and Future Work

Result:

The TSP in an n-vertex graph G with maximum degree 7 can be solvedin O∗(3.5939n) time and polynomial space.

Future Work:It is interesting to find whether the time bound of our algorithm can befurther improved.

Modified analysis technique.Re-examination of the branching rules.

Work on TSP in higher degree graphs.

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 19 / 20

Thank you

Norhazwani et al. A Polynomial-Space Algorithm for TSP7 AAAC 2016 20 / 20

top related