3.4 解ファイルの上下限,制約と対応する双対変数表示部
解ファイルの
%% %% BOUNDS %%
から続く部分には変数の上下限と双対変数,また
%% %% CONSTRAINTS %%
から続く部分には制約式の上下限と双対変数がそれぞれ表示されます.
%% %% BOUNDS %% [ BOUND TYPE ] DUAL VALUE B# 1 [ 0 <= x1 ] 4.891837406e-010 B# 2 [ 0 <= x2 ] 8.151927281e-010 B# 3 [ 0 <= x3 ] 1.000000001 %% %% CONSTRAINTS %% [ CONSTRAINT/OBJECTIVE TYPE ] DUAL/WGT C# 1 [ OBJECTIVE (MINIMIZE) ] 0 C# 2 [ g1 <= 4 ] -1.999999998 C# 3 [ g2 <= 5 ] -0.4999999986 C# 4 [ g3 <= 7 ] -2.443858094e-009
BOUND TYPE及びCONSTRAINT/OBJECTIVE TYPEが「上下限の種類」,DUAL VALUE及びDUAL/WGTが「双対変数の値」を示しています.
B# 1の行では,x1
に対する制約が下限制約0 <= x1
であること,またその双対変数がほぼ0である旨が示されています.
双対変数は制約式や変数の上下限を単位あたり変化させたときの目的関数の変動を示しています.双対変数は別名,シャドウプライス,またはreduced costとも呼ばれ,その正負や大きさから上下限のいずれがactiveかを次のように判断することができます.
解ファイルの双対変数値 | 状態 |
---|---|
正 | 下限制約に付着(下限制約がactive) |
負 | 上限制約に付着(上限制約がactive) |
零/零に近い値 | 上下限,いずれにも付着していない |
目的関数の双対変数値に対応する部分には零が出力されます.
上に戻る