Вопрос

Можно вернуться из алгоритма DPLL M как максимум для проблемы Max-Sat?:

У меня есть образец:

https://gist.github.com/davefernig/e670bda722d558817f2ba0e90ebce66f

Мы можем изменить рецидивирую, чтобы вернуть результат max-sat?

Ресурсы: https://en.wikipedia.org/wiki/dpl_algorithm

Это было полезно?

Решение

Алгоритм DPLL не пытается удовлетворить как можно больше пунктов.Если есть удовлетворяющее задание, DPLL найдет его.В противном случае DPLL попробует серию частичных заданий, пока он не закончится возможности, а затем он будет объявлять непривлекательную формулу.Но в случае неудовлетворительной формулы нет никакой гарантии, что DPLL откроет максимальное количество удовлетворяемых предложению на пути к доказанию неудовлетворенности.

Проблема MAXSAT связана с нахождением минимально неудовлетворяемых подформованных (муз) экземпляра.Определение того, является ли набор положений MA MA, является проблемой полной DP.Ожидается, что это будет сложнее, чем простая полнота NP-полнота, поэтому маловероятно, что модификация DPLL для возврата частичных решений будет плодотворным.Учитывая, что класс DP содержится в $ \ delta ^ p_2 $ Вы можете разработать схему, которая вызывает DPLL (или связанные алгоритмы) полиномиальным количеством раз, чтобы создать MAXSATРезультат.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с cs.stackexchange
scroll top