PERANCANGAN PROGRAM APLIKASI GAME SUDOKU BERBASIS MOBILE PHONE MENGGUNAKAN ALGORITMA BIPARTITE MATCHING - Binus e-Thesis

UNIVERSITAS BINA NUSANTARA

  

_________________________________________________________________________

  Program Ganda

  

TEKNIK INFORMATIKA - MATEMATIKA

  Skripsi Sarjana Program Ganda Semester Ganjil 2006/2007

  Stefanie Indrayana NIM : 0600654691

  Judul : PERANCANGAN PROGRAM APLIKASI GAME SUDOKU BERBASIS MENGGUNAKAN ALGORITMA BIPARTITE MATCHING

MOBILE PHONE

  

Abstrak

  Skripsi ini berisi Implementasi Teori Graf berupa algoritma bipartite

  

matching untuk perancangan aplikasi game Sudoku. Permainan Sudoku merupakan

permainan yang popular dari Jepang, yang sudah diakui di dunia internasional.

  Metode yang digunakan dalam skripsi ini adalah Pemahaman Konsep

  

Bipartite Matching , Penerapan Algoritma, Perancangan Program, Implementasi dan

  Evaluasi. Tahap perancangannya membuat program Sudoku Solver, Generator

  

Sudoku , dan High Score dengan Perancangan layar, Perancangan STD dan

Flowchart , dan Spesifikasi Proses..

  Studi ini menghasilkan sebuah hasil program aplikasi permainan Sudoku pada mobile phone dengan merk tertentu. Kesimpulan yang didapat dari hasil perancangan ini adalah algoritma bipartite matching dapat diterapkan pada permainan Sudoku.

  Kata Kunci : Perancangan, Sudoku, Mobile Phone, Algoritma Bipartite Matching

KATA PENGANTAR

  Puji syukur kepada Tuhan Yang Maha Esa atas terlaksananya penulisan skripsi yang berjudul “PERANCANGAN PROGRAM APLIKASI GAME SUDOKU BERBASIS MOBILE PHONE MENGGUNAKAN ALGORITMA

  

BIPARTITE MATCHING ” dengan baik dan tepat pada waktunya. Penyusunan

  dilakukan untuk memenuhi salah satu syarat dalam menyelesaikan studi Strata-1 pada Program Studi Ganda Universitas Bina Nusantara.

  Skripsi ini disusun berdasarkan data yang diperoleh dari literatur berupa buku-buku/jurnal di internet, dan pengumpulan pengetahuan program dari perusahaan tempat penulis melakukan survei, ditambah dengan penjelasan dari para dosen, serta teman-teman yang menjadi tempat diskusi tentang topik skripsi.

  Dalam kesempatan ini, penulis ingin menyampaikan ucapan terima kasih yang sebesar-besarnya kepada semua pihak atas bantuan yang telah diberikan, baik secara langsung maupun tidak langsung. Ucapan terima kasih ini ditujukan kepada:

  1. Bapak Prof. Dr. Drs. Gerardus Polla, M.App.Sc, selaku Rektor Universitas Bina Nusantara yang telah memberikan kepercayaan dan kesempatan dalam menyelesaikan skripsi ini.

  2. Bapak Wikaria Gazali, S.Si., M.T., selaku Dekan Fakultas MIPA yang telah memberikan kepercayaan dan kesempatan dalam menyelesaikan skripsi ini.

  3. Bapak Ngarap Imanuel Manik, Drs., M.Kom., selaku Kepala Jurusan Matematika dan Statistika yang selalu memberikan dukungan moral dan telah banyak membantu memberikan pengarahan dalam menyelesaikan skripsi ini.

  4. Bapak Sangadji, Drs., M.Sc., Ph.D, selaku dosen pembimbing Matematika yang selalu memberikan dukungan moral dan telah banyak membantu memberikan pengarahan dalam menyelesaikan skripsi ini.

  5. Bapak Siswa Trihadi, Ir., M.Sc., DR. selaku dosen pembimbing Teknik Informatika yang selalu memberikan dukungan moral dan telah membantu memberikan pengarahan dalam menyelesaikan skripsi ini.

  6. Bapak Ricky Suryo Utomo selaku Direktur Divisi MAX Studio pada PT Advance Inovations, dan Kukuh T Wicaksono selaku Programmer yang telah memberikan kesempatan dan dukungan berupa penjelasan dan pengetahuan aplikasi yang terkait dengan pembuatan skripsi ini.

  7. Seluruh Dosen Universitas Bina Nusantara yang mendampingi saya dari semester awal hingga akhir.

  8. Orang tua dan saudara yang telah memberikan dukungan penuh berupa moral, material, dan spiritual dalam menyelesaikan skripsi ini.

  9. Ignatius Steven, Devinatalia, Jati Putra, Andry Suryawan, Kurniadih Sutanto yang telah mendukung penulis selama proses penyelesaian skripsi ini.

  10. Minorita, Joseph Golam, Wie-wie, dan perpustakaan Bina Nusantara atas peminjaman skripsi sebagai acuan penulisan.

  11. Rekan-rekan di dunia maya baik dari list Yahoo Messenger dan Milis Indo Algo.

  12. Berbagai pihak yang tidak dapat disebutkan satu persatu yang telah memberikan berbagai bantuan, ide, dan saran.

  Penulis menyadari skripsi ini masih jauh dari kesempurnaan. Oleh karena itu, saran dan kritik yang membangun dari rekan-rekan pembaca sangatlah dibutuhkan guna menjadikan skripsi ini lebih baik lagi. berbagai pihak. Semoga hasil karya ini dapat bermanfaat dan menambah pengetahuan bagi rekan-rekan pembaca sekalian.

  Jakarta, Februari 2007 Penulis

  DAFTAR ISI HALAMAN JUDUL LUAR ........................................................................................... i HALAMAN PERSETUJUAN HARD COVER........................................................... iii HALAMAN PERNYATAAN DEWAN PENGUJI.................................................... iv ABSTRAK ...................................................................................................................... v KATA PENGANTAR ................................................................................................... vi DAFTAR ISI................................................................................................................ viii DAFTAR GAMBAR ...................................................................................................... x DAFTAR TABEL ........................................................................................................ xii DAFTAR LAMPIRAN ............................................................................................... xiii BAB 1. PENDAHULUAN ............................................................................................. 1

  1.1 Latar Belakang Masalah....................................................................................... 1

  1.2 Perumusan Masalah ............................................................................................. 2

  1.3 Perumusan Ruang Lingkup .................................................................................. 3

  1.4 Tujuan dan Manfaat ............................................................................................. 3

  1.5 Metodologi Penelitian .......................................................................................... 4

  BAB 2. LANDASAN TEORI ........................................................................................ 5

  2.1 Permainan Matematika Sudoku ........................................................................... 5

  2.1.1 Sejarah Sudoku ........................................................................................... 5

  2.1.2 Pengertian Sudoku ...................................................................................... 6

  2.1.3 Cara Permainan .......................................................................................... 7

  2.1.3 Jenis - Jenis Sudoku .................................................................................... 7

  2.2 Graf Bipartite(Bipartite Graph)........................................................................... 8

  2.2.1 Definisi Graf Bipartite ................................................................................ 9

  2.2.2 Graf Bipartite Lengkap ............................................................................... 9

  2.3 Jaringan (Network) ............................................................................................. 10

  2.3.1 Permasalahan Pemasangan ....................................................................... 10

  2.3.2 Aliran Jaringan (Flow Network) ............................................................... 14

  2.3.3 Augmenting Path pada Algoritma Max Flow............................................ 15

  2.3.4 Algoritma Bipartite Matching................................................................... 17

  2.4 Konsep Dasar Rekayasa Piranti Lunak .............................................................. 23

  2.5 Program Pendukung yang dipakai ..................................................................... 25

  2.5.1 J2ME (Java 2 Mobile Edition).................................................................. 25

  2.5.2 MIDP (Mobile information Device Profile).............................................. 27

  2.5.2 IDE (Integrated Development Environment) dan Emulator ..................... 28

  2.5.4 MIDlet ....................................................................................................... 28

  2.5.5 Mobile Phone Nokia ................................................................................. 28

  BAB 3. ANALISIS DAN PERANCANGAN PROGRAM APLIKASI ................... 30

  3.1 Sejarah Perusahaan dan Struktur Organisasi...................................................... 30

  3.1.1 Sejarah Perusahaan ................................................................................... 30

  3.1.2 Struktur Organisasi ................................................................................... 32

  3.2 Gambaran umum Masalah ................................................................................. 37

  3.1.1 Mengapa Sudoku....................................................................................... 37

  3.1.2 Mengapa Algoritma Bipartite Matching................................................... 37

  3.3 Pemecahan Masalah ........................................................................................... 38

  3.3.1 Scanning.................................................................................................... 38

  3.3.2 Marking Up ............................................................................................... 39

  3.3.3 Penghilangan Set dan Rantai ................................................................... 41

  3.4 Representasi Data Input dan Output .................................................................. 43

  3.4.1 Representasi Data Input ............................................................................ 43

  3.4.2 Representasi Data Output.......................................................................... 45

  3.5 Perancangan Sistem ........................................................................................... 45

  3.5.1 Perancangan Struktur Menu Utama .......................................................... 45

  3.5.2 Rancangan Layar....................................................................................... 46

  3.5.3 Perancangan STD...................................................................................... 50

  3.5.3 Perancangan Flowchart............................................................................. 52

  3.5.4 Perancangan Spesifikasi Proses ................................................................ 60

  

BAB 4. IMPLEMENTASI DAN EVALUASI ........................................................... 63

  4.1 Implementasi Program Aplikasi......................................................................... 63

  4.1.1 Spesifikasi Perangkat Keras...................................................................... 63

  4.1.2 Spesifikasi Kebutuhan Mobile Phone ....................................................... 64

  4.1.2 Spesifikasi Perangkat Lunak ..................................................................... 64

  4.2 Tampilan dan Cara Pengoperasian Program Aplikasi ....................................... 65

  4.2.1 Tampilan Layar Splash ............................................................................. 65

  4.2.2 Tampilan Layar Menu Utama .................................................................. 66

  4.2.3 Tampilan Layar Menu Options ................................................................. 67

  4.2.4 Tampilan Layar Menu NewGame............................................................. 68

  4.2.5 Tampilan Layar SubMenu pada NewGame .............................................. 69

  4.2.6 Tampilan Layar Menu Score..................................................................... 70

  4.2.7 Tampilan Layar Menu Instructions........................................................... 71

  4.2.8 Tampilan Layar Menu About.................................................................... 72

  4.3 Evaluasi .............................................................................................................. 72

  4.3.1 Hasil Evaluasi Algoritma .......................................................................... 73

  4.3.2 Hasil Evaluasi Grafik dan Tombol............................................................ 74

  4.3.3 Hasil Evaluasi Fitur Permainan................................................................. 75

  

BAB 5. KESIMPULAN DAN SARAN ....................................................................... 76

  5.1 Kesimpulan ........................................................................................................ 76

  5.2 Saran................................................................................................................... 77

  

DAFTAR PUSTAKA ................................................................................................... 78

DAFTAR ACUAN........................................................................................................ 79

RIWAYAT HIDUP ...................................................................................................... 80

LAMPIRAN.................................................................................................................. 81

FOTOKOPI SURATSURVEY ................................................................................. 101

  DAFTAR GAMBAR

Gambar 2.1 Contoh Permasalahan Sudoku yang harus diselesaikan.............................. 6Gambar 2.2 Hasil jawaban yang benar permainan Sudoku ............................................ 7Gambar 2.3 Contoh Sudoku 9 x 9 dengan region berupa nanomino ............................. 8Gambar 2.4 Sebuah graf bipartite ................................................................................... 9Gambar 2.5 Graf bipartite lengkap ................................................................................. 10Gambar 2.6 Permasangan antara Pelamar dan Pekerjaan ............................................... 12Gambar 2.7 Pemasangan Lengkap.................................................................................. 13Gambar 2.8 Masalah Pemasangan sebagai Jaringan Pemasangan.................................. 14Gambar 2.9 Contoh Kasus Flow ..................................................................................... 14Gambar 2.10 Gambar Augmenting Path ........................................................................ 16Gambar 2.11 Gambar Flow Network.............................................................................. 16Gambar 2.12 Graf Dwipihak........................................................................................... 18Gambar 2.13 Aliran Jaringan .......................................................................................... 20Gambar 2.14 Gambar Contoh Bipartite Matching.......................................................... 21Gambar 2.15 Gambar Contoh Bipartite Matching dengan source dan sink ................... 21Gambar 2.16 Gambar Solusi 1 untuk Bipartite Matching .............................................. 22Gambar 2.17 Gambar Solusi 2 untuk Bipartite Matching............................................... 22Gambar 2.18 Model Waterfall ........................................................................................ 23Gambar 2.19 Arsitektur J2ME ........................................................................................ 26Gambar 3.1 Struktur Organisasi...................................................................................... 32Gambar 3.2 Proses Scanning .......................................................................................... 39Gambar 3.3 Proses Marking Up...................................................................................... 40Gambar 3.4 Algoritma Bipartite Matching ..................................................................... 41Gambar 3.5 Struktur Menu Utama ................................................................................. 45Gambar 3.6 Menu Utama ............................................................................................... 46Gambar 3.7 Layar NewGame ......................................................................................... 47Gambar 3.8 Menu Options.............................................................................................. 47Gambar 3.9 Menu Level Kesulitan ................................................................................ 48Gambar 3.10 Menu Instruction ...................................................................................... 48Gambar 3.11 Menu Score .............................................................................................. 49Gambar 3.12 Menu About ............................................................................................. 49Gambar 3.13 Perancangan State Transition Diagram Sudoku secara umum.................. 50Gambar 3.14 Perancangan State Transition Diagram Sudoku secara khusus................. 51Gambar 3.15 Flowchart Generate Soal ........................................................................... 53Gambar 3.16 Flowchart Generate Solusi ........................................................................ 54Gambar 3.17 Flowchart find Augmenting Path ............................................................. 56Gambar 3.18 Flowchart Chain dan set............................................................................ 57Gambar 3.19 Flowchart Function pencarian Chain dan set ........................................... 58Gambar 3.20 Flowchart Generate Score ........................................................................ 59Gambar 4.1 Tampilan LayarSplash ................................................................................ 65Gambar 4.2 Tampilan Menu Utama................................................................................ 66Gambar 4.3 Tampilan Menu Options.............................................................................. 67Gambar 4.4 (a) Tampilan Menu New Game dengan Level Kesulitan Easy................... 68Gambar 4.4 (b) Tampilan Menu New Game dengan Level Kesulitan Medium ............ 68Gambar 4.4 (c) Tampilan Menu New Game dengan Level Kesulitan Hard .................. 69Gambar 4.5 Tampilan SubMenu pada NewGame .......................................................... 70Gambar 4.6 Tampilan Menu Score ................................................................................. 70Gambar 4.7 Tampilan Menu Instructions ...................................................................... 71Gambar 4.8 Tampilan Menu About ................................................................................ 72

  DAFTAR TABEL