SAT 솔버간에 왜 큰 차이가 있습니까?


25

SAT 솔버는 대수 공격 에서 매우 중요 합니다 (예 : walksatminisat) .

그러나 여기에서 사용 가능한 벤치 마크 문제를 해결할 때 두 문제 사이에 엄청난 성능 차이가 있습니다. 이러한 문제는 Walksat이 minisat보다 훨씬 빠릅니다. 왜 이런거야?

walksat 구현은 성능이 약간 개선 된 것으로 보입니다 . 국제 SAT 경쟁에 포함되지 않은 이유가 있습니까?


특정 알고리즘이 특정 경쟁에서 제외 된 이유에 대한 두 번째 질문은 아마도이 사이트에서 다루지 않을 것입니다. 첫 번째 질문은 하나의 알고리즘이 다른 알고리즘보다 종종 더 빠르다는 것입니다. 공정한 게임이라고 생각하지만 이론을 더 친숙하게 만들려면 약간의 표현이 필요할 수 있습니다.
Lev Reyzin

참고 사항 : Minisat은 상당히 오래되었고 유지되지 않은 것으로 보이며 경쟁에도 참여하지 않았습니다. 또한 "거대한"이란 무엇을 의미하며 어떤 트랙 (랜덤 / 크래프트 / 애플리케이션)을 가리 킵니까?
Radu GRIGore

5
@Radu : MiniSAT 2.2.0은 2010 년 7 월에 출시되었습니다. 그것이 유지되지 않는다고 말하지는 않습니다. 또한 코드는 매우 안정적이고 깨끗하므로 드문 업데이트는 문제가되지 않을 수 있습니다. 새로운 솔버가 최신 기술을 더 잘 반영한다는 데 동의합니다.
Vijay D

1
Crypto.SE crypto.stackexchange.com/questions/153/… 에서 교차 게시 된 질문 입니다.
M. Alaggan

답변:


33

예. MiniSAT와 WalkSAT에는 큰 차이가 있습니다. 먼저, MiniSAT는 역 추적 및 절 학습을 사용하는 DPLL / CDCL 알고리즘 의 일반적인 클래스의 특정 구현 이며 WalkSAT는 탐욕스러운 단계와 임의의 단계를 번갈아 사용하는 알고리즘의 일반적인 이름입니다.

일반적으로 DPLL / CDCL은 구조화 된 SAT 인스턴스 에서 훨씬 빠르며 WalkSAT는 임의의 k-SAT 에서 빠릅니다 . 산업 및 응용 SAT 인스턴스는 많은 구조를 갖는 경향이 있으므로 DPLL / CDCL은 대부분의 최신 SAT 솔버에서 지배적입니다. 그러나 사례별로 하나의 기술이 이길 수 있는데, 이것이 포트폴리오 솔버가 인기를 얻은 이유 중 하나입니다.

WalkSAT가 해당 페이지의 인스턴스에서 MiniSAT보다 훨씬 빠르다는 주장에 많은 문제가 있습니다. 우선, 몇 기가 바이트의 SAT 인스턴스가 있습니다. 몇 개의 SAT 인스턴스를 비교해 보셨습니까? WalkSAT는 대부분의 구조화 된 인스턴스에서 전혀 경쟁력이 없기 때문에 경쟁에서 자주 보이지 않습니다.

참고로-Vijay는 MiniSAT가 여전히 관련성이 있다고 생각합니다. 실제로, 오픈 소스이고 잘 작성되어 있기 때문에, MiniSAT는 주어진 최적화가 약속 한 것을 보여주기 위해 이길 수 있는 해결사입니다. 많은 사람들이 MiniSAT 자체를 조정하여 최적화를 보여줍니다. 최근의 SAT 경쟁에서 "MiniSAT 핵"범주를 살펴보십시오.


17

sat 인스턴스 간에는 큰 차이가 있습니다. 해결사 SAT 클래스에서 잘 수행 할 수 인스턴스의, 그러나 가난 클래스에 인스턴스, 솔버 동안 잘 클래스에서 수행 와 가난 클래스에 .에이엑스와이와이엑스

이 주제에 읽을 수있는 좋은 종이는 이것 Nudelman하여 . 이 백서의 요점은 SAT 인스턴스의 계산하기 쉬운 기능을 결정하여 어떤 알고리즘이 성능이 좋을지, 그렇지 않은지를 알려줄 것입니다. 이 기술을 사용하면 문제 인스턴스를 빠르게 분석 한 다음 가장 적합한 알고리즘으로 인스턴스를 해결하는 포트폴리오 기반 알고리즘을 구축 할 수 있습니다. 그 뒤를 따르는 논문의 진행이 있습니다; 인터넷 검색 SATzilla는 많은 읽기 자료를 제공합니다.

해결사 SAT 이유를 궁금해하는 경우 솔버보다 더 좋을 수도 에 모든 인스턴스, 음, 난의 진행 : 추측. 솔버가 구체적으로 무엇이 좋은지 알고 싶다면 답을 몇 가지 박사 논문으로 바꿀 수 있습니다. Nudelman 등의 논문으로 시작하는 것이 좋습니다 .에이

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.