Algoritmos de aproximação para MAXSAT

8

Tentar encontrar a solução ideal para o WEIGHTED-MAX-3SAT, a versão ponderada do problema de otimização do 3-SAT, é difícil para o NP. De fato, mesmo aproximando-se arbitrariamente da versão não ponderada do MAX-SAT é comprovadamente difícil o NP pelo Teorema do PCP.

Um algoritmo canônico para aproximar o WEIGHTED-MAX-3SAT é o MAX-WalkSAT. Olhando em volta, encontrei algumas informações sobre outros algoritmos (por exemplo, branch-and-bound, o algoritmo DPL) que são comumente usados ​​para encontrar soluções para o 3-SAT ou o MAX-3SAT (não ponderado), mas não vi nenhuma discussão sobre como bem, estes funcionariam para a versão ponderada. Intuitivamente, sem serem adaptados, eles não funcionariam tão bem.

Pergunto-me que outros algoritmos são comumente usados ​​para aproximar o WEIGHTED-MAX-SAT, se existem conhecidos solucionadores do WEIGHTED-MAX-SAT e a qualidade relativa desses algoritmos / solucionadores.

Huck Bennett
fonte
Isso não está realmente no tópico, pois está perguntando sobre heurística e experiência de implementação, e não sobre algoritmos prováveis.
Warren Schudy 9/10/10
5
@ Warren: Eu acho que talvez isso esteja levando as coisas um pouco longe demais. A pergunta basicamente equivale a "Quais algoritmos são bons para o WEIGHTED-MAX-SAT?" o que é uma pergunta perfeitamente razoável a ser feita. Muitos solucionadores de SAT também contam com heurísticas. Embora seu pior desempenho seja ruim, eles se saem surpreendentemente bem. Se todas as perguntas relacionadas apenas com resultados de complexidade exatamente comprovados, duvido que o site seja muito popular. Afinal, já temos o zoológico.
Joe Fitzsimons
3
A competição MAXSAT tem divisões para ponderada e não ponderada: maxsat.udl.cat/10/results
Radu GRIGore
2
Aqui está uma descrição legível de um dos algoritmos usados: scholar.google.com/scholar?cluster=14077294269217865108
Radu GRIGore
11
@ Warren: Nas décadas de 80 e 90, em muitas universidades, a ciência da computação teórica era muito impopular e menosprezada pelo resto da ciência da computação, porque era vista como desconectada da prática. Eventualmente, o Google e outros sucessos os convenceram de que valia a pena conversar. Vamos, por favor, não fechar as linhas de comunicação do outro lado agora, depois de trabalhar tanto para abri-las. Isso seria muito ruim para o campo, sem mencionar o mercado de trabalho da TCS.
Peter Shor

Respostas:

5

Bem, isso pode ser formulado como o problema de encontrar o estado fundamental de um hamiltoniano do tipo Ising, com termos locais 3. Isso não ocorre naturalmente, mas você esperaria que eles esfriassem de maneira semelhante a outros sistemas; portanto, o recozimento simulado deve funcionar bem para a versão ponderada.

Joe Fitzsimons
fonte
Joe, depois de pensar sobre isso, não vejo como o recozimento simulado é diferente do MAX-WalkSAT. O MAX-WalkSAT não é apenas uma forma de recozimento simulado aplicada a esse problema em particular?
Huck Bennett #
@ Huck: Depende de como você escolhe quais variáveis ​​virar.
precisa
4

Eu acho que é possível fazer redução simplesmente duplicando as fórmulas de acordo com seu peso e, portanto, os resultados dos limites superior e inferior para o 3-SAT não ponderado também se aplicam às versões ponderadas, com perdas arbitrariamente pequenas. E, de acordo com um resultado clássico de Johan Håstad, é NP-difícil aproximar o 3-SAT além de 7/8, que é o desempenho de atribuir valores aleatórios.

Não tenho certeza sobre o desempenho dos algoritmos usados ​​na prática.

sangxia
fonte
Essa redução não é polinomial no comprimento do peso. Se você me der um peso de comprimento O (n), terei que fazer 2 ^ (O (n)) cópias da cláusula.
Huck Bennett
Além disso, se eu restringisse o problema ao MAX-SAT com cláusulas não repetidas (ainda difíceis de usar NP), isso não funcionaria.
Huck Bennett
certamente todos os limites inferiores (resultados de dureza) para o 3-SAT não ponderado se aplicam também ao 3-SAT ponderado (que inclui o 3-SAT não ponderado).
Neal Young