Skrócenie czasu między ILP a SAT?

14

Tak więc, jak wiadomo, problem decyzyjny ILP 0-1 jest NP-zupełny. Pokazanie tego w NP jest łatwe, a pierwotna redukcja pochodziła z SAT; od tego czasu wykazano, że wiele innych problemów z NP-Complete ma formulacje ILP (które działają jako redukcje tych problemów do ILP), ponieważ ILP jest bardzo przydatna ogólnie.

Redukcje z ILP wydają się znacznie trudniejsze do zrobienia samemu lub wyśledzenia.

Zatem moje pytanie brzmi: czy ktoś zna redukcję czasu wielopunktowego z ILP do SAT, czyli demonstruje, jak rozwiązać problem decyzji 0-1 ILP za pomocą SAT?

codetaku
źródło

Odpowiedzi:

12

0-1 ILP sformułowane jako:

Czy istnieje wektor , z zastrzeżeniem ograniczeń:x

a11x1+a12x2...+a1nxnb1a21x1+a22x2...+a2nxnb2...am1x1+am2x2...+amnxnbm

xjxxj{0,1}

Redukcja do k-sat:

Najpierw zredukuj do obwodu sat:

a1jxjb1

b1

a1jb1

xj

Ostateczny CNF będzie zawierał wszystkie ograniczenia.

Realz Slaw
źródło
Ach, rozumiem teraz ... Jakoś zapomniałem o opcji przejścia przez siedzenie ... Dziękuję bardzo za twoją pomoc.
codetaku
0

Jest to pewnego rodzaju nekroza odpowiedzi na już udzielone i zaakceptowane pytanie, ale chcę zauważyć, że istnieje naprawdę łatwiejszy sposób.

Rozważ, że masz jedną z takich nierówności:

5x1+2x2+3x36

(1,1,1)(1,1,0)(1,0,1)

(1,1,1)¬(x1x2x3)(¬x1¬x2¬x3)

(¬x1¬x2¬x3)(¬x1¬x2x3)(¬x1x2¬x3)

Przemierzając wszystkie nierówności i zbierając klauzule, dostaniesz cnf na końcu. Często ten cnf będzie WAY SIMPLER, a następnie taki, który wynika z zaakceptowanej odpowiedzi. Koszt jest jednak trudniejszy w procesie wstępnego przetwarzania.

Konstantin Władimirow
źródło