Optimization Service

最適化

線形最適化サービス。線形プログラムと混合整数線形プログラムのモデル化と解析に使用されます。

クラス

名前概要
LinearOptimizationConstraintlowerBound ≤ 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)NumberLinearOptimizationEngine.solve() の最後の呼び出しによって作成されたソリューション内の変数の値を取得します。
isValid()Booleanソリューションが実行可能か、最適かを判断します。

Status

プロパティ

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

VariableType

プロパティ

プロパティタイプ説明
INTEGEREnum整数値のみをとることができる変数の型。
CONTINUOUSEnum任意の実数値をとることができる変数の型。