Optimization Service

Optimierung

Der Dienst zur linearen Optimierung, mit dem lineare und gemischt-ganzzahlige lineare Programme modelliert und gelöst werden.

Classes

NameKurzbeschreibung
LinearOptimizationConstraintObjekt, das eine lineare Einschränkung vom Typ lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound speichert, wobei lowerBound und upperBound Konstanten, a(i) Konstantenkoeffizienten und x(i) Variablen (Unbekannte) sind.
LinearOptimizationEngineDer Engine, mit der ein lineares Programm modelliert und gelöst wird.
LinearOptimizationServiceDer Dienst zur linearen Optimierung, mit dem lineare und gemischt-ganzzahlige lineare Programme modelliert und gelöst werden.
LinearOptimizationSolutionDie Lösung eines linearen Programms.
StatusStatus der Lösung.
VariableTypeArt der von der Engine erstellten Variablen.

LinearOptimizationConstraint

Methoden

MethodeRückgabetypKurzbeschreibung
setCoefficient(variableName, coefficient)LinearOptimizationConstraintLegt den Koeffizienten einer Variablen in der Einschränkung fest.

LinearOptimizationEngine

Methoden

MethodeRückgabetypKurzbeschreibung
addConstraint(lowerBound, upperBound)LinearOptimizationConstraintFügt dem Modell eine neue lineare Einschränkung hinzu.
addConstraints(lowerBounds, upperBounds, variableNames, coefficients)LinearOptimizationEngineFügen Sie dem Modell Einschränkungen im Batch hinzu.
addVariable(name, lowerBound, upperBound)LinearOptimizationEngineDem Modell wird eine neue kontinuierliche Variable hinzugefügt.
addVariable(name, lowerBound, upperBound, type)LinearOptimizationEngineFügt dem Modell eine neue Variable hinzu.
addVariable(name, lowerBound, upperBound, type, objectiveCoefficient)LinearOptimizationEngineFügt dem Modell eine neue Variable hinzu.
addVariables(names, lowerBounds, upperBounds, types, objectiveCoefficients)LinearOptimizationEngineFügt dem Modell mehrere Variablen gleichzeitig hinzu.
setMaximization()LinearOptimizationEngineLegt die Optimierungsrichtung auf die Maximierung der linearen Zielfunktion fest.
setMinimization()LinearOptimizationEngineLegt die Optimierungsrichtung auf die Minimierung der linearen Zielfunktion fest.
setObjectiveCoefficient(variableName, coefficient)LinearOptimizationEngineLegt den Koeffizienten einer Variablen in der linearen Zielfunktion fest.
solve()LinearOptimizationSolutionLöst das aktuelle lineare Programm mit dem Standardzeitlimit von 30 Sekunden.
solve(seconds)LinearOptimizationSolutionLösen Sie das aktuelle lineare Programm.

LinearOptimizationService

Attribute

AttributTypBeschreibung
StatusStatusStatus des Solvers.
VariableTypeVariableTypeArt der vom Solver erstellten Variablen.

Methoden

MethodeRückgabetypKurzbeschreibung
createEngine()LinearOptimizationEngineErstellt eine Engine zum Lösen linearer Programme (potenziell gemischte Ganzzahlprogramme).

LinearOptimizationSolution

Methoden

MethodeRückgabetypKurzbeschreibung
getObjectiveValue()NumberRuft den Wert der Zielfunktion in der aktuellen Lösung ab.
getStatus()StatusRuft den Status der Lösung ab.
getVariableValue(variableName)NumberRuft den Wert einer Variablen in der Lösung ab, die durch den letzten Aufruf von LinearOptimizationEngine.solve() erstellt wurde.
isValid()BooleanBestimmt, ob die Lösung realisierbar oder optimal ist.

Status

Attribute

AttributTypBeschreibung
OPTIMALEnumStatus, wenn eine optimale Lösung gefunden wurde.
FEASIBLEEnumStatus, wenn eine umsetzbare (nicht unbedingt optimale) Lösung gefunden wurde.
INFEASIBLEEnumStatus, wenn das aktuelle Modell nicht realisierbar ist (keine Lösung hat).
UNBOUNDEDEnumStatus, wenn das aktuelle Modell nicht gebunden ist.
ABNORMALEnumStatus, wenn aus unerwarteten Gründen keine Lösung gefunden werden konnte.
MODEL_INVALIDEnumStatus, wenn das Modell ungültig ist.
NOT_SOLVEDEnumStatus, wenn LinearOptimizationEngine.solve() noch nicht aufgerufen wurde.

VariableType

Attribute

AttributTypBeschreibung
INTEGEREnumVariablentyp, der nur Ganzzahlen annehmen kann.
CONTINUOUSEnumVariablentyp, der jeden reellen Wert annehmen kann.