Optimization Service

最適化

線形計画法と混合整数線形計画法をモデル化して解決するために使用される線形最適化サービス。

クラス

名前概要
LinearOptimizationConstraintの形式の線形制約を格納するオブジェクト。ここで、lowerBoundupperBound は定数、a(i) は定数係数、x(i) は変数(不明)です。lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound
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)NumberLinearOptimizationEngine.solve() の最後の呼び出しで作成されたソリューションの変数の値を取得します。
isValid()Booleanソリューションが実行可能か最適かを判断します。

Status

プロパティ

プロパティタイプ説明
OPTIMALEnum最適なソリューションが見つかった場合のステータス。
FEASIBLEEnum実行可能な(必ずしも最適ではない)ソリューションが見つかった場合のステータス。
INFEASIBLEEnum現在のモデルが実行不可能(ソリューションがない)場合のステータス。
UNBOUNDEDEnum現在のモデルがバインドされていない場合のステータス。
ABNORMALEnum予期しない理由でソリューションが見つからなかった場合のステータス。
MODEL_INVALIDEnumモデルが無効な場合のステータス。
NOT_SOLVEDEnumLinearOptimizationEngine.solve() がまだ呼び出されていない場合のステータス。

VariableType

プロパティ

プロパティタイプ説明
INTEGEREnum整数値のみを受け付ける変数の型。
CONTINUOUSEnum任意の実数値を受け付ける変数の型。