2026年10月19日月曜日

上界と最大の違い

 結論だけ先に言うと、「上界(upper bound)」は“解の値の保証”であり、

「最大(max 制約)」は“変数の許容量の上限”であって、まったく別物。

🎯 一言で区別

  • 上界(upper bound): 目的関数の値について「これ以上は小さくできない/大きくできない」という 探索木全体に対する評価値。

  • 最大(max 制約): あるリソースや変数が「これ以上使ってはいけない」という モデル内の制約式。

📌 もう少し厳密に:最適化の文脈での違い

1. 上界(Upper Bound)

最適化(特に Branch-and-Bound / Branch-and-Price)で使う概念。

  • 最小化問題なら 上界 = 現時点での最良実行可能解の値

  • 下界 = 緩和問題の値(LP, Lagrangian, etc.)

探索木で:

  • 下界が上がる → 探索が絞られる

  • 上界が下がる → より良い実行可能解が見つかった

つまり 上界は探索の進捗を示すグローバルな値。

2. 最大(Max 制約)

モデルの中にある通常の制約。

例:

x1+x2+x3≤10

これは「リソース使用量は最大 10」という意味であり、 目的関数の値とは無関係。

Branch-and-Bound の上界とは全く別の概念。

🧩 混同しやすい理由

  • 最小化問題で「上界が上がる」と言うと、 直感的には「制約の上限が上がる」ように聞こえるが、 まったく違う。

  • 上界は 目的関数の値の話

  • 最大は 制約式の話

0 件のコメント:

コメントを投稿