Bachelorarbeit Informatik: Evaluation von Lösungskonzepten von NP-vollständigen Problemen in Webapplikationen am Beispiel des Travelling Salesman Problems
Weg eines Handlungsreisenden
Wenn es darum geht, die effizienteste Route mit vielen Teildestinationen zu finden, spricht man vom Problem des Handlungsreisenden. Informatik-Absolvent Roman Lickel hat sich diesem angenommen und in seiner Bachelorarbeit ein Konzept für eine Web-Applikation entwickelt.
Zürich, Basel, Genf, dann weiter nach Bern, Luzern und St.Gallen, und schliesslich zurück nach Zürich – so könnte die Reiseroute eines viel beschäftigten Handlungsreisenden in der Schweiz aussehen. Informatik-Absolvent Roman Lickel hat sich im Rahmen seiner Bachelorarbeit mit der optimalen Planung solcher Reiserouten beschäftigt. Der Teilzeit-Student arbeitet als Entwickler für eine Firma, die auf Software für Geschäftskunden spezialisiert ist. Roman Lickel hat ein Konzept erstellt, wie das Programm so erweitert werden kann, dass es nicht nur die Reiseziele und Hotels verwaltet, sondern auch die Reiseroute in Bezug auf die schnellste Fahrzeit optimiert.
Travelling Salesman Problem
Die Optimierung von Wegrouten von einem Startpunkt über mehrere sogenannte Wegpunkte zurück zum Startpunkt wird in der Informatik als Travelling Salesman Problem (TSP) – das Problem des Handlungsreisenden – bezeichnet. Besonders schwierig: Beim TSP nimmt der Aufwand für die exakte Berechnung der Lösung für eine steigende Anzahl Wegpunkte mehr als exponentiell zu. «Mittels geeigneter Architekturen und Näherungsalgorithmen wird versucht, das Problem für den jeweiligen Anwendungsfall effizient zu lösen», erklärt IT-Dozent Alain Lafon, der die Bachelorarbeit betreut hat. Untersucht hat Roman Lickel einerseits, welche Architekturen auf das Webumfeld anwendbar sind, und anderseits, welcher Algorithmus sich am besten eignet. Schliesslich erstellte er mehrere Konzepte, um die Architekturvarianten vergleichen zu können.
«Weil Webtechnologien nicht für rechenintensive Aufgaben entworfen wurden, können sie nur durch einen besseren Algorithmus die nötige Effizienz erreichen.»
Roman Lickel
Architektur für den Webbrowser
Die ausgearbeiteten Konzepte waren in clientseitige, serverseitige und verteilte Systeme unterteilt. «Während bei clientseitigen Konzepten die Berechnung direkt im Webbrowser erfolgt, wird die Lösung bei serverseitigen Konzepten auf einem Server berechnet», erklärt Roman Lickel. «Es stellte sich heraus, dass serverseitige Architekturen für den vorliegenden Fall ungeeignet sind, da die Serverinfrastruktur grosse Kosten verursacht und Rechenleistungsengpässe entstehen können, falls viele Anfragen gleichzeitig eintreffen.» Auch die verteilten Systeme seien wegen des grossen Implementationsaufwands und der nicht ausreichenden Performanz ungeeignet. Somit konzentrierte sich Roman Lickel auf das clientseitige Konzept mit der Berechnung im Webbrowser.
Vielversprechendes Konzept
Die Wahl der Algorithmen stellte sich als wichtigster Einflussfaktor auf die Berechnungsgeschwindigkeit heraus. «Weil Webtechnologien nicht für rechenintensive Aufgaben entworfen wurden, können sie nur durch einen besseren Algorithmus die nötige Effizienz erreichen», so Roman Lickel. Um die bestmögliche Lösung des Problems in der vorgegeben Zeit zu erhalten, hat er eine Aufteilung in Teilprobleme nach der Anzahl Wegpunkte vorgenommen. Aufgrund dieser wird entschieden, welcher Algorithmus für die Berechnung verwendet wird. «Für wenige Wegpunkte erfolgt die Berechnung direkt innerhalb der Web-Applikation», so Roman Lickel. «Bei vier oder mehr Wegpunkten würde der Browser zu lange blockiert und abstürzen, weshalb die Berechnung in einen separaten Berechnungsthread ausgelagert wird.» Laut Roman Lickel stösst der Algorithmus zur exakten Berechnung der Lösung im Webbrowser ab 20 Wegpunkten an seine Grenzen und es kann in nützlicher Zeit nur noch eine Annäherung der Lösung gefunden werden. Der Prototyp, der aufgrund des Konzepts erstellt wurde, zeigt jedoch, dass die Optimierung des TSP mit den gewünschten Anforderungen als Webapplikation umgesetzt werden kann.
Weitere Informationen
<svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 256 256" class="iconpack phosphor phosphor-arrow-up-right-bold" fill="currentColor" role="img"><rect width="256" height="256" fill="none"></rect><line x1="64" y1="192" x2="192" y2="64" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="24"></line><polyline points="88 64 192 64 192 168" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="24"></polyline></svg>Bachelorstudium InformatikInstitut für angewandte Informationstechnologie (InIT)
Infotage und Anmeldeschluss Bachelorstudiengänge
Anmeldung zum Bachelorstudium
- Zur Anmeldung (Anmeldeschluss: 30.04.2025)
Das könnte Sie auch interessieren
Aufnahmebedingungen
Die Aufnahmebedingungen für das Bachelorstudium an der ZHAW School of Engineering.
Studiumsvorbereitung
Erfahren Sie, wie Sie sich optimal auf das Bachelorstudium vorbereiten können.
Anmeldung zum Bachelorstudium
Aufnahmebedingungen
Studiumsvorbereitung
Melden Sie sich jetzt zum Bachelorstudium an.
Die Aufnahmebedingungen für das Bachelorstudium an der ZHAW School of Engineering.
Erfahren Sie, wie Sie sich optimal auf das Bachelorstudium vorbereiten können.