Beruflich Dokumente
Kultur Dokumente
Logistik Transportlogistik
RPTU Kaiserslautern-Landau (WS 2022/23)
Prof. Dr. Timo Gschwind Prof. Dr. Timo Gschwind
Gottlieb-Daimler-Straße, Gebäude 42 Sarah Machate, M.Sc.
D-67663 Kaiserslautern
6. Übung
Aufgabe 1 (Verschiedene Arten von Nachbarschaft)
Ihnen liegt ein Netzwerk mit 11 Kunden, einem Depot und folgender asymmetrischer Matrix mit Bogenkosten cij vor:
0 1 2 3 4 5 6 7 8 9 10 11
0 - 3 3 4 2 2 2 3 3 1 4 2
1 2 - 2 1 1 3 2 2 4 2 3 0
2 3 2 - 4 1 2 1 1 2 3 3 2
3 2 1 4 - 1 4 2 3 2 3 3 3
4 0 1 3 1 - 0 2 2 1 2 2 1
5 4 3 2 4 0 - 4 1 3 3 3 2
6 1 2 1 2 2 3 - 4 4 4 2 1
7 4 4 1 1 2 1 3 - 2 1 0 3
8 2 4 2 2 1 3 4 2 - 3 3 4
9 3 2 2 3 2 3 3 1 3 - 1 1
10 3 3 3 2 3 3 2 4 3 1 - 1
11 2 0 1 1 1 2 1 2 4 4 3 -
Ihre aktuelle Lösung umfasst zwei Routen: Rorange und Rblau . Beziehen Sie sich in den folgenden Teilaufgaben immer
wieder auf diese Lösung!
3 2 4 1 0 4 4 4
0 1 2 3 4 5 6 7 0
3 3 1 1 2
0 8 9 10 11 0
(1) Führen Sie den 2-Opt-Schritt durch, der in Rblau das Segment zwischen den Kunden 9 und 10 invertiert.
(2) Führen Sie den 2-Opt*-Schritt durch, der in Rblau das Segment zwischen Depot (Knoten 0) und Kunde 8 entfernt
und das Depot stattdessen mit Kunde 3 verbindet.
(3) Führen Sie den Relocate-Schritt (intra-route) durch, der in Rorange den Kunden 7 nach Kunde 4 anfährt.
(4) Führen Sie den Relocate-Schritt (inter-route) durch, der den Kunden 3 von Rorange in die Route Rblau an die
Position zwischen Kunde 8 und 9 verlegt.
(5) Führen Sie den Or-Opt-Schritt (intra-route) durch, der das Segment bestehend aus Knoten 1 und 2 an das Ende
der Route Rorange verschiebt.
(6) Führen Sie den Or-Opt-Schritt (inter-route) durch, der das Segment bestehend aus Knoten 1 und 2 direkt an
den Anfang der Route Rblau verschiebt.
(7) Führen Sie den Swap-Schritt (intra-route) durch, der die Positionen von Kunde 8 und 11 von Route Rblau
miteinander vertauscht.
(8) Führen Sie den Swap-Schritt (inter-route) durch, der die Positionen von Kunde 7 in Route Rorange und Kunde
11 in Route Rblau vertauscht.
(9) Führen Sie den String Exchange-Schritt (intra-route) durch, der die Positionen des Segments bestehend aus
Knoten 8 und 9 in Rblau mit dem des Segments bestehend aus Knoten 10 und 11 vertauscht.
(10) Führen Sie den String Exchange-Schritt (inter-route) durch, der die Positionen des Segments bestehend aus
Knoten 10 und 11 in Rblau mit dem des Segments bestehend aus Knoten 3,4 und 5 in Rorange vertauscht.
6. Übung Transportlogistik
(2) Testen Sie die Zeitfenster-Zulässigkeit für den Relocate-Schritt, der Knoten 3 zwischen die Knoten 4 und 1 verlegt.
Gehen Sie davon aus, dass für alle Bögen (i, j) ∈ A, tij = 3 gilt. Vervollständigen Sie zunächst die Tabelle. Geben
Sie dann an, ob die Nachbarschaftslösung zulässig ist oder nicht. Wenn ja, geben Sie die entstehenden neuen
Routen an.
Routen r Route 1 Route 2
Knoten v 0 3 2 5 0 0 4 1 6 0
Zeitfenster [av , bv ] [0,24] [6,10] [12,16] [15,21] [0,24] [0,24] [5,12] [5,14] [10,20] [0,24]
früh. Zeit Tvearly
spät. Zeit Tvlate
(3) Warum müssten Sie die Zeitfenster-Zulässigkeit im Beispiel aus Teilaufgabe (2) für den Relocate-Schritt nur in
Route 2 testen, nicht aber unbedingt für Route 1?
i 0 1 2 3 4 5 0 0 - 7 5 2 1 2
ai 0 6 9 15 17 18 0 1 3 - 2 5 6 2
tij = 2 ∀ (i, j) ∈ A 2 1 1 - 7 2 1
bi 30 12 22 16 30 22 30
Tiearly 0 6 9 15 17 19 21 3 3 1 2 - 4 7
Tilate 10 12 14 16 20 22 30 4 2 4 3 7 - 3
5 7 3 2 4 3 -
Algorithmus 1: Lexikographische Suche für 2-Opt
// Input: Lösung x = (0, 1, 2, . . . , n) Route
SETZE G∗ := −∞
for i = 0, 1, . . . , n − 3 do
SETZE a := ai+1 , b := bi+1 , t := 0, g := 0
for j = i + 2, i + 3, . . . , n − 1 do
// Tj ist früheste Zeit am Ende von (0, . . . , i | j)
SETZE Tj = max{aj , Tiearly + tij }
// Segment REF for (j, j − 1, . . . , i + 1) und Gewinn Invertierung
SETZE b := min{bj , b − tj,j−1 }
if Tj > b then BREAK
SETZE a := max{a, aj + tj,j−1 + t}, t := t + tj,j−1
SETZE g := g + (cj−1,j − cj,j−1 )
// Ti+1 ist früheste Zeit am Ende von (0, . . . , i | j, j − 1, . . . , i + 1)
SETZE Ti+1 = max{a, Tj + t}
late
if Ti+1 ≤ bi+1 und Ti+1 + ti+1,j+1 ≤ Tj+1 then
SETZE G = g + ci,i+1 + cj,j+1 − cij − ci+1,j+1
if G > G∗ then
Setze G∗ = G, (i∗ , j ∗ ) := (i, j)
end if
end if
end for
end for
// Output: bester 2-Opt-Move definiert über (i∗ , j ∗ ) und Gewinn G∗
Page 2
6. Übung Transportlogistik
cij 0 1 2 3 4 5 6 7 8
0 - 6 9 6 7 5 6 7 9
1 8 - 4 7 3 4 6 7 5
2 6 6 - 5 4 5 7 9 2
3 4 1 5 - 5 4 4 7 4
4 5 8 4 5 - 5 6 2 9
5 5 8 6 1 4 - 8 7 9
6 2 9 8 5 5 7 - 3 9
7 8 5 4 7 7 3 6 - 8
8 9 6 3 9 4 5 9 3 -
Für dieses vorliegende Netzwerk möchten Sie eine Granulare Suche nutzen, um bei der Lösung gezielt “gute“ Nach-
barlösungen zu finden.
(1) Stellen Sie die Menge der Generatorbögen Agen ⊂ A auf. Gehen Sie dabei von einem Ausdünnungsfaktor π =
0, 5 aus und führen Sie die Unterteilung auf Basis der Kosten in der cij -Matrix durch. Im Fall gleich hoher
Bogenbewertung entscheiden Sie stattdessen nach kleinstem Index.
(2) Untersuchen Sie für untenstehende Lösung alle 2-Opt*-Schritte, deren eingefügter Bogen (i, j + 1) ein Genera-
torbogen ist. Veranschaulichen Sie die zulässigen Nachbarschafts-Schritte graphisch und bestimmen Sie darunter,
die Nachbarlösung mit dem größten Gewinn.
5 1 5 9
0 5 3 1 8 0
8 5
7 7 7 2
0 7 4 2 6 0
Page 3
6. Übung Transportlogistik
2x
Abbildung 1: Bausteine für die beiden Flussdiagramme für LNS und ALNS
(2) Erklären Sie in eigenen Worten wieso das gezielte Konstruieren von unzulässigen Lösungen bei der Suche nach
einer möglichst guten Lösung helfen kann.
Page 4
6. Übung Transportlogistik
Aufgabe 6 (MC-Fragen)
(1) Welche Aussagen zur Lokalen Suche sind richtig?
(mehrere Antworten möglich)
□ Die Menge aller Lösungen, welche durch Anwendung einer Elementaroperation auf x ∈ X entstehen,
bilden die Nachbarschaft N (x).
□ Eine Lösung x′ ∈ N (x) mit c(x′ ) > c(x) heißt bei einer Zielfunktion max c verbessernder Nachbar.
□ Die 2-Opt-Nachbarschaft N2Opt (x) einer Tour x besteht aus allen Touren x′ ̸= x, welche sich durch
Entfernen von zwei nicht benachbarten Kanten und Einfügen von zwei anderen Kanten bilden lassen.
□ Für verbessernde Nachbarn gilt, dass der Gewinn G(x; x′ ) eines Kantentauschs ≤ 0 ist.
□ Für die Berechnung des Gewinns eines Kantentauschs subtrahiert man die Summe der Kosten der
entfernten Kanten von der Summe der Kosten der eingefügte Kanten.
(3) Welche Aussage über die Lexikographische Suche nach zulässigen Nachbarn trifft zu?
□ Die Lexikographische Suche kann zum Finden von zulässigen Nachbarlösungen in konstanter Zeit O(1)
angewendet werden.
□ Für beliebige Segmente σ sind Segment-REFs für Zeiten von der Form T = min{a, T + t}.
□ Für Segmente σ, die exakt zwei Knoten beinhalten kann bei der Segment-REF t = 0 gesetzt werden.
□ Wendet man die Lexikographische Suche auf eine Lösung an, ist das Finden einer verbessernden Nach-
barlösung garantiert.
(4) Granulare Suche ist eine Technik zur Reduktion des Aufwands bei der Suche nach “guten“ Nachbarschaftslösungen.
Welche der folgenden Aussagen beschreiben die Granulare Suche, wie Sie sie nach Schneider u.a. (2017) in der
Vorlesung kennengelernt haben, korrekt?
(mehrere Antworten möglich)
□ Der Ausdünnungsfaktor π wird zur Berechnung der Anzahl an Bögen benötigt, die Teil der Menge an
Generatorbögen werden sollen.
□ Der Suchaufwand für eine Bestensuche ist linear, da die Gewinnberechnung in linearer Zeit O(n) möglich
ist.
□ Die Granulare Suche ist eine Komponente des Tabu-Search-Verfahrens.
□ Die Granulare Suche ist keine Komponente des Tabu-Search-Verfahrens.
(5) Welche Aussagen beschreiben das Tabu-Search-Verfahren von Schneider u.a. (2017), welches Sie in der Vorlesung
kennengelernt haben, korrekt?
(mehrere Antworten möglich)
□ Tabu-Search ist eine nachbarschaftsbasierte deterministische Metaheuristik.
□ Das Verfahren untersucht mit Hilfe der Erstensuche zusammengesetzte Nachbarschaften N2−Opt∗ (x) ∪
NRelocate (x) ∪ NOr−Opt (x)
□ Das Verfahren untersucht mit Hilfe der Bestensuche zusammengesetzte Nachbarschaften N2−Opt∗ (x) ∪
NRelocate (x) ∪ NOr−Opt (x)
□ Bei der Tabu-Search können auch unzulässige Lösungen zugelassen werden.
(6) Welcher der folgenden Operatoren haben Sie nicht als Destroy-Operator für Large Neighborhood Search in der
Vorlesung kennengelernt?
□ History-Based Destroy
□ Related Destroy
□ Worst Destroy
□ Criterion Destroy
□ Critical Destroy
Page 5