deep space computing AG ist in der Lage Probleme mit linearer Programmierung zu lösen. Wir verwenden GLPK (GNU Linear Programming Kit), um unsere Lösungen zu implementieren. Sobald lineare Löser, die auf GPUs basieren, zur Verfügung stehen werden, will deep space computing einer der ersten Lieferanten dieser Technologie werden, und sie zu ihren Kunden durch den Rechnerverbund anbieten.
Zentrum des Modells ist eine Zielfunktion, die über eine Region der möglichen Lösungen definiert wird. Die Zielfunktion ist linear und wird durch den Vektor c definiert.
Die Region der möglichen Lösungen ist ein konvexer Polyeder, der durch eine Menge von linearen Ungleichungen definiert und eingeschränkt wird. Zusätzliche lineare Gleichungen definieren Erhaltungsgesetze und aktuelle Zustände des Systems. Alle lineare Gleichungen und Ungleichungen werden mit der Matrix A und dem Vektor b definiert.
Der Algorithmus für die lineare Programmierung CPLEX, ursprünglich von IBM entwickelt, findet einen Punkt im Polyeder, in dem die Zielfunktion ihren maximalen Wert annimmt, angenommen dieser Punkt existiert überhaupt.
Bevor der Algorithmus startet, ist es nötig das Problem in einer "augmentierten" Form umzuformulieren. Diese Form fügt weitere "Slack"-Variablen dazu, um die Ungleichungen in Gleichungen umzuwandeln. Das Problem kann dann in folgender Block-Matrix Form geschrieben werden:
wobei xs sind die neu eingeführten Slack-Variablen und Z ist die Variable, die maximiert wird.
Hier ein kleiner Beispiel einer Optimierung eines Pumpspeicherkraftwerkes, die durch deep space mit GLPK geschrieben wurde: