結論だけ先に言うと、「上界(upper bound)」は“解の値の保証”であり、
「最大(max 制約)」は“変数の許容量の上限”であって、まったく別物。
🎯 一言で区別
上界(upper bound): 目的関数の値について「これ以上は小さくできない/大きくできない」という 探索木全体に対する評価値。
最大(max 制約): あるリソースや変数が「これ以上使ってはいけない」という モデル内の制約式。
📌 もう少し厳密に:最適化の文脈での違い
1. 上界(Upper Bound)
最適化(特に Branch-and-Bound / Branch-and-Price)で使う概念。
最小化問題なら 上界 = 現時点での最良実行可能解の値
下界 = 緩和問題の値(LP, Lagrangian, etc.)
探索木で:
下界が上がる → 探索が絞られる
上界が下がる → より良い実行可能解が見つかった
つまり 上界は探索の進捗を示すグローバルな値。
2. 最大(Max 制約)
モデルの中にある通常の制約。
例:
これは「リソース使用量は最大 10」という意味であり、 目的関数の値とは無関係。
Branch-and-Bound の上界とは全く別の概念。
🧩 混同しやすい理由
最小化問題で「上界が上がる」と言うと、 直感的には「制約の上限が上がる」ように聞こえるが、 まったく違う。
上界は 目的関数の値の話
最大は 制約式の話
0 件のコメント:
コメントを投稿