varianten des travelling salesman problem (tsp)ls11- · outline 3 / 18 ravellingt salesman problem...

29

Upload: phungtu

Post on 15-Aug-2019

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Varianten des Travelling Salesman Problem (TSP)

Lars Schmidt und Dominik Wol�

11.01.2010

Page 2: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Travelling Salesman Problem (TSP)

TSP als ILP

Asymmetrische Travelling Salesman Problem (ATSP)

ATSP als ILP

multiple Travelling Salesman Problem (mTSP)

mTSP als ILP

Prize Collecting Travelling Salesman Problem (PCTSP)

PCTSP als ILP

Page 3: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Outline 3 / 18

Travelling Salesman Problem (TSP)

TSP als ILP

Asymmetrische Travelling Salesman Problem (ATSP)

ATSP als ILP

multiple Travelling Salesman Problem (mTSP)

mTSP als ILP

Prize Collecting Travelling Salesman Problem (PCTSP)

PCTSP als ILP

Page 4: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Wiederholung TSP als Integer Lineares Programm 4 / 18

Was ist das Travelling Salesman Problem?Gegeben: n Städte und die Distanzen zwischen diesen

Gesucht: Kürzeste Tour in der jede Stadt genau einmal besucht wird

Darstellung als GraphenproblemGegeben: Ein Vollständiger Graph G = (V ,E ) mit w : E → R+

Gesucht: Hamiltonkreis C ⊆ E mit min∑

e∈E w(e)

Page 5: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Wiederholung TSP als Integer Lineares Programm 4 / 18

Was ist das Travelling Salesman Problem?Gegeben: n Städte und die Distanzen zwischen diesen

Gesucht: Kürzeste Tour in der jede Stadt genau einmal besucht wird

Darstellung als GraphenproblemGegeben: Ein Vollständiger Graph G = (V ,E ) mit w : E → R+

Gesucht: Hamiltonkreis C ⊆ E mit min∑

e∈E w(e)

Page 6: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Wiederholung TSP als Integer Lineares Programm 5 / 18

Nun als Integer Lineares Programm (ILP):

min wT x =∑

e∈E we · xes.t. x(δ(v)) = 2 ∀v ∈ V (Gradungleichung)

x(δ(W )) ≥ 2 ∀∅ 6= W ⊂ V (Subtour Ungleichung)

x ∈ {0, 1}|E |

Verwendete NotationenMit F ⊆ E und W ⊆ V :

I δ(v) := {{v , u} ∈ E} = zu v inzidente Kanten

I δ(W ) := {{v , u} ∈ E |v ∈W , u /∈W } = Kanten die W

verlassen

I x(F ) :=∑

e∈F xe = Anzahl der verwendeten Kanten aus F

Page 7: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Wiederholung TSP als Integer Lineares Programm 5 / 18

Nun als Integer Lineares Programm (ILP):

min wT x =∑

e∈E we · xes.t. x(δ(v)) = 2 ∀v ∈ V (Gradungleichung)

x(δ(W )) ≥ 2 ∀∅ 6= W ⊂ V (Subtour Ungleichung)

x ∈ {0, 1}|E |

Verwendete NotationenMit F ⊆ E und W ⊆ V :

I δ(v) := {{v , u} ∈ E} = zu v inzidente Kanten

I δ(W ) := {{v , u} ∈ E |v ∈W , u /∈W } = Kanten die W

verlassen

I x(F ) :=∑

e∈F xe = Anzahl der verwendeten Kanten aus F

Page 8: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Outline 6 / 18

Travelling Salesman Problem (TSP)

TSP als ILP

Asymmetrische Travelling Salesman Problem (ATSP)

ATSP als ILP

multiple Travelling Salesman Problem (mTSP)

mTSP als ILP

Prize Collecting Travelling Salesman Problem (PCTSP)

PCTSP als ILP

Page 9: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Das ATSP 7 / 18

Was ist das asymmetrische Travelling Salesman Problem?

Gegeben: n Städte und Distanzen zwischen Paaren von Städten.

Allerdings kann die Distanz von Stadt A zu Stadt B

ungleich der Distanz von Stadt B zu Stadt A sein.

Somit sind die Distanzen asymmetrisch.

Gesucht: Kürzeste Tour in der jede Stadt genau einmal besucht

wird

Page 10: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

ATSP als ILP 8 / 18

Da nun Distanzen asymmetrisch sind, wird wi ,j , als

Kantengewichtsfkt., und xi ,j als Kantenfkt. eingeführt mit i , j ∈ V .

Neue ZielfunktionSomit ergibt sich die Zielfunktion zu: min

∑i ,j∈V wi ,j · xi ,j

Neue Nebenbedingungen für alte GradungleichungFür jeden Stadtknoten muss der Eingangsgrad Eins sein:∑

i∈V xi ,j = 1 für alle j ∈ V

Für jeden Stadtknoten muss der Ausgangsgrad Eins sein:∑j∈V xi ,j = 1 für alle i ∈ V

Neue Nebenbedingung für alte Subtour UngleichungEs dürfen keine Kreise existieren mit weniger als |V | Knoten:∑

i∈W∑

j∈W xi ,j ≤ |W | − 1 für alle ∅ 6= W ⊂ V

Page 11: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

ATSP als ILP 8 / 18

Da nun Distanzen asymmetrisch sind, wird wi ,j , als

Kantengewichtsfkt., und xi ,j als Kantenfkt. eingeführt mit i , j ∈ V .

Neue ZielfunktionSomit ergibt sich die Zielfunktion zu: min

∑i ,j∈V wi ,j · xi ,j

Neue Nebenbedingungen für alte GradungleichungFür jeden Stadtknoten muss der Eingangsgrad Eins sein:∑

i∈V xi ,j = 1 für alle j ∈ V

Für jeden Stadtknoten muss der Ausgangsgrad Eins sein:∑j∈V xi ,j = 1 für alle i ∈ V

Neue Nebenbedingung für alte Subtour UngleichungEs dürfen keine Kreise existieren mit weniger als |V | Knoten:∑

i∈W∑

j∈W xi ,j ≤ |W | − 1 für alle ∅ 6= W ⊂ V

Page 12: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

ATSP als ILP 8 / 18

Da nun Distanzen asymmetrisch sind, wird wi ,j , als

Kantengewichtsfkt., und xi ,j als Kantenfkt. eingeführt mit i , j ∈ V .

Neue ZielfunktionSomit ergibt sich die Zielfunktion zu: min

∑i ,j∈V wi ,j · xi ,j

Neue Nebenbedingungen für alte GradungleichungFür jeden Stadtknoten muss der Eingangsgrad Eins sein:∑

i∈V xi ,j = 1 für alle j ∈ V

Für jeden Stadtknoten muss der Ausgangsgrad Eins sein:∑j∈V xi ,j = 1 für alle i ∈ V

Neue Nebenbedingung für alte Subtour UngleichungEs dürfen keine Kreise existieren mit weniger als |V | Knoten:∑

i∈W∑

j∈W xi ,j ≤ |W | − 1 für alle ∅ 6= W ⊂ V

Page 13: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

ATSP als ILP 9 / 18

Das vollständige ILP sieht wie folgt aus:

ATSP ILP:

min∑

i ,j∈V wi ,j · xi ,js.t.

∑i∈V xi ,j = 1 ∀j ∈ V∑j∈V xi ,j = 1 ∀i ∈ V∑i∈W

∑j∈W xi ,j ≤ |W | − 1 ∀∅ 6= W ⊂ V

xi ,j ∈ {0, 1} ∀i , j ∈ V

Page 14: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Outline 10 / 18

Travelling Salesman Problem (TSP)

TSP als ILP

Asymmetrische Travelling Salesman Problem (ATSP)

ATSP als ILP

multiple Travelling Salesman Problem (mTSP)

mTSP als ILP

Prize Collecting Travelling Salesman Problem (PCTSP)

PCTSP als ILP

Page 15: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Das mTSP 11 / 18

Was ist das multiple Travelling Salesmen Problem?

Gegeben: n Städte und die Distanzen zwischen diesen.

m Salesmen die alle in der gleichen Stadt starten.

Gesucht: Die kürzeste zurückgelegte Gesamtstrecke aller

Salesmen unter den Bedingungen, dass jede Stadt

genau von einem Salesman besucht wurde und am

Ende alle Salesmen wieder in die Anfangsstadt

zurückkehren.

Page 16: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

mTSP als ILP 12 / 18

ZielfunktionsänderungDie Zielfunktion muss nicht geändert werden, da mehrere Salesmen

für sie keine Rolle spielen: min∑

i ,j∈V wi ,j · xi ,j

Änderung der GradungleichungenAuch die bekannten Gradungleichungen bleiben erhalten für jeden

Knoten auÿer den Startknoten:∑i∈V xi ,j = 1 für alle j ∈ V \{1}∑j∈V xi ,j = 1 für alle i ∈ V \{1}

Änderung der Subtour UngleichungFür die Subtour Ungleichung darf der Startknoten ebenfalls nicht

mehr betrachtet werden:∑i∈W

∑j∈W xi ,j ≤ |W | − 1 für alle ∅ 6= W ⊆ V \{1}

Page 17: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

mTSP als ILP 12 / 18

ZielfunktionsänderungDie Zielfunktion muss nicht geändert werden, da mehrere Salesmen

für sie keine Rolle spielen: min∑

i ,j∈V wi ,j · xi ,j

Änderung der GradungleichungenAuch die bekannten Gradungleichungen bleiben erhalten für jeden

Knoten auÿer den Startknoten:∑i∈V xi ,j = 1 für alle j ∈ V \{1}∑j∈V xi ,j = 1 für alle i ∈ V \{1}

Änderung der Subtour UngleichungFür die Subtour Ungleichung darf der Startknoten ebenfalls nicht

mehr betrachtet werden:∑i∈W

∑j∈W xi ,j ≤ |W | − 1 für alle ∅ 6= W ⊆ V \{1}

Page 18: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

mTSP als ILP 12 / 18

ZielfunktionsänderungDie Zielfunktion muss nicht geändert werden, da mehrere Salesmen

für sie keine Rolle spielen: min∑

i ,j∈V wi ,j · xi ,j

Änderung der GradungleichungenAuch die bekannten Gradungleichungen bleiben erhalten für jeden

Knoten auÿer den Startknoten:∑i∈V xi ,j = 1 für alle j ∈ V \{1}∑j∈V xi ,j = 1 für alle i ∈ V \{1}

Änderung der Subtour UngleichungFür die Subtour Ungleichung darf der Startknoten ebenfalls nicht

mehr betrachtet werden:∑i∈W

∑j∈W xi ,j ≤ |W | − 1 für alle ∅ 6= W ⊆ V \{1}

Page 19: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

mTSP als ILP 13 / 18

Neue Nebenbedingungen für das mTSPUm sicherzustellen, dass genau m Salesmen aus der Anfangsstadt

starten gilt:∑

j∈V x1,j = m

Da diese auch alle in die Anfangsstadt zurückkehren müssen, muss

zu dem gelten:∑

i∈V xi ,1 = m

mTSP ILP:

min∑

i ,j∈V wi ,j · xi ,js.t.

∑i∈V xi ,j = 1 ∀j ∈ V \{1}∑j∈V xi ,j = 1 ∀i ∈ V \{1}∑i∈W

∑j∈W xi ,j ≤ |W | − 1 ∀∅ 6= W ⊆ V \{1}∑

j∈V x1,j = m∑i∈V xi ,1 = m

xi ,j ∈ {0, 1} ∀i , j ∈ V

Page 20: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

mTSP als ILP 13 / 18

Neue Nebenbedingungen für das mTSPUm sicherzustellen, dass genau m Salesmen aus der Anfangsstadt

starten gilt:∑

j∈V x1,j = m

Da diese auch alle in die Anfangsstadt zurückkehren müssen, muss

zu dem gelten:∑

i∈V xi ,1 = m

mTSP ILP:

min∑

i ,j∈V wi ,j · xi ,js.t.

∑i∈V xi ,j = 1 ∀j ∈ V \{1}∑j∈V xi ,j = 1 ∀i ∈ V \{1}∑i∈W

∑j∈W xi ,j ≤ |W | − 1 ∀∅ 6= W ⊆ V \{1}∑

j∈V x1,j = m∑i∈V xi ,1 = m

xi ,j ∈ {0, 1} ∀i , j ∈ V

Page 21: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Outline 14 / 18

Travelling Salesman Problem (TSP)

TSP als ILP

Asymmetrische Travelling Salesman Problem (ATSP)

ATSP als ILP

multiple Travelling Salesman Problem (mTSP)

mTSP als ILP

Prize Collecting Travelling Salesman Problem (PCTSP)

PCTSP als ILP

Page 22: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Das PCTSP 15 / 18

Was ist das Prize Collecting Travelling Salesman Problem?

Gegeben: n Städte und Reisekosten zwischen Paaren von

Städten. Ein Salesman bekommt einen Gewinn (prize)

in jeder auf der Reise besuchten Stadt, muss aber

eine Strafe (penalty) für alle nicht besuchten Städte

zahlen.

Gesucht: Reisekosten und Strafe sollen möglichst gering

gehalten werden, während möglichst genug Städte

besucht werden müssen um einen vorgegebenen

Gewinnbetrag zu erreichen.

Page 23: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

Das PCTSP 15 / 18

Was ist das Prize Collecting Travelling Salesman Problem?

Gegeben: n Städte und Reisekosten zwischen Paaren von

Städten. Ein Salesman bekommt einen Gewinn (prize)

in jeder auf der Reise besuchten Stadt, muss aber

eine Strafe (penalty) für alle nicht besuchten Städte

zahlen.

Gesucht: Reisekosten und Strafe sollen möglichst gering

gehalten werden, während möglichst genug Städte

besucht werden müssen um einen vorgegebenen

Gewinnbetrag zu erreichen.

Page 24: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

PCTSP als ILP 16 / 18

Es gibt nun Strafbeträge für jede nicht besuchte Stadt, die durch

die Funktion pi beschrieben werden und Gewinnbeträge für

besuchte Städte, die durch gi beschrieben werden.

Zudem gibt es eine weitere Variable yi mit i ∈ V , die gleich Null

ist, falls Stadt i besucht wird.

Neue ZielfunktionZielfunktion: min

∑i ,j∈V wi ,j · xi ,j +

∑i∈V pi · yi

Neue Nebenbedingungen für alte GradungleichungNun müssen wir nur Städte betrachten die auch besucht werden

also ergeben sich die Ungleichungen zu:∑i∈V \{j} xi ,j + yj = 1 für alle j ∈ V∑j∈V \{i} xi ,j + yi = 1 für alle i ∈ V

Page 25: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

PCTSP als ILP 16 / 18

Es gibt nun Strafbeträge für jede nicht besuchte Stadt, die durch

die Funktion pi beschrieben werden und Gewinnbeträge für

besuchte Städte, die durch gi beschrieben werden.

Zudem gibt es eine weitere Variable yi mit i ∈ V , die gleich Null

ist, falls Stadt i besucht wird.

Neue ZielfunktionZielfunktion: min

∑i ,j∈V wi ,j · xi ,j +

∑i∈V pi · yi

Neue Nebenbedingungen für alte GradungleichungNun müssen wir nur Städte betrachten die auch besucht werden

also ergeben sich die Ungleichungen zu:∑i∈V \{j} xi ,j + yj = 1 für alle j ∈ V∑j∈V \{i} xi ,j + yi = 1 für alle i ∈ V

Page 26: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

PCTSP als ILP 17 / 18

Neue Nebenbedingung für alte Subtour UngleichungEs dürfen keine Kreise existieren, die die Anfangsstadt nicht

enthalten:∑

i ,j∈W xi ,j ≤∑

i∈W \{k} 1− yifür alle k ∈W und ∅ 6= W ⊆ V \{1}

Neue Nebenbedingungen für GewinnDer nicht erreichte Gewinn muss kleiner sein, als der mögliche

Gesamtgewinn abzüglich der Gewinnvorgabe g :∑i∈V gi · yi ≤

∑i∈V gi − g für alle j ∈ V

Neue Nebenbedingung für AnfangsstadtDie Anfangsstadt muss immer enthalten sein: y1 = 0

Page 27: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

PCTSP als ILP 17 / 18

Neue Nebenbedingung für alte Subtour UngleichungEs dürfen keine Kreise existieren, die die Anfangsstadt nicht

enthalten:∑

i ,j∈W xi ,j ≤∑

i∈W \{k} 1− yifür alle k ∈W und ∅ 6= W ⊆ V \{1}

Neue Nebenbedingungen für GewinnDer nicht erreichte Gewinn muss kleiner sein, als der mögliche

Gesamtgewinn abzüglich der Gewinnvorgabe g :∑i∈V gi · yi ≤

∑i∈V gi − g für alle j ∈ V

Neue Nebenbedingung für AnfangsstadtDie Anfangsstadt muss immer enthalten sein: y1 = 0

Page 28: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

PCTSP als ILP 17 / 18

Neue Nebenbedingung für alte Subtour UngleichungEs dürfen keine Kreise existieren, die die Anfangsstadt nicht

enthalten:∑

i ,j∈W xi ,j ≤∑

i∈W \{k} 1− yifür alle k ∈W und ∅ 6= W ⊆ V \{1}

Neue Nebenbedingungen für GewinnDer nicht erreichte Gewinn muss kleiner sein, als der mögliche

Gesamtgewinn abzüglich der Gewinnvorgabe g :∑i∈V gi · yi ≤

∑i∈V gi − g für alle j ∈ V

Neue Nebenbedingung für AnfangsstadtDie Anfangsstadt muss immer enthalten sein: y1 = 0

Page 29: Varianten des Travelling Salesman Problem (TSP)ls11- · Outline 3 / 18 ravellingT Salesman Problem (TSP) TSP als ILP Asymmetrische ravellingT Salesman Problem (ATSP) TSPA als ILP

PCTSP als ILP 18 / 18

Das vollständige ILP sieht wie folgt aus:

PCTSP ILP:

min∑

i ,j∈V wi ,j · xi ,j +∑

i∈V pi · yis.t.

∑i∈V \{j} xi ,j + yj = 1 ∀j ∈ V∑j∈V \{i} xi ,j + yi = 1 ∀i ∈ V∑i ,j∈W xi ,j ≤

∑i∈W \{k} 1− yi ∀k ∈W , ∅ 6= W ⊆ V \{1}∑

i∈V gi · yi ≤∑

i∈V gi − g ∀j ∈ V

y1 = 0

xi ,j ∈ {0, 1} ∀i , j ∈ V

yi ∈ {0, 1} ∀i ∈ V