멀티 코어 SAT 솔버


12

25k 절 5k 변수 SAT 문제를 해결하려고합니다. 한 시간 동안 실행되어 (precosat) 나중에 더 큰 것을 풀고 싶기 때문에 멀티 코어 SAT-Solver를 찾고 있습니다.

많은 SAT-Solvers가있는 것처럼 나는 상당히 길을 잃었습니다.

누구든지 내 사건에 가장 적합한 것을 지적 할 수 있습니까?

누군가가 나에게 대략적인 시간을 줄 수 있다면 기쁠 것입니다 (가능한 경우).


1
기성품 프로그램을 찾고 있습니까? 그런 다음이 가장 좋은 사이트가 아닙니다. SAT-solve에 대한 더 많은 정보가 필요한가요? 어서 오십시오! 당신은 당신이 검색했다고 말한다; 무엇을 찾았습니까? 당신을 혼동하는 것은 무엇입니까?
Raphael

글쎄, 나는 여러 StackExchange 포럼에서 SAT 관련 스레드의 수를 보았습니다. 이론적 CS와 CS 중 하나를 선택하고 나중에 선택했습니다. 기성 프로그램을 어디서 요청해야합니까? 감사.
multsatsolv

답변:


8

올해의 SAT 2013 대회 결과를 살펴보십시오 . 이러한 결과를 바탕으로 Lingeling 을 사용해보십시오. Plingeling은 그것의 병렬 변형입니다.

만족스럽지 않다고 증명할 필요가없는 경우 (인스턴스가 만족스럽고 SAT로 지정하는 것을 알아야 할 경우) 로컬 검색 방법도 시도 할 수 있습니다.


감사. (P) Lingeling을 살펴 보겠습니다. 또한, 그것이 만족할 만한지 전혀 모른다.
multsatsolv

+1. 우리의 경험을 바탕으로, Plingeling은 반드시 먼저 시도해야 할 것입니다 (적어도 여러 개의 코어와 많은 메모리를 가진 단일 컴퓨터가있는 경우). 더 많은 성능을 얻으려면 가능한 한 많은 노드가있는 컴퓨팅 클러스터를 찾고 다른 임의의 시드로 여러 개의 lingeling (또는 plingeling) 인스턴스를 실행하십시오.
Jukka Suomela

4

실용적인 멀티 코어 sat-solvers가 있는지 확실하지 않지만 몇 가지 프로젝트와 논문이 있습니다.

또한이 흥미로운 점을 발견했습니다. 멀티 코어 효과를 얻기 위해 동일한 문제에 대해 동일한 시드에 다른 시드를 사용하여 정기적으로 sat-solver를 여러 번 실행할 수 있습니다.

편집 : vzn의 아이디어에 대한 의견을 여기에 통합하십시오.

k2k


(누군가가 X 절 Y 변수 SAT 문제를 해결할 수있는 대략적인 시간을 줄 수 있다면 기쁠 것입니다.)

mnm,n


링크 주셔서 감사합니다. 나는 그들 중 일부를 읽을 것이다. 그래도 내 문제가 해결하기가 어렵지 않기를 바랍니다.
multsatsolv

@multsatsolv 문제에 달려 있습니다. 또한 인코딩에 따라 다릅니다. SAT 솔버는 동일한 문제의 다른 인코딩을 다르게 처리 할 수 ​​있습니다. 다른 SAT 솔버가 다른 인코딩보다 한 인코딩에서 더 좋을 수 있습니다. 이것에 대한 과학은 없습니다 (SAT 솔버의 급격한 진화에서 이해해야 할 가치는 없지만) : 인코딩과 솔버의 다른 조합을 시도하는 것이 유일한 방법입니다.
Realz Slaw

3

SAT가 있기 때문에 병렬 버전으로 어떤 SAT 해결사를 설정하는 매우 간단한 방법 실제로이 곤란하게 평행 다음과 같은 의미는.

2nn2n


nk

3
이 방법은 실제로는 잘 작동하지 않는 것 같습니다. 긍정적 인 인스턴스의 경우 일반적으로 컴퓨터가 많은 경우 다음과 같은 접근 방식이 훨씬 좋습니다. 예를 들어 동일한 인스턴스이지만 다른 임의의 시드로 링글 링을 실행 하고 솔버 중 하나가 솔루션을 찾을 때까지 기다리십시오.
Jukka Suomela

n

1
@ vzn : 제안한 접근 방식. 왜 그렇게 잘 작동하지 않는지 알아 보려면 실제 인스턴스를 사용 해보고 제안한 것과 비교하십시오. :) 순진한 역 추적 검색 알고리즘을 다루는 경우 접근 방식은 많은 의미가 있지만 최신 SAT 솔버는 순진한 역 추적 검색 이상입니다.
Jukka Suomela

그래도 문제가 무엇인지 단어로 설명 할 수 있습니까? 귀하의 접근 방식은 만족스러운 인스턴스에서 작동 할 수 있지만 얼마나 많은 개별 인스턴스가 실행 되더라도 만족할 수없는 인스턴스를 발견하는 데 정확히 동일한 시간이 걸리지 않습니까? 그렇지 않다면, 아마도 subj에 인용하는 심판이있을 것입니다 ...
vzn
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.