整数計画問題(せいすうけいかくもんだい)は、線型計画問題において、解ベクトル の各要素を整数に限定した問題をいう。これはNP困難な問題に該当する。線型計画問題には多項式時間アルゴリズムが存在するのに対し、整数計画問題ではまだ見つかっていない。

解ベクトル の各要素を または のみに限定したものを、特に0-1整数計画問題という。

整数計画問題の基準形と標準形

編集

整数計画問題では、定式化を標準形(standard form)および基準形(canonical form)に従った形式で表される。基準形の整数計画問題は次のように書き表される(このときベクトル について求める問題である)[1]:

また標準形の整数計画問題は次のように書き表される:

ここで は行列、 は列ベクトルである。線形計画問題と同様に、不等式の制約式に対して非負の制約をもつスラック変数英語版 を不等式制約式の小さな項に対して導入することで等式の制約式に書き換えられ、 という非負の条件を持たない自由変数に対しては、非負の変数 , を用いて、 と書き直すことで、整数計画問題を標準形に表すことができる。

編集
IPとLP緩和後の多面体

右の図に対する整数計画問題は以下の通りである:

ここで赤点は実行可能な整数点を表しており、赤の破線は実行可能な点をすべて含む最小の多面体(凸包)を表している。青い線と座標軸によって定義されるのが、制約条件から整数制約を除いた線形計画(LP)緩和の多面体を表している。最適化の目標としては、黒の破線が多面体に接した状態を維持したまま可能な限り上方に移動させることである。整数問題の最適解は , で、目的関数値が である。一方、変数の整数条件を取り除いた線形計画緩和の最適解は で、目的関数値は である。この線形計画緩和の最適解に対して小数部分を最も近い整数に丸めると、 となり、整数計画問題の実行可能解ではない。

類似の問題

編集

混合整数線形計画問題(Mixed-integer linear programming: MILP)とは、変数の一部分に対して整数条件が課された問題である。

0-1整数計画問題(Zero–one linear programming、binary integer programming)とは、変数の取り得る値が 0 または 1 に限定された問題である。整数変数が有界の場合はバイナリ変数英語版を用いて表現することができる[2][3]。具体例として、整数変数が の範囲であるとき、変数は 個のバイナリ変数を用いて:

もしくは、 個のバイナリ変数を用いて:

もしくは、 個のバイナリ変数を用いて:

と書き換えられる。

整数計画問題として解かれる問題の例

編集

脚注

編集
  1. ^ Papadimitriou, C. H.; Steiglitz, K. (1998). Combinatorial optimization: algorithms and complexity. Mineola, NY: Dover. ISBN 0486402584 
  2. ^ Williams, H.P. (2009). Logic and integer programming. International Series in Operations Research & Management Science. 130. ISBN 978-0-387-92280-5 
  3. ^ 藤江哲也「整数計画法による定式化入門」『オペレーションズ・リサーチ : 経営の科学』第57巻第4号、日本オペレーションズ・リサーチ学会、2012年、190-197頁、CRID 1520290883136073600ISSN 0030-3674NAID 110009426124NCID AN00364999オリジナルの2025年3月18日時点におけるアーカイブ、2025年4月1日閲覧 

関連文献

編集
  • 今野浩:「整数計画法」,産業図書,1981.
  • 今野浩・鈴木久敏編:「整数計画と組合せ最適化」,日科技連,1982.
  • 久保幹雄,田村明久,松井知己(編):「応用数理計画ハンドブック」,朝倉書店,2002.

📚 Artikel Terkait di Wikipedia

二次計画法

“Quadratic programming with one negative eigenvalue is NP-hard”. Journal of Global Optimization 1 (1): 15–22. doi:10.1007/bf00120662.  ^ Mixed Integer Nonlinear

プレスバーガー算術

Barrett, Clark W.; Tinelli, Cesare (2014). “Leveraging linear and mixed integer programming for SMT”. FMCAD 2014: 139–146. doi:10.1109/FMCAD.2014.6987606

PHP (プログラミング言語)

2014年12月16日閲覧。 ^ “PHP: rfc:closure_apply”. php.net. 2014年12月16日閲覧。 ^ “PHP: rfc:integer_semantics”. php.net. 2014年12月16日閲覧。 ^ “PHP: rfc:isset_ternary”. php.net

小林みどり

FOR INTEGER PROGRAMMING PROBLEMS」『経営と経済』第64巻第2号、長崎大学経済学会、1984年9月、97-105頁、ISSN 0286-9101、NAID 40000834632。  小林みどり「Valid Inequalities for Mixed Integer Programming

自動計画

(2005): 919-931. ^ Imai, Tatsuya, and Alex Fukunaga. "A Practical, Integer-Linear Programming Model for the Delete-Relaxation in Cost-Optimal Planning." ECAI

ハイブリッドシステム

n:英語版) を用いた手法が広く知られている。 特に離散時間 MLD システムでは、解くべき最適化問題は混合整数計画問題 (mixed integer programming problem; MIP -) に帰着する。 これは組合せ最適化の一種であり、一般にNP困難であることが知られている。 ^

Picat

Picatは制約プログラミングをサポートしている。「ソルバーモジュール」と呼ばれる、cp(Constraint Programming)、sat(Satisfiability)、mip(Mixed Integer Programming)という三つのモジュールのいずれかをインポートすることによって、制約充足問題を記述することができるようになる。

分枝価格法

分枝価格法(ぶんしかかくほう、英: branch and price)とは、(混合)整数計画問題(Mixed integer programming)を解くための組合せ最適化の解法である。分枝価格法は分枝限定法と列生成法を組みわせたアルゴリズムである。 分枝価格法は各探索木における線形計画緩和問題