Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Rundreiseaufgaben Marc Schwärzli SS 2011. Ein Möbellieferant soll die Orte 1-4 mindestens einmal besuchen und wieder zu 1 zurückkehren. Die Wegstrecke.

Ähnliche Präsentationen


Präsentation zum Thema: "Rundreiseaufgaben Marc Schwärzli SS 2011. Ein Möbellieferant soll die Orte 1-4 mindestens einmal besuchen und wieder zu 1 zurückkehren. Die Wegstrecke."—  Präsentation transkript:

1 Rundreiseaufgaben Marc Schwärzli SS 2011

2 Ein Möbellieferant soll die Orte 1-4 mindestens einmal besuchen und wieder zu 1 zurückkehren. Die Wegstrecke soll minimal sein. Traveling-Salesman-Aufgabe

3

4 Wird jeder Ort außer dem Start- und Zielort genau einmal besucht nennt man die Rundreise einen Hamiltonschen Zyklus. Hamiltonscher Zyklus: wenn jeder Ort genau einmal vorkommt (besucht wird)

5 Rundreise Beispiel Lötroboter: Ein Lötroboter soll die Punkte 1 bis 4 auf einer Platine auf dem kürzesten Weg einmal erreichen und wieder zum Ausgangspunkt zurückkehren.

6 Die Weglängen des Lötroboters zwischen den einzelnen Orten sind in folgender Distanzmatrix zusammen gefaßt: Traveling-Salesman-Aufgabe Beispiel: Von Ort 1 nach Ort 2 2 Von Ort 2 nach Ort 1 3

7 Traveling-Salesman-Aufgabe Nach Vorgabe einer Distanzmatrix gibt es verschiedene Verfahren um die kürzeste Tour herauszufinden: – Die vollständige Enumeration – Die Branch-and-Bound-Methode – Die begrenzte Enumeration – Die dynamische Optimierung – Heuristische Verfahren

8 Die vollständige Enumeration Ist wegen des verbundenen Aufwandes nur für eine kleine Anzahl an Orten sinnvoll. Dabei werden alle denkbaren Hamiltonschen Zyklen bestimmt. Lfd.Nr.Hamiltonscher Zyklus (Orte)Länge = = = = =14 61 – 4 – 3 – =11

9 Die begrenzte Enumeration Das Verfahren geht von einer reduzierten Distanzmatrix aus. Benötigt eine relativ gute Vergleichsrundreise als Voraussetzung (eine sogenannte suboptimale Lösung) Verfahren der sukzessiven Einbeziehung von Stationen liefert die suboptimale Lösung.

10 Die begrenzte Enumeration 1.) Bestimmung der reduzierten Länge 2.) Bestimmung einer Vergleichsrundreise 3.) Verkürzen der Rundreise um zwei Orte und Ersetzen des letzten durch einen unbesuchten rechts aus der Liste – Bsp: – Wenn größer als reduzierte Länge dann Reduktion, sonst nächster Ort in der Liste (v links nach rechts) der noch nicht besucht wurde.

11 Die Begrenzte Enumeration Von der Entfernungsmatrix zur Distanztabelle: #263 23#41 352#3 4523# Von Ort Nach Ort Distanztabelle 1.) Erstellen einer Distanztabelle:

12 Begrenzte Enumeration 2.) Bestimmung der Reduktionstabelle: 1234min 1# # # #2 7 Von jedem Wert der Tabelle wird das Zeilenminimum abgezogen und eine neue Tabelle erstellt. Reduktionskonstante:

13 Begrenzte Enumeration 2.) Bestimmung der Reduktionstabelle: #041 22#30 330#1 4301# min #031 20#20 310#1 4100# Reduktionskonstante: Von jedem Wert der Tabelle wird das Spaltenminimum abgezogen und eine neue Tabelle erstellt:

14 Begrenzte Enumeration – 3.) Suche einer suboptimalen Lösung: AusgangszyklusNeue StationErgebniszyklusReduzierte Längekürzeste = =3* = = =4 * #031 20#20 310#1 4100# Vergleichsrundreise: mit reduzierter Länge = 1 Reduktionstabelle – Faktor 10

15 Begrenzte Enumeration Hier beginnt die begrenzte Enumeration Von der suboptimalen Lösung ist nur die reduzierte Länge von Interesse. Reduzierte Länge 1 der Vergleichsrundreise sollte möglichst unterschritten werden. Teilrouten werden ausgehend von Station 1 nur dann verlängert wenn sich die reduzierte Länge nicht vergrößert.

16 Begrenzte Enumeration #031 20#20 310#1 4100# Vergleichsrundreise: mit reduzierter Länge = 1 TeilrouteLänge > = Reduzierte Länge 1 ist die Grenze, die möglichst unterschritten werden sollte: Reduktionstabelle – Faktor 10

17 Begrenzte Enumeration Stationen werden in geordneter Liste 1,2,3,4 festgehalten. Teilroute wird um den nächsten fehlenden Ort (von rechts in der Liste) verlängert: TeilrouteLänge >1

18 Begrenzte Enumeration Grundsätzlich werden 2 Fälle unterschieden: Die Reduzierte Länge wird unterschritten Der nächste noch freie in der Liste von links nach rechts wird dazugefügt. Die Reduzierte Länge wird überschritten Ersetzen durch den rechten freien Nachbarn in der Liste. TeilrouteLänge >1 Reduzierte Länge wird unterschritten Reduzierte Länge wird überschritten

19 Begrenzte Enumeration Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts in der Liste ersetzt: TeilrouteLänge > =0

20 Begrenzte Enumeration Wäre das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort usw. TeilrouteLänge > >1

21 Begrenzte Enumeration Danach wird der nächste fehlende Ort (von rechts in der Liste) dazugefügt. Bleibt kein Ort mehr über, wird die Route mit dem Startort geschlossen. TeilrouteLänge > =0< < Neue Vergleichsrundreise

22 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge = <10 Reduzierte Länge 10 ist die Grenze, die möglichst unterschritten werden sollte: Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise: mit reduzierter Länge = 6

23 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10>6 Eine neue Vergleichsrundreise wird um 2 Orte verkürzt. Der verbleibende letzte wird um den nächsten rechts in der Liste 1,2,3,4,5,6 ersetzt: Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise: mit reduzierter Länge = 6

24 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> =4 Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise: mit reduzierter Länge = 6 Das Verfahren ist vollendet, wenn nur mehr Station 1 zum Ersetzen übrig bleibt. Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

25 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge = =9>6 Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise: mit reduzierter Länge = 6 Die Teilroute wird um den nächsten fehlenden Ort in der Liste 1,2,3,4,5,6 verlängert:

26 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =9> =4 Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise: mit reduzierter Länge = 6 Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

27 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge = =11>6 Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise: mit reduzierter Länge = 6 Die Teilroute wird um den nächsten fehlenden Ort in der Liste 1,2,3,4,5,6 verlängert:

28 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> = =9> = =11>6 Reduktionstabelle – Faktor 103 Die 4 hat keinen nächsten rechts in der Liste (5 u. 6), daher wird die Teilroute wieder verkürzt usw.. Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

29 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> = =9> = =11> =7>6 Reduktionstabelle – Faktor 103 Die 5 kann durch die nächste rechts in der Liste, die 6, ersetzt werden. Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

30 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> = =9> = =11> =7>6 Reduktionstabelle – Faktor 103 Die 6 hat keinen nächsten rechts in der Liste. Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

31 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> = =9> = =11> =7> >6 Reduktionstabelle – Faktor 103 Die 4 ist die nächste nach 3 in der Liste 1,2,3,4,5,6. Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

32 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> = =9> = =11> =7> > >6 Reduktionstabelle – Faktor 103 Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

33 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> = =9> = =11> =7> > > <6 Reduktionstabelle – Faktor 103 Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

34 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =10> = =9> = =11> =7> > > < >6 Reduktionstabelle – Faktor 103 Die Teilroute wird um den nächsten fehlenden Ort in der Liste 1,2,3,4,5,6 verlängert:

35 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =9> = =11> =7> > > < > >6 Reduktionstabelle – Faktor 103 Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

36 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge = =11> =7> > > < > > <6 Reduktionstabelle – Faktor 103 Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten freien Nachbarn rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort.

37 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =11> =7> > > < > > < <6 Reduktionstabelle – Faktor 103 Die Teilroute wird um den nächsten fehlenden Ort in der Liste 1,2,3,4,5,6 verlängert:

38 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge =7> > > < > > < < <6 Reduktionstabelle – Faktor 103 Die Teilroute wird um den nächsten fehlenden Ort in der Liste 1,2,3,4,5,6 verlängert:

39 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge > > < > > < < < <6 Reduktionstabelle – Faktor 103 Die Teilroute wird um den nächsten fehlenden Ort in der Liste 1,2,3,4,5,6 verlängert: Neue Vergleichsrundreise

40 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge < >4 Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise Die neue Vergleichsrundreise wird um 2 Orte verkürzt. Der verbleibende letzte wird um den nächsten Nachbarn rechts in der Liste 1,2,3,4,5,6 ersetzt:

41 Begrenzte Enumeration - Beispiel # # # # # # TeilrouteLänge < >4 1-36>4 Reduktionstabelle – Faktor 103 Neue Vergleichsrundreise Ist die Länge überschritten worden, wird der letzte Ort durch den nächsten rechts ersetzt. Ist das nicht möglich, wird die Teilroute um einen Ort verkürzt und das Ersetzen bezieht sich auf den verbleibenden letzten Ort, oder die Route kann mit dem Startort geschlossen werden.

42 Begrenzte Enumeration Zusammenfassung Die begrenzte Enumeration stellt eine sequentielle Abfolge dar. Die Reihenfolge wird aufgebaut bis ein hamiltonscher Zyklus entsteht oder bis die bisher kürzeste Länge überschritten wird.


Herunterladen ppt "Rundreiseaufgaben Marc Schwärzli SS 2011. Ein Möbellieferant soll die Orte 1-4 mindestens einmal besuchen und wieder zu 1 zurückkehren. Die Wegstrecke."

Ähnliche Präsentationen


Google-Anzeigen