Optimization Service
优化
线性优化服务,用于对线性和混合整数线性规划进行建模和求解。
类
方法
方法 | 返回类型 | 简介 |
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 | 求解当前线性规划。 |
属性
属性 | 类型 | 说明 |
OPTIMAL | Enum | 找到最佳解决方案时的状态。 |
FEASIBLE | Enum | 找到可行(但不一定是最佳)解决方案时的状态。 |
INFEASIBLE | Enum | 当前模型不可行(无解)时的状态。 |
UNBOUNDED | Enum | 当前模型未绑定时的状态。 |
ABNORMAL | Enum | 当系统因意外原因而未能找到解决方案时显示的状态。 |
MODEL_INVALID | Enum | 模型无效时的状态。 |
NOT_SOLVED | Enum | 尚未调用 LinearOptimizationEngine.solve() 时的状态。 |
属性
属性 | 类型 | 说明 |
INTEGER | Enum | 只能采用整数值的变量类型。 |
CONTINUOUS | Enum | 可接受任何实值的变量类型。 |
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-12-03。
[null,null,["最后更新时间 (UTC):2024-12-03。"],[[["The Linear Optimization Service enables the modeling and resolution of linear and mixed-integer linear programs within Apps Script."],["It provides classes like `LinearOptimizationConstraint`, `LinearOptimizationEngine`, and `LinearOptimizationSolution` to define, solve, and retrieve optimization results."],["`LinearOptimizationEngine` allows adding variables, constraints, setting objective functions (maximization or minimization), and solving the linear program."],["Solutions can be evaluated using methods like `getObjectiveValue`, `getStatus`, and `getVariableValue` to understand the optimization outcome."],["The service utilizes various statuses (e.g., `OPTIMAL`, `FEASIBLE`, `INFEASIBLE`) and variable types (`INTEGER`, `CONTINUOUS`) to represent the solution state and variable characteristics."]]],["The linear optimization service models and solves linear and mixed-integer linear programs. Key actions include: creating an engine (`LinearOptimizationEngine`), adding variables with bounds and types, adding constraints to the model, setting the objective function's direction (maximize or minimize), and setting coefficients for variables in the objective function and constraints. The `solve()` method then computes the solution. The `LinearOptimizationSolution` object contains methods to determine solution status, objective value, and variable values.\n"]]