APLIKASI FIBER TWIG GAME DENGAN MENERAPKAN METODE PENCARIAN BREADTH FIRST SEARCH
SKRIPSI
Oleh:
MEGAWATI WANDA NIM.1144015
PROGRAM STUDI TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK TIME MEDAN 2015
ABSTRAK
Dalam sebuah komputer atau perangkat multimedia lainnya terasa tidak lengkap tanpa adanya sebuah permainan di dalamnya. Pembuatan game atau permainan tersebut bisa dilakukan dengan berbagai cara. Pada skripsi ini, penulis membuat permainan mengenai fiber twig, yaitu permainan penyusunan pipa-pipa untuk mencapai finish. Permainan ini dibuat menggunakan program Microsoft Visual Basic.NET 2010, serta menggunakan metode pencarian Breadth First Seacrh (BFS). Aplikasi permainan ini dapat digunakan untuk bermain Fiber Twig pada sebuah komputer, dimana aplikasi menyediakan fasilitas untuk memilih dan membuat user serta menyimpan dan membuka kembali permainan sebelumnya. Aplikasi ini dibuat agar dapat menjadi sarana hiburan masyarakat pada umumnya. Kata Kunci : permainan, fiber twig, Breadth First Search.
i
ABSTRACT
Computers without game inside it seems uncomplete. Therefore, there are so many ways in making game for computer’s user. In this thesis, the writer creates game abput fiber twig, which is game that needs to arrange pipes from the starts until finish line. This game is made using Microsoft Visual Basic.NET 2010 and using Breadth First Search Methode. This game application could be used to play Fiber Twig in a personal computer, where application provides feature for choosing and making a new user and saving and reopening the previous game. The application is made in hoping to entertain society. Keywords : game, fiber twig, Breadth First Search.
ii
KATA PENGANTAR
Puji syukur kepada Tuhan Yang Maha Esa yang telah memberikan kesehatan kepada saya penulis dan berkat kebajikan yang telah diperbuat selama ini sehingga saya dapat menjelaskan skripsi yang merupakan salah satu pemenuhan kurikulum program studi Teknik Informatika pada STMIK TIME Medan. Adapun judul dari skripsi ini adalah “Aplikasi Fiber Twig Game dengan Menerapkan Metode Pencarian Breadth First Search (BFS)”. Dalam penyusunan skripsi ini, penulis banyak menerima bantuan baik bimbingan maupun petunjuk serta saran nasehat dari berbagai pihak. Melalui kesempatan ini penulis ingin menyampaikan rasa terima kasih yang sebesar – besarnya kepada : 1.
Bapak Edi Wijaya, M.Kom, selaku Dosen Pembimbing I yang telah membantu dan membimbing penulis dalam menyelesaikan skripsi ini.
2.
Bapak Octara Pribadi, S.Kom, selaku Dosen Pembimbing II yang telah membantu dan membimbing penulis dalam menyelesaikan skripsi ini.
3.
Bapak Simon Kanggali, selaku Ketua Yayasan STMIK TIME Medan.
4.
Bapak Prof. Chainur Arrasyid, selaku Ketua BPH STMIK TIME Medan.
5.
Bapak Prof. Harlem Marpaung, Ph.D, selaku Ketua STMIK TIME Medan.
6.
Bapak Jackri Hendrik, S.T, M.Kom, selaku Puket I STMIK TIME Medan.
7.
Bapak Hendri, M.Kom, selaku Ketua Program Studi Teknik Informatika STMIK TIME Medan.
8.
Seluruh Dosen STMIK TIME Medan, yang telah banyak memberikan ilmu pengetahuan kepada penulis selama perkuliahan.
iii
Meskipun telah disusun, penulis menyadari bahwa isi dan teknik penulisan skripsi ini masih memerlukan perbaikan untuk menyempurnakannya baik dari segi tata bahasa manapun materi yang terkandung didalamnya. Oleh karena itu setiap kritik dan saran akan diterima dengan senang hati agar dapat dijadikan bahan perbaikan untuk penulisan selanjutnya. Akhir puji dan syukur daya ucapkan kepada Tuhan Yang Maha Esa, semoga kita selalu dalam lindungan dan karuniaNya.
Medan, 24 April 2015 Penulis
(Megawati Wanda)
iv
DAFTAR ISI
ABSTRAK ..............................................................................................................
i
ABSTRACT .............................................................................................................. ii KATA PENGANTAR ............................................................................................. iii DAFTAR ISI ............................................................................................................ v DAFTAR GAMBAR ............................................................................................... vii DAFTAR TABEL ................................................................................................... ix DAFTAR LAMPIRAN ........................................................................................... x BAB I
PENDAHULUAN ............................................................................ 01 1.1. Latar belakang masalah .............................................................. 01 1.2. Identifikasi masalah ................................................................... 02 1.3. Batasan masalah ......................................................................... 02 1.4. Tujuan dan manfaat penelitian ................................................... 03 1.5. Sistematika penulisan ................................................................. 04
BAB II
LANDASAN TEORI ....................................................................... 06 2.1. Kecerdasan Buatan / Artificial Intelligence ............................... 06 2.1.1. Definisi AI ....................................................................... 8 2.1.2. Paham Pemikiran AI ....................................................... 11 2.1.3. Lingkup AI pada Aplikasi Komersial .............................. 12 2.2. Metode Pencarian Breadth First Search .................................... 14 2.3. Ruang Lingkup AI ...................................................................... 18 2.3.1. Permainan ........................................................................ 19 2.3.2. Penalaran Otomatis dan Pembuktian Teorema ............... 20 2.3.3.Perbandingan Komputasi AI dengan Proses Komputasi Konvensional ............................................................................ 20 2.4. Representasi Pengetahuan ......................................................... 21 2.4.1. Pohon ............................................................................... 22 2.4.2. Jaringan Semantik ........................................................... 22 2.4.3. Aturan Produksi(Production Rule) .................................. 24 2.4.3. Inferensi( Rule Base)........................................................ 25
v
2.5. Fiber Twig Game ....................................................................... 26 BAB III
METODE PENELITIAN ............................................................... 35 3.1. Tempat dan jadwal penelitian ................................................... 27 3.2. Instrumen Penelitian ................................................................. 27 3.3. Kerangka kerja .......................................................................... 28 3.3.1. Metode pengumpulan data .............................................. 29 3.3.2. Analisa sistem ................................................................. 30 3.3.3. Perancangan sistem ......................................................... 30 3.3.4. Pembangunan sistem ....................................................... 31 3.3.5. Uji coba sistem ................................................................ 31
BAB IV
ANALISIS DAN PERANCANGAN .............................................. 32 4.1. Analisis .................................................................................... 32 4.1.1. Asumsi Permainan ............................................................ 32 4.1.2. Aturan Permainan ............................................................. 34 4.1.3. Tipe Pipa ........................................................................... 35 4.1.4. Perancangan Kotak ........................................................... 38 4.1.5. Analisa Prosedur ............................................................... 39 4.1.6. Analisa Metode BFS ........................................................ 50 4.2. Perancangan .............................................................................. 52
BAB V
HASIL DAN PEMBAHASAN ....................................................... 56 5.1. Hasil ............................................................................................ 56 5.2. Pembahasan ................................................................................ 63
BAB V1
KESIMPULAN DAN SARAN ....................................................... 64 6.1. Kesimpulan ................................................................................. 64 6.2. Saran ........................................................................................... 64
DAFTAR PUSTAKA LAMPIRAN
vi
DAFTAR GAMBAR
Gambar 2.1.
Pencarian Melebar Pertama (Breadth First Search) .......................... 16
Gambar 2.2.
Contoh Tree ....................................................................................... 22
Gambar 2.3.
Contoh Jaringan Semantik ................................................................. 23
Gambar 3.1.
Metode Perancangan .......................................................................... 29
Gambar 4.1.
Right Down Connector Ketika Pipa Kosong ..................................... 35
Gambar 4.2.
Left Down Connector Ketika Pipa Kosong ....................................... 35
Gambar 4.3.
Up Left Connector Ketika Pipa Kosong ............................................ 36
Gambar 4.4.
Up Right Connector Ketika Pipa Kosong .......................................... 36
Gambar 4.5.
Up-Left-Right Connector Ketika Pipa Kosong.................................. 36
Gambar 4.6.
Right-Up-Down Connector Ketika Pipa Kosong .............................. 36
Gambar 4.7.
Down-Left-Right Connector Ketika Pipa Kosong ............................. 37
Gambar 4.8.
Left-Up-Down Connector Ketika Pipa Kosong ................................. 37
Gambar 4.9.
Cross Connector Ketika Pipa Kosong................................................ 37
Gambar 4.10. Vertical Connector Ketika Pipa Kosong ............................................ 37 Gambar 4.11. Horizontal Connector Ketika Pipa Kosong ........................................ 38 Gambar 4.12. Penutup .............................................................................................. 38 Gambar 4.13. Contoh Kotak Berukuran (8,8) .......................................................... 39 Gambar 4.14. Perubahan Tipe untuk U Connector ................................................... 40 Gambar 4.15. Perubahan Tipe untuk T Connector ................................................... 41 Gambar 4.16. Perubahan Tipe untuk Long Pipe ....................................................... 41 Gambar 4.17. Kemungkinan untuk U Connector ..................................................... 42 Gambar 4.18. Kemungkinan untuk Long Pipe ......................................................... 43 Gambar 4.19. Perubahan Tipe untuk Cross Connector............................................. 44 Gambar 4.20. Perubahan Tipe untuk T Connector ................................................... 46 Gambar 4.21. Contoh Struktur Pipa untuk Ukuran Kotak 3 x 3 ............................... 50 Gambar 4.22. Gambaran Proses Kerja BFS ............................................................. 51 Gambar 4.23. Desain Form Permainan ..................................................................... 53 Gambar 4.24. Rancangan Form Pilihan Pemain ....................................................... 54
vii
Gambar 4.25. Rancangan Form About ..................................................................... 55 Gambar 5.1.
Tampilan Awal ................................................................................... 56
Gambar 5.2.
Tampilan Nama User ......................................................................... 57
Gambar 5.3.
Tampilan Tambah User ...................................................................... 57
Gambar 5.4.
Tampilan Permainan .......................................................................... 58
Gambar 5.5.
Tampilan Permainan Setelah Pengisian Pipa ..................................... 59
Gambar 5.6.
Tampilan Permainan pada saat Pengecekan HubunganPipa.............. 60
Gambar 5.7.
Tampilan Pesan Kesalahan Bahwa Waktu Permainan Telah Habis .. 60
Gambar 5.8.
Tampilan Pesan Kesalahan bahwa Solusi yang Diberikan Salah ...... 61
Gambar 5.9.
Tampilan About ................................................................................. 61
Gambar 5.10. Tombol Exit untuk Menutup Program ............................................... 62 Gambar 5.11. Tampilan Menu ‘Help’ ...................................................................... 62
viii
DAFTAR TABEL
Tabel 2.1.
Perbandingan AI dengan Pemrograman Konvensional ........................ 20
Tabel 3.1.
Daftar waktu dan Kegiatan Penelitians ................................................. 51
ix
DAFTAR LAMPIRAN
CD program Surat keputusan dosen pembimbing skripsi Daftar riwayat hidup mahasiswa Listing program
x
BAB I PENDAHULUAN
1.1
Latar Belakang Masalah Artificial Intelligence (AI) atau kecerdasan buatan merupakan cabang dari
ilmu komputer yang fokus pada pengautomatisasi tingkah laku cerdas. Pernyataan tersebut juga dapat dijadikan definisi dari AI. Definisi ini menunjukkan bahwa AI adalah bagian dari komputer sehingga harus didasarkan pada sound theoretical (teori suara) dan prinsip-prinsip aplikasi dari bidangnya. Prinsip-prinsip ini meliputi struktur data yang digunakan dalam representasi pengetahuan, algoritma yang diperlukan untuk mengaplikasikan pengetahuan tersebut, serta bahasa dan teknik pemograman yang digunakan dalam mengimplementasikannya. Salah satu metode pencarian AI yang sering digunakan adalah metode Breadth First Search (BFS). Prosedur Breadth First Search (BFS) merupakan pencarian yang dilakukan dengan mengunjungi tiap-tiap node secara sistematis pada setiap level hingga keadaan tujuan (goal state) ditemukan. Atau dengan kata lain, penelusuran yang dilakukan dengan mengunjungi node-node pada level yang sama sehingga ditemukan goal state-nya. Permainan Fiber Twig merupakan salah satu jenis permainan untuk menghubungkan pipa dari awal hingga mencapai tujuan dengan persyaratan bahwa tidak boleh ada kebocoran pada pipa. Untuk penyederhanaan, permainan ini dapat dimainkan pada sebuah kotak berukuran M x N, dimana M mewakili baris dan N mewakili kolom. Pada setiap kotak dapat ditaruh sebuah tipe pipa. Program akan mengeluarkan sebuah tipe pipa setiap 3 detik. Tipe pipa yang
1
2
tersedia mencakup bentuk T, L, Cross, I dan penutup. Tugas dari pemain adalah memasangkan setiap tipe pipa agar dapat terhubung dari awal ke akhir tanpa adanya kebocoran. Untuk mencari dan mengecek apakah pemain telah mampu menghubungkan semua pipa dari awal ke akhir, maka dapat diterapkan metode pencarian Artificial Intelligence (AI), yaitu metode pencarian Breadth First Search (BFS). Sebelumnya telah dirancang permainan sejenis dengan metode pencarian yang lain, oleh karena itu penulis sangat tertarik untuk merancang sebuah aplikasi untuk bermain Fiber Twig Game dimana proses pencarian solusi untuk menghubungkan pipa dari awal ke akhir menggunakan metode pencarian Breadth First Search (BFS). Oleh karena itu, penulis mengambil skripsi yang berjudul “Aplikasi Fiber Twig Game dengan Menerapkan Metode Pencarian Breadth First Search (BFS)”.
1.2
Identifikasi Masalah Berdasarkan latar belakang pemilihan judul, maka yang menjadi
permasalahan adalah: 1. Bagaimana menerapkan metode Breadth First Search (BFS) dalam mencari solusi dari Fiber Twig Game ? 2. Bagaimana membuat Fiber Twig Game yang mampu menghasilkan tipe pipa secara acak ?
3
1.3
Batasan Masalah Karena keterbatasan waktu dan pengetahuan penulis, maka ruang lingkup
permasalahan dalam merancang perangkat lunak ini antara lain: 1. Jumlah kotak awal berukuran 3 x 3 dan untuk level terakhir kotak berukuran 8 x 8. 2. Lama permainan akan dibatasi seiring dengan semakin tinggi tingkatan (level) permainan. 3. Sisa waktu permainan akan ditambahkan ke tingkatan berikutnya. 4. Perangkat lunak menyediakan beberapa fasilitas, seperti palu untuk menghancurkan pipa yang sudah dihubungkan dan 5 buah penutup tambahan yang dapat digunakan apabila tidak muncul penutup. 5. Animasi menggunakan teknik animasi pergantian warna. 6. Bahasa pemrograman yang digunakan untuk membangun sistem adalah Microsoft Visual Basic 2010.
1.4
Tujuan dan Manfaat Penelitian Tujuan penelitian ini adalah untuk merancang suatu aplikasi Fiber Twig
Game yang menerapkan metode Breadth First Search (BFS) untuk mencari solusi dari permainan. Aplikasi yang dibuat dapat digunakan sebagai media penghibur dan juga dapat dijadikan sebagai media/sarana untuk melatih daya pikir. Manfaat dari penelitian ini, yaitu: 1. Penyusunan skripsi ini akan menambah pengetahuan penulis mengenai proses penerapan metode AI dalam mencari solusi Fiber Twig Game. 2. Perangkat lunak yang dihasilkan dapat digunakan sebagai hiburan.
4
3. Hasil penelitian dapat digunakan untuk menambah pengetahuan mengenai proses pembuatan aplikasi game. 4. Laporan yang dibuat dapat dijadikan sebagai referensi tambahan bagi mahasiswa lain yang ingin mengembangkan perangkat permainan. 5. Skripsi yang dibuat dapat dijadikan sebagai pedoman bagi mahasiswa lain yang akan menyusun skripsi.
1.5
Sistematika Penulisan Rincian isi dari laporan skripsi ini meliputi beberapa BAB, yaitu:
BAB I
PENDAHULUAN Pada BAB ini akan membahas tentang latar belakang masalah, identifikasi masalah, batasan masalah, tujuan dan manfaat serta sistematika penulisan.
BAB II
LANDASAN TEORI Pada BAB ini berisi tentang landasan teori yang digunakan untuk menunjang penyusunan laporan skripsi ini.
BAB III
METODE PENELITIAN BAB ini berisi pembahasan jadwal penelitian, kerangka penulisan, metode pengumpulan data dan alur kerja program.
BAB IV
ANALISIS DAN PERANCANGAN SISTEM BAB ini berisi pembahasan masalah serta rancangan tampilan form yang terdapat pada program yang akan dibuat.
BAB V
HASIL DAN PEMBAHASAN
5
BAB ini berisi tampilan output program dan penjabaran mengenai kelebihan dan kelemahan program yang dibuat.
BAB VI
KESIMPULAN DAN SARAN BAB ini berisi kesimpulan dan saran terhadap laporan skripsi yang telah dilakukan.
BAB II LANDASAN TEORI
2.1
Kecerdasan Buatan / Artificial Intelligence (AI) Artificial Intelligence (AI) atau kecerdasan buatan termasuk bidang ilmu
yang relatif muda. Pada tahun 1950-an para ilmuwan dan peneliti mulai memikirkan bagaimana caranya agar mesin dapat melakukan pekerjaannya seperti yang bisa dikerjakan oleh manusia. Alan Turing, seorang matematikawan dari Inggris pertama kali mengusulkan adanya pengujian untuk melihat bisa tidaknya sebuah mesin dikatakan cerdas. Hasil pengujian tersebut kemudian dikenal dengan Turing Test, di mana si mesin tersebut menyamar seolah-olah sebagai seseorang di dalam suatu permainan yang mampu memberikan respon terhadap serangkaian pertanyaan yang diajukan. Turing beranggapan bahwa, jika mesin dapat membuat seseorang percaya bahwa dirinya mampu berkomunikasi dengan orang lain, maka dapat dikatakan bahwa mesin tersebut cerdas (seperti layaknya manusia). Kecerdasan buatan atau Artificial Intelligence (AI) itu sendiri dimunculkan oleh seorang professor dari Massachusetts Institute of Technology yang bernama John McCarthy pada tahun 1956 pada Dartmouth Conference yang dihadiri oleh para peneliti AI. Pada konferensi tersebut juga didefinisikan tujuan utama dari kecerdasan buatan, yaitu mengetahui dan memodelkan proses-proses berpikir manusia dan mendesain mesin agar dapat menirukan kelakuan manusia tersebut. Mulai dari ditemukannya, jaringan saraf tiruan telah mengalami tahaptahap perkembangan, antara lain : (Desiani, 2009: 3)
6
7
1. Pada tahun 1940-an, para ilmuwan menemukan bahwa psikologis dari otak sama dengan mode pemrosesan yang dilakukan oleh peralatan komputer. 2. Pada tahun 1943, Mc Culloch dan Pitts merancang model formal yang pertama kali sebagai perhitungan dasar neuron. 3. Pada tahun 1949, Hebb menyatakan bahwa informasi dapat disimpan dalam koneksi-koneksi dan mengusulkan adanya skema pembelajaran untuk memperbaiki koneksi-koneksi antar neuron tersebut. 4. Pada tahun 1954,
Farley dan Clark mensetup model-model untuk relasi
adaptif stimulus-respon dalam jaringan random. 5. Pada tahun 1958, Rosenblatt mengembangkan konsep dasar tentang perceptron untuk klasifikasi pola. 6. Pada tahun 1960, Widrow dan Hoff mengembangkan ADALINE untuk kendali adaptif dan pencocokan pola yang dilatih dengan aturan pembelajaran Least Mean Square (LMS). 7. Pada tahun 1974, Werbos memperkenalkan algoritma backpropagation untuk melatih perceptron dengan banyak lapisan. 8. Pada tahun 1975, Little dan Shaw menggambarkan jaringan saraf dengan menggunakan model probabilistic. 9. Pada tahun 1982, Kohonen mengembangkan metode pembelajaran jaringan saraf yang tidak terawasi (unsupervised learning) untuk pemetaan. 10. Pada tahun 1982, Grossberg mengembangkan teori jaringan yang diinspirasi oleh perkembangan psikologi. Bersama Carpenter, mereka mengenalkan sejumlah arsitektur jaringan, antara lain: Adaptive Resonance Theory (ART), ART2, dan ART3.
8
11. Pada tahun 1982, Hopfield mengembangkan jaringan saraf recurrent yang dapat digunakan untuk menyimpan informasi dan optimasi. 12. Pada tahun 1985, algoritma pembelajaran dengan menggunakan mesin Boltzmann yang menggunakan model jaringan saraf probabilistik mulai dikembangkan. 13. Pada tahun 1987, Kosko mengembangkan jaringan Adaptive Bidirectional Associative Memory (BAM). 14. Pada tahun 1988, mulai dikembangkan fungsi radial basis.
2.1.1
Definisi AI Kecerdasan Buatan (bahasa Inggris: Artificial Intelligence atau AI)
didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika (Kusumadewi, 2008: 2). Banyak hal yang kelihatannya sulit untuk kecerdasan manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh: mentransformasikan persamaan, menyelesaikan persamaan integral, membuat permainan catur atau menyelesaikan permainan puzzle geser angka. Di sisi lain, hal yang bagi manusia kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk direalisasikan dalam Informatika. Seperti contoh: Pengenalan Obyek/Muka, bermain Sepakbola.
9
Walaupun AI memiliki konotasi fiksi ilmiah yang kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin. Penelitian dalam AI menyangkut pembuatan mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi perangkat lunak komputer rumah dan video game. Kecerdasan buatan ini bukan hanya ingin mengerti apa itu sistem kecerdasan, tapi juga mengkonstruksinya. Tidak ada definisi yang memuaskan untuk 'kecerdasan': 1. kecerdasan:
kemampuan
untuk
memperoleh
pengetahuan
dan
menggunakannya 2. atau kecerdasan yaitu apa yang diukur oleh sebuah 'Test Kecerdasan' Tujuan dari AI adalah untuk memecahkan persoalan dunia nyata (bersifat praktis) dan memahami intelijensia (bersifat memahami). AI merupakan salah satu bagian ilmu komputer yang mempelajari tentang bagaimana cara membuat agar komputer dapat melakukan pekerjaan seperti yang dilakukan oleh manusia. Pada awal diciptakannya, komputer hanya difungsikan sebagai alat hitung saja. Namun seiring dengan perkembangan zaman, maka peran komputer semakin
10
mendominasi kehidupan umat manusia. Komputer tidak lagi hanya digunakan sebagai alat hitung, lebih dari itu, komputer diharapkan untuk dapat diberdayakan untuk mengerjakan segala sesuatu yang bisa dikerjakan oleh manusia. Manusia bisa menjadi pandai dalam menyelesaikan segala permasalahan di dunia ini karena manusia mempunyai pengetahuan dan pengalaman. Pengetahuan diperoleh dari belajar. Semakin banyak bekal pengetahuan yang dimiliki oleh seseorang tentu saja diharapkan akan lebih mampu dalam menyelesaikan permasalahan. Namun bekal pengetahuan saja tidak cukup, manusia juga diberi akal untuk melakukan penalaran, mengambil kesimpulan berdasarkan pengetahuan dan pengalaman yang mereka miliki. Tanpa memiliki kemampuan menalar yang baik, manusia dengan segudang pengalaman dan pengetahuan tidak akan dapat menyelesaikan masalah dengan baik. Demikian pula, dengan kemampuan menalar yang sangat baik, namun tanpa bekal pengetahuan dan pengalaman yang memadai, manusia juga tidak akan bisa menyelesaikan masalah dengan baik. Komputer juga harus diberi bekal pengetahuan dan mempunyai kemampuan untuk menalar, agar komputer bisa bertindak seperti dan sebaik manusia. Untuk itu pada artificial intelligence, akan mencoba untuk memberikan beberapa metode untuk membekali komputer dengan kedua komponen tersebut agar komputer bisa menjadi mesin yang pintar. Untuk menciptakan aplikasi kecerdasan buatan ada 2 bagian utama yang sangat dibutuhkan, yaitu: (Kusumadewi, 2008: 5) 1. Basis Pengetahuan (Knowledge Base) Basis pengetahuan berisi fakta-fakta, teori, pemikiran dan hubungan antara satu dengan yang lainnya.
11
2. Motor Inferensi (Inference Engine) Motor Inferensi merupakan kemampuan menarik kesimpulan berdasarkan pengalaman. Atau dapat juga disebut dengan penalaran.
2.1.2
Paham Pemikiran AI Secara garis besar, AI terbagi ke dalam dua faham pemikiran yaitu AI
Konvensional dan Kecerdasan Komputasional (CI, Computational Intelligence). AI konvensional kebanyakan melibatkan metoda-metoda yang sekarang diklasifikasikan sebagai pembelajaran mesin, yang ditandai dengan formalisme dan analisis statistik. AI konvensional dikenal juga dengan sebutan AI simbolis, AI logis, AI murni dan AI cara lama (GOFAI, Good Old Fashioned Artificial Intelligence). Metoda-metodanya meliputi: 1. Sistem pakar: menerapkan kapabilitas pertimbangan untuk mencapai kesimpulan. Sebuah sistem pakar dapat memproses sejumlah besar informasi yang diketahui dan menyediakan kesimpulan-kesimpulan berdasarkan pada informasi-informasi tersebut. 2. Petimbangan berdasar kasus 3. Jaringan Bayesian 4. AI berdasar tingkah laku: metoda modular pada pembentukan sistem AI secara manual Kecerdasan komputasional melibatkan pengembangan atau pembelajaran iteratif (misalnya penalaan parameter seperti dalam sistem koneksionis. Pembelajaran ini berdasarkan pada data empiris dan diasosiasikan dengan AI non-simbolis, AI yang tidak teratur dan perhitungan lunak. Metoda-metoda pokoknya meliputi:
12
1. Jaringan Syaraf: sistem dengan kemampuan pengenalan pola yang sangat kuat 2. Sistem Fuzzy: teknik-teknik untuk pertimbangan di bawah ketidakpastian, telah digunakan secara meluas dalam industri modern dan sistem kendali produk konsumen. 3. Komputasi Evolusioner: menerapkan konsep-konsep yang terinspirasi secara biologis seperti populasi, mutasi dan “survival of the fittest” untuk menghasilkan pemecahan masalah yang lebih baik. Metoda-metoda ini terutama dibagi menjadi algoritma evolusioner (misalnya algoritma genetik) dan kecerdasan berkelompok (misalnya algoritma semut). Dengan sistem cerdas hibrid, percobaan-percobaan dibuat untuk menggabungkan kedua kelompok ini. Aturan inferensi pakar dapat dibangkitkan melalui jaringan syaraf atau aturan produksi dari pembelajaran statistik seperti dalam ACT-R. Sebuah pendekatan baru yang menjanjikan disebutkan bahwa penguatan kecerdasan mencoba untuk mencapai kecerdasan buatan dalam proses pengembangan evolusioner sebagai efek samping dari penguatan kecerdasan manusia melalui teknologi. (Kusumadewi, 2008: 7)
2.1.3
Lingkup AI pada Aplikasi Komersial Dewasa ini, AI juga memberikan konstribusi yang cukup besar di bidang
manajemen. Adanya sistem pendukung keputusan dan Sistem Informasi Manajemen juga tidak terlepas dari andil AI. Makin pesatnya perkembangan teknologi menyebabkan adanya perkembangan dan perluasan lingkup yang membutuhkan kehadiran AI. Karakteristik ‘cerdas’ sudah mulai dibutuhkan di
13
berbagai disiplin ilmu dan teknologi. AI tidak hanya dominan di bidang ilmu komputer (informatika), namun juga sudah merambah di berbagai disiplin ilmu yang lain. Irisan antara psikologi dan AI melahirkan sebuah area yang dikenal dengan nama cognition & psycolinguistics. Irisan antara teknik elektro dengan AI melahirkan berbagai ilmu, seperti: pengolahan citra, teori kendali, pengenalan pola dan robotika. Adanya irisan penggunaan AI di berbagai disiplin ilmu tersebut menyebabkan cukup rumitnya untuk mengklasifikasikan AI menurut disiplin ilmu yang menggunakannya. Untuk memudahkan hal tersebut, maka pengklasifikasian lingkup AI didasarkan pada output yang diberikan, yaitu pada aplikasi komersial (meskipun sebenarnya AI itu sendiri bukan merupakan medan komersial). Lingkup utama dalam kecerdasan buatan adalah: 1. Sistem Pakar (Expert System). Disini, komputer digunakan sebagai sarana untuk menyimpan pengetahuan para pakar. Dengan demikian, komputer akan memiliki keahlian untuk menyelesaikan permasalahan dengan meniru keahlian yang dimiliki oleh pakar. 2. Pengolahan Bahasa Alami (Natural Language Processing). Dengan pengolahan bahasa alami ini diharapkan user dapat berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari. 3. Pengenalan Ucapan (Speech Recognition). Melalui pengenalan ucapan diharapkan manusia dapat berkomunikasi dengan komputer menggunakan suara.
14
4. Robotika & Sistem Sensor (Robotics & Sensory Systems). 5. Computer Vision, mencoba untuk dapat menginterpretasikan gambar atau objek-objek tampak melalui komputer. 6. Intelligent Computer-aided Instruction. Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar. 7. Game Playing. Seiring dengan perkembangan teknologi, muncul beberapa teknologi yang juga bertujuan untuk membuat agar komputer menjadi cerdas sehingga dapat menirukan kerja manusia sehari-hari. Teknologi ini juga mampu mengakomodasi adanya ketidakpastian dan ketidaktepatan data input. Dengan didasari pada teori himpunan, maka pada tahun 1965 muncul Logika Fuzzy. Kemudian pada tahun 1975, John Holland mengatidakan bahwa setiap problem berbentuk adaptasi (alami maupun buatan) secara umum dapat diformulasikan dalam terminologi genetika. Algoritma genetika ini merupakan simulasi proses evolusi Darwin dan operasi genetika atas kromosom. (Sandi, 2008: 7)
2.2
Metode Pencarian Breadth First Search (BFS) Konsep utama dalam menentukan keberhasilan sistem yang berlandaskan
AI adalah kesuksesan dalam melakukan dan mengembangkan pencarian. Pencarian atau pelacakan merupakan salah satu teknik untuk menyelesaikan permasalahan AI. Keberhasilan suatu sistem, salah satunya ditentukan oleh kesuksesan dalam pencarian dan pencocokan. Teknik dasar pencarian memberikan suatu kunci bagi banyak sejarah penyelesaian yang penting dalam bidang AI. Ada beberapa aplikasi yang menggunakan teknik pencarian ini, yaitu:
15
1. Papan game dan puzzle (tic-tac-toe, catur) 2. Penjadwalan dan masalah routing (travelling salesman problem) 3. Parsing bahasa dan interpretasinya (pencarian struktur dan arti) 4. Logika pemograman (pencarian fakta dan implikasinya) 5. Computer vision dan pengenalan pola 6. Sistem pakar berbasis kaidah (rule based expert system) 7. Metode backtracking (problema cryptarithmetic, game Sudoku) Konsep pencarian untuk suatu solusi dalam ruang keadaan (state space) merupakan pusat AI yang menjadikan AI lebih unggul dalam bidang ilmu komputer dibandingkan dengan yang lainnya, dan prinsip kontribusi AI untuk ilmu pengetahuan dari pencarian ini merupakan konsep basis pengetahuan (knowledge based) heuristik untuk pembatasan dan pencarian berarah (directing search). Pada dasarnya, ada dua teknik pencarian dan pelacakan yaitu: (Desiani, 2009: 37) 1. Pencarian buta (blind search), terdiri atas: a. Pencarian melebar pertama (Breadth First Search) b. Pencarian mendalam pertama (Depth First Search) 2. Pencarian terbimbing (heuristic search). Masalah ruang keadaan (state space) merupakan suatu ruang yang berisi semua keadaan yang mungkin dalam suatu kasus AI. Kondisi dalam ruang keadaan meliputi: 1. Keadaan sekarang (keadaan awal / start node) 2. Keadaan tujuan, merupakan solusi yang dijangkau dan perlu diperiksa apakah telah mencapai sasaran.
16
3. Kaidah atau aturan yang memberikan bagaimana mengubah keadaan. Keadaan direpresentasikan sebagai node (simpul), sedangkan langkah yang diperbolehkan atau aksi direpresentasikan dengan arc (busur). Pada metode pencarian ini, semua node pada level n akan dikunjungi terlebih dahulu sebelum mengunjungi node-node pada level n+1. Pencarian dimulai dari node akar terus ke level ke-1 dari kiri ke kanan, kemudian berpindah ke level berikutnya. Proses kerja dari pencarian melebar pertama ini dapat dilihat pada gambar 2.1. A
B
D
E
C
F
G
H
I
Gambar 2.1 Pencarian Melebar Pertama (Breadth First Search) Sumber : Desiani, 2009: 37 Pengimplementasian BFS dapat ditelusuri dengan menggunakan daftar (list) open dan closed, untuk menelusuri gerakan pencarian di dalam ruang keadaan. Pseudocode adalah cara untuk menuliskan sebuah algoritma secara highlevel (level tingkat tinggi). Biasanya pseudocode dituliskan dengan kombinasi bahasa Inggris dan notasi matematika. Sebuah pseudocode tidak terlalu detail dibandingkan dengan program. Isu-isu detail dalam program yang sifatnya teknis tidak dibahas di dalam pseudocode. Pseudocode dari prosedur untuk BFS dapat dituliskan sebagai berikut:
17
prosedur Breadth_First_Search begin open := [start]; closed := []; while open [] do begin remove leftmost state from open, call it X if X is a goal then return SUCCESS else begin generate children of X; put X on closed; discard children of X is already on open or closed; put remaining children on right end of open; end; end return FAIL end.
Karena proses breadth first search mengamati setiap node di setiap level graf sebelum bergerak menuju ruang yang lebih dalam, maka mula-mula semua keadaan akan dicapai lewat lintasan yang terpendek dari keadaan awal. Oleh sebab itu, proses ini menjamin ditemukannya lintasan terpendek dari keadaan awal ke keadaan tujuan. Lebih jauh karena mula-mula semua keadaan ditemukan melalui lintasan terpendek sehingga setiap keadaan yang ditemui pada kali kedua didapati pada sepanjang sebuah lintasan yang sama atau lebih panjang. Kemudian, jika tidak ada kesempatan ditemukannya keadaan yang identik pada sepanjang lintasan yang lebih baik maka algoritma akan menghapusnya, sehingga keuntungan dari metode pencarian ini adalah:
18
1. Tidak akan menemui jalan buntu. 2. Jika ada satu solusi, maka breadth-first search akan menemukannya. Dan jika ada lebih dari satu solusi, maka solusi minimum akan ditemukan. Namun demikian, ada tiga persoalan utama berkenaan dengan metode pencarian ini, yaitu: (Desiani, 2009: 39) 1. Membutuhkan memori yang besar, karena menyimpan semua node dalam satu pohon. Jumlah node di setiap tingkat dari pohon bertambah secara eksponensial terhadap jumlah tingkat, dan semuanya ini harus disimpan sekaligus. 2. Membutuhkan sejumlah besar pekerjaan, khususnya jika lintasan solusi terpendek cukup panjang, karena jumlah node yang perlu diperiksa bertambah secara eksponensial terhadap panjang lintasan. 3. Tidak relevannya operator akan menambah jumlah node yang harus diperiksa sangat besar. 4. Relatif membutuhkan waktu yang cukup lama, karena akan menguji semua node pada level ke-n untuk mendapatkan solusi pada level ke- (n + 1).
2.3
Ruang Lingkup AI Ada dua hal yang sangat mendasar mengenai penelitian-penelitian AI,
yaitu
knowledge
representation
(representasi
pengetahuan)
dan
search
(pelacakan). Para peneliti AI terus mengembangkan berbagai jenis teknik baru dalam menangani sejumlah permasalahan yang tergolong ke dalam AI seperti vision dan percakapan, pemrosesan bahasa alami dan permasalahan khusus seperti diagnosa medis.
19
AI seperti bidang ilmu lainnya juga memiliki sejumlah subdisiplin ilmu yang sering digunakan untuk pendekatan yang esensial bagi penyelesaian suatu masalah dan dengan aplikasi bidang AI yang berbeda. (Sandi, 2008: 12)
2.3.1
Permainan Setiap permainan memiliki aturan main. Hal ini mempermudah upaya
menghasilkan ruang pencarian dan memberikan kebebasan pada para peneliti dari bermacam ambisi dan kompleksitas sifat serta kurangnya struktur permasalahan. Papan konfigurasi yang digunakan untuk memainkan permainan ini mudah untuk direpresentasikan pada komputer, tidak memerlukan bentuk yang kompleks untuk capture semantik dari domain permasalahan yang rumit. Permainan dapat menghasilkan sejumlah besar pencarian ruang. Hal ini cukup besar dan kompleks yang membutuhkan suatu teknik yang tangguh untuk menentukan alternatif pengeksplorasian ruang permasalahan. Teknik ini dikenal dengan nama heuristik dan merupakan arena utama dari penelitian tentang AI. Banyak hal yang biasanya dikenal dengan kecerdasan tampaknya berada dalam heuristik yang digunakan oleh manusia untuk menyelesaikan permasalahannya. Sebagian dari kita mempunyai pengalaman mengenai permainan sederhana yang memungkinkan pengujian keefektifan heuristik yang kita punyai. Kita tidak perlu mencarinya dan berkonsultasi dengan pakar dalam beberapa area permasalahan esetoric seperti kedokteran dan matematika. Dengan alasan ini, maka permainan merupakan bidang yang memberikan salah satu domain besar untuk studi heuristik. (Kusumadewi, 2008: 15)
20
2.3.2
Penalaran Otomatis dan Pembuktian Teorema Sisi menarik dari pembuktian teorema otomatis terletak pada kekakuan
dan keumuman logika. Oleh karena, hal tersebut merupakan sistem formal, logika meminjam logika itu sendiri untuk automasi. Berbagai permasalahan secara umum dapat digambarkan dengan merepresentasikan deskripsi permasalahan dan informasi mengenai penyebab permasalahan yang relevan sebagai aksioma logika dan memperlakukan masalah sebagai teorema yang akan dibuktikan. Sayangnya, usaha awal menulis pembuktian teorema gagal digunakan untuk mengembangkan suatu sistem yang dapat secara konsisten menyelesaikan masalah-masalah yang rumit. Hal ini disebabakan kemampuan tiap sistem logika dengan penalaran yang kompleks melahirkan suatu bilangan yang tak berhingga dari teorema-teorema yang dapat dibuktikan tanpa suatu teknik yang tangguh (heuristik) untuk memandu pencariannya. (Kusumadewi, 2008: 17)
2.3.3
Perbandingan Komputasi AI dengan Proses Komputasi Konvensional Perbandingan antara AI dengan pemograman konvensional adalah seperti
tabel 2.1 berikut ini: Tabel 2.1 Perbandingan AI dengan Pemograman Konvensional Dimensi
AI
Pemograman Konvensional
Processing
Simbolik
Algoritmik
Input
Tidak harus lengkap
Harus lengkap
Search
Heuristik
Algoritmik
Explanation
Tersedia
Tidak Tersedia
21
Major Interest
Pengetahuan
Struktur
Terpisah
antara
Data dan Informasi kontrol Kontrol
terintegrasi
dan pengetahuan
data
Output
Tidak harus lengkap
Harus lengkap
Maintenance
Mudah
dan
menggunakan modul-modul
dengan
karena Umumnya susah dilakukan
update Hardware
Workstation dan PC
Kemampuan
Terbatas
pemikiran
ditingkatkan
tetapi
Semua tipe dapat Tidak ada
Sumber: Kusumadewi, 2008: 9
2.4
Representasi Pengetahuan Penyelesaian suatu permasalahan dalam AI membutuhkan pengetahuan
yang cukup. Tidak hanya itu, sistem juga harus memiliki kemampuan unuk menalar. Basis pengetahuan dan kemampuan untuk melakukan penalaran merupakan bagian terpenting dari sistem yang menggunakan AI. Meskipun suatu sistem memiliki banyak pengetahuan, namun apabila tidak memiliki kemampuan untuk menalar, tentu akan menjadi percuma saja. Demikian pula sebaliknya, apabila suatu sistem memiliki kemampuan yang sangat handal untuk menalar, namun basis pengetahuan yang dimilikinya tidak cukup, maka solusi yang diperoleh pun menjadi tidak maksimal. (Desiani, 2009: 41)
22
2.4.1
Pohon Pohon merupakan struktur penggambaran secara hirarkis. Struktur pohon
terdiri dari node-node yang menunjukkan objek dan arc (busur) yang menunjukkan hubungan antar objek. Contoh struktur pohon dapat dilihat pada gambar 2.2: a g
h
b
k i
c e
j
d
l
f
n
m o
Gambar 2.2 Contoh Tree Sumber : Desiani, 2009: 39 Node-node pada pohon mencakup nama list dan arc yang menunjukkan hubungan antar node. Struktur atau grafik ini disebut pohon karena mempunyai cabang-cabang. Tapi cabang dari pohon yang terbalik, berbeda dengan pohon yang sebenarnya. Pohon sangat umum dipakai untuk menggambarkan pengetahuan yang akan digunakan dalam AI. (Desiani, 2009: 39)
2.4.2
Jaringan Semantik Jaringan semantik merupakan gambaran pengetahuan grafis yang
menunjukkan hubungan antar berbagai objek. Jaringan semantik terdiri dari lingkaran-lingkaran yang menunjukkan objek dan informasi tentang objek-objek tersebut. Objek bisa berupa benda atau peristiwa. Antara 2 objek dihubungkan
23
oleh arc yang menunjukkan hubungan antar objek. Contoh jaringan semantik dapat dilihat pada gambar 2.3:
pagi masuk sekolah punya pergi
sepeda
naik Budi
buku membaca berjudul
jumlahnya berwarna
kakak adalah
Si Kancil
roda
dua merah
laki-laki
Ani adalah
adalah
adalah
warna
punya
makhluk hidup binatang
adalah
adalah
wanita
baju
Gambar 2.3 Contoh Jaringan Semantik Sumber : Desiani, 2009: 41 Salah satu kelebihan dari jaringan semantik adalah ‘bisa mewariskan’. Sistem jaringan semantik ini selalu tergantung pada jenis masalah yang akan dipecahkan. Jika masalah itu bersifat umum, maka hanya memerlukan sedikit rincian. Jika ternyata masalah itu banyak melibatkan hal-hal lain, maka di dalam jaringan awalnya diperlukan penjelasan yang lebih rinci lagi. (Desiani, 2009: 42)
24
2.4.3
Aturan Produksi (Production Rule) Semua aturan produksi dinyatidakan dalam bentuk yang bisa
dibaca menghasilkan , atau menurunkan . menyatidakan simbol – simbol pada ruas kiri aturan produksi (sebelah kiri tanda ‘’) dan menyatidakan simbol – simbol pada ruas kanan aturan produksi atau bisa disebut juga hasil produksi. Simbol – simbol tersebut bisa berupa simbol terminal atau simbol non terminal. Simbol non terminal adalah simbol yang masih bisa diturunkan, sedang simbol terminal sudah tidak bisa diturunkan lagi. Untuk contoh berikut simbol terminal akan dinyatidakan dengan huruf kecil, seperti ‘a’, ‘b’, ‘c’. Simbol non terminal dinyatidakan dengan huruf besar, seperti ‘A’, ‘B’, dan ‘C’. Dengan menerapkan aturan produksi, suatu tata bahasa bisa menghasilkan sejumlah string. Himpunan semua string tersebut adalah bahasa yang didefinisikan oleh tata bahasa tersebut. Contoh aturan produksi, Ta Bisa dibaca T menghasilkan a, dimana T merupakan simbol non terminal, dan a merupakan simbol terminal. ET|T+E Bisa dibaca E menghasilkan T atau E menghasilkan T + E, dimana E dan T merupakan simbol non terminal, dan + merupakan simbol terminal. Simbol ‘|’ bertujuan untuk menyatidakan atau, yang biasa digunakan untuk mempersingkat penulisan aturan produksi yang mempunyai ruas kiri yang sama. Pada contoh sebelumnya, (Desiani, 2009: 43) ET|T+E
25
merupakan penyerdahanaan dari aturan produksi berikut, ET ET+E
2.4.4
Inferensi (Rule Base) Representasi Pengetahuan dengan Rules (aturan) sering disebut juga
dengan Sistem Produksi. Suatu Rule Terdiri dari 2 bagian, yaitu: (Kusumadewi, 2008: 12) 1. Antacedent, yaitu bagian yang mengekspresikan situasi atau premis (Pernyataan berawalan IF). 2. Konsekuen, yaitu bagian yang menyatidakan suatu tindakan tertentu atau konklusi yang diterapkan jika situasi atau premis bernilai benar (Pernyataan berawalan THEN). Misalnya: IF lalulintas pagi ini macet THEN saya naik sepeda motor saja Untuk mendapatkan aturan “IF…..THEN” ada dua cara utama : 1. Menanyakan ke operator manusia yang dengan cara manual telah mampu mengendalikan sistem tersebut, dikenal dengan “human expert”. 2. Dengan menggunakan algoritma pelatihan berdasarkan data-data masukan dan keluaran. Mesin inferensi (inference engine) merupakan bagian yang bertindak sebagai pencari solusi dari suatu permasalahan berdasar pada kaidah-kaidah yang ada dalam basis pengetahuan sistem pakar. Selama proses inferensi, mesin inferensi memeriksa status dari basis pengetahuan dan memori kerja (working
26
memory) untuk menentukan fakta apa saja yang diketahui dan untuk menambahkan fakta baru yang dihasilkan ke dalam memori kerja tersebut. Faktafakta yang merupakan hasil dari proses inferensi disimpan dalam memori kerja.
2.5
Fiber Twig Game Game telah memainkan peranan penting dalam kehidupan sehari-hari
dalam menghilangkan stress, memberikan hiburan di waktu senggang dan sebagainya. Game atau permainan komputer telah ada sekitar tahun 1952 dengan kemunculan game Tic-Tac-Toe. Menurut Greg Costkyan, Game adalah sebuah bentuk dari seni di mana pemain-pemain membuat keputusan untuk mengatur sumber-sumber melalui token-token game dalam pencarian suatu sasaran (goal). Permainan Fiber Twig merupakan salah satu jenis permainan untuk menghubungkan pipa dari awal hingga mencapai tujuan dengan persyaratan bahwa tidak boleh ada kebocoran pada pipa. Untuk penyederhanaan, permainan ini dapat dimainkan pada sebuah kotak berukuran M x N, dimana M mewakili baris dan N mewakili kolom. Pada setiap kotak dapat ditaruh sebuah tipe pipa. Program akan mengeluarkan sebuah tipe pipa setiap 3 detik. Tipe pipa yang tersedia mencakup bentuk T, L, Cross, I dan penutup. Tugas dari pemain adalah memasangkan setiap tipe pipa agar dapat terhubung dari awal ke akhir tanpa adanya kebocoran.
BAB III METODE PENELITIAN
3.1
Tempat dan Jadwal Penelitian Penelitian ini dimulai dari Desember 2014 dan akan berlangsung sekitar 5
bulan. Penelitian ditujukan untuk mengumpulkan data yang diperlukan dalam proses perancangan dan pembuatan sistem. Berikut ini dijabarkan jadwal penelitian yang dapat dilihat pada Tabel 3.1. Tabel 3.1 Daftar Waktu dan Kegiatan Penelitian Waktu
Desember
Januari
Februari
Maret
April
2014
2015
2015
2015
2015
Kegiatan 1
2
3
4
1
2
3
4
1
2
3
4
1
2
3
4
1
2
3
4
Identifikasi Masalah Pengumpulan Data Analisis Sistem Perancangan Sistem Pembangunan Sistem Uji Coba Sistem
3.2
Instrumen Penelitian Perangkat keras dan perangkat lunak yang digunakan untuk menjalankan
aplikasi Fiber Twig Game dengan Menerapkan Metode Pencarian Breadth First Search (BFS) ini memiliki spesifikasi sebagai berikut : 1.
Prosesor Intel Pentium IV 1.7 Ghz.
2.
Memory 256 MB.
27
28
3.
Monitor dengan resolusi 1028 768 pixel.
4.
Keyboard dan Mouse.
5.
Harddisk 40GB
Perangkat lunak ini direkomendasikan untuk dijalankan di sistem operasi Microsoft Windows 7. Software pendukung yang digunakan yaitu Microsoft.NET Framework 4.0.
3.3
Kerangka Kerja Adapun tahapan dan langkah-langkah pengembangan perangkat lunak ini
dapat digambarkan dalam bentuk diagram alir seperti diperlihatkan pada gambar 3.1 sebagai berikut.
29
Identifikasi Masalah
Pengumpulan data
Analisa Sistem
Perancangan Sistem
Pembangunan Sistem
Uji Coba Sistem
Gambar 3.1 Metode Perancangan
3.3.1
Pengumpulan Data Di tahap pertama, akan dikumpulkan bahan-bahan yang diperlukan dalam
penyusunan skripsi. Bahan tersebut dikumpulkan dari buku dan sumber-sumber lainnya di internet. Proses dimulai dengan mengumpulkan data-data yang diperlukan dalam penelitian, adapun metode pengumpulan data dalam penelitian dilakukan melalui Penelitian Kepustakaan (library research), yaitu penulis mengumpulkan data-data
30
melalui internet dan buku-buku yang relevan yang berhubungan dengan topik yang dibahas.
3.3.2
Analisa Sistem Tahap berikutnya ialah menganalisis kebutuhan-kebutuhan sistem.
Perangkat dan teknik-teknik tertentu akan membantu penganalisis menentukan kebutuhan. Perangkat yang dimaksud ialah penggunaan diagram alir data untuk menyusun daftar input, proses, dan output fungsi bisnis dalam bentuk grafik terstruktur.
3.3.3
Perancangan Sistem Dalam tahap desain dari siklus hidup pengembangan sistem, penganalisis
sistem menggunakan informasi-informasi yang terkumpul sebelumnya untuk mencapai desain sistem informasi yang logic. Penganalisis merancang prosedur data-entry sedemikian rupa sehingga data yang dimasukkan ke dalam sistem informasi benar-benar akurat. Selain itu, penganalisis menggunakan teknik-teknik bentuk dan perancangan layar tertentu untuk menjamin keefektifan input sistem informasi. Setelah itu, penganalisis bekerja untuk mengembangkan suatu perangkat lunak awal yang diperlukan. Teknik terstruktur yang digunakan untuk merancang dan mendokumentasikan perangkat lunak adalah pseudocode.
31
3.3.4
Pembangunan Sistem Perangkat lunak permainan ini dirancang dengan menggunakan bahasa
pemrograman Microsoft Visual Basic 2010 dengan menggunakan komponen standard, seperti button sebagai tombol, text box sebagai tempat input, label sebagai komponen untuk menampilkan tulisan, radio button sebagai komponen untuk memilih, pictureBox sebagai komponen untuk menampilkan gambar, dan komponen standard lainnya. Perangkat lunak ini memiliki beberapa tampilan, yaitu tampilan Awal, tampilan Pengaturan Permainan, tampilan Permainan Fiber Twig, tampilan Pilih User, tampilan Tambah User Baru, tampilan Daftar Nilai Tertinggi dan tampilan Tentang Pembuat.
3.3.5
Uji Coba Sistem Sebelum sistem informasi dapat digunakan, maka harus dilakukan
pengujian terlebih dulu. Untuk dapat menghemat biaya maka perlu untuk menangkap adanya masalah sebelum sistem tersebut ditetapkan. Sebagian pengujian dilakukan oleh pemrogram sendiri, dan lainnya dilakukan oleh penganalisis sistem.
BAB IV ANALISA DAN PERANCANGAN
4.1
Analisa Permainan fiber twig adalah salah satu jenis permainan yang dimainkan
pada sebuah kotak kecil dengan ukuran tertentu. Pada beberapa kotak akan terdapat tipe pipa tertentu. Sasaran dari permainan ini adalah untuk menghubungkan sumber air yang terletak pada bagian kanan bawah layar ke keran air yang terletak pada bagian kiri atas layar monitor komputer.
4.1.1
Asumsi Permainan Persyaratan yang harus dipenuhi oleh permainan fiber twig yang akan
dibangun dapat dikelompokkan menjadi persyaratan fungsional dan nonfungsional sistem. Beberapa persyaratan fungsional dari sistem dapat dirincikan sebagai berikut: 1. Permainan dimulai dari level 1 (satu) dengan ukuran kotak sebesar 3 x 3. 2. Ukuran kotak pada permainan dapat ditentukan sebagai berikut: a. Level 2 akan memiliki ukuran kotak, yaitu 3 x 3. b. Level 3 sampai level 4 akan memiliki ukuran kotak, yaitu 4 x 4. c. Level 5 sampai level 6 akan memiliki ukuran kotak, yaitu 5 x 5. d. Level 7 sampai level 8 akan memiliki ukuran kotak, yaitu 6 x 6. e. Level 9 sampai level 10 akan memiliki ukuran kotak, yaitu 7 x 7. f. Level 11 dan seterusnya akan memiliki ukuran kotak, yaitu 8 x 8.
32
33
3. Pipa pada setiap level akan ditentukan secara otomatis oleh komputer dengan memilih sembarang tipe pipa secara acak. 4. Permainan dapat disimpan secara otomatis ketika pemain menyimpan permainan dan dapat dilanjutkan kembali ketika pemain kembali menjalankan permainan. 5. Pada level 1, pemain diberikan 120 detik untuk menyelesaikan permainan dengan menyusun semua pipa pada kotak sehingga semua pipa terhubung satu sama lain dari kiri atas ke kanan bawah dan tidak terjadi kebocoran pada pipa. 6. Sisa waktu pada setiap level akan diakumulasikan ke level berikutnya. Sebagai contoh jika pemain memerlukan 30 sekon untuk menyelesaikan permainan pada level pertama, maka pemain akan memiliki 150 sekon untuk menyelesaikan permainan pada level kedua. 7. Detail waktu untuk setiap level dapat ditentukan sebagai berikut: a. Level 1 sampai level 2 diberikan waktu 120 sekon. b. Level 3 sampai level 4 diberikan waktu 150 sekon. c. Level 5 sampai level 6 diberikan waktu 180 sekon. d. Level 7 sampai level 8 diberikan waktu 210 sekon. e. Level 9 sampai level 10 diberikan waktu 240 sekon. f. Level 11 dan seterusnya diberikan waktu 270 sekon. 8. Nilai ditentukan dengan menggunakan rumusan berikut: (JlhKotak * 10) + {Sisa Waktu} Kerangka kerja PIECES berikut digunakan untuk mengidentifikasi persyaratan non-fungsional yang berhubungan dengan kualitas sistem.
34
1. Performansi a. Sistem harus mampu menghasilkan sebuah pipa baru dalam waktu 5 detik. b. Jenis pipa yang keluar akan ditentukan secara acak. 2. Informasi Sistem harus mampu menghitung dan menampilkan total nilai yang diperoleh pemain secara cepat dan akurat. Demikian juga halnya dengan sisa waktu untuk setiap level, sistem harus mampu menampilkan nilai pemain secara cepat dan akurat. 3. Ekonomis Permainan harus dapat dimainkan pada berbagai versi dari sistem operasi Windows. User hanya perlu menginstall aplikasi permainan ini pada harddisk komputer. 4. Kontrol Permainan harus dapat menampilkan pesan untuk user ketika permainan selesai atau ketika user berhasil menyelesaikan permainan. 5. Efisiensi Permainan tidak memerlukan komponen atau aplikasi lainnya selain Microsoft .NET Framework 4.0. Permainan harus dapat dimainkan setelah pemakai selesai meng-install installer file. 6. Pelayanan Permainan harus memiliki desain gambar latar yang interaktif dan harus menyediakan fitur penyimpanan bagi user agar dapat menyimpan permainan yang sedang dimainkan.
35
4.1.2
Aturan Permainan Aturan permainan dari Fiber twig ini dapat dideskripsikan sebagai berikut:
1. Sisa waktu dimulai dari 120 sekon pada awal level 1 dan akan bertambah 30 sekon per 2 level. 2. Permainan akan selesai apabila sisa waktu telah habis namun pemain belum mampu menyelesaikan permainan dan permainan akan diulang dari level 1. 3. Pemain harus mengubah bentuk dari tipe pipa yang akan diambil terlebih dahulu sebelum meletakkannya pada lokasi yang diinginkan. Caranya adalah dengan mengklik kiri pada gambar tipe pipa tersebut. 4. Penutup harus dipasang untuk menutupi pipa yang bocor agar permainan dapat dilanjutkan ke level berikutnya. Apabila masih terdapat pipa yang bocor, maka permainan belum sianggap selesai.
4.1.3
Tipe Pipa Tipe pipa dari permainan dapat dirincikan sebagai berikut:
1. U Connector, digunakan untuk menghubungkan dua pipa. Tipe U Connector dapat dirincikan sebagai berikut: a. Right Down Connector
Gambar 4.1 Right Down Connector Ketika Pipa Kosong b. Left Down Connector
36
Gambar 4.2 Left Down Connector Ketika Pipa Kosong c. Up Left Connector
Gambar 4.3 Up Left Connector Ketika Pipa Kosong d. Up Right Connector
Gambar 4.4 Up Right Connector Ketika Pipa Kosong
2. T Connector a. Up-Left-Right Connector
Gambar 4.5 Up-Left-Right Connector Ketika Pipa Kosong
b. Right-Up-Down Connector
37
Gambar 4.6 Right-Up-Down Connector Ketika Pipa Kosong
c. Down-Left-Right Connector
Gambar 4.7 Down-Left-Right Connector Ketika Pipa Kosong
d. Left-Up-Down Connector
Gambar 4.8 Left-Up-Down Connector Ketika Pipa Kosong
3. Cross Connector
Gambar 4.9 Cross Connector Ketika Pipa Kosong
4. Long Pipe a. Vertical Connector
38
Gambar 4.10 Vertical Connector Ketika Pipa Kosong
b. Horizontal Connector
Gambar 4.11 Horizontal Connector Ketika Pipa Kosong
5. Penutup (Tube)
Gambar 4.12 Penutup
4.1.4
Perancangan Kotak Permainan fiber twig menggunakan kotak yang terdiri dari sub kotak yang
diberikan nomor dari atas ke bawah dan dari kiri ke kanan. Kotak diasumsikan berukuran sebuah matriks berukuran n x n. Hal ini berarti bahwa sisi atas dari sub box diberi nomor (1, 1) dan kotak pada kotak di sebelah kanan diberi nomor (1, 2) dan seterusnya. Demikian juga halnya pada sisi bawah dari kotak, akan diberikan nomor (2, 1) dan seterusnya.
39
1,1
1,2
1,3
1,4
1,5
1,6
1,7
1,8
2,1
2,2
2,3
2,4
2,5
2,6
2,7
2,8
3,1
3,2
3,3
3,4
3,5
3,6
3,7
3,8
4,1
4,2
4,3
4,4
4,5
4,6
4,7
4,8
5,1
5,2
5,3
5,4
5,5
5,6
5,7
5,8
6,1
6,2
6,3
6,4
6,5
6,6
6,7
6,8
7,1
7,2
7,3
7,4
7,5
7,6
7,7
7,8
8,1
8,2
8,3
8,4
8,5
8,6
8,7
8,8
Gambar 4.13 Contoh Kotak Berukuran (8, 8)
4.1.5
Analisa Prosedur Prosedur dari permainan fiber twig dapat dibagi menjadi 2 bagian:
1. Menghasilkan tipe pipa baru. Proses pertama dari permainan fiber twig adalah menghasilkan tipe pipa baru yang akan digunakan oleh pemakai untuk menghubungkan pipa dari kanan bawah ke kiri atas. 2. Cek solusi yang diberikan oleh pemain. Setelah pemain mengubah tipe pipa pada kotak dengan mengkliknya, maka sistem akan mengubah tipe pipa berdasarkan pada arah jarum jam, seperti terlihat pada gambar berikut:
40
Gambar 4.14 Perubahan Tipe untuk U Connector Tipe pipa = (Tipe pipa + 1) mod 4
41
Gambar 4.15 Perubahan Tipe untuk T Connector Tipe pipa = (Tipe pipa + 1) mod 4
Gambar 4.16 Perubahan Tipe untuk Long Pipe Tipe pipa = (Tipe pipa + 1) mod 2
42
Proses pengecekan akan dimulai dari kotak (1, 1) dan kemudian dilanjutkan berdasarkan pada tipe pipa. Untuk lebih jelasnya dapat dilihat pada perincian berikut: a. Untuk U connector, terdapat beberapa jenis yaitu:
x=x-1
y=y+1
x=x-1
y=y-1
x=x-1
y=y+1
x=x+1
y=y+1
x=x+1
y=y-1
x=x+1
y=y+1
43
x=x-1
y=y+1
x=x-1
y=y-1
Gambar 4.17 Kemungkinan untuk U Connector b. Untuk long type, terdapat beberapa jenis yaitu:
y=y+1
x=x+1
y=y-1
x=x-1
Gambar 4.18 Kemungkinan untuk Long Pipe
44
c. Untuk Cross connector, terdapat beberapa jenis yaitu:
x=x+1
y=y+1
x=x+1
y=y+1
x=x-1
y=y+1
x=x+1
y=y+1
x=x+1
y=y-1
45
x=x-1
y=y-1
x=x-1
y=y-1
x=x+1
y=y-1
x=x-1
y=y-1
x=x-1
y=y+1
Gambar 4.19 Perubahan Tipe untuk Cross Connector
46
d. Untuk T connector, terdapat beberapa jenis yaitu:
x=x-1
y=y+1
x=x+1
y=y+1
x=x+1
x=x+1
y=y-1
x=x-1
y=y-1
x=x-1
47
x=x+1
y=y+1
y=y+1
x=x+1
x=x-1
y=y-1
y=y-1
y=y-1
x=x-1
y=y+1
48
x=x+1
y=y+1
x=x+1
x=x-1
y=y+1
x=x-1
y=y-1
x=x-1
x=x+1
y=y-1
49
x=x-1
y=y+1
y=y+1
x=x+1
x=x+1
y=y+1
y=y-1
y=y-1
x=x-1
y=y-1
Gambar 4.20 Perubahan Tipe untuk T Connector
50
Setelah pemain meletakkan tipe pipa pada posisi yang diinginkannya, maka sistem akan mengecek apakah pipa sudah dapat terhubung dari kanan bawah ke kiri atas. Caranya adalah dengan menelusuri pipa dari kanan bawah dan apabila mampu mencapai kiri atas berarti permainan telah diselesaikan.
4.1.6
Analisa Metode BFS Prosedur kerja dari metode BFS untuk melakukan proses pengecekan
terhadap struktur pipa yang disusun oleh pemain akan dimulai dari kotak (N, N) dan diakhiri pada kotak (1, 1). Proses pengecekan ini akan menggunakan struktur pohon. Misalkan, diberikan sebuah contoh berikut: Finish 1 2 3
Start 1
2
3
Gambar 4.21 Contoh Struktur Pipa untuk Ukuran Kotak 3 x 3 Seperti terlihat pada gambar 4.21 diatas, struktur pipa akan dimulai dari kotak (3, 3) dan berakhir pada kotak (1, 1). Untuk pipa long type, hanya terdapat satu buah kemungkinan tujuan, sedangkan pipa Cross Connector terdapat tiga buah kemungkinan tujuan, dan pipa U Connector memiliki satu buah kemungkinan tujuan, serta pipa T Connector memiliki dua buah kemungkinan tujuan. Sementara itu, apabila ketemu penutup, maka tidak terdapat kemungkinan
51
solusi lagi. Tampilan pohon pelacakan untuk struktur pipa diatas dapat dideskripsikan dari gambar 4.22 berikut: 3, 3
3, 2
2, 2
2, 1
1, 2
2, 3
1, 1
Gambar 4.22 Gambaran Proses Kerja BFS Dengan menggunakan metode BFS, maka proses penelusuran terhadap struktur pohon pelacakan diatas akan menghasilkan beberapa kemungkinan solusi berikut: 1. (3, 3); (3, 2); (2, 2); (2, 1); (1, 1) 2. (3, 3); (3, 2); (2, 2); (1, 2); (1, 1) 3. (3, 3); (3, 2); (2, 2); (2, 3) Dari hasil penelusuran dapat diperoleh informasi bahwa struktur pipa tersebut telah terhubung semua karena hasil penelusuran BFS dari (3, 3) dapat berakhir ke (1, 1).
52
4.2
Perancangan Perancangan tampilan dari permainan ini dapat dilihat pada gambar
berikut: 1. Form Awal 1
User
2
Choose User
Play Game
3
Help 4 About 5 Exit 6
Gambar 4.23 Desain dari Form Awal Keterangan dari gambar 4.23 : 1 : Daerah tampilan nama user yang sedang aktif. 2 : Klik tombol ini untuk memilih nama pemain. 3 : Klik tombol ini untuk menampilkan permainan. 4 : Klik tombol ini untuk menampilkan bantuan mengenai cara memainkan perangkat lunak.
53
5 : Klik tombol ini untuk menampilkan data pribadi dari pembuat perangkat lunak. 6 : Klik tombol ini untuk menutup aplikasi. 2. Form Permainan
2
3
4
1
5 7
8
9
6
Gambar 4.24 Desain dari Form Permainan Keterangan dari gambar 4.24 : 1 : Area untuk bermain. 2 : Area untuk menampilkan informasi level. 3 : Area untuk menampilkan nilai yang diperoleh. 4 : Area untuk menampilkan sisa waktu. 5 : Klik tombol ini untuk menampilkan penutup. 6 : Klik tombol ini untuk menghancurkan pipa. 7 : Klik tombol ini untuk mengecek jawaban yang diberikan pemain.
54
8 : Klik tombol ini untuk menutup form dan kembali ke form Awal. 9 : Area untuk menampilkan tipe pipa baru.
3. Form Pilih Pemain
1
Hapus
Tambah
2
Pilih
3
Batal
5
4
Gambar 4.25 Rancangan Form Pilihan Pemain Keterangan dari gambar 4.25 : 1 : listbox ‘Nama Pemain’ berfungsi untuk menampilkan daftar nama pemain yang tersimpan dalam database. 2 : tombol ‘Tambah’ yang berfungsi untuk menambah nama pemain baru. 3 : tombol ‘Hapus’ yang berfungsi untuk menghapus nama pemain yang sedang dipilih. 4 : tombol ‘Pilih’ yang berfungsi untuk menyimpan nama pemain yang dipilih ke dalam memori sementara, sehingga dapat digunakan pada form ‘Kuis’. 5 : tombol ‘Batal’ yang berfungsi untuk menutup form dan kembali ke form Main.
55
4. Form Mengenai Pembuat
1
2
Keluar
3
Gambar 4.26 Rancangan Form About Keterangan dari gambar 4.26 : 1 : judul skripsi. 2 : nama dan nim programmer. 3 : tombol ‘Keluar’, untuk menutup form ‘About’ dan kembali ke form ‘Main’.
BAB V HASIL DAN PEMBAHASAN
5.1
Hasil Untuk menjalankan aplikasi Fiber Twig Game dengan Menerapkan
Metode Pencarian Breadth First Search (BFS), maka dapat mengklik file ‘Fiber Twig.exe’ sehingga sistem akan menampilkan tampilan awal seperti gambar 5.1 berikut:
Gambar 5.1 Tampilan Awal
Untuk bermain game Fiber Twig, maka pertama kali harus memilih nama user terlebih dahulu dengan mengklik link ‘Change User’, sehingga sistem akan menampilkan form Nama User berikut.
56
57
Gambar 5.2 Tampilan Pilihan Pemain
Untuk menambah user baru, maka pemakai dapat mengklik tombol ‘Tambah’ sehingga sistem akan menampilkan input box Tambah User seperti terlihat pada gambar berikut.
Gambar 5.3 Tampilan Tambah User
Pemakai dapat mengisi nama user baru dan mengklik tombol ‘OK’ untuk menyimpan data nama user ke dalam database. Untuk memilih nama user, maka
58
pemakai dapat memilih pada daftar nama dan mengklik tombol ‘Pilih’ sehingga sistem akan menyimpan nama user yang dipilih ke dalam memori sementara dan menutup form Pilih User serta kembali ke tampilan awal. Untuk bermain Fiber Twig, maka dapat mengklik tombol ‘Bermain’ untuk memulai permainan, seperti terlihat pada gambar 5.4 berikut:
Gambar 5.4 Tampilan Permainan
Pemain dapat mengklik untuk mengganti bentuk pipa yang muncul pada bagian bawah layar. Pemain dapat memasukkan bentuk pipa ke dalam daerah permainan dengan cara mengklik dan drag pipa yang diinginkan dan diletakkan ke kotak yang diinginkan. Pemain dapat menghilangkan pipa yang salah ditaruh posisinya dengan menggunakan hammer. Namun, hanya tersedia 5 buah hammer saja, jadi apabila pemain telah menggunakan semua hammer maka pemain tidak
59
dapat menggunakannya lagi. Selain itu, juga disediakan penutup untuk menutup sambungan pipa yang bocor. Jumlah penutup yang disediakan juga hanya sebanyak 5 buah saja. Tampilan form setelah pengisian data dapat dilihat pada gambar 5.5 berikut:
Gambar 5.5 Tampilan Permainan Setelah Pengisian Pipa
Apabila pemain yang bersangkutan keluar dari permainan, maka sistem akan menyimpan data terakhir dari permainan ke dalam database, yang mencakup nilai pemain, skor yang diperoleh pemain dan sisa waktu permainan dari pemain. Apabila semua pipa telah terhubung, maka pemain dapat mengklik tombol ‘Check’ untuk mengecek hubungan pipa yang dimasukkan oleh pemain. Apabila semua pipa terhubung, maka sistem akan menampilkan pesan berikut:
60
Gambar 5.6 Tampilan Permainan pada Saat Pengecekan Hubungan Pipa
61
Setelah itu, sistem akan melanjutkan ke level berikutnya. Permainan akan berakhir apabila pemain belum berhasil menghubungkan semua pipa dalam batasan waktu yang ditentukan, sehingga sistem akan menampilkan pesan kesalahan seperti gambar 5.7 berikut:
Gambar 5.7 Tampilan Pesan Kesalahan bahwa Waktu Permainan telah Habis
Apabila pemain belum berhasil menghubungkan semua pipa, maka sistem akan menampilkan pesan kesalahan seperti gambar 5.8 berikut:
Gambar 5.8 Tampilan Pesan Kesalahan bahwa Solusi yang Diberikan Salah
Apabila pemain menekan tombol About di menu awal, maka akan muncul box mengenai pembuat permainan seperti pada gambar 5.9 berikut.
62
Gambar 5.9 Tampilan About
Tombol Exit pada menu awal berfungsi untuk menutup program permainan.
Gambar 5.10 Tombol Exit untuk menutup program
Menu Help pada awal digunakan untuk menampilkan bantuan cara bermain dan penjelasan menu-menu.
63
Gambar 5.11 Tampilan menu ‘Help’
5.2
Pembahasan Setelah selesai membuat aplikasi Fiber Twig Game yang menerapkan
metode pencarian Breadth First Search (BFS), maka diperoleh informasi bahwa metode Breadth First Search (BFS) dapat digunakan untuk mengecek hubungan semua pipa dalam permainan Fiber Twig. Jenis pipa yang muncul pada permainan akan dihasilkan secara acak oleh komputer dengan menggunakan fungsi pengacakan yang terdapat pada Microsoft Visual Basic.NET 2010. Proses pengubahan tipe pipa pada permainan menggunakan jenis animasi pengubahan gambar dan proses animasi pergerakan pipa pada permainan menggunakan jenis animasi pengubahan posisi. Sedangkan, kelemahan dari Game Fiber Twig dengan menggunakan Breadth First Search (BFS) ini yaitu software tidak dapat dimainkan pada
64
jaringan komputer ataupun internet dan software tidak menyediakan fasilitas perancangan tempat bermain (board), sehingga pemakai tidak dapat merancang board yang diinginkan.
BAB VI KESIMPULAN DAN SARAN
6.1
Kesimpulan Setelah selesai mengkonstruksi perangkat lunak, penulis dapat mengambil
beberapa kesimpulan berikut: 1. Metode Breadth First Search (BFS) dapat digunakan untuk mengecek hubungan semua pipa dalam permainan Fiber Twig. 2. Jenis pipa yang muncul pada permainan akan dihasilkan secara acak oleh komputer dengan menggunakan fungsi pengacakan yang terdapat pada Microsoft Visual Basic.NET 2010. 3. Aplikasi yang dibuat belum dapat merangkap efek animasi. 4. Permainan belum bisa dimainkan melalui jaringan komputer. 5. Aplikasi yang dibuat belum mendukung penyimpanan data setiap level dari user, jadi user belum dapat memilih level yang akan dimainkan.
6.2
Saran Penulis
ingin
memberikan
beberapa
saran
sehubungan
dengan
pengembangan perangkat lunak, seperti: 1. Aplikasi dapat dikembangkan dengan merancang permainan agar dapat dimainkan pada jaringan komputer ataupun internet. 2. Perangkat lunak dapat dikembangkan menjadi perangkat lunak berbasis multimedia dengan menambahkan efek animasi.
65
66
3. Aplikasi dapat dikembangkan dengan dibuat menambahakan penyimpanan database dari setiap level yang dimainkan oleh setiap user. 4. Aplikasi dapat dikembangkan dengan menggunakan metode pencarian yang lebih cepat ataupun efisien.
DAFTAR PUSTAKA
Desiani, A. , Arhami, M. , Konsep Kecerdasan Buatan, Penerbit Graha Ilmu, 2009. Kusumadewi Sri, Artificial Intelligence Teknik dan Aplikasinya, Graha Ilmu, 2008. Setiawan Sandi, Artificial Intelegencia, Andi Offset Yogyakarta, 2008. T. Sutoyo,Edy Mulanto, Vincent Suhartono, Oky Dwi Nurhayanti, Wijanarto, Teori Pengolahan Citra Digital, Penerbit Andi, Yogyakarta, 2009. https://www/cs.usfca.edu/~galles/visualization/BFS.html, tanggal akses 15 Januari 2015. https://www.khanacademy.org/computing/computer-science/algorithms/breadthfirst-search/a/the-breadth-first-search-algorithm, tanggal akses 15 Januari 2015.