Unduhan #SAT Solver


21

Adakah yang bisa menunjuk ke satu atau lebih situs web di mana dimungkinkan untuk mengunduh implementasi kerja pemecah #SAT? Saya tertarik pada mereka yang mengembalikan hitungan solusi yang tepat, bukan perkiraan.


2
Halo Walter, pertanyaan Anda dekat dengan perbatasan yang secara resmi akan menjadi "topik" untuk situs ini. Namun, jika Anda tidak memiliki tempat lain untuk mengajukan pertanyaan ini dan kami dapat menjawabnya, mungkin tidak seburuk itu ... (Karena situs ini masih dalam pengembangan, saya pikir kami lebih terbuka daripada situs lain.) Yakinlah bahwa maksud dari komentar ini bukan untuk "memarahi" atau "memperingatkan", itu hanya pemberitahuan ramah.
Ryan Williams

Hai Ryan, terima kasih atas perhatiannya. Maaf jika pertanyaan ini dekat dengan perbatasan. Saya telah mencari di web dan saya tidak menemukan apa-apa: hanya beberapa pemecah SAT, tetapi tidak ada pemecah #SAT. Itu sebabnya saya bertanya di sini. Tentu saja saya tahu bahwa saya dapat menulis kode saya sendiri yang menggunakan SAT solver sebagai mesin untuk menghitung solusi, tetapi saya sedang mencari sesuatu yang sudah dibuat dan siap digunakan.
Giorgio Camerani

12
Saya ingin tidak setuju. Saya pikir pertanyaan seperti itu ada dalam ruang lingkup, dan seharusnya!
Suresh Venkat

setuju dalam ruang lingkupnya. fyi / imho itu tidak terlalu praktis untuk membangun pemecah #SAT dari pemecah SAT kecuali seseorang memiliki kode sumber dan bahkan dalam kasus itu, tidak begitu praktis, kecuali untuk formula yang sangat kecil, karena ledakan eksponensial yang sangat buruk. biasanya teknik khusus yang unik untuk #SAT dan bukan SAT akan diperlukan ...
vzn

Jawaban:



16

Anda juga dapat mencoba pemecah #SAT "sharpSAT" ( situs web , github ) untuk menghitung jumlah tugas yang memuaskan dari rumus CNF.


11

Salah satu opsi adalah menggunakan perpustakaan BDD, seperti JavaBDD . Semua perpustakaan seperti itu memiliki fungsi yang menghitung solusi dengan cepat atau, setidaknya, mereka membuatnya mudah untuk menulis fungsi seperti itu. Kerugiannya, bagaimanapun, membangun BDD akan lambat dalam banyak kasus dan mungkin membutuhkan banyak memori.

mnO(mn)m+n


7

Topik terkait: Pemecah SAT Terbaik .


1
Terima kasih Sadeq. Topik yang Anda pilih tampaknya berorientasi teoretis. Ini daftar beberapa makalah tentang mengurangi batas atas. Ini sangat menarik, tetapi saya sedang mencari implementasi kerja yang siap digunakan.
Giorgio Camerani

2
Sama-sama. Di antara tautan yang dikutip di sana, ada satu yang murni praktis: satcompetition.org . Saya pikir Anda dapat menemukan implementasi yang sangat bagus di sana.
MS Dousti



5

Saya menulis model kecil / enumerator implant utama . Ini sudah bisa digunakan untuk penghitungan model dengan enumerasi model tetapi itu tidak terlalu praktis. Jika ada yang tertarik, saya dapat memperluasnya sehingga menghitung model dari implan utama.


2

Situs web BeyondNP berisi inventaris yang baik dari alat yang ada untuk menyelesaikan #SAT (dan masalah sulit terkait lainnya pada rumus CNF). Anda juga dapat menemukan daftar alat untuk perkiraan penghitungan model dan kompilasi pengetahuan (tugas mengubah CNF menjadi struktur data yang mudah-mudahan ringkas yang sering mendukung penghitungan model waktu polinomial).

Anda juga dapat menemukan daftar alat untuk preprocessing formula CNF yang mungkin berguna untuk meningkatkan kinerja penghitung model dan berbagai tolok ukur .



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.