The Traveling Salesman Problem Under Squared Euclidean Distances
Mark de Berg Fred van Nijnatten Gerhard Woeginger TU Eindhoven Ren´ e Sitters Vrije Universiteit Amsterdam Alexander Wolff Universit¨ at W¨ urzburg
The Traveling Salesman Problem Under Squared Euclidean Distances - - PowerPoint PPT Presentation
The Traveling Salesman Problem Under Squared Euclidean Distances Mark de Berg Fred van Nijnatten Gerhard Woeginger TU Eindhoven Ren e Sitters Vrije Universiteit Amsterdam Alexander Wolff Universit at W urzburg Whats the
The Traveling Salesman Problem Under Squared Euclidean Distances
Mark de Berg Fred van Nijnatten Gerhard Woeginger TU Eindhoven Ren´ e Sitters Vrije Universiteit Amsterdam Alexander Wolff Universit¨ at W¨ urzburg
What’s the Problem?
Notation. For points p = (p1, . . . , pd), q = (q1, . . . , qd) ∈ Rd, denote by |pq| = d
i=1(pi − qi)2 their
Euclidean distance. p q |pq|
What’s the Problem?
Notation. For points p = (p1, . . . , pd), q = (q1, . . . , qd) ∈ Rd, denote by |pq| = d
i=1(pi − qi)2 their
Euclidean distance. Given a finite set S ⊂ Rd, find a tour π through all points in S such that π has minimum length among all tours through S w.r.t. | · | . Problem. Euclidean TSP p q |pq|
What’s the Problem?
Notation. For points p = (p1, . . . , pd), q = (q1, . . . , qd) ∈ Rd, denote by |pq| = d
i=1(pi − qi)2 their
Euclidean distance. Given a finite set S ⊂ Rd, find a tour π through all points in S such that π has minimum length among all tours through S w.r.t. | · | . Problem. Euclidean TSP p q |pq|
What’s the Problem?
Notation. For points p = (p1, . . . , pd), q = (q1, . . . , qd) ∈ Rd, denote by |pq| = d
i=1(pi − qi)2 their
Euclidean distance. Given a finite set S ⊂ Rd, find a tour π through all points in S such that π has minimum length among all tours through S w.r.t. | · | . Problem. Euclidean TSP p q |pq|
2 2 2
squared
What’s the Problem?
Notation. For points p = (p1, . . . , pd), q = (q1, . . . , qd) ∈ Rd, denote by |pq| = d
i=1(pi − qi)2 their
Euclidean distance. Given a finite set S ⊂ Rd, find a tour π through all points in S such that π has minimum length among all tours through S w.r.t. | · | . Problem. Euclidean TSP p q |pq|
2 2 2
squared (d, 2)
2
What’s the Problem?
Notation. For points p = (p1, . . . , pd), q = (q1, . . . , qd) ∈ Rd, denote by |pq| = d
i=1(pi − qi)2 their
Euclidean distance. Given a finite set S ⊂ Rd, find a tour π through all points in S such that π has minimum length among all tours through S w.r.t. | · | . Problem. Euclidean TSP p q |pq|
2 2 2
squared (d, 2)
2
What’s the Problem?
Notation. For points p = (p1, . . . , pd), q = (q1, . . . , qd) ∈ Rd, denote by |pq| = d
i=1(pi − qi)2 their
Euclidean distance. Given a finite set S ⊂ Rd, find a tour π through all points in S such that π has minimum length among all tours through S w.r.t. | · | . Problem. Euclidean TSP p q |pq|
α α α
power-α (d, α)
α
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
There is a 3/2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
Euclidean TSP is NP-hard in any dimension d ≥ 1
There is a 3/2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
Euclidean TSP is NP-hard in any dimension d ≥ 1
There is a 3/2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
Euclidean TSP is NP-hard in any dimension d ≥ 1
Euclidean TSP admits a PTAS for any fixed d ≥ 1.
There is a 3/2-approximation for metric TSP.
The Metric/Euclidean Case (α = 1)
The MST yields a 2-approximation for metric TSP.
Euclidean TSP is NP-hard in any dimension d ≥ 1
Euclidean TSP admits a PTAS for any fixed d ≥ 1.
There is a 3/2-approximation for metric TSP.
Motivation
Motivation
Motivation
for some α ∈ [2, 6] (“distance-power gradient”) d
Motivation
for some α ∈ [2, 6] (“distance-power gradient”) d
Motivation
for some α ∈ [2, 6] (“distance-power gradient”) d
Motivation
for some α ∈ [2, 6] (“distance-power gradient”) d
Motivation
for some α ∈ [2, 6] (“distance-power gradient”) d
Motivation
for some α ∈ [2, 6] (“distance-power gradient”) d
compute min-energy range assignment ρ s.t. Gρ . . .
Motivation
for some α ∈ [2, 6] (“distance-power gradient”) d
compute min-energy range assignment ρ s.t. Gρ . . . – is strongly connected – contains broadcast tree – contains tour [Funke...’08]
Motivation
[Caragiannis...’08]
γ
Motivation
[Caragiannis...’08]
γ γ
Motivation
[Caragiannis...’08]
γ γ Gρ strongly connected
Motivation
[Caragiannis...’08]
γ γ Gρ strongly connected γ → 0
Motivation
[Caragiannis...’08]
γ γ Gρ strongly connected γ → 0 Gρ tour
Motivation
[Caragiannis...’08]
γ γ Gρ strongly connected γ → 0 Gρ tour
Are things becoming simpler or harder?
Motivation
[Caragiannis...’08]
γ γ Gρ strongly connected γ → 0 Gρ tour
Are things becoming simpler or harder? Is Arora’s PTAS for Euclidean TSP a “lucky coincidence”?
Motivation
[Caragiannis...’08]
γ γ Gρ strongly connected γ → 0 Gρ tour
Are things becoming simpler or harder? Is Arora’s PTAS for Euclidean TSP a “lucky coincidence”? If it is, how well can we approximate, say, TSP(2, 2)?
Previous Work
Definition. dist(·, ·) fulfills the τ-relaxed triangle inequality if any three points p, q, r satisfy dist(p, r) ≤ τ · (dist(p, q) + dist(q, r)). p q r
Previous Work
Lemma. | · | fulfills the
Definition. dist(·, ·) fulfills the τ-relaxed triangle inequality if any three points p, q, r satisfy dist(p, r) ≤ τ · (dist(p, q) + dist(q, r)). [Funke...’08] p q r
2
2
Previous Work
Lemma. | · | fulfills the
Definition. dist(·, ·) fulfills the τ-relaxed triangle inequality if any three points p, q, r satisfy dist(p, r) ≤ τ · (dist(p, q) + dist(q, r)). [Funke...’08] For α ≥ 1, p q r
α
2α−1
Previous Work
Lemma. | · | fulfills the
Definition. dist(·, ·) fulfills the τ-relaxed triangle inequality if any three points p, q, r satisfy dist(p, r) ≤ τ · (dist(p, q) + dist(q, r)). [Funke...’08] For α ≥ 1, p q r
α
2α−1 Good news. Can apply algorithms for ∆τ-TSP to TSP( · , α)!
Previous Work
Lemma. | · | fulfills the
Definition. dist(·, ·) fulfills the τ-relaxed triangle inequality if any three points p, q, r satisfy dist(p, r) ≤ τ · (dist(p, q) + dist(q, r)). [Funke...’08] For α ≥ 1, p q r
α
2α−1 Good news. Can apply algorithms for ∆τ-TSP to TSP( · , α)! ∆τ TSP( · , α) τ 2 + τ 4α−1 + 2α−1 [Andreae’01] 4τ 2α+1 [BenderChekuri’00] — 3 · 2α−1 [Funke...’08]
Previous Work
Lemma. | · | fulfills the
Definition. dist(·, ·) fulfills the τ-relaxed triangle inequality if any three points p, q, r satisfy dist(p, r) ≤ τ · (dist(p, q) + dist(q, r)). [Funke...’08] For α ≥ 1, p q r
α
2α−1 Good news. Can apply algorithms for ∆τ-TSP to TSP( · , α)! ∆τ TSP( · , α) τ 2 + τ 4α−1 + 2α−1 [Andreae’01] 4τ 2α+1 [BenderChekuri’00] — 3 · 2α−1 [Funke...’08]
Our Results
5 10 15 20 25 30 2 2.2 2.4 2.6 2.8 3 3.2 3.4 2α+1
α
[BenderChekuri’00] 4α−1 + 2α−1 [Andreae’01] 2 · 3α−1 [Funke...’08]
≈ 2.71
Our Results
5 10 15 20 25 30 2 2.2 2.4 2.6 2.8 3 3.2 3.4 2α+1
α
[BenderChekuri’00] 4α−1 + 2α−1 [Andreae’01] 2 · 3α−1 [Funke...’08]
≈ 2.71
[AndreaeBandelt’95] T3-algorithm
Our Results
5 10 15 20 25 30 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3α−1 + √ 6
α/3
2α+1
α
[BenderChekuri’00] 4α−1 + 2α−1 [Andreae’01] 2 · 3α−1 [Funke...’08]
≈ 2.71 ≈ 3.41
[AndreaeBandelt’95] T3-algorithm geometric T3-algorithm
Our Results
5 10 15 20 25 30 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3α−1 + √ 6
α/3
2α+1
α
[BenderChekuri’00] 4α−1 + 2α−1 [Andreae’01] 2 · 3α−1 [Funke...’08]
≈ 2.71 ≈ 3.41
[AndreaeBandelt’95] T3-algorithm geometric T3-algorithm in R2 in any metric space
Our Results
5 10 15 20 25 30 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3α−1 + √ 6
α/3
2α+1
6α+3α+2α−1 3·2α−1
α
[BenderChekuri’00] lower bound for MST-based approx. 4α−1 + 2α−1 [Andreae’01] 2 · 3α−1 [Funke...’08]
≈ 2.71 ≈ 3.41
[AndreaeBandelt’95] T3-algorithm geometric T3-algorithm in R2 in any metric space
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 e
[Sekanina’60, AndreaeBandelt’95]
T
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 e
[Sekanina’60, AndreaeBandelt’95]
T
Take MST of given point set!
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e
[Sekanina’60, AndreaeBandelt’95]
T
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2 3-shortcut
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2 3-shortcut
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2 3-shortcut
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2 3-shortcut (2- or)
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2 3-shortcut uses edges e, e1, and e2 (2- or)
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2 3-shortcut uses edges e, e1, and e2 Observation. Every edge is used at most ...? (2- or)
The T3-Algorithm
CycleInCube(T, e = u1u2) for i ← 1 to 2 do Ti ← component of T − e that contains ui if |Ti| = 1 then Πi ← ∅; wi ← ui else pick an edge ei = uiwi incident to ui in Ti if |Ti| = 2 then Πi ← ei else Πi ← CycleInCube(Ti, ei) − ei return Π1 + e + Π2 + w1w2 u1 u2 T1 T2 e e1 e2
[Sekanina’60, AndreaeBandelt’95]
T
w1 w2 Π1 Π2 3-shortcut uses edges e, e1, and e2 Observation. Every edge is used at most twice. (2- or)
Result #1
Observation. Every edge is used at most twice.
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α .
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α).
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e add up!
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e add up! 3α−1 |MST|α
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e add up! 2· 3α−1 |MST|α
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e add up! ⇒ |T3-tour|α ≤ 2· 3α−1 |MST|α
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e ≤ 2 · 3α−1·OPT add up! ⇒ |T3-tour|α ≤ 2· 3α−1 |MST|α
Result #1
Observation. Every edge is used at most twice. Lemma. Let e be a 3-shortcut using a, b, c. Let α ≥ 1. Then |e|α ≤ 3α−1 |a|α + |b|α + |c|α . Corollary. For α ≥ 2, the T3-algorithm yields a (2 · 3α−1)- approximation for TSP( · , α). Proof. Every edge c of the MST (w.r.t. |·|α) contributes at most twice at most 3α−1|c|α to the T3-tour. c e′ e ≤ 2 · 3α−1·OPT add up!
⇒ |T3-tour|α ≤ 2· 3α−1 |MST|α
Result #2
Corollary. The T3-algorithm yields a (2·3α−1)-approximation for TSP( · , α) if α ≥ 2.
Result #2
Theorem. For α ≥ 2, the geometric T3-algorithm yields a
√ 6
α/3
Corollary. The T3-algorithm yields a (2·3α−1)-approximation for TSP( · , α) if α ≥ 2.
Result #2
Theorem. For α ≥ 2, the geometric T3-algorithm yields a
√ 6
α/3
Corollary. The T3-algorithm yields a (2·3α−1)-approximation for TSP( · , α) if α ≥ 2. 5 10 15 20 25 30 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3α−1 + √ 6
α/3
α
2 · 3α−1
Result #2
Theorem. For α ≥ 2, the geometric T3-algorithm yields a
√ 6
α/3
Corollary. The T3-algorithm yields a (2·3α−1)-approximation for TSP( · , α) if α ≥ 2. GeometricT3(tree T, e = u1u2 of T) for i ← 1 to 2 do Ti ← component of T − e that contains ui ... pick an edge ei = uiwi incident to ui in Ti ... Πi ← GeometricT3(Ti, ei) − ei return Π1 + e + Π2 + w1w2
Result #2
Theorem. For α ≥ 2, the geometric T3-algorithm yields a
√ 6
α/3
Corollary. The T3-algorithm yields a (2·3α−1)-approximation for TSP( · , α) if α ≥ 2. GeometricT3(tree T, e = u1u2 of T) for i ← 1 to 2 do Ti ← component of T − e that contains ui ... pick an edge ei = uiwi incident to ui in Ti ... Πi ← GeometricT3(Ti, ei) − ei return Π1 + e + Π2 + w1w2 MST w.r.t. | · |α
Result #2
Theorem. For α ≥ 2, the geometric T3-algorithm yields a
√ 6
α/3
Corollary. The T3-algorithm yields a (2·3α−1)-approximation for TSP( · , α) if α ≥ 2. GeometricT3(tree T, e = u1u2 of T) for i ← 1 to 2 do Ti ← component of T − e that contains ui ... pick an edge ei = uiwi incident to ui in Ti ... Πi ← GeometricT3(Ti, ei) − ei return Π1 + e + Π2 + w1w2 s.t. the angle ∠eei is min!
Result #2
Theorem. For α ≥ 2, the geometric T3-algorithm yields a
√ 6
α/3
Corollary. The T3-algorithm yields a (2·3α−1)-approximation for TSP( · , α) if α ≥ 2. GeometricT3(tree T, e = u1u2 of T) for i ← 1 to 2 do Ti ← component of T − e that contains ui ... pick an edge ei = uiwi incident to ui in Ti ... Πi ← GeometricT3(Ti, ei) − ei return Π1 + e + Π2 + w1w2 s.t. the angle ∠eei is min!
u2 e e1 e2 w1 w2 γ1 γ2 MST w.r.t. | · |α
Main Insight
Why can we bound γ1 (and γ2) from above?
Main Insight
Why can we bound γ1 (and γ2) from above?
u1 e γ1
Main Insight
Why can we bound γ1 (and γ2) from above?
But then e is used by at most one 3-shortcut and maybe a 2-shortcut u1 e γ1
Main Insight
Why can we bound γ1 (and γ2) from above?
But then e is used by at most one 3-shortcut and maybe a 2-shortcut—but those are cheap. u1 e γ1
Main Insight
Why can we bound γ1 (and γ2) from above?
But then e is used by at most one 3-shortcut and maybe a 2-shortcut—but those are cheap.
edges incident to the same vertex make angles ≥ 60◦. u1 e γ1
Main Insight
Why can we bound γ1 (and γ2) from above?
But then e is used by at most one 3-shortcut and maybe a 2-shortcut—but those are cheap.
edges incident to the same vertex make angles ≥ 60◦. u1 e u1 e
≥ 60◦
γ1
Main Insight
Why can we bound γ1 (and γ2) from above?
But then e is used by at most one 3-shortcut and maybe a 2-shortcut—but those are cheap.
edges incident to the same vertex make angles ≥ 60◦. u1 e u1 e
≥ 60◦ γ1 ≤ 150◦
γ1
Main Insight
Why can we bound γ1 (and γ2) from above?
But then e is used by at most one 3-shortcut and maybe a 2-shortcut—but those are cheap.
edges incident to the same vertex make angles ≥ 60◦. Thus, there is an edge e1 incident to u1 with ∠ee1 ≤ 150◦. u1 e u1 e
≥ 60◦ γ1 ≤ 150◦
γ1
Conclusions
Conclusions
We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
Conclusions
We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
Conclusions
TSP(d, α) is APX-hard for any d ≥ 3 and α > 1! This is in sharp contrast with Euclidean TSP. We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
Conclusions
TSP(d, α) is APX-hard for any d ≥ 3 and α > 1! This is in sharp contrast with Euclidean TSP. We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
Conclusions
TSP(d, α) is APX-hard for any d ≥ 3 and α > 1! This is in sharp contrast with Euclidean TSP. We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
– Rev-TSP(d, α) is APX-hard for any d ≥ 3 and α > 1. – Rev-TSP(2, α) has a PTAS for any α ≥ 2. – Rev-TSP( · , α) has a quasi-PTAS for any 0 < α < 1.
Conclusions
TSP(d, α) is APX-hard for any d ≥ 3 and α > 1! This is in sharp contrast with Euclidean TSP. We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
– Rev-TSP(d, α) is APX-hard for any d ≥ 3 and α > 1. – What about Rev-TSP(2, α) with 1 < α < 2? – Rev-TSP(2, α) has a PTAS for any α ≥ 2. – Rev-TSP( · , α) has a quasi-PTAS for any 0 < α < 1.
Conclusions
TSP(d, α) is APX-hard for any d ≥ 3 and α > 1! This is in sharp contrast with Euclidean TSP. We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
– Rev-TSP(d, α) is APX-hard for any d ≥ 3 and α > 1. – What about Rev-TSP(2, α) with 1 < α < 2? – Rev-TSP(2, α) has a PTAS for any α ≥ 2. – Rev-TSP( · , α) has a quasi-PTAS for any 0 < α < 1. (At least as hard as TSP in weighted planar graphs!)
Conclusions
TSP(d, α) is APX-hard for any d ≥ 3 and α > 1! This is in sharp contrast with Euclidean TSP. We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
– Rev-TSP(d, α) is APX-hard for any d ≥ 3 and α > 1. – What about Rev-TSP(2, α) with 1 < α < 2? – Rev-TSP(2, α) has a PTAS for any α ≥ 2. – Rev-TSP( · , α) has a quasi-PTAS for any 0 < α < 1. (At least as hard as TSP in weighted planar graphs!)
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1.
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1. Proof sketch. Reduction from {1, 2}-TSP, which is APX-hard.
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1. v1 v2 v3 v4
e1 e2 e3 e4 e5 e6
Proof sketch. Reduction from {1, 2}-TSP, which is APX-hard. weight 2 weight 1
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1. v1 v2 v3 v4
e1 e2 e3 e4 e5 e6
Proof sketch. Reduction from {1, 2}-TSP, which is APX-hard. weight 2 weight 1
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1. v1 v2 v3 v4 v1 v2 v3 v4
n n n n2 nm 2n e1 e2 e3 e4 e5 e6 e1 e2 e3 e4 e5 e6
Proof sketch. Reduction from {1, 2}-TSP, which is APX-hard. weight 2 weight 1
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1. v1 v2 v3 v4 v1 v2 v3 v4
n n n n2 nm 2n e1 e2 e3 e4 e5 e6 e1 e2 e3 e4 e5 e6
Proof sketch. Reduction from {1, 2}-TSP, which is APX-hard. weight 2 weight 1
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1. v1 v2 v3 v4 v1 v2 v3 v4
n n n n2 nm 2n e1 e2 e3 e4 e5 e6 e1 e2 e3 e4 e5 e6
Proof sketch. Reduction from {1, 2}-TSP, which is APX-hard. weight 2 weight 1
Result #3
Theorem. TSP(d, α) and Rev-TSP(d, α) are APX-hard for any d ≥ 3 and any α > 1. v1 v2 v3 v4 v1 v2 v3 v4
n n n n2 nm 2n e1 e2 e3 e4 e5 e6 e1 e2 e3 e4 e5 e6
Proof sketch. Reduction from {1, 2}-TSP, which is APX-hard. weight 2 weight 1
Conclusion (once more :-)
TSP(d, α) is APX-hard for any d ≥ 3 and α > 1! This is in sharp contrast with Euclidean TSP. We have improved approx. of TSP(2,2) from factor 6 to 5. There is a lower bound of 4 4
11 for MST-based methods.
– Rev-TSP(d, α) is APX-hard for any d ≥ 3 and α > 1. – What about Rev-TSP(2, α) with 1 < α < 2? – Rev-TSP(2, α) has a PTAS for any α ≥ 2. – Rev-TSP( · , α) has a quasi-PTAS for any 0 < α < 1. (At least as hard as TSP in weighted planar graphs!)