メインコンテンツ

SensitivityAnalysis

線形計画法の係数の感度

R2026a 以降

説明

SensitivityAnalysis オブジェクトには、線形計画法の解に関する感度解析情報が格納されます。さまざまな係数に対する目的関数値の変化率、および最適基底を保持する係数変化の範囲がオブジェクトのプロパティで提供されます。詳細については、詳細を参照してください。

作成

SensitivityAnalysis オブジェクトは、linprog 関数の 6 番目の出力として sensitivity を指定することで作成します。

[x,fval,exitflag,output,lambda,sensitivity] = linprog(...)

プロパティ

すべて展開する

各プロパティは、以下に示す 5 つの列を含む table です。

列名説明
LowerLimitモデル パラメーターが現在の最適基底を変えることなく取り得る最小値
UpperLimitモデル パラメーターが現在の最適基底を変えることなく取り得る最大値
ObjectiveValueAtLowerLimitモデル パラメーターが LowerLimit に変更された場合の最適解における目的関数値
ObjectiveValueAtUpperLimitモデル パラメーターが UpperLimit に変更された場合の最適解における目的関数値
ObjectiveValueChangeRate範囲 (LowerLimit, UpperLimit) のモデル パラメーターに対する目的関数値の変化率

この プロパティ は読み取り専用です。

目的関数係数 f の感度。N 行 5 列の table として返されます。ここで、N は問題の変数の数です。

この プロパティ は読み取り専用です。

線形等式制約 beq の感度。Neq 行 5 列の table として返されます。ここで、Neq は問題内の線形等式制約の数です。

この プロパティ は読み取り専用です。

線形不等式制約 b の感度。Nineq 行 5 列の table として返されます。ここで、Nineq は問題内の線形不等式制約の数です。

この プロパティ は読み取り専用です。

線形不等式制約 bl の感度。Nineq 行 5 列の table として返されます。ここで、Nineq は問題内の線形不等式制約の数です。

この プロパティ は読み取り専用です。

下限 lb の感度。N 行 5 列の table として返されます。ここで、N は問題の変数の数です。

データ型: table

この プロパティ は読み取り専用です。

上限 ub の感度。N 行 5 列の table として返されます。ここで、N は問題の変数の数です。

すべて折りたたむ

線形計画法を作成します。

f = [-2,-1];
A = [-1 -1;
    1 -1/2;
    -1 1];
bl = [-5 -Inf -Inf];
b = [Inf 2 3];
lb = [0 0];
ub = [];
Aeq = [];
beq = [];

線形計画法を解き、感度を要求します。

[x,fval,exitflag,output,lambda,sensitivity] = ...
    linprog(f,A,b,Aeq,beq,lb,ub)
Optimal solution found.
x = 2×1

     7
    10

fval = 
-24
exitflag = 
1
output = struct with fields:
         iterations: 0
    constrviolation: 0
            message: 'Optimal solution found.'
          algorithm: 'dual-simplex-highs'
      firstorderopt: 0

lambda = struct with fields:
           lower: [2×1 double]
           upper: [2×1 double]
           eqlin: [0×1 double]
    ineqlinLower: [3×1 double]
         ineqlin: [3×1 double]

sensitivity = 
  SensitivityAnalysis with properties:

   Variables Sensitivity:
    ObjectiveCoefficient: [2×5 table]
              LowerBound: [2×5 table]
              UpperBound: [2×5 table]

   Constraints Sensitivity:
           InequalityLHS: [3×5 table]
           InequalityRHS: [3×5 table]
             EqualityRHS: [0×5 table]

感度を確認します。

sensitivity.ObjectiveCoefficient
ans=2×5 table
    LowerLimit    UpperLimit    ObjectiveValueAtLowerLimit    ObjectiveValueAtUpperLimit    ObjectiveValueChangeRate
    __________    __________    __________________________    __________________________    ________________________

       -Inf           1                    -Inf                           -3                            7           
       -Inf           1                    -Inf                           -4                           10           

sensitivity.LowerBound
ans=2×5 table
    LowerLimit    UpperLimit    ObjectiveValueAtLowerLimit    ObjectiveValueAtUpperLimit    ObjectiveValueChangeRate
    __________    __________    __________________________    __________________________    ________________________

       -Inf            7                   -24                           -24                           0            
       -Inf           10                   -24                           -24                           0            

sensitivity.InequalityLHS
ans=3×5 table
    LowerLimit    UpperLimit    ObjectiveValueAtLowerLimit    ObjectiveValueAtUpperLimit    ObjectiveValueChangeRate
    __________    __________    __________________________    __________________________    ________________________

       -Inf          -17                   -24                           -24                           0            
       -Inf            2                   -24                           -24                           0            
       -Inf            3                   -24                           -24                           0            

sensitivity.InequalityRHS
ans=3×5 table
    LowerLimit    UpperLimit    ObjectiveValueAtLowerLimit    ObjectiveValueAtUpperLimit    ObjectiveValueChangeRate
    __________    __________    __________________________    __________________________    ________________________

        -17          Inf                   -24                            -24                           0           
       -1.5          Inf                    -3                           -Inf                          -6           
         -2          Inf                    -4                           -Inf                          -4           

返される感度の説明については、SensitivityAnalysisを参照してください。

詳細

すべて展開する

バージョン履歴

R2026a で導入