Optimization Service

优化

线性优化服务,用于对线性和混合整数线性程序进行建模和求解。

名称简介
LinearOptimizationConstraint该对象用于存储 lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound 形式的线性约束条件,其中 lowerBoundupperBound 是常量,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

属性

媒体资源类型说明
StatusStatus求解器的状态。
VariableTypeVariableType求解器创建的变量的类型。

方法

方法返回类型简介
createEngine()LinearOptimizationEngine创建一个求解线性程序(可能是混合整数程序)的引擎。

LinearOptimizationSolution

方法

方法返回类型简介
getObjectiveValue()Number获取当前解决方案中目标函数的值。
getStatus()Status获取解决方案的状态。
getVariableValue(variableName)Number获取上次调用 LinearOptimizationEngine.solve() 时创建的解决方案中变量的值。
isValid()Boolean确定解决方案是可行还是最佳。

Status

属性

媒体资源类型说明
OPTIMALEnum找到最佳解决方案时的状态。
FEASIBLEEnum已找到可行(不一定是最佳)解决方案的状态。
INFEASIBLEEnum当前模型不可行(无解决方案)时的状态。
UNBOUNDEDEnum当前模型未绑定时的状态。
ABNORMALEnum因意外原因而未能找到解决方案时的状态。
MODEL_INVALIDEnum模型无效时的状态。
NOT_SOLVEDEnum尚未调用 LinearOptimizationEngine.solve() 时的状态。

VariableType

属性

媒体资源类型说明
INTEGEREnum只能接受整数值的变量类型。
CONTINUOUSEnum可取任何实数的变量类型。