例えば、累計シフト制約で、累計シフト数≦10であったとします。
この時最適解が、累計シフト9であったとすると、
■そのDualは、0
となります。つまり、制約境界10に接しておらず、余裕(スラック)が1あります。この制約を微小に変化されても目的関数は変化しません。よって、制約に対する目的関数への寄与は0、ということになります。
では、MIN側にも制約があった場合は、どうなるでしょうか? 6≦9≦10 の場合も余裕があるので、
■そのDualは、0
となります。
もう一つ制約があって、特定シフト回数≦3 と言う制約があって、最適解時の回数が3であったとします。こういう境界に張り付いた状態であるときだけ、Dualは、0にはならない、ということが出来ます。逆に言うと、Dualが0である制約は、効いていない、ということになります。
注意すべきは、Dualの概念が有効なのは、あくまでLPsolver上のみです。即ち緩和問題でのみ定義可能です。整数計画では、DUALという概念はありません。
0 件のコメント:
コメントを投稿