Grundlegende Algorithmen des Travelling Salesman Problems (TSP)

Inhaltsangabe:Problemstellung: Das „Travelling-Salesman-Problem“ (TSP), auch bekannt als „Problem des Handelsreisenden“, ist wohl das am meisten beachtete Optimierungsproblem aus dem Bereich des Operations Research. Hierbei soll ein Handelsreisender, ausgehend von einem beliebigem Startort x0, n verschiedene Städte genau einmal bereisen und anschließend wieder an den Startort x0 zurückkehren. Aus den insgesamt n! möglichen Touren soll nun die kürzeste Rundreise ermittelt werden, wobei die Entfernungen der einzelnen Orte zum Startort sowie zueinander bekannt sind. Das Kernproblem des TSP liegt im nicht ponentiellen Wachstum der möglichen Touren bei steigender Anzahl der zu bereisenden Orte, so dass verschiedene Algorithmen zum Einsatz kommen, die versuchen, sich dem Optimum so schnell wie möglich anzunähern. In der hier vorliegenden Arbeit sollen nun einige auserwählte Algorithmen in Visual Basic 6.0 umgesetzt werden, wobei darauf hingewiesen wird, daß es sich um rein symetrische TSP’s handelt. Gang der Untersuchung: Zunächst werden im Abschnitt 2 wichtige Definitionen für das Verständnis der angewandten Algorithmen dargelegt und näher erläutert. Anschließend werden im dritten Abschnitt dieser Arbeit die umgesetzten Algorithmen behandelt. Abschnitt 4 bildet den eigentlichen Kern der Arbeit. Hierin werden die Hauptprozeduren des Visual Basic-Programms in Form von Struktogrammen visualisiert und ausgiebig erläutert. Im fünften Abschnitt werden ausgehend von einem Rundreisebeispiel mit 25 Elementen, Ergebnisse und Rechenzeiten der hier vorgestellten Algorithmen tabellarisch festgehalten und bewertet. Der sechste und letzte Abschnitt dieser Arbeit dient der persönlichen Reflexion der bearbeiteten Thematik. Inhaltsverzeichnis:Inhaltsverzeichnis: 1.Einleitung3 2.Grundlegende Definitionen4 2.1Metrik als allgemeiner Abstand4 2.2Euklidischer Abstand5 2.3Potential eines Ortes5 2.4Savingwert6 2.5Permutationen7 2.6Längenbetrachtungen7 2.7Mittelwert8 2.8Standardabweichung8 2.9Bewertung nach Chebychev-Markov übertragen auf das TSP9 3.Kurzpräsentation der angewandten Verfahren10 3.1Algorithmus des besten Nachbarn12 3.2Inselalgorithmus13 3.3Vollenumeration14 3.4Anmerkung zur Länge einer Tour15 4.Visual Basic 6.0 Programm16 4.1Datenbankentwurf16 4.2Datenbankzugriff17 4.3Datenbankmanipulation18 4.3.1Elemente hinzufügen18 4.3.2Elemente entfernen20 4.4Klassenmodul Tourenverkettung21 4.5Algorithmen24 4.5.1Algorithmus des besten [...]