FLINGO: ASP-Ausdruckskraft in lineare Integer‑Beschränkungen einbinden
Constraint Answer Set Programming (CASP) verbindet die deklarative Logik von Answer Set Programming (ASP) mit der leistungsfähigen Verarbeitung numerischer Einschränkungen. Diese Kombination ist in vielen praxisnahen Anwendungen unverzichtbar, weil sie sowohl logische als auch arithmetische Probleme in einem Modell vereint.
Ein häufiges Problem bei bestehenden CASP‑Lösungen besteht darin, dass die Spezifikation von Einschränkungen stark an die zugrunde liegende numerische Engine gebunden ist. Dadurch gehen typische ASP‑Funktionen wie Standardwerte, undefinierte Attribute, nichtdeterministische Zuweisungen über Choice‑Regeln oder aggregierte Werte verloren. Das Ergebnis ist ein Modell, das zwar numerisch korrekt, aber in seiner logischen Ausdruckskraft stark eingeschränkt ist.
Die neue Sprache und das zugehörige Tool FLINGO lösen dieses Problem, indem sie die gewünschte ASP‑Ausdruckskraft direkt in die numerischen Einschränkungen einbetten. Mit FLINGO lassen sich beispielsweise Standardwerte deklarieren, Attribute bewusst undefiniert lassen und Choice‑Regeln nutzen – alles innerhalb eines numerischen Constraints. Die Autoren demonstrieren die Funktionsweise anhand mehrerer anschaulicher Beispiele, die zeigen, wie FLINGO die Modellierung von komplexen Problemen vereinfacht.
Darüber hinaus stellen die Entwickler eine Übersetzung von FLINGO‑Syntax in reguläre CASP‑Programme im CLINGCON‑Format bereit. Diese Übersetzung ermöglicht es, FLINGO‑Modelle nahtlos mit bestehenden CASP‑Solvern zu verarbeiten, ohne dass zusätzliche Laufzeitumgebungen erforderlich sind. Damit wird FLINGO zu einem praktischen Werkzeug für Forscher und Entwickler, die die Vorteile von ASP und numerischen Constraints in einem einheitlichen Rahmen nutzen wollen.