Solver
Solver (engl., Dt. Solver ) is a collective term for special mathematical computer programs can solve mathematical problems numerically.
description
Solvers can exist as an independent software package or can be integrated into other software systems as a program library .
Solvers are mostly programmed to solve specific problems, such as B.
- Systems of linear and non-linear equations
- Quite rational functions
- Mathematical optimization
- Ordinary differential equations
- Satisfiability problem of propositional logic
- Constraint Satisfaction Problem
- Shortest path problem
- Minimal spanning tree problem
- Search procedure
With the General Problem Solver ( GPS ) Herbert Simon, JC Shaw and Allen Newell tried in 1957 to write a software that can solve any problem that can be formalized. This was the first computer program that separated knowledge about the problem (so called application domain ) and the problem-solving strategy (so called engine ).
General solvers still use this architecture today, in which they separate the problem definition and the solution strategy. While with GPS the only goal of the solution was completeness , today's solvers use special strategies that are tailored to specific problem classes. The advantage of this separation is that these solvers can be used more universally and do not have to be tailored to specific problem instances .
Since a very large number of solution algorithms sometimes exist in certain problem classes , solvers often use several solution strategies at the same time to solve a problem.
Examples
- General Problem Solver - Software that provides a general problem-solving method
- SAT-Solver - software for the satisfiability problem of propositional logic
- FE-Solver - software for solving finite element tasks (e.g. Nastran )
- STRIPS - Automatic planning software
See also
Individual evidence
- ↑ GAMS solver. ( Memento from November 26, 2014 in the web archive archive.today )
- ^ O. Goldschmit: LP Solver.
- ↑ a b M. Lange: SAT Solver. (PDF; 141 kB)