どの整数線形プログラムが簡単ですか?


13

問題の解決を試みている間に、私はその一部を次の整数線形プログラムとして表現することになりました。ここで入力の一部として与えられたすべての正の整数です。変数x i jの指定されたサブセットはゼロに設定され、残りは正の整数値を取ることができます。,m,n1,n2,,n,c1,c2,,cm,wxij

最小化

j=1mcji=1xij

対象:

j=1mxij=nii

i=1xijwj

この整数プログラムが多項式時間で解けるかどうか知りたい。私の元々の問題は解決していれば解決し、そうでなければ別の方法を試さなければなりません だから私の質問は:

特定の整数線形プログラムが多項式時間で解けるかどうかはどうすればわかりますか?どの整数線形プログラムが簡単であることが知られていますか?特に、上記のプログラムは多項式時間で解くことができますか?これに関する参考文献をいくつか教えてください。

回答:


16

これは、輸送問題(または最小コストのフロー問題)の特殊なケースであるため、多項式時間で解決できます。係数行列は、2部グラフの入射行列であるため、完全にユニモジュラーです。

次のウィキペディアの記事が役に立つかもしれません。


1
@Yoshio:ありがとう、それは私の特定の問題のインスタンスに答えます(私が自分でそれを確認したら)。多項式時間解を保証する総ユニモジュラリティ以外の条件を知っていますか?
gphilip

2
@gphilip:私はこれらの質問を「多面体の完全性」という用語で要約しますが、この主題に関する文献は膨大です。Gerard Cornuejolsによる書籍「Combinatorial Optimization:Packing and Covering」(2001年に出版)は、この方針に沿ったいくつかの結果を説明しています。
岡本芳雄

@Yoshio:係数行列が二部グラフの発生行列だと思う理由を教えてください。自分の無知恩赦が、係数行列の話すことを、我々は最初に変換するために、標準的な形式にすべての制約を持っていません()?これを行うと、マトリックスには-1のエントリがあり、入射マトリックス(AFAIK)の定義と一致しなくなります。または、最初に制約を標準形式に変換せずに係数行列について話すことができるのでしょうか?Aバツb
gphilip

1
@gphilip:すみません。暗黙的なショートカットを作成し、標準形式に変換せずに係数行列について話しました。次のショートカットを使用しました。(1)が完全にユニモジュラー(略してTU)である場合、AもTUです。これは、不等式の方向を気にする必要がないことを意味します。(2)AがTUの場合、[ A A ]もTUです。これは、等式制約を気にする必要がないことを意味します。(3)TUマトリックスのすべてのサブマトリックスはTUです。これらの規則を2部グラフの発生行列に適用すると、標準形式の特性が証明されるはずです。AAA[AA]
岡本芳雄

1
ショートカットルールを次のように変更します。(1)行の複製は、完全なユニモジュラリティを維持します。(2)行の符号の反転により、完全なユニモジュラリティが維持されます。彼らは仕事をするべきです。
岡本良夫

8

一般的に言うのは難しいです。しかし、十分な条件は、制約行列が完全にユニモジュラーであり、右側が常に整数であることです(この場合、右側は整数ですが、それでもユニモジュラーについて確認する必要があります)

これを見てくださいhttp : //en.wikipedia.org/wiki/Linear_program#Integer_unknowns


私はあなたのマトリックスについて考えていました、そしてそれは完全にユニモジュラーに見えます。
ビニ

@Vinicius:マトリックスが完全にユニモジュラーに見える理由を教えてください。ヨシオのコメントにも関わらず、私はこれを理解できませんでした(私の回答をご覧ください)。
gphilip

@gphilip:en.wikipedia.org/wiki/Unimodular_matrixの「一般的な完全ユニモジュラーマトリックス」セクションの最初の項目には、マトリックスがユニモジュラーであるための4つの十分な条件がリストされています。これらの条件は、吉尾がコメントしたショートカットと一緒に、問題が多項式時間で解決できることを示すのに十分だと思います。
ビニ

@gphilip:この線形プログラムの動機は何ですか?
ヴィニシウス・ドス・サントス

@Vinicius:特定の方法で入力行列を変更する用語で表現された問題を解決して、いくつかの優れたプロパティを持つ別の行列を取得しようとしています。このLPは、プロセス中の1つのサブ問題から生まれました。
-gphilip

2

等式のみの整数プログラムは線形プログラムで解くことができます。


これはそれ自体のために重要であると思われました。
T ....

2
私はそれを整数プログラムとは呼びません。これは、整数上の線形方程式のシステムであり、エルミート正規形を計算することにより効率的に解くことができます。
サショニコロフ

2
@SashoNikolovは退化したケースですが、間違いなく有効なケースです。
T ....

なぜ反対票?
T ....
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.