SAT çözücü kağıtlarını başlatma


24

İlk SAT çözücüsü yapmak istiyorum. SAT rekabetini ve SAT konferansını biliyorum ve bu konuda çok fazla makale var. Ben bir marş, boğulmuş bir marşım. Nereden başlamalıyım? Sonunda modern teknolojiyi zorlamak istiyorum. Nasıl başlayacağımız konusunda uzman tavsiyesi istiyorum, böylece vaktimi gereksiz yere çok erken boşa harcamam. Çok teşekkürler.


6
DPLL algoritmasını zaten uyguladınız mı? Uygulamanızı son derece hızlı çalışması için ince ayar yaptınız ve cilaladınız mı?
Jukka Suomela

5
Memnuniyet El Kitabı - amazon.com.tr/… (belki bir kütüphaneyi kontrol edin, maliyeti oldukça yüksektir).
MGwynne

1
@Jukka: yorum -> cevap?
Suresh Venkat

4
Jukka'ya katılmıyorum. Neden tekerleği yeniden icat ettin? MiniSAT'ın zaten açık kaynak sağladığı şeyi yeniden yapmak için hiçbir neden yoktur. CDCL çerçevesine ekleme yapmak ilginizi çekiyorsa, ekiniz artırılmış MiniSAT performansını gösterecektir. Ayrıca, DPLL kendi başına yeterli değildir; birçok iyileştirme yapılmıştır. Temel olarak, Mikolas'ın cevabını takip edin!
Huck Bennett,

1
Ayrıca şu soruya bakın: cstheory.stackexchange.com/q/1988
András Salamon

Yanıtlar:


18

Mükemmel bir başlangıç ​​genel bakış 2009'dan sonraki makalede verilmiştir.

Teknik yönlere girmenin birkaç yolu var. Orijinal Davis-Putnam gazetesiyle başlayabilirsiniz. Son derece açık ve ayrıntılı örnekler var. Bir kursta SAT optimizasyonlarını tartışırken, birkaç kişinin zaten orada olduğunu hayal edebileceğimizi keşfettik. Davis-Logeman-Loveland makalesi daha az öğreticidir (bence daha az öğreticidir), ancak o kadar kısadır ki okuyabilirsiniz.

Önümüzdeki 50 yıldaki gelişmeleri takip etmenin yolları olabilir. Ders slaytlarını tavsiye ederim. Sadece 'DPLL' için arama yapmak birçok öğreticiyi atıyor. Onlara göz atarsanız, eminim sis temizleyecektir - bir ölçüde. Ayrıca birçok faydalı anket vardır. Zhang-Malik gazetesi başlamak için iyi bir yer. Memnuniyet El Kitabında faydalı bulabileceğiniz birkaç makale vardır.

Mikolaos'un önerisini ikinci olarak öğrendim. MiniSAT kodu temiz ve yönetilebilir boyuttadır. Bununla oynayabilirsin. Deneyebileceğiniz birkaç başka çözücü var. CryptoMiniSat da oldukça temiz. SAT çözücüler yazan ve SAT çözücüler yazarken yazan Armin Biere'nin çalışmalarına da danışmalısınız .



9

Dışarıdaki tüm işler sizi şaşırtıyorsa, neden daha önce hiç kimsenin problem üzerinde çalışmamış gibi davranmaya başlamıyorsunuz? Amacınız sonunda rekabetçi bir SAT çözücü oluşturmaksa, bu oldukça uzun bir yolculuk olacaktır. 'Çözümleri kontrol etmeden' sadece oyun oynamaya başlayarak, tabiri caizse, kaybetmekten çok kazanacaksınız.

nmnm

nm


9

İyi bir anket kağıdı ile başlayın. Konuya parça parçasına saldırmak ve aynı teknikler için kullanılan farklı isimlerle ve farklı teknikler için kullanılan isimlerle karıştırmak kolaydır. Sanatın ne olduğunu bilmiyorsanız eski algoritmik savaşları (örneğin DPLL uygulamaları için sıralı listeler ve baş kuyruk listeleri gibi iki sıradaki hazırlar meydana gelir) tekrar etkinleştirmek de kolaydır.

Memnuniyet Çözücüler Gomes, vd. ark. size toprağın kaba düzenini verecek.

SAT Çözücülerini İyileştirme Manthey ile Son Teknoloji Teknikleri Kullanmak sizi bugüne yaklaştıracaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.