• Tidak ada hasil yang ditemukan

PENGEMBANGAN GAME SUDOKU MENGGUNAKAN ALGORITMA GENETIKA TUGAS AKHIR

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENGEMBANGAN GAME SUDOKU MENGGUNAKAN ALGORITMA GENETIKA TUGAS AKHIR"

Copied!
15
0
0

Teks penuh

(1)

i

PENGEMBANGAN GAME SUDOKU MENGGUNAKAN ALGORITMA GENETIKA

TUGAS AKHIR

Diajukan Untuk Memenuhi

Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang

Disusun Oleh : NURHADI SANTOSO

NIM : 07560198

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS MUHAMMADIYAH MALANG

2013

(2)

ii

LEMBAR PERSETUJUAN

Pengembangan Game Sudoku Mengunakan Algoritma Genetika

TUGAS AKHIR

Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang

Mengetahui/ menyetujui,

Pembimbing I

Dr. Ir. Ermanu Azizul Hakim, MT NIP. 108.9109.0233

Pembimbing II

Ali Sofyan Kholimi, S.Kom NIDN. 0701038202

(3)

iii

LEMBAR PENGESAHAN

Pengembangan Game Sudoku Mengunakan Algoritma Genetika

TUGAS AKHIR

Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang

Disusun Oleh :

Nurhadi Santoso NIM : 07560198

Tugas Akhir ini telah diuji dan dinyatakan lulus melalui sidang majelis penguji pada tanggal 10 Januari 2014.

Menyetujui, Penguji I

Eko Budi Cahyono, S.Kom, MT NIP.108.9504.0330

Penguji II

Ilyas Nuryasin, S.Kom, M.Kom. NIDN. 0723118601

Mengetahui,

Ketua Jurusan Teknik Informatika

Eko Budi Cahyono, S.Kom, MT NIP 108.9504.0330

(4)

iv

LEMBAR PERNYATAAN

Yang bertanda tangan di bawah ini :

NAMA : Nurhadi Santoso

NIM : 07560198

FAK/JUR : Teknik / Teknik Informatika

Dengan ini saya menyatakan Bahwa Tugas Akhir dengan judul

“Pengembangan Game Sudoku Menggunakan Algoritma Genetika”

beserta seluruh isinya adalah karya saya sendiri dan bukan merupakan karya tulis orang lain, baik sebagian maupun seluruhnya, kecuali dalam bentuk kutipan yang telah disebutkan sumbernya.

Demikian surat pernyataan ini saya buat dengan sebenar-benarnya. Apabila kemudian hari dtemukan adanya pelanggaran terhadap etika keilmuan dalam karya saya ini, atau ada klaim dari pihak lain terhadap keaslian karya saya ini maka saya siap menanggung segala bentuk resiko atau sanksi yang berlaku.

Mengetahui, Malang, 3 Januari 2014

Dosen Pembimbing Yang Membuat Pernyataan

(5)

v

ABSTRAKSI

Perkembangan ilmu pengetahuan dan teknologi telah menghantarkan manusia ke zaman yang serba modern seperti sekarang ini. penggunaan internet, mobile phone, dan teknologi digital lainnya tidak dapat dihindari lagi. bentuk yang paling ,udah untuk diukur tingkat keberhasilan dan cukup digemari oleh sebagian besar orang yaitu pada permainan.

Sudoku terdiri dari berbagai macam tingkat kesulitan. Semakin sulit soal, tentu akan semakin lama waktu yang dibutuhkan system untuk memecahkan soal tersebut. Adakalanya dalam mengerjakan kita mengalami jalan buntu, untuk itu penulis membuat aplikasi yang dapat menemukan solusi dengan soal yang acak namun tetap terikat pada peraturan dasar sudoku dengan menggunakan metode algoritma genetika.

(6)

vi

ABSTRACT

Developments in science and technology have exposed humans to the modern all times as it is today. use of the internet, mobile phones, and other digital technologies can not be avoided anymore. most forms, to measure the level of success already and quite favored by the majority of people are in the game.

Sudoku consists of various levels of difficulty. The more difficult question, of course the longer the time it takes the system to solve the problem. Sometimes in our work stalled, for the authors to make an application that can find a solution to the problem is random but remains bound to the basic sudoku rules using genetic algorithm.

(7)

vii

LEMBAR PERSEMBAHAN

Dengan mengucap puji syukur kehadirat Allah SWT atas segala rahmat serta hidayahnya sehingga laporan tugas akhir dengan judul : “Pengembangan Game Sudoku Menggunakan Algoritma Genetika” dapat penulis selesaikan.

Tugas Akhir ini merupakan salah satu prasyarat untuk menyelesaikan studi tingkat strata satu di Fakultas Teknik Jurusan Informatika Universitas Muhammadiyah Malang. Selama penyelesaian tugas akhir ini, penulis telah memperoleh banyak bantuan, bimbingan, motivasi dan saran yang berguna dari berbagai pihak. Oleh karena itu, pada kesempatan ini penulis ingin mengucapkan rasa terima kasih kepada :

1. Bapak Dr. Ir. Ermanu Azizul Hakim, MT. selaku Dosen Pembimbing I, yang

telah meluangkan waktu untuk memberikan bimbingan maupun pengarahan dalam penyelesaian tugas akhir ini.

2. Bapak Ali Sofyan Kholimi, S.Kom. selaku Dosen Pembimbing II, yang telah

meluangkan waktu dalam memberikan bimbingan maupun pengarahan dalam pencapaian hasil yang maksimal pada penelitian tugas akhir ini.

3. Seluruh Dosen Jurusan Teknik Informatika.

4. Kepada Ibundaku tercinta, Ibu Siti Nurhayati yang selalu memberikan doa dan dukungan yang tak ternilai harganya dan juga kepada Ayahandaku tersayang, Bapak Santoso Prayitno yang selalu menjadi motivasi bagi saya.

5. Saudara-saudaraku, Ayu, Toton, Upik yang selalu menjadi penyemangat.

6. Keluarga Besar Biro Administrasi Akademik yang selalu memberikan

nasehat dan dorongan motivasi sehingga terselesaikannya tugas akhir ini. 7. Bapak H. Mu'ali dan Ibu Hj. Siti Safa'atin serta Bunda Selly, Alvaro, Alvariz,

Devi, dan Arga yang selalu memberikan doa dan dorongan motivasi sehingga terselesaikannya tugas akhir ini.

8. Keluarga Besar Ibu Sundari yang telah memberikan segala nasehat dan motivasi sehingga terselesaikan tugas akhir ini.

9. Keluarga Besar PAB dan GCK yang selalu memberikan dukungan dan

(8)

viii

10. Teman-teman terbaikku: Ayu, Dimas, Yufi, Lily, Freddy, Lina dkk yang telah memberi dukungan dan dorongan semangat sehingga terselesaikannya tugas akhir ini.

11. Teman-teman angkatan 2007 yang tidak dapat penulis sebutkan satu persatu.

Saya juga menyadari dengan karya sederhana ini tentu masih jauh dari kesempurnaan. Oleh karena itu, saran dan kritik yang membangun dari berbagai pihak tentu diperlukan agar skripsi ini menjadi lebih baik. Akhir kata semoga skripsi ini bisa bermanfaat bagi yang membaca.

Malang, 3 Januari 2014

(9)

ix

KATA PENGANTAR

Dengan memanjatkan puji syukur kehadirat ALLAH SWT atas dilimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan Tugas Akhir yang berjudul :

"Pengembangan Game Sudoku Menggunakan Algoritma Genetika”

Di dalam tulisan ini disajikan pokok-pokok bahasan yang meliputi : Game Sudoku, Algoritma Genetika

Penulis menyadari sepenuhnya bahwa dalam penulisan Tugas Akhir ini masih banyak kekurangan dan keterbatasan. Oleh karena itu penulis mengharapkan saran yang membangun agar tulisan ini bermanfaat bagi perkembangan ilmu pengetahuan kedepan. Amin.

Malang, 3 Januari 2014

(10)

x

DAFTAR ISI

HALAMAN

HALAMAN JUDUL ... i

LEMBAR PERSETUJUAN ... ii

LEMBAR PENGESAHAN ... iii

LEMBAR PERNYATAAN ... iv

ABSTRAKSI ... v

ABSTRACT ... vi

LEMBAR PERSEMBAHAN ... vii

KATA PENGANTAR ... ix

DAFTAR ISI ... x

DAFTAR GAMBAR ... xiii

DAFTAR TABEL ... xiv

BAB 1 PENDAHULUAN 1.1 Latar belakang ... 1 1.2 Rumusan masalah... 2 1.3 Tujuan penelitian ... 2 1.4 Batasan masalah ... 2 1.5 Metodologi penelitian ... 2 1.6 Sistematika Penulisan ... 3

BAB II LANDASAN TEORI 2.1 Sejarah Sudoku ... 5

2.1.1 Cara Bermain ... 6

(11)

xi

2.2 Algoritma Genetika ... 8

2.2.1 Definisi Dalam Algoritma Genetika ... 10

2.2.2 Tahapan Dalam Menggunakan Algoritma Genetika ... 10

2.2.3 Struktur Algoritma Genetika ... 11

BAB III ANALISA DAN PERANCANAAN SISTEM 3.1 Analisa dan Gambaran Umum ... 13

3.2 Kebutuhan Input ... 14

3.2.1 Functional Requirement ... 14

3.2.2 Non Functional Requirement ... 14

3.3 Perancangan Sistem ... 14

3.3.1 Flowchart Diagram ... 14

3.3.2 Use Case Diagram ... 16

3.3.3 Activity Diagram ... 17

3.3.4 Sequence Diagram ... 19

3.3.5 Class Diagram ... 22

3.4 Desain Antar Muka ... 26

3.4.1 Tampilan Antarmuka Aplikasi ... 26

3.5 Pembangkitan Puzzle ... 27

3.6 Representasi Kromosom ... 38

3.7 Fungsi Fitness ... 28

BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Analisa dan Gambaran Umum ... 31

4.1.1 Tampilan Aplikasi ... 31

(12)

xii

4.1.3 Implementasi Algoritma Genetika pada Sudoku ... 33

4.2 Pengujian Umum ... 38

4.2.1 Pengujian Perangkat Lunak ... 38

4.2.2 Pengujian Permainan Sudoku ... 40

BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan ... 42

5.2 Saran ... 42

(13)

xiii

DAFTAR GAMBAR

HALAMAN

Gambar 2.1 Sudoku yang sudah diselesaikan ... 7

Gambar 3.1 Flowchart Algoritma Genetika Pada Sudoku ... 15

Gambar 3.2 Use Case Diagram ... 16

Gambar 3.3 Activity Diagram Input Sudoku ... 17

Gambar 3.3 Activity Diagram Proses Sudoku ... 18

Gambar 3.4 Activity Diagram Output Sudoku ... 19

Gambar 3.5 Sequence diagram input pilihan sudoku ... 20

Gambar 3.6 Sequence diagram proses ... 21

Gambar 3.7 Sequence diagram output ... 21

Gambar 3.8 Class Diagram ... 22

Gambar 3.9 Gambar antar muka aplikasi ... 26

Gambar 3.10 Puzzle Sudoku Valid ... 28

Gambar 4.1 Tampilan awal Sudoku solver ... 33

Gambar 4.2 Tampilan menu Sudoku solver ... 34

Gambar 4.3 Implementasi Fungsi ... 35

Gambar 4.4 Implementasi Fungsi Algoritma ... 36

Gambar 4.5 Implementasi Fungsi Chromosome ... 36

Gambar 4.6 Implementasi Fungsi Fitness ... 37

(14)

xiv

DAFTAR TABEL

HALAMAN

Tabel 4.1 Pengujian Fungsi Perangkat Lunak... 38 Tabel 4.2 Penguian Permainan Sudoku ... 40

(15)

xv

DAFTAR PUSTAKA

Hakim, R., & Sutarto. (2009). Mastering Java. Jakarta Pusat: Elex Media Komputindo.

Harnaningrum, L. N. (2009). Algortima dan Pemrograman Java. Yogyakarta: Graha Ilmu.

Kadir, A. (2008). Dasar Pemrograman Java 2. Yogyakarta: Andi.

Komputer, W. (2009). Menguasai Java Programming. Jakarta Selatan: Salemba Infotek.

Lewis, R. (2012). Metaheuristics Can Solve Sudoku Puzzle. inf.utfsm.cl. Retrieved December 06, 2013, from inf.utfsm.cl/~mcriff/Tesistas/Games/ Mantere, T., & Koljonen, J. (2006). Solving and Rating Sudoku Puzzles with

Genetic Algorithms. New Developments in Artificial Intelligence and the Semantic Web Proceedings of the 12th Finnish Artificial Intelligence Conference STeP 2006, 86–92.

Melanie, M. (1995). Genetic algorithms: An overview. Complexity, 1(1), 31–39. doi:10.1002/cplx.6130010108

Melanie, M. (1996). An Introduction to Genetic Algorithms. MIT Press.

Purnomo, H., & Kusumadewi, S. (n.d.). Aplikasi Algoritma Genetika Untuk Penentuan Tata Letak Mesin, 203–211.

Siswanto. (2011). Algoritma dan Struktur Data Non Linear dengan Java. (L. N. Harnaningrum, Ed.). Yogyakarta: Graha Ilmu.

Weiss, J. M. (2009). Genetic Algorithms and Sudoku. MICS.

Whitley, D. (1994). A Genetic Algorithm Tutorial. Statistics and Computing, 4(2), 65–85. doi:10.1007/BF00175354

Referensi

Dokumen terkait

Penjelasan awal dimulai saat pertama kali memilih selector switch sebagai suatu perintah kerja, apabila selector switch dipilih manual dengan kondisi normal maka begitu

Draf I atau produk awal yang telah disusun kemudian divalidasi oleh para ahli serta diberi tanggapan oleh guru IPA (Agus Sujatmiko, S.Pd, Nur Istiqomah, S.Pd, dan Suyati,

Sehingga dari uraian diatas sangatlah dapat di pahami mindset dan kepribadian yang sangat kacau dari kelompok-kelompok teroris tersebut , untuk itu di tuntut peran

Anggaran biaya tenaga kerja langsung adalah rencana besarnya biaya yang dikeluarkan perusahaan untuk membayar biaya tenaga kerja yang terlibat secara langsung di

perusahaan maupun bagi karyawan, dimana perusahaan dapat meningkatkan produktivitas kerja karyawan yang berkontribusi positif pula pada pencapaian tujuan

Faktor-faktor penghambat dalam penyidikan terhadap barang bukti yang ditemukan anjing pelacak dalam hal ini peraturan mengenai penggunaan anjing pelacak yang hanya sebatas SKEP dan

Penelitian ini dilakukan untuk menghasilkan rancangan produk baby walker yang dapat memenuhi kebutuhan konsumen dengan meningkatan keamanan produk dan bermanfaat

SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA* Dengan ini saya menyatakan bahwa skripsi berjudul Laju Potensial dan Kelimpahan Bakteri Nitrifikasi Denitrifikasi dan