Refine
Document Type
- Doctoral thesis (1)
Has Fulltext
- yes (1)
Is part of the Bibliography
- no (1)
Year of publication
- 2022 (1)
Language
- German (1)
Keywords
- SAT (1) (remove)
Institute
Mit Hilfe der Constraint-Programmierung können komplexe, häufig NP-vollständige Probleme, wie zum Beispiel Graphfärbungs-, Optimierungs-, Konfigurations- sowie Schichtplanungs-, Raum- und Zeitplanungsprobleme modelliert und gelöst werden. Im Vordergrund der Constraint-Programmierung steht dabei die deklarative Modellierung, also eine Beschreibung des eigentlichen Problems und nicht dessen Lösungsvorgangs. Während es Aufgabe des Entwicklers ist, das Problem zu modellieren, wird die Lösung einem separat implementierten Solver (Löser) überlassen. Im Idealfall löst dieser Solver das Problem, unabhängig von der konkreten Modellierung, immer schnellstmöglich.
In der Praxis kann von diesem Idealfall in der Regel nicht ausgegangen werden und somit hat die Art und Weise der Modellierung ein und desselben Problems und dessen Remodellierung teilweise einen erheblichen Einfluss auf die Lösungsgeschwindigkeit. Bisher bestehende Remodellierungsverfahren transformieren entweder Constraint-Probleme im Ganzen (zum Beispiel beim Umwandeln in SAT- oder binäre Constraint-Probleme) oder erfordern eine präzise Angabe und Steuerung seitens des Nutzers der Constraint-Programmierung (zum Beispiel bei der Tabularisierung). Während die erste Variante in der Regel nur bei sehr speziellen Problemen zu einer Beschleunigung des Lösungsvorganges führt, benötigt die zweite Variante vom Constraint-Modellierer zusätzliches Expertenwissen über das Lösungsverfahren des verwendeten Solvers. Die bisherigen Verfahren erlauben somit keine (voll)-automatisierte Transformation von Constraint-Problemen, bei der Transformationen nur durchgeführt werden, wenn diese auch zu einer Beschleunigung führen.
Für das dieser Arbeit übergeordnete Ziel der automatisierten Optimierung von Constraint-Problemen mittels Remodellierung, ohne dass dafür zusätzliches Expertenwissen notwendig ist, werden ausreichend viele verschiedene, gute und gut untersuchte Remodellierungen benötigt. In dieser Arbeit werden daher sowohl bestehende Verfahren für die Transformation von Constraint-Problemen weiterentwickelt, als auch völlig neue entworfen und deren Korrektheit nachgewiesen. Die in dieser Arbeit entwickelten Transformationen werden bezüglich ihrer beschleunigenden Wirkung auf Constraint-Probleme untersucht. Anhand von generierten und von realen Praxisbeispielen wird die Wirksamkeit der Transformationen evaluiert und es werden Schlussfolgerungen darüber gezogen, wann welche Substituierungen besonders vielversprechend sind.