Wenn künstliche Intelligenzen lernen und optimale Antworten finden sollen, stecken immer auch mathematischer Erfüllbarkeitsprobleme dahinter. Erst spezielle Algorithmen, die diese sogenannten SAT-Probleme lösen, ermöglichten die Fortschritte der KI. Jetzt haben Forscher eine Methode dieser SAT-Solver entscheidend verbessert und so das Lösen bestimmter Erfüllbarkeitsprobleme effizienter und schneller gemacht. Dies könnte auch der KI-Forschung zugutekommen.
Erfüllbarkeitsprobleme (auch SAT-Probleme, vom englischen „satisfiability“) sind für viele moderne Forschungsbereiche und vor allem die Computertechnik wichtig. Mit ihnen kann man überprüfen, ob ein bestimmtes Computerprogramm die richtige Lösung liefert oder ob ein Computerchip garantiert in jeder logisch möglichen Situation korrekt funktioniert. Auch beim Lernen der KI-Systeme kommen SAT-Probleme zum Tragen. Für ihre Lösung werden sogenannte „SAT-Solver“ eingesetzt – Computerprogramme, die solche logischen Aufgaben möglichst schnell und effizient lösen sollen.
Besonders schwer zu lösen sind Erfüllbarkeitsprobleme dann, wenn sie zeigen sollen, dass ein bestimmter Fall niemals eintreten kann – dass es zum Beispiel keinen logisch möglichen Input gibt, bei dem ein Computerprogramm oder ein Computerchip versagt. „Der Raum der Möglichkeiten wird dann schnell unüberblickbar groß“, erklärt Stefan Szeider von der Technischen Universität Wien. „Man müsste dann weit mehr Möglichkeiten durchprobieren als es Atome im Universum gibt – das ist selbst für die besten Computer praktisch nicht möglich.“
Wettbewerb der SAT-Solver
Deshalb arbeiten Forschungsteams weltweit daran, SAT-Solver zu verbessern. Seit 2002 gibt es sogar jährliche Wettbewerbe, in der SAT-Solver in bestimmten Aufgaben gegeneinander antreten. Ziel ist es, Architekturen und Lösungsroutinen für die SAT-Solver zu ermitteln, die Zeit- und Rechenaufwand minimieren und dennoch die Erfüllbarkeitsprobleme zuverlässig lösen. Dazu gehört die Aufteilung des Gesamtproblems in Einzelschritte, die sich parallel lösen lassen, oder die Entscheidung, welche Variablen wegfallen können.