Я пытаюсь решить проблему SAT переменных 25k пунктов 5k переменных. Так как он работал в течение часа (precosat), и я хотел бы потом решить более крупные, я ищу многоядерный SAT-Solver.
Кажется, что есть много SAT-Solvers, я совершенно потерян.
Кто-нибудь может указать мне лучший вариант для моего случая?
Я также был бы счастлив, если бы кто-то мог дать мне приблизительное время (если возможно).
algorithms
reference-request
parallel-computing
sat-solvers
multsatsolv
источник
источник
Ответы:
Посмотрите результаты конкурса SAT 2013 года . Основываясь на этих результатах, обязательно попробуйте Lingeling . Плинкинг - это параллельный вариант.
Если вам не нужно доказывать неудовлетворенность (возможно, вы знаете, что экземпляр является удовлетворительным, и вам просто нужно знать назначение, делающее его SAT), вы также можете попробовать методы локального поиска.
источник
Я не уверен в существовании практических многоядерных спутниковых решателей, но есть несколько проектов и статей:
Я также обнаружил этот интересный момент: вы можете запустить обычный sat-solver несколько раз с разными начальными данными для одной и той же задачи параллельно, чтобы получить многоядерный эффект.
Редактировать: Включая мои комментарии к идее VZN здесь:
источник
На самом деле существует очень простой способ превратить любой SAT-решатель в параллельную версию, потому что SAT смущающе параллелен в следующем смысле.
источник