Class LinearOptimizationService

سرویس بهینه سازی خطی

سرویس بهینه سازی خطی که برای مدل سازی و حل برنامه های خطی اعداد صحیح مختلط و خطی استفاده می شود. مثال زیر برنامه خطی زیر را حل می کند:

دو متغیر x و y :
0 ≤ x ≤ 10
0 ≤ y ≤ 5

محدودیت ها:
0 ≤ 2 * x + 5 * y ≤ 10
0 ≤ 10 * x + 3 * y ≤ 20

هدف:
x + y را به حداکثر برسانید

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

خواص

اموال تایپ کنید توضیحات
Status Status وضعیت حل کننده
VariableType VariableType نوع متغیرهای ایجاد شده توسط حل کننده.

روش ها

روش نوع برگشت شرح مختصر
createEngine() LinearOptimizationEngine یک موتور برای حل برنامه های خطی (برنامه های عدد صحیح مختلط بالقوه) ایجاد می کند.

مستندات دقیق

createEngine()

یک موتور برای حل برنامه های خطی (برنامه های عدد صحیح مختلط بالقوه) ایجاد می کند.

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

// ...

بازگشت

LinearOptimizationEngine - یک موتور بهینه سازی خطی