Optimization Service

Оптимизация

Служба линейной оптимизации, используемая для моделирования и решения линейных и смешанно-целочисленных линейных программ.

Классы

Имя Краткое описание
LinearOptimizationConstraint Объект, хранящий линейное ограничение вида lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound где lowerBound и upperBound — константы, a(i) — постоянные коэффициенты, а x(i) — переменные (неизвестные).
LinearOptimizationEngine Движок, используемый для моделирования и решения линейной программы.
LinearOptimizationService Служба линейной оптимизации, используемая для моделирования и решения линейных и смешанно-целочисленных линейных программ.
LinearOptimizationSolution Решение линейной программы.
Status Статус решения.
VariableType Тип переменных, создаваемых движком.

LinearOptimizationConstraint

Методы

Метод Тип возврата Краткое описание
setCoefficient(variableName, coefficient) LinearOptimizationConstraint Устанавливает коэффициент переменной в ограничении.

LinearOptimizationEngine

Методы

Метод Тип возврата Краткое описание
addConstraint(lowerBound, upperBound) LinearOptimizationConstraint Добавляет новое линейное ограничение в модель.
addConstraints(lowerBounds, upperBounds, variableNames, coefficients) LinearOptimizationEngine Пакетно добавляет ограничения в модель.
addVariable(name, lowerBound, upperBound) LinearOptimizationEngine Добавляет в модель новую непрерывную переменную.
addVariable(name, lowerBound, upperBound, type) LinearOptimizationEngine Добавляет новую переменную в модель.
addVariable(name, lowerBound, upperBound, type, objectiveCoefficient) LinearOptimizationEngine Добавляет новую переменную в модель.
addVariables(names, lowerBounds, upperBounds, types, objectiveCoefficients) LinearOptimizationEngine Пакетно добавляет переменные в модель.
setMaximization() LinearOptimizationEngine Устанавливает направление оптимизации на максимизацию линейной целевой функции.
setMinimization() LinearOptimizationEngine Устанавливает направление оптимизации на минимизацию линейной целевой функции.
setObjectiveCoefficient(variableName, coefficient) LinearOptimizationEngine Устанавливает коэффициент переменной в линейной целевой функции.
solve() LinearOptimizationSolution Решает текущую линейную программу со сроком выполнения по умолчанию 30 секунд.
solve(seconds) LinearOptimizationSolution Решает текущую линейную программу.

LinearOptimizationService

Характеристики

Свойство Тип Описание
Status Status Статус решателя.
VariableType VariableType Тип переменных, создаваемых решателем.

Методы

Метод Тип возврата Краткое описание
createEngine() LinearOptimizationEngine Создает механизм для решения линейных программ (потенциально смешанно-целочисленных программ).

LinearOptimizationSolution

Методы

Метод Тип возврата Краткое описание
getObjectiveValue() Number Получает значение целевой функции в текущем решении.
getStatus() Status Получает состояние решения.
getVariableValue(variableName) Number Получает значение переменной в решении, созданном последним вызовом LinearOptimizationEngine.solve() .
isValid() Boolean Определяет, является ли решение осуществимым или оптимальным.

Status

Характеристики

Свойство Тип Описание
OPTIMAL Enum Статус, когда оптимальное решение найдено.
FEASIBLE Enum Статус, когда найдено возможное (не обязательно оптимальное) решение.
INFEASIBLE Enum Статус, когда текущая модель невозможна (не имеет решения).
UNBOUNDED Enum Статус, когда текущая модель не привязана.
ABNORMAL Enum Статус, когда не удалось найти решение по неожиданным причинам.
MODEL_INVALID Enum Статус, когда модель недействительна.
NOT_SOLVED Enum Статус, когда LinearOptimizationEngine.solve() еще не был вызван.

VariableType

Характеристики

Свойство Тип Описание
INTEGER Enum Тип переменной, которая может принимать только целочисленные значения.
CONTINUOUS Enum Тип переменной, которая может принимать любое действительное значение.