Class LinearOptimizationService

LinearOptimizationService

Dienst für lineare Optimierung, mit dem lineare und gemischte Ganzzahlen modelliert und aufgelöst werden Programmen. Das folgende Beispiel löst das folgende lineare Programm:

Zwei Variablen, x und y:
0 ≤ x ≤ 10
0 ≤ y ≤ 5

Einschränkungen:
0 ≤ 2 * x + 5 * y ≤ 10
0 ≤ 10 * x + 3 * y ≤ 20

Ziel:
x + y maximieren

var engine = LinearOptimizationService.createEngine();

// Add variables, constraints and define the objective using addVariable(), addConstraint(), etc.
// Add two variables, 0 <= x <= 10 and 0 <= y <= 5
engine.addVariable('x', 0, 10);
engine.addVariable('y', 0, 5);

// Create the constraint: 0 <= 2 * x + 5 * y <= 10
var constraint = engine.addConstraint(0, 10);
constraint.setCoefficient('x', 2);
constraint.setCoefficient('y', 5);

// Create the constraint: 0 <= 10 * x + 3 * y <= 20
var constraint = engine.addConstraint(0, 20);
constraint.setCoefficient('x', 10);
constraint.setCoefficient('y', 3);

// Set the objective to be x + y
engine.setObjectiveCoefficient('x', 1);
engine.setObjectiveCoefficient('y', 1);

// Engine should maximize the objective.
engine.setMaximization();

// Solve the linear program
var solution = engine.solve();
if (!solution.isValid()) {
  Logger.log('No solution ' + solution.getStatus());
} else {
  Logger.log('Value of x: ' + solution.getVariableValue('x'));
  Logger.log('Value of y: ' + solution.getVariableValue('y'));
}

Attribute

AttributTypBeschreibung
StatusStatusStatus des Solver.
VariableTypeVariableTypeTyp der Variablen, die vom Rechner erstellt wurden.

Methoden

MethodeRückgabetypKurzbeschreibung
createEngine()LinearOptimizationEngineErstellt eine Engine zur Lösung linearer Programme (potenziell gemischte Ganzzahlen).

Detaillierte Dokumentation

createEngine()

Erstellt eine Engine zur Lösung linearer Programme (möglicherweise gemischte ganzzahlige Programme).

// Creates a linear optimization engine.
var engine = LinearOptimizationService.createEngine();
engine.addVariable('x', 0, 10);

// ...

Rückflug

LinearOptimizationEngine – eine lineare Optimierungs-Engine