(engl., dt. Löser) ist eine Sammelbezeichnung für spezielle mathematische Computerprogramme, die mathematische Probleme numerisch lösen können.

Beschreibung Solver können als eigenständiges Softwarepaket existieren oder als Programmbibliothek in andere Softwaresysteme integriert sein.

Solver sind zumeist auf die Lösung spezieller Probleme programmiert, wie z. B. Lineare und Nichtlineare Gleichungssysteme Ganzrationale Funktionen Mathematische OptimierungO. Goldschmit: LP Solver. Gewöhnliche Differentialgleichungen Erfüllbarkeitsproblem der AussagenlogikM. Lange: SAT-Solver. (PDF; 141 kB) Constraint-Satisfaction-Problem Kürzester-Pfad-Problem Minimaler-Spannbaum-Problem Suchverfahren

Mit dem (GPS) versuchten Herbert Simon, J. C. Shaw und Allen Newell 1957 eine Software zu schreiben, die jedes formalisierbare Problem lösen kann. Dies war das erste Computerprogramm, das Wissen über das Problem (also sogenannte Anwendungsdomäne) und die Problemlösestrategie trennte (die sogenannte ).

Allgemeine Solver nutzen bis heute diese Architektur, bei der sie die Problemdefinition und die Lösungsstrategie trennen. Während bei GPS noch einzig das Ziel der Lösung die Vollständigkeit war, nutzen heutige Solver spezielle Strategien, die auf bestimmte Problemklassen zugeschnitten sind. Vorteil dieser Trennung ist, dass diese Solver universeller einsetzbar und nicht auf bestimmte Probleminstanzen abgestimmt werden müssen.

Da in bestimmten Problemklassen teilweise eine sehr große Anzahl an Lösungsalgorithmen existieren, nutzen Solver oft mehrere Lösungsstrategien gleichzeitig, um ein Problem zu lösen.

Beispiele General Problem Solver – Software mit einer allgemeinen Problemlösemethode SAT-Solver – Software für das Erfüllbarkeitsproblem der Aussagenlogik FE-Solver – Software zur Lösung von Finite-Elemente-Aufgaben (z. B. Nastran) STRIPS – Automatische Planungssoftware

Siehe auch Automatisches Problemlösen

Einzelnachweise

Kategorie:Künstliche Intelligenz Kategorie:Numerische Mathematik Kategorie:Mathematische Software