線形最適化サービスと帯分積線形プログラムをモデル化して解くために使用される線形最適化サービス。
クラス
名前 | 概要 |
---|---|
LinearOptimizationConstraint | lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound という形式の線形制約を格納するオブジェクト。ここで、lowerBound と upperBound は定数、a(i) は定数係数、x(i) は変数(不明)です。 |
LinearOptimizationEngine | 線形プログラムのモデル化と解法に使用されるエンジン。 |
LinearOptimizationService | 線形最適化サービスと帯分積線形プログラムをモデル化して解くために使用される線形最適化サービス。 |
LinearOptimizationSolution | 線形プログラムの解。 |
Status | ソリューションのステータス。 |
VariableType | エンジンによって作成された変数のタイプ。 |
LinearOptimizationConstraint
Methods
メソッド | 戻り値の型 | 概要 |
---|---|---|
setCoefficient(variableName, coefficient) | LinearOptimizationConstraint | 制約に含まれる変数の係数を設定します。 |
LinearOptimizationEngine
Methods
メソッド | 戻り値の型 | 概要 |
---|---|---|
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 | 解法によって作成される変数の型。 |
Methods
メソッド | 戻り値の型 | 概要 |
---|---|---|
createEngine() | LinearOptimizationEngine | 線形プログラム(場合によっては混合整数プログラム)を解決するエンジンを作成します。 |
LinearOptimizationSolution
Methods
メソッド | 戻り値の型 | 概要 |
---|---|---|
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 | 任意の実数を取る変数の型です。 |