Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Traveling salesman problem ZIP-Methode Kombinatorischer Ansatz einer optimalen Lösung symmetrischer Rundreiseprobleme.

Ähnliche Präsentationen


Präsentation zum Thema: "Traveling salesman problem ZIP-Methode Kombinatorischer Ansatz einer optimalen Lösung symmetrischer Rundreiseprobleme."—  Präsentation transkript:

1 traveling salesman problem ZIP-Methode Kombinatorischer Ansatz einer optimalen Lösung symmetrischer Rundreiseprobleme

2 traveling salesman problem Ziel: –Vorstellung eines kombinatorischen Lösungsansatzes des Rundreiseproblems Voraussetzungen: –Kenntnisse der vier Grundrechenarten –etwas Geduld mit dem Vortragenden....

3 traveling salesman problem Anlass: Fachschullehrbuch: Mathematik für Wirtschaftswissenschaften Verlag die Wirtschaft, Berlin (DDR), darin: Rundreiseproblem S. 418ff.

4 Agenda –das Rundreiseproblem –bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

5 das Rundreiseproblem –das Rundreiseproblem –bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

6 das Rundreiseproblem Formulierung des Rundreiseproblems: Gesucht wird die kürzeste Entfernung zwischen n verschiedenen Orten. Dabei soll jeder Ort nur einmal aufgesucht werden und die Rundreise wieder im Ausgangsort enden.

7 das Rundreiseproblem graphentheoretische Beschreibung: Graph G –Knoten x i –Kante u(x i,x j ) bzw. u –Knotengrad –Komponenten eines Graphs –Teilgraph eines Graphs (Kantenteilgraph) –Graphfamilie und Mächtigkeit

8 das Rundreiseproblem Laufindexe: –i = Laufindex des Anfangsknoten x i –j = Laufindex des Endknoten x j –k = Laufindex des Platzes einer Kante innerhalb eines Graphen Kurz-Schreibweise einer Kante: –u (ij) i-j (Beispiel: u (2;4) 2-4) –f(i-j) = Ausprägung der Kante; (z.B.: Länge)

9 das Rundreiseproblem kleinster Graph: Problem ist nicht die Berechnung des einzelnen Graphen, sondern die mit wachsenden n Knoten um je eine Fakultät ansteigenden Zahl der Graphen. |G| = n ! bei beliebigem Anfangsknoten |G| = (n-1)!, wenn Anfangsknoten x 1 ist. |G| = (n-1)! /2 bei Symmetrie

10 bisherige Lösungen –das Rundreiseproblem –bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

11 bisherige Lösungen bisherige allgemeine optimale Lösungen: (grundsätzlich: Überprüfung aller Lösungen) –Voll-Enumeration –begrenzte Enumeration –branch and bound –weitere.... alle allgemeinen optimalen Lösungen nur für kleine n

12 bisherige Lösungen bisherige suboptimale Lösungen: –viele... –viele gute... –viele gute, für die Praxis völlig ausreichend...

13 bisherige Lösungen Fazit zu den bisherigen Lösungen: Soweit erkennbar, liegt das wissenschaftliche Interesse seit langem in der Entwicklung und Verbesserung von suboptimalen Lösungen, weil scheinbar optimale Lösungen erschöpfend erforscht sind.

14 neue Überlegungen... –das Rundreiseproblem –bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

15 neue Überlegungen... aber zuerst eine Aufgabe für Sie: Bitte schreiben Sie in beliebiger Reihenfolge die Zahlen von 1 bis 6 auf

16 neue Überlegungen... Verbindet man die Knoten, so entsteht: 1-komponentiger G mit 6 Kanten mit 6 Knoten jeder Knoten hat den Knotengrad

17 neue Überlegungen... wir erinnern uns: bei n = 6 n! = 720 (n-1)! = 120 (n-1)! / 2=

18 neue Überlegungen... wir addieren nun die Werte der Kanten: dabei tritt jeder Knoten zweimal auf: –als Anfangsknoten einer Kante –und als Endknoten einer Kante. Und das ist vom Übel ! 1

19 neue Überlegungen... wenn jeder Knoten nur einmal auftritt, so entsteht aus dem ganzen Graphen: ein Teilgraph mit allen 6 Knoten, aber nur mit 3 Kanten: z.B. Kanten: 1-6, 5-3,

20 neue Überlegungen übrig bleibt ein Komplement-Teilgraph mit derselben Struktur wie der Teilgraph ! Kanten: 1-4, 2-3,

21 neue Überlegungen... Der Graph setzt sich also zusammen: aus dem Teilgraphen mit Kanten:1-6,5-3,2-4 und dem Teilgraphen mit Kanten:1-4,2-3,

22 neue Überlegungen... Wegen derselben Struktur der Teilgraphen muss die Zahl der Knoten gradzahlig sein. (ggf. ist ein Pseudo- Knoten einzufügen.)

23 neue Überlegungen Symmetrie-Regel: Der Anfangsknoten einer Kante hat den kleineren Laufindex als der Endknoten i < j: f(1-6) + f(5-3) + f(2-4) = f(1-6) + f(3-5) + f(2-4)

24 neue Überlegungen Sortier-Regel: die Kanten werden nach dem Laufindex ihres Anfangsknoten sortiert. 1. Kante 2. Kante 3. Kante f(1-6) + f(3-5) + f(2-4) = f(1-6) + f(2-4) + f(3-5)

25 neue Überlegungen... wir erinnern uns: Bei n = 6 gibt es insgesamt 120 Graphen bzw. 60 symmetrische Graphen wieviele Teilgraphen gibt es eigentlich ? 1. Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph mehr nicht !

26 neue Überlegungen... Bei Anwendung der Symmetrieregel und der Sortierregel läßt sich jeder der 120 Graphen in 2 der 15 Teilgraphen zerlegen. 1. Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Probieren Sie es bitte an Ihrem eigenen Beispiel aus.

27 neue Überlegungen... Wie viele Teilgraphen passen zu einem Teilgraphen, d.h. bilden zusammen wieder einen Gesamt-Graphen ? Beispiel: 1-2, 3-4, 5-6 Nr.5, 6, 8, 9, 10, 11, 13, 14 insgesamt 8 (= 2 x 4) 1. Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph

28 neue Überlegungen... Wie erhält man den kleinsten Graphen ? 1. Schritt: man ermittelt den kleinsten Teilgraphen 2. Schritt: man ermittelt den zugehörigen kleinsten Kompl.-Teilgraphen. 1. Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph Teilgraph

29 neue Überlegungen... Damit ist vielleicht der kleinste Graph gefunden ! aber nur: vielleicht!

30 neue Überlegungen... Weitere Überlegungen: Der kleinste (Gesamt-)Graph setzt sich zusammen: entweder: aus den beiden gefundenen Teilgraphen (kleinster Teilgraph mit zugehörigem kleinsten Kompl.-Teilgraph) oder: aus zwei dazwischen liegenden Teilgraphen.

31 neue Überlegungen... Zahlenbeispiel: kleinster Teilgraph hat die Kantenlänge: 20 der kleinste zugehörige Kompl.-Teilgraph: 40 ergibt einen Gesamtgraphen: 60 interessant sind damit nur noch die Teilgraphen mit Kantenlängen zwischen 20 und 40.

32 neue Überlegungen... Zahlenbeispiel: kleinster Teilgraph hat die Kantenlänge: 20 der kleinste zugehörige Kompl.-Teilgraph: 40 ergibt einen Gesamtgraphen: 60 Außerdem: ein Gesamtgraph mit einer Kantenlänge < 60 muß mindestens aus einem Teilgraphen mit einer Kantenlänge < 30 zusammengesetzt sein.

33 neue Überlegungen... Zahlenbeispiel: kleinster Teilgraph hat die Kantenlänge: 20 der kleinste zugehörige Kompl.-Teilgraph: 40 ergibt einen Gesamtgraphen: 60 d.h., nur Teilgraphen (und zugehörige Kompl.-Teilgraphen) mit Kantenlängen zwischen 20 und < 30 sind zu prüfen.

34 neue Überlegungen... Zahlenbeispiel: kleinster Teilgraph hat die Kantenlänge: 20 der kleinste zugehörige Kompl.-Teilgraph: 40 ergibt einen Gesamtgraphen: 60 d.h., (a+b) < c a und/oder b < (c/2) und a < b oder a = b a < (c/2)

35 neue Überlegungen... Weitere Iterationsschritte: (bis zur halben Kantenlänge des bisher kleinsten gefundenen Gesamt-Graphen) ausgehend vom kleinsten Teilgraphen wird jeweils der nächst größere Teilgraph mit seinem Komplement-Teilgraph überprüft, ob daraus ein kleinerer Gesamt-Graph zusammengesetzt werden kann. wenn ja, ist der neue Gesamt-Graph Ausgangswert für weitere Iterationsschritte. wenn nein, ist der kleinste Graph bereits gefunden.

36 Beispiel mit 6 Knoten: –das Rundreiseproblem –bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

37 Beispiel mit 6 Knoten: Gegeben seien 6 Knoten mit den zugehörigen Entfernungen: nach 1nach 2nach 3nach 4nach 5nach 6 von von von von von von 6 -

38 Beispiel mit 6 Knoten: Kleinster Teilgraph: Nr. 1 mit Kantenlänge = 49 Nr.1.K. 2.K. 3.K. K.-Länge Komp.-Teilgraphen: Nr. 5, 6, 8, 9, 10, 11, 13 u.14 davon der kleinste: Nr. 10 mit Kantenlänge = 62 Länge des Graphen: 111 ( ) : 2 = 55,5 kleinster Graph

39 Beispiel mit 10 Knoten: –das Rundreiseproblem - Fragestellung –Problem und bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

40 Beispiel mit 10 Knoten: Entwicklung der ZIP-Formel bei n = 10: 1 · 3 · 5 · 7 · 9 = 9! = (1 · 2) · (2 · 2) · (3 · 2) · (4 · 2) 9! = ( 1 · 2 · 3 · 4 ) · ( 2 · 2 · 2 · 2 ) 1 · 2 · 3 · 4 · 5 · 6 · 7 · 8 · 9 = 2 · 4 · 6 · 8 9! = 4! · 2 4

41 Beispiel mit 10 Knoten: (n – 1)! ( n/2 – 1 ) ! · 2 n/2 - 1 davon: { ( n/2 – 1 ) ! } (Sortierregel) Teilgraph: (Kantenzahl =n/2) 1 x 2 x 2 x 2 x 2 (Symmetrie) Anfangsknoten = x 1

42 Beispiel mit 10 Knoten:

43 lfd.Nr.K.-Länge1. Kante2.Kante3.Kante4.Kante5.KanteBemerk min.TG komp bis 945 min. TG min. TG + min.Tg komp = 176; 176 / 2 = 88 Sortierung der 945 Teilgraphen nach Kantenlänge Beispiel mit 10 Knoten:

44 lfd.Nr.K.-Länge1. Kante2.Kante3.Kante4.Kante5.KanteBemerk bis 945 Beispiel mit 10 Knoten:

45 lfd.Nr.K.-Länge1. Kante2.Kante3.Kante4.Kante5.KanteBemerk bis 945 Beispiel mit 10 Knoten:

46 lfd.Nr.K.-Länge1. Kante2.Kante3.Kante4.Kante5.KanteBemerk min.TG komp bis 945 min. TG min. TG + min.Tg komp = 175; 175 / 2 = 87,5 Beispiel mit 10 Knoten:

47 lfd.Nr.K.-Länge1. Kante2.Kante3.Kante4.Kante5.KanteBemerk bis 945 opt. TG opt.TG komp Beispiel mit 10 Knoten:

48 Anzahl der Teilgraphen Summe der Kantenlängen nach dem 1.Durchlauf: nur noch 11 von 945 Teilgraphen bei insgesamt Gesamt-Graphen

49 Beispiel mit 10 Knoten: Von insgesamt 945 Teilgraphen scheiden beim back tracking der begrenzten Enumeration aus: Abbruch nach der 5. Kante: 0 Abbruch nach der 4. Kante: 1 Abbruch nach der 3. Kante: 3 Abbruch nach der 2. Kante: 15 Abbruch nach der 1. Kante:105 möglichst frühzeitiger Abbruch !!

50 Beispiel mit 10 Knoten: Beziehung zwischen Anfangsknoten und Kantenplatz: 1. Kante2. Kante3. Kante4. Kante5. Kante oderoderoderoder oderoderoder oderoderoder oder i = k für k = i = k, k + 1,..., 2k -1 für k > 1

51 Beispiel mit 10 Knoten:

52 weitere Überlegungen: Numerierungsregel (die größten Abweichungen nach vorn) Minimalkantenregel (Berechnung der noch ausstehenden kleinsten Kante für jeden einzelnen Kantenplatz; nicht mehr für alle)

53 Beispiel mit 10 Knoten: Beispiel: Knoten x i mit seinen 5 Kanten NumerierungsregelMinimalkantenregel

54 Beispiel mit 26 Knoten: –das Rundreiseproblem - Fragestellung –Problem und bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

55 Beispiel mit 26 Knoten: Weihnachtsrätsel: Das Institut für Rechnergestützte Wissenverarbeitung (KBS) der Universität Hannover hat 1996 als Weihnachtsrätsel die Aufgabe gestellt, für 26 europäische Hauptstädte die kürzeste Rundreise zu finden. Die Aufgabe mit Lösungen finden Sie leider nicht mehr im Internet

56 Beispiel mit 26 Knoten: Zahl aller Graphen (25!): Zahl der symm. Graphen: Zahl aller Teilgraphen : Ergebnisse: kl.Teilgraph + kl.Komp.-Teilgraph: km km = km heuristisch gefundener kl. Graph: km km = km davon die Hälfte : km / 2 = km

57 Beispiel mit 26 Knoten:

58 Geographische Darstellung des opimalen Graphen 1. Amsterdam 2. Athen 3. Barcelona 4. Belgrad 5. Berlin 6. Brüssel 7. Bucarest 8. Budapest 9. Frankfurt/M 10. Genf 11. Helsinki 12. Istanbul 13. Kopenhagen 14. Lissabon 15. London 16. Madrid 17. Mailand 18. Oslo 19. Paris 20. Prag 21. Rom 22. Sofia 23. Stockholm Lissabon 2. Helsinki 3. Madrid 4. Istanbul 5. Athen 6. Bucarest 7. Sofia 8. Stockholm 9. Oslo 10. Belgrad 11. Budapest 12. Kopenhagen 13. Rom 14. Warschau 15. Wien 16. Berlin 17. Amsterdam 18. London 19. Brüssel 20. Prag 21. Mailand 22. Zürich 23. Barcelona...

59 Schlussfolgerungen und Ausblick –das Rundreiseproblem - Fragestellung –Problem und bisherige Lösungen –neue Überlegungen –Beispiel mit 6 Knoten –Beispiel mit 10 Knoten –Beispiel mit 26 Knoten (Ergebnisse) –Schlussfolgerungen und Ausblick

60 Schlussfolgerungen –diese algebraische Lösung ist offensichtlich neu –das Weihnachtsrätsel mit 26 Orten ist optimal gelöst –es kann gesagt werden, ob eine optimale Lösung gefunden wurde. –Symmetrie wird voll ausgenutzt..... –und...

61 Schlussfolgerungen –bis ca. 10 Knoten (ggf. mehr) lassen sich symmetrische Graphen mit der Voll-Enumeration optimal lösen. –bis ca. 30 Knoten (ggf. mehr) lassen sich symmetrische Graphen mit der begrenzten Enumeration optimal lösen. Für alle TSP-Verfahren gilt: Können bekannte Lösungen nicht nur auf Graphen sondern auch auf Teilgraphen angewandt werden, so bringt die ZIP-Methode den entscheidenden Quantensprung der rechentechnischen Vereinfachung.

62 Ausblick –es bleibt zu prüfen, ob der neue Lösungsansatz auch auf andere Optimierungsprobleme angewandt werden kann. –Alle Aspekte des neuen Lösungsansatzes sind sicherlich noch nicht geklärt und sollten weiter untersucht werden.

63 traveling salesman problem Vielen Dank für Ihre Aufmerksamkeit


Herunterladen ppt "Traveling salesman problem ZIP-Methode Kombinatorischer Ansatz einer optimalen Lösung symmetrischer Rundreiseprobleme."

Ähnliche Präsentationen


Google-Anzeigen