BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Kecerdasan buatan (Artificial Intelligence) merupakan sistem yang berpikir dan bertindak seperti manusia atau secara rasional (Russel,1995, hlm 5). Kecerdasan buatan dapat digunakan untuk menyelesaikan persoalan-persoalan yang dapat diselesaikan oleh manusia. Persoalan-persoalan tersebut dapat berbentuk permainan kecerdasan seperti catur, rubix cube, puzzle, The 8-queen's problem, sudoku dan permainan-permainan lain. Sudoku merupakan salah satu jenis permainan kecerdasan, di mana pemain harus menempatkan angka-angka (dari 1 sampai n) pada kotak-kotak yang disediakan dengan aturan angka tersebut tidak boleh ada yang sama dalam satu baris, kolom dan blok di posisinya berada. Sudoku bukan merupakan permainan matematis, melainkan permainan logika, walaupun di dalam permainan, pemain mengisikan angka-angka ke dalam papan permainan. Penulis merancang aplikasi yang dapat menyelesaikan permainan sudoku dengan menggunakan algoritma Best First Search. Algoritma Best First Search merupakan sebuah algoritma yang dapat digunakan untuk mencari sebuah penyelesaian dari permasalahan. Permasalahan yang diselesaikan oleh Best First Search memiliki keadaan sementara yang dihasilkan dari sebuah kejadian, yang menghasilkan beberapa keadaan lain yang memiliki bobot. Bobot ini akan digunakan sebagai penentu pilihan yang dilakukan oleh algoritma Best First Search. Persoalan sudoku memiliki keadaan sementara yaitu pengisian sebuah angka di setiap kotak kosong, dengan bobot yaitu banyaknya kemungkinan angka yang dapat diisikan ke dalam kotak kosong lain, setelah jawaban sementara tersebut diterima. 1 1.2 Perumusan Masalah Pembahasan penulis mengenai Penerapan Best First Search dalam Penyelesaian Permainan Sudoku dirumuskan dalam rumusan masalah, “Bagaimana menerapkan algoritma Best First Search dalam penentuan angka pada grid untuk menyelesaikan permainan Sudoku?”. 1.3 Batasan Masalah Adapun batasan masalah pada program aplikasi ini adalah sebagai berikut: a) Papan sudoku yang digunakan 4x4, 6x6 dan 9x9. b) Pengguna berperan sebagai pemberi masalah dan program akan berperan sebagai penyelesai masalah. c) Program dapat menampilkan visualisasi tree dari algoritma Best First Search yang diterapkan pada penyelesaian sudoku. 1.4 Tujuan Penelitian Tujuan yang ingin dicapai penulis dalam penelitian ini adalah mengimplementasikan teori tentang kecerdasan buatan dalam menyelesaikan permainan sudoku dengan algoritma Best First Search, dan mempelajari proses pencarian oleh algoritma Best First Search dapat menyelesaikan persoalan sudoku dengan cara menampilkan langkah-langkah penyelesaian dalam bentuk tree. 1.5 Metode/ Pendekatan Metodologi yang dipakai dalam penulisan Tugas Akhir ini adalah: a) Studi literatur yang dilakukan penulis mengenai teori yang berhubungan dengan kecerdasan buatan serta algoritma Best First Search untuk menyelesaikan permainan Sudoku. 2 b) Pembuatan program dengan mengimplementasikan algoritma Best First Search dan pembuatan laporan. 1.6 Sistematika Penulisan Penulis membagi penulisan tugas akhir ini ke dalam lima bagian. Bagian pertama merupakan Pendahuluan, yang berisi latar belakang masalah, perumusan masalah, batasan masalah, tujuan penelitian, metode/ pendekatan dan sistematika penulisan. Bagian kedua merupakan Tinjauan Pustaka, yang terdiri dari dua bagian utama yaitu Tinjauan Pustaka dan Landasan Teori. Tinjauan pustaka berisi heuristik pada AI bantumi, heuristic reasoning pada graph sudoku, dan kompleksitas sudoku, sedangkan Landasan Teori terdiri dari kecerdasan buatan, pencarian (search) yang di dalamnya terdiri dari pencarian buta; breadth first search dan depth first search, pencarian heuristik yang di dalamnya terdapat best first search, sudoku, dan penerapan best first search dalam Sudoku. Bagian ketiga merupakan Analisis dan Perancangan Sistem yang terdiri dari pemilihan bahasa pemrograman, perancangan menu, perancangan input/ output yang di dalamnya terdiri dari; perancangan input, perancangan proses dan perancangan output; analisis kebutuhan yang di dalamnya terdiri dari perangkat keras dan perangkat lunak; dan perancangan metode. Bagian keempat merupakan Implementasi dan Analisis Sistem. Bagian kelima merupakan Kesimpulan dan Saran. 3