Fuchs, S. (2022). SAT-based optimization of octolinear metro map layouts [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2022.95250
U-Bahn-Karten werden jeden Tag von Millionen von Menschen auf der ganzen Welt gesehen und verwendet. Die Erstellung der besten Zeichnung eines U-Bahn-Netzes ist eine komplexe und zeitaufwändige Aufgabe. Tatsächlich ist das Metrokarten Problem NP-schwer. Dieses Problem kann auf verschiedene Arten formalisiert werden. Wir verwenden eine Definition aus der Literatur. Eine solche Formalisierung ermöglicht es uns Algorithmen zu entwickeln um automatisiert eine Lösung für das Problem zu finden. So wurden in der Literatur Mixed Integer Programs (MIP) auf der Basis dieser Formulierung entwickelt, die es ermöglichen optimale Metrokarten zu berechnen. Für andere Graph Drawing Probleme haben sich auch Modellierungen mithilfe von SAT und SAT modulo Theory (SMT) als nützlich und in manchen Fällen sogar als effizienter als MIP Formulierungen erwiesen. Wir präsentieren die erste Formulierung des Metrokarten Problems mithilfe von SAT und SMT und vergleichen die Geschwindigkeit und Qualität der produzierten Lösungen mit der existierenden MIP Formulierung. Um eine Lösung mit SAT zu finden, übersetzen wir die Bedingungen aus einem bestehenden MIP in SAT. Die Herausforderung besteht hauptsächlich darin die Constraints der MIP Formulierung effizient in ein System zu übersetzen in welchem statt ganzzahligen und reelwertigen Variablen nur Binärvariablen verwendet werden können. Die Übersetzung nach SMT ist einfacher, weil hier nicht nur boolesche Variablen akzeptiert werden, sondern auch numerische Werte oder sogar andere Datentypen. Unser Datensatz besteht aus fünf verschiedenen realen Instanzen: den U-Bahn-Netzen der Städte Wien, Karlsruhe, Lissabon, Montreal und Washington. Wir analysieren die Effizienz unseres Ansatzes mit Experimenten auf diesen Instanzen und vergleichen die Laufzeit, aber auch die Qualität nicht optimaler Lösungen nach einem bestimmten Timeout. Unsere Ergebnisse legen nahe, dass MIP für das schematische Metrokarten Problem schneller ist. Die Unterschiede zwischen SAT und SMT variieren abhängig von der Instanzgröße, wobei SAT bei kleineren Instanzen besser abschneidet während SMT bessere Laufzeiten auf größeren Instanzen erzielt. Dies deutet darauf hin, dass bei SMT ein größerer Initialisierungsaufwand besteht.
de
Metro maps are seen and used by millions of people around the globe every day. The process of creating the most optimized drawing of a metro network is a complex and time-consuming task. In fact, the metro map problem is NP-hard. This problem can be formalized in several ways. We use some definition from the literature. Such a formalization enables us to develop algorithms to automatically find a solution to the problem. There are already Mixed Integer Programs (MIP) based on this formulation, which allows to calculate optimal metro maps. For other graph drawing problems, modeling using SAT and SAT modulo theory (SMT) has also proven to be useful and in some cases even more efficient than MIP formulations. We present the first formulation of the metro map problem using SAT and SMT and compare runtimes and quality of the solutions produced with the existing MIP formulation. To find a solution with SAT we translate the constraints of an existing MIP definition into SAT. The main challenge is to efficiently translate the constraints of the MIP formulation into a system in which only binary variables can be used instead of integer and real-valued variables. The translation to SMT is easier because it not only accepts boolean variables but also integer values or even other data types. Our dataset consists of five different real world instances: the metro networks of the cities Vienna, Karlsruhe, Lisbon, Montreal and Washington. We analyze the efficiency of our approach with experiments on these instances and compare the runtime but also the quality of non-optimal solutions after a given timeout. As a result, we found out that MIP is faster for the schematic metro map problem. The results on SAT and SMT are different between instances, depending on their size with SAT outperforming SMT on smaller instances, while SMT achieves better runtimes on larger instances. This indicates that there is a larger initialization overhead needed for SMT.