4. Input: CNF (conjunctive normal form)
CNF :
• Term
• Clause
• Expression
5. Menentukan lokasi ranjau pada grid
Grid (i x j) = panjang x lebar
Jumlah ranjau pada grid = m
m < ( i x j )
* untuk ukuran custom biasanya dibatasi
ukuran panjang (9 – 24) dan tinggi (9 - 30)
dan jumlah ranjau min.10 dan max (?)
6.
7. Worst
case: tebakan pertama langsung
mendapatkan ranjau
Winning Condition : semua ranjau sudah
ditandai di dalam grid
8. Contoh konfigurasi :
• Bendera = ranjau
• Angka 1-8 = petunjuk jumlah bom di daerah 9x9
• Huruf “A”, “B”, “C” -> pasti ada ranjau
• Huruf “D dan E” -> pasti tidak ada ranjau
• Huruf “F” -> ditentukan bila “D” dibuka
9. lingkup permasalahan :
• menentukan kotak-kotak mana saja dari
sekumpulan kotak pada papan permainan
minesweeper yang berisi ranjau apabila kita
mengetahui isi dari sekumpulan kotak lainnya
10. Dalam sebuah kotak yang mengandung
angka n, maka terdapat n kotak yang
berisi ranjau di sekitar kotak tersebut
5
11. Dalam sebuah kotak yang mengandung
angka n, maka terdapat n kotak yang
berisi ranjau di sekitar kotak tersebut
5
12. 1. Kotak (x,y) berisi angka n dalam propositional
logic direpresentasikan dalam satu formula yang
hanya terdiri atas satu variable yaitu xyn.
2. Jika kotak (x,y) berisi angka n maka diketahui
terdapat kemungkinan bahwa n buah kotak
disekeliling (x,y) berisi ranjau.
13. y
Kotak (x,y) berisi angka n dalam
propositional logic direpresentasikan
x dalam satu formula yang
hanya terdiri atas satu variable yaitu xyn
1. 211 (kotak (2,1) berisi nilai 1)
2. 311
3. 411
4. 222
5. 232
6. 432
7. 222 => (329 and 339)
8. 211 => 329 (jika kotak (2,1) berisi 1 maka kotak (3,2)
berisi 9 yaitu ranjau karena pada minisat tidak bisa berisi
character dan angka 9 tidak digunakan.)
9. 141 => 259 -> -141 or 259
10. 461 => ( (359 and -459) or (-359 and 459) ) ….
Dst
14. Input DIMACS CNF yaitu sebuah file yang berisi
klausa-klausa dalam cnf dari formula yang ingin
ditentukan satisfiability-nya
30 formula yang telah dibuat kemudian diubah ke
dalam propositional logic dalam CNF diubah ke
dalam format DIMACS CNF minesweeper.cnf
Output : kumpulan cnf berisi solusi (dalam variabel
xyn)