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

Beschreibung

Bearbeiten

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

Solver sind zumeist auf die Lösung spezieller Probleme programmiert, wie z. B.

Mit dem General Problem Solver (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 Engine).

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

Bearbeiten

Siehe auch

Bearbeiten

Einzelnachweise

Bearbeiten
  1. GAMS-Solvers. (Memento vom 26. November 2014 im Webarchiv archive.today)
  2. O. Goldschmit: LP Solver.
  3. a b M. Lange: SAT-Solver. (PDF; 141 kB)