Abstract—Minesweeper adalah salah satu permainan single- penelitian untuk memecahkan masalah permainan
player yang pertama kali muncul pada sistem operasi Windows. Minesweeper.
Permainan ini berbentuk sebuah kumpulan petak dengan p baris II. DASAR TEORI
dan q kolom yang berisi sejumlah ranjau. Petak dapat berisi
ranjau, angka, ataupun kosong. Objektif dari permainan ini A. Minesweeper
adalah membuka semua petak bukan ranjau tanpa membuka
petak ranjau. Untuk menemukan posisi ranjau, digunakan Minesweeper merupakan salah satu permainan single player
petunjuk yang tersedia pada angka pada petak. Angka pada yang cukup digemari, terutama oleh para pengguna komputer
petak menunjukkan jumlah ranjau yang ada di sekeliling petak Windows. Permainan ini berbentuk frame yang terdiri dari p
tersebut. Permainan Minesweeper ini masuk ke dalam golongan baris dan q kolom yang berisikan ranjau, kosong, maupun
masalah NP-Complete. Pada pelajaran Matematika Diskrit angka. Minesweeper adalah salah satu bentuk permainan yang
IF2120, Mahasiswa diajarkan tentang materi graf. Materi graf ini
memiliki aturan-aturan sederhana namun implikasi yang
dapat digunakan untuk menyelesaikan permasalahan
Minesweeper dengan mencari strategi khususnya. menantang. Oleh sebab itu, permainan ini termasuk ke dalam
golongan masalah NP-Complete.
Keywords— graf, matdis, minesweeper, np-complete.
Permainan ini dibuat oleh Robert Donner dan Curt Johnson
I. PENDAHULUAN pada tahun 1991, sebagai bagian dari Windows Entertainment
Pack. Namun, asal-usulnya sendiri berawal dari permainan
Sejak dahulu kala, manusia, yang muda maupun tua, kerap mainframe yang terbentuk pada awal tahun 1960-an dan 1970-
mencari hiburan untuk mengisi waktu luang atau ketika sedang an. Ide paling awalnya sendiri adalah Jerimac Ratliff’s Cube.
jenuh. Bermain menjadi salah satu pilihan hiburan yang sering
dilakukan oleh manusia. Aturan dan cara bermain Minesweeper dapat dikatakan
cukup sederhana. Pada awal permainan, pemain akan
Definisi dari Game atau permainan sendiri berdasarkan disuguhkan dengan sebuah frame yang terdiri atas petak-petak
kamus Oxford adalah suatu kegiatan yang dilakukan untuk yang belum terbuka. Klik pertama pada frame akan membuka
mencari kesenangan, biasanya memiliki aturan tertentu, dan beberapa petak yang berisikan angka maupun kosong. Klik
dapat berupa menang-kalah. pertama tidak mungkin berisi ranjau. Kemudian, pemain harus
menentukan petak-petak lain yang harus dibuka. Apabila
Terdapat berbagai macam permainan yang dapat dimainkan pemain memilih petak berisi ranjau, maka permainan akan
oleh seseorang. Dari mulai bermain bola, hingga Sudoku, secara otomatis berakhir. Petak berisi angka sendiri
Minesweeper, dan permainan-permainan lainnya. Ada banyak menunjukkan jumlah ranjau yang terdapat di sekitar petak
permainan yang melibatkan pemikiran yang cenderung angka tersebut, yaitu bagian atas, kanan, kiri, dan bawah dari
kompleks. Tak jarang pula ada permainan yang terlihat petak angka (ukuran 3x3 dengan petak angka sebagai pusat).
sederhana, dengan aturan yang simpel, namun sulit dan Oleh sebab itu, jangkauan angka yang tertera pada petak angka
menantang ketika dijalankan. adalah 0-8. Objektif dari game ini adalah untuk membuka
semua petak yang tidak mengandung ranjau. Untuk membantu
Minesweeper adalah salah satu contoh permainan yang proses permainan ini, Minesweeper memperbolehkan pemain
terlihat simpel namun ternyata menantang. Permainan ini untuk memberi flag pada lokasi kemungkinan ranjau.
dibuat untuk dimainkan sendirian. Permainan ini cukup Permainan ini cukup menjebak karena ada beberapa saat
mengasah otak dan apabila dikategorikan pada tingkat dimana pemain harus menebak petak mana yang bukan ranjau
kesulitan secara matematisnya, maka Minesweeper dikenal tanpa penggunaan unsur lojik.
sebagai permasalahan NP-Complete.
2. Graf tak-berhingga
Graf yang jumlah simpulnya tak berhingga.
Gambar 6 Ilustrasi graf sederhana
d. Terminologi Graf
Graf yang tidak memiliki gelang maupun sisi ganda dapat 1. Ketetanggaan (Adjacent)
disebut sebagai graf sederhana. Dua buah simpul dapat disebut bertetangga apabila kedua
simpulnya terhubung langsung. Sebagai contoh, pada gambar
2. Graf tak-sederhana 8, simpul 1 bertetangga dengan simpul 2 dan 3 tapi tidak
bertetangga dengan simpul 4.
2. Bersisian (Incidency)
Untuk sembarang sisi e = (vi, vj), dapat dikatakan bahwa e
bersisian dengan simpul vi dan simpul vj. Sebagai contoh, pada
gambar 4, maka e1 bersisian dengan simpul 1 dan e1 juga
Gambar 7 Ilustrasi graf tak-sederhana bersisian dengan simpul 2.
Graf yang memiliki gelang atau sisi ganda disebut sebagai 3. Simpul terpencil (Isolated Vertex)
graf tak-sederhana. Graf tak-sederhana dapat dibedakan lagi
menjadi beberapa jenis, yaitu :
Selain berdasarkan keberadaan sisinya, graf juga dapat 4. Graf kosong (null graph)
dikategorikan menjadi dua jenis berdasarkan orientasi arah
pada sisinya., yaitu :
1. Graf berarah
Gambar 11 Ilustrasi graf kosong
5. Derajat (Degree)
Gambar 8 Ilustrasi graf berarah Derajat suatu simpul menyatakan jumlah sisi yang bersisian
dengan simpul tersebut. Derajat dapat ditulis dengan notasi
Graf berarah adalah graf yang setiap sisinya memiliki d(v). Sebagai contoh, pada gambar 4, maka :
orientasi arah tertentu. d(1) = d(4) = d(2) = 3
d(3) = 5
2. Graf tak-berarah Jumlah derajat semua simpul pada suatu graf pasti genap.
6. Lintasan
Lintasan merupakan sisi-sisi yang harus dilalui untuk
menghubungkan suatu simpul dengan simpul lainnya. Panjang
lintasannya sendiri dihitung berdasarkan jumlah sisi atau
Gambar 9 Ilustrasi graf tak-berarah
jumlah bobot dari tiap sisi lintasan.
Graf tak-berarah adalah graf yang setiap sisinya tidak
7. Siklus
memiliki orientasi arah.
Siklus merupakan istilah yang digunakan untuk
menggambarkan lintasan yang diawali dan diakhiri oleh simpul
Selain itu, graf juga dapat dikategorikan berdasarkan jumlah
PERNYATAAN
Dengan ini saya menyatakan bahwa makalah yang saya tulis
ini adalah tulisan saya sendiri, bukan saduran, atau terjemahan
dari makalah orang lain, dan bukan plagiasi.