Próbuję rozwiązać problem SAT z 25k klauzul 5k zmiennych. Ponieważ działa od godziny (precosat), a potem chciałbym rozwiązać większe, szukam wielordzeniowego SAT-Solvera.
Ponieważ wydaje się, że jest wiele rozwiązań SAT, jestem całkiem zagubiony.
Czy ktoś mógłby wskazać mi najlepszy dla mojej sprawy?
Byłbym również szczęśliwy, gdyby ktoś mógł podać mi przybliżony czas (jeśli to możliwe).
algorithms
reference-request
parallel-computing
sat-solvers
multsatsolv
źródło
źródło
Odpowiedzi:
Zobacz wyniki tegorocznego konkursu SAT 2013 . Na podstawie tych wyników zdecydowanie wypróbuj Lingeling . Plingeling jest jego równoległym wariantem.
Jeśli nie musisz udowodnić niezadowolenia (być może wiesz, że instancja jest satysfakcjonująca, a potrzebujesz tylko zadania przypisanego do SAT), możesz również spróbować lokalnych metod wyszukiwania.
źródło
Nie jestem pewien istnienia praktycznych wielordzeniowych satelitów, ale jest kilka projektów i dokumentów:
Znalazłem też ten interesujący punkt: możesz równolegle uruchomić zwykły sat-solver z różnymi nasionami dla tego samego problemu, aby uzyskać efekt wielordzeniowy.
Edytuj: Uwzględniając moje komentarze do pomysłu vzn tutaj:
źródło
W rzeczywistości istnieje bardzo prosty sposób na przekształcenie dowolnego solwera SAT w wersję równoległą, ponieważ SAT jest kłopotliwie równoległy w następującym znaczeniu.
źródło