Class LinearOptimizationService

LinearOptimizationService

Usługa optymalizacji liniowej służąca do modelowania i rozwiązywania problemów linearnych linearnych i mieszanych programów. Poniższy przykład rozwiązuje ten problem liniowy:

Dwie zmienne, x i y:
0 ≤ x ≤ 10
0 ≤ y ≤ 5

Ograniczenia:
0 ≤ 2 * x + 5 * y ≤ 10
0 ≤ 10 * x + 3 * y ≤ 20

Cel:
x + y – maksymalizuj

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'));
}

Właściwości

WłaściwośćTypOpis
StatusStatusStan rozwiązania.
VariableTypeVariableTypeTyp zmiennych utworzonych przez narzędzie do rozwiązywania problemów.

Metody

MetodaZwracany typKrótki opis
createEngine()LinearOptimizationEngineTworzy silnik do rozwiązywania programów linearnych (potencjalnie mieszanych liczb całkowitych).

Szczegółowa dokumentacja

createEngine()

Tworzy silnik do rozwiązywania programów linearnych (potencjalnie mieszanych liczb całkowitych).

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

// ...

Powrót

LinearOptimizationEngine – linearny mechanizm optymalizacji