150 Jurnal Teknik Elektro dan Komputer, Vol.I, No.2, Oktober 2013, 150-160
Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual Menggunakan Algoritma Artificial Bee Colony dan Bounding Box Collision Detection M Teguh Mayendra1, Mardhiah Fadhli2 & Meilany Dewi3 1,3
Program Studi Teknik Informatika Politeknik Caltex Riau, Pekanbaru 28265 Program Studi Teknik Komputer Politeknik Caltex Riau, Pekanbaru 28265 Email:
[email protected]
2
Abstrak Pengamatan yang terlalu beresiko, mahal dan tidak mungkin dilakukan secara langsung, dapat dilakukan dengan menggunakan simulasi. Penelitian ini merupakan suatu simulasi yang memvisualisasikan pergerakan segerombolan ikan dalam menemukan jalur paling optimal saat menuju sumber makanan. Menemukan sebuah solusi yang paling optimal dari suatu permasalahan kombinasi sangat sulit dilakukan. Namun, dengan menggunakan algoritma tertentu, solusi yang paling mendekati optimal dapat ditemukan dengan mudah. Dalam simulasi ini algoritma Artificial Bee Colony (ABC) digunakan untuk mengoptimalkan pergerakan segerombolan ikan menuju sumber makanan. Nilai fitness terbaik dari hasil penerapan algoritma ini dipengaruhi oleh jumlah ikan, maksimum iterasi, nilai batas, dan nilai random. Pada penelitian ini, jumlah ikan yang digunakan adalah 5, 10, 15, dan 20, maksimum iterasi yang digunakan adalah 5, 10 dan 15, serta nilai batas yang digunakan adalah 1, 4, 8, dan 12. Nilai fitness terbaik didapatkan ketika jumlah ikan 10, maksimum iterasi sebanyak 15, serta nilai batas bernilai 8 dan 12. Ketika menuju suatu sumber makanan, ada kemungkinan terjadi tabrakan antara ikan dan hambatan, terutama pada hambatan yang memiliki pergerakan dinamis. Ikan seharusnya dapat melakukan pendeteksian tabrakan (Collision Detection) agar dapat menghindari hambatan tersebut. Pada simulasi ini, untuk menghindari tabrakan antar ikan dan antara ikan dengan hambatan digunakan metode Bounding Box Collision Detection. Keakuratan metode ini dinilai dari adanya irisan antar ikan dan antara ikan dengan hambatan. Pada simulasi ini, tidak terjadi irisan sehingga dapat dikatakan bahwa metode Bounding Box Collision Detection 100% akurat. Kata kunci: algoritma Artificial Bee Colony (ABC), metode Bounding Box Collision Detection, pergerakan, hambatan dinamis
Abstract Observations that are too risky, expensive and can not be done directly, can be done using simulation. This research is a movement simulation of a swarm of fish in finding the optimal path to a food source. Find the most optimal solution of a combination problem is very difficult to do. However, by using a specific algorithm, the closest optimal solution can be found easily. In this simulation, the Artificial Bee Colony (ABC) algorithm isused to optimize the movement of a swarm of fish towards food sources. The best fitness value in this algorithm implementation is affected by number of fish, maximum iteration number, limit value, and random value. In this research, the number of fish used were 5, 10, 15, and 20, maximum iteration used were 5, 10 and 15, and limit value used were 1, 4, 8, and 12. The best fitness value is obtained when the number of fish 10, the maximum iteration 15, and limit value 8 and 12. When toward a food source, there is the possibility of a collision between fish and obstacles, especially on the obstacles that have dynamic movement. Fish should be able to perform collision detection in order to avoid these obstacles. In this simulation, in order to avoid collisions between the fish and between the fish with the obstacles used Bounding Box Collision Detection method. The accurateness of this method can be seen from the number of intersection among fish and between fish and obstacle. In this simulation, there are no intersect so it can concluded that this method is 100% accurate. Keywords: Artificial Bee Colony algorithm (ABC), Bounding Box Collision Detection method, movement, dynamic obstacle
Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual…
1
151
Pendahuluan
Metode pengamatan hewan secara langsung pada habitatnya memiliki banyak resiko kecelakaan. Ikan merupakan salah satu hewan yang menarik untuk diamati, tetapi resiko kecelakaan jika mengamati ikan secara langsung di laut adalah tenggelam atau diserang oleh hewan laut. Manusia menciptakan ekosistem buatan sebagai solusi untuk mengamati ikan secara langsung tanpa harus ke laut, yaitu akuarium. Namun perbedaan kondisi lingkungan di dalam akuarium dengan habitat asli ikan sering kali menyebabkan kematian pada ikan. Selain itu, memelihara ikan di dalam akuarium membutuhkan biaya yang relatif besar, seperti biaya perawatan dan pakan ikan. Oleh karena itu, dibangun akuarium virtual sebagai bentuk maya tiga dimensi dari akuarium. Akuarium virtual dibuat sesuai dengan kondisi lingkungan habitat asli ikan menggunakan bahasa pemrograman tertentu. Pada habitat asli ikan, biasanya terdapat tumbuhan air dan benda-benda lain yang tidak bergerak (statis) dan yang selalu bergerak (dinamis). Tumbuhan dan benda-benda lain tersebut menjadi hambatan bagi ikan untuk bergerak bebas mencari makanan. Pada penelitian ini dibuatlah sebuah simulasi pergerakan segerombolan ikan mencari makanan, dimana dalam pergerakannya, ikan dihadapkan pada suatu hambatan dinamis dalam akuarium virtual. Pergerakan ikan menggunakan suatu algoritma berbasis swarm (segerombolan), yaitu algoritma Artificial Bee Colony (ABC). Sedangkan pendeteksian tabrakan antar ikan dan antara ikan dengan hambatan menggunakan metode Bounding Box Collision Detection. 2
Tinjauan Pustaka
2.1
Simulasi
Arti kata simulasi dalam kamus Bahasa Indonesia adalah metode pelatihan yang meragakan sesuatu dalam bentuk tiruan yang mirip dengan keadaan yang sesungguhnya. 2.2
Animasi 3D
Menurut Soewignjo (2005), animasi adalah gambar hidup yang digerakkan dari sekumpulan gambar, yang memuat tentang objek dalam posisi gerak yang beraturan [1]. Animasi 3D menggunakan tiga sumbu pada bidang kartesius (x,y,z). Firdiansyah (2010) menjelaskan bahwa animasi 3D membutuhkan proses yang relative lebih sederhana dibandingkan animasi 2D karena semua proses bisa langsung dikerjakan dalam satu komputer [2]. 2.3
Akuarium Virtual
Arti kata akuarium dalam kamus Bahasa Indonesia adalah bak kaca tempat memelihara ikan hias, sedangkan arti kata virtual adalah (secara) nyata. Akuarium virtual adalah bak kaca tempat memelihara ikan hias yang dibuat menggunakan proses komputasi sehingga terlihat nyata. 2.4
Hambatan Dinamis
Arti kata hambatan dalam kamus Bahasa Indonesia adalah suatu halangan atau rintangan, sedangkan arti kata dinamis adalah penuh semangat dan tenaga sehingga cepat bergerak dan mudah menyesuaikan diri dengan keadaan. Hambatan dinamis adalah suatu halangan atau rintangan yang selalu bergerak untuk menyesuaikan diri dengan lingkungannya. Hambatan pada habitat asli ikan dapat berupa tumbuhan laut yang bergerak bebas karena adanya gaya eksternal yang diterimanya, yaitu arus laut.
152
2.5
M Teguh Mayendra, Mardhiah Fadhli & Meilany Dewi
Algoritma Artficial Bee Colony (ABC)
Algoritma Artificial Bee Colony (ABC) terinspirasi dari perilaku lebah madu dalam mencari makanan. Menurut Tereshko (2000), model perilaku mencari makan koloni lebah madu terdiri dari tiga komponen utama yaitu [3] : 1. Sumber makanan. Untuk memilih suatu sumber makanan, lebah mengevaluasi properti yang berkaitan dengan sumber makanan seperti kedekatan dengan sarang, kekayaan energi, rasa nektar, dan kemudahan atau kesulitan ekstraksi energi tersebut. Untuk kesederhanaan, kualitas sumber makanan dapat diwakili dengan satu kuantitas meskipun kenyataannya tergantung pada berbagai parameter yang disebutkan di atas. 2. Lebah pekerja. Seekor lebah pekerja dipekerjakan pada suatu sumber makanan tertentu. Kemudian lebah tersebut membawa informasi sumber makanan tersebut dan membaginya dengan lebah lain yang menunggu di dalam sarang. Informasi ini meliputi jarak, arah, dan profitabilitas dari sumber makanan tersebut. 3. Lebah penganggur. Seekor lebah yang mencari sumber makanan untuk dieksploitasi disebut lebah penganggur. Lebah penganggur bisa berupa lebah pramuka yang mencari sumber makanan secara acak atau lebah pengamat yang mencari sumber makanan berdasarkan informasi yang diberikan oleh lebah pekerja. Rata-rata jumlah lebah pramuka adalah sekitar 5-10%. Dalam algoritma Artificial Bee Colony (ABC), posisi suatu sumber makanan merepresentasikan solusi yang mungkin untuk permasalahan optimasi. Sedangkan jumlah nektar merupakan kualitas (fitness) dari solusi tersebut. Jumlah lebah pekerja atau lebah pengamat bernilai sama dengan jumlah solusi. Jumlah lebah pekerja atau lebah pengamat bernilai sama dengan jumlah solusi. Secara umum, langkah-langkah algoritma Artificial Bee Colony (ABC) sebagai berikut : Inisialisasi populasi Repeat Tempatkan lebah pekerja pada posisi sumber makanan Tempatkan lebah pengamat pada sumber makanan berdasarkan jumlah nektar Kirim lebah pramuka pada daerah pencarian untuk menemukan sumber makanan baru Hafalkan posisi sumber makanan terbaik yang berhasil ditemukan Until Kriteria berhenti terpenuhi Karaboga & Akay (2009) menjelaskan, seekor lebah pengamat memilih sumber makanan berdasarkan nilai probabilitas sumber makanan tersebut yang dapat dihitung menggunakan persamaan 1 berikut [4] :
(1) Dimana pi merupakan nilai probabilitas sumber makanan, fiti merupakan nilai fitness solusi ke-i yang sesuai dengan jumlah nectar sumber makanan pada posisi i, dan SN merupakan jumlah sumber makanan yang juga merupakan jumlah lebah pekerja atau lebah pengamat.
Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual…
153
Untuk menghasilkan kandidat posisi makanan, algoritma Artificial Bee Colony (ABC) menggunakan persamaan 2 berikut : (2) Dimana vij merupakan posisi sumber makanan baru, øij merupakan bilangan acak antara [-1, 1], k {1, 2, …, SN} dan j {1, 2, …, D} merupakan index yang dipilih secara acak. Meskipun k ditentukan secara acak, nilai k harus berbeda dengan nilai j. Sumber makanan yang usang akan ditinggalkan dan digantikan dengan sumber makanan baru oleh lebah pramuka. Hal ini disimulasikan dengan memproduksi sebuah posisi secara acak sebagai pengganti posisi makanan usang. Jika sebuah posisi tidak bisa ditingkatkan melalui sejumlah siklus yang ditentukan sebelumnya, maka sumber makanan tersebut dapat dikatakan usang. Nilai siklus tersebut merupakan parameter kontrol penting pada algoritma Artificial Bee Colony (ABC) yang disebut juga ”batas” untuk pengabaian. Pencarian posisi makanan baru yang dilakukan oleh lebah pramuka dapat direpresentasikan dengan persamaan 3 berikut :
(3) Setelah masing-masing kandidat posisi sumber makanan vij dihasilkan dan dievaluasi, nilai fitness-nya dibandingkan dengan nilai fitness posisi sumber makanan lama. Jika nilai fitness posisi sumber makanan baru lebih besar atau sama dengan nilai fitness posisi sumber makanan lama, maka posisi sumber makanan baru menggantikan posisi sumber makanan lama. Jika tidak, posisi sumber makanan lama tetap dipertahankan. Dengan kata lain, mekanisme greedy selection adalah melakukan operasi seleksi antara sumber makanan lama dan sumber makanan baru. Perhitungan nilai fitness suatu sumber makanan dapat dilakukan dengan persamaan 4 berikut , dimana
adalah nilai objektif dari solusi
.
(4)
Berdasarkan penjelasan di atas, terdapat tiga parameter kontrol pada algoritma Artificial Bee Colony(ABC) yaitu jumlah sumber makanan yang juga bernilai sama dengan jumlah lebah pekerja atau lebah pengamat (SN), nilai “batas”, dan nilai maksimum siklus (MCN). Berikut ini Pseudo Code algoritma Artificial Bee Colony (ABC) :
Inisialisasi populasi solusi xi, dimanai = 1, 2,…,SN Evaluasi populasi Siklus = 1 Repeat Tentukan solusi baru vi untuk lebah pekerja menggunakan persamaan (2) dan evaluasi menggunakan persamaan (4)
154
M Teguh Mayendra, Mardhiah Fadhli & Meilany Dewi
Terapkan proses greedy selection pada lebah pekerja Hitung nilai probabilitas pi untuk solusi xi menggunakan persamaan (1) Tentukan solusi baru vi untuk lebah pengamat dengan solusi xi dipilih berdasarkan pi dan evaluasi menggunakan persamaan (4) Terapkan proses greedy selection pada lebah pengamat Temukan solusi yang usang oleh lebah pramuka. Jika ada, gantikan dengan solusi baru menggunakan persamaan (3) Hafalkan posisi terbaik yang berhasil ditemukan Siklus = Siklus + 1 Until siklus = MCN
2.6
Metode Bounding Box Collision Detection
Menurut Arsandi dkk (t.t), collision detection adalah proses pendeteksian tabrakan antara dua objek [5]. Sebenarnya dalam simulasi penelitian ini tabrakan tidak hanya terjadi antara dua objek, tetapi dapat juga terjadi antara satu objek dengan banyak objek sehingga dibutuhkan collision detection yang akurat. Collision detection juga berguna untuk menentukan posisi dari satu objek dengan objek yang lain agar tidak ada objek yang saling menembus, sehingga simulasi yang akan dibuat memiliki kesamaan dengan realita yang ada.
Gambar 1
Jenis Collision Detection
Jeni (t.t) menjelaskan jenis-jenis collision detection berdasarkan gambar di atas sebagai berikut [6] : 1. Rectangles collision detection 2. Cara ini paling mudah dan tercepat, namun kurang akurat. Program akan mendeteksi terjadinya tabrakan ketika bound kedua sprite bersinggungan meskipun secara kasat mata sprite tersebut sama sekali tidak bersinggungan. Sprite adalah hasil enkapsulasi objek dalam simulasi, dimana setiap objek memiliki atribut dan method-method yang dibutuhkan. 3. Reduced size bounding box 4. Cara ini cukup mudah dan lebih akurat karena kotak batasnya diperkecil dengan cara mengurangi beberapa pixel dari ukuran sebenarnya. 5. Bounding box collision detection 6. Cara ini paling akurat karena banyaknya bounding box dapat disesuaikan dengan bentuk gambar pada sprite. Namun semakin banyak bounding box yang digunakan maka semakin banyak waktu yang diperlukan untuk mendeteksi tabrakan antar sprite. Pendeteksian tabrakan dilakukan dengan cara membandingkan nilai maksimum dan mnimum pada koordinat x, y, dan z.
Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual…
3
Perancangan Aplikasi
3.1
Diagram Alir
155
Diagram alir pada proyek akhir ini terdiri dari diagram alir algoritma Artificial Bee Colony (ABC) dan diagram alir metode Bounding Box Collision Detection. 3.1.1
Diagram Alir Algoritma Artificial Bee Colony (ABC)
Proses awal dari algoritma Artificial Bee Colony (ABC) adalah menentukan nilai parameter kontrol yang dimasukkan oleh pengguna. Parameter-parameter tersebut adalah jumlah populasi, nilai maksimum siklus, dan batas. Kemudian menentukan posisi awal sumbersumber makanan. Setelah itu, memasuki fase inisialisasi posisi untuk memilih posisi awal untuk setiap ikan secara acak dan kemudian mengevaluasinya. Kemudian memasuki proses penambahan iterasi. Jika kriteria berhenti sudah terpenuhi (siklus sekarang sama dengan nilai maksimum siklus), maka proses selesai dan posisi sumber makanan terbaik yang berhasil ditemukan adalah solusinya. Jika kriteria berhenti belum terpenuhi maka akan memasuki fase berikutnya yaitu fase lebah pekerja. Pada fase lebah pekerja, dilakukan pencarian ketetanggaan (neighborhood search) untuk menentukan calon posisi berikutnya untuk setiap ikan. Pencarian ketetanggaan ini dilakukan secara acak. Kemudian nilai kebugaran (fitness) dihitung dan pilihan rakus (greedy selection) diterapkan antara posisi sekarang dan calon posisi berikutnya tersebut. Selanjutnya memasuki fase lebah pengamat dengan melakukan pencarian ketetanggaan (neighborhood search) untuk menentukan calon posisi berikutnya untuk setiap ikan. Pencarian ketetanggaan ini dilakukan berdasarkan probabilitas nilai kebugaran posisi ikan saat ini yang disediakan oleh lebah pekerja. Kemudian kembali menghitung nilai kebugaran (fitness) dan menerapkan pilihan rakus (greedy selection) antara lebah pengamat dan sumber makanan. Proses selanjutnya adalah menemukan posisi ikan yang telah usang. Posisi ikan disebut usang ketika ikan secara berturut-turut tidak berhasil menemukan posisi yang lebih baik dalam ‘batas’ iterasi. Kemudian posisi tersebut ditinggalkan dan digantikan dengan posisi oleh lebah pramuka. Kemudian kembali ke proses penambahan iterasi. Diagram alir algoritma Artificial Bee Colony (ABC) ditunjukkan pada gambar 2. 3.1.2
Diagram Alir Metode Bounding Box Collision Detection
Pendeteksian tabrakan dilakukan dengan cara membandingkan nilai maksimum dan minimum pada koordinat x, y, dan z objek acuan pada setiap objek ikan atau hambatan. Kemudian menghitung besarnya irisan, lalu memperbaharui posisi objek acuan terhadap sumbu koordinat yang memiliki besar irisan terkecil sesuai dengan besar irisannya. Gambar 3 menampilkan diagram alir metode Bounding Box Collision Detection. Setelah proses pendeteksian tabrakan, langkah selanjutnya adalah mencari solusi agar tidak terjadi tabrakan, yaitu dengan menghitung besar irisan kedua objek terhadap setiap sumbu koordinat, temukan sumbu koordinat dengan irisan terkecil, lalu pindahkan objek acuan sebesar nilai irisan dan sumbu koordinat tersebut. Metode Bounding Box Collision Detection hanya melakukan proses pendeteksian tabrakan tetapi tidak memberikan solusi agar tidak terjadi tabrakan. Solusi yang digunakan dalam penelitian ini merupakan solusi dari penulis.
156
M Teguh Mayendra, Mardhiah Fadhli & Meilany Dewi
Gambar 2
Diagram Alir Algoritma Artificial Bee Colony (ABC)
Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual…
Gambar 3
4
Hasil dan Analisa
4.1
Hasil Simulasi
157
Diagram Alir Metode Bounding Box Collision Detection
Simulasi terdiri dari tiga tampilan, yaitu tampilan awal untuk menginputkan parameter, tampilan simulasi pergerakan ikan, dan tampilan akhir yang menampilkan hasil dari simulasi.
158
4.1.1
M Teguh Mayendra, Mardhiah Fadhli & Meilany Dewi
Tampilan Awal Simulasi
Tampilan awal simulasi dalam bentuk console yang menginputkan nilai parameterparameter kontrol yang dibutuhkan untuk menjalankan simulasi, yaitu jumlah ikan, maksimum iterasi, dan batas. Tampilan awal simulasi ditunjukkan pada gambar 4.
Gambar 4
4.1.2
Tampilan Awal Simulasi
Tampilan Simulasi
Setelah menginputkan nilai parameter-parameter kontrol, simulasi akan berjalan dengan posisi awal seluruh ikan acak dan posisi suber makanan tetap. Ikan bergerak menuju sumber makanan dengan menerapkan algoritma Artificial Bee Colony (ABC). Di tengah akuarium terdapat satu hambatan yang selalu bergerak yaitu rumput laut. Agar tidak terjadi tabrakan antar ikan dan antara ikan dengan rumput laut diterapkan metode Bounding Box Collision Detection. Tampilan simulasi ditunjukkan pada gambar 5.
Gambar 5
4.1.3
Tampilan Simulasi
Tampilan Akhir Simulasi
Simulasi akan berakhir ketika jumah iterasi telah mencapai nilai maksimal, lalu akan muncul tampilan console mengenai hasil dari simulasi, yaitu jumlah terdeteksi akan terjadi tabrakan antar ikan, jumlah terdeteksi akan terjadi tabrakan antara ikan dan hambatan, serta nilai fitness terbaik. Tampilan akhir simulasi ditunjukkan pada gambar 6.
Gambar 6
4.2
Tampilan Akhir Simulasi
Pengujian
Pengujian pada simulasi ini dilakukan dengan dua cara, yaitu pengujian kuisioner mengenai pergerakan ikan menurut responden dan pengujian parameter kontrol mengenai penerapan algoritma Artificial Bee Colony (ABC) dan metode Bounding Box Collision Detection.
Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual…
4.2.1
159
Pengujian Simulasi
Berdasarkan hasil pengujian menggunakan kuisioner terhadap 20 (dua puluh) responden dan analisa menggunakan teknik Likert Scale, pergerakan segerombolan ikan menuju sumber makanan tergolong sangat bagus dengan persentase 89% dan pergerakan segerombolan ikan menghindari hambatan dinamis tergolong bagus dengan persentase 77%. 4.2.2
Pengujian Parameter Kontrol
Pengujian dilakukan dengan cara menginputkan kombinasi dari parameter-parameter kontrol (jumlah ikan, maksimum iterasi, dan batas) lalu mencatat output dari hasil kombinasi tersebut, yaitu nilai dari posisi ikan yang mendekati sumber makanan (nilai fitness terbaik), jumlah terdeteksi akan terjadi tabrakan antar ikan, dan jumlah terdeteksi akan terjadi tabrakan antara ikan dengan hambatan. Pengujian dilakukan sebanyak 48 (empat puluh delapan) kali percobaan. Hasil pengujian parameter kontrol ditampilkan pada tabel 1.
Tabel 1
Hasil Pengujian Parameter Kontrol
Input
Percobaan
23 24
Output
Jumlah Ikan
Maksimum Iterasi
Batas
10
15
8 12
Nilai Fitness Terbaik
0.937026 0.937026
Jumlah Terdeteksi Akan Terjadi Tabrakan Antar Ikan 167631 167631
Jumlah Terdeteksi Akan Terjadi Tabrakan Antara Ikan dengan Hambatan 5749 5749
Berdasarkan hasil pengujian pada tabel 1, solusi terbaik atau fitness terbaik yaitu 0.937026 yang didapatkan pada percobaan ke-23 (dua puluh tiga) dengan jumlah ikan sebanyak 10 (sepuluh) ekor, maksimum iterasi sebanyak 15 (lima belas) iterasi, batas adalah 8 (delapan) dan 12 (dua belas), jumlah terdeteksi akan terjadi tabrakan antar ikan sebanyak 167631 (seratus enam puluh tujuh ribu enam ratus tiga puluh satu) tabrakan, dan jumlah terdeteksi akan terjadi tabrakan antara ikan dengan hambatan sebanyak 5749 (lima ribu tujuh ratus empat puluh sembilan) tabrakan. Analisa mengenai penerapan algoritma Artificial Bee Colony (ABC) berdasarkan hubungan antara parameter kontrol dengan output nilai fitness terbaik yang didapatkan antara lain : 1. Semakin banyak jumlah ikan, maka semakin besar nilai fitness terbaik. 2. Semakin besar maksimum iterasi, maka semakin besar nilai fitness terbaik. 3. Nilai batas mempengaruhi besar nilai fitness terbaik secara acak. Hal ini dikarenakan semakin kecil nilai batas maka semakin sering ikan melakukan pencarian posisi baru secara acak yang menyebabkan nilai fitness ikan tersebut bisa lebih baik atau lebih buruk. Hubungan antara besar parameter kontrol dengan output jumlah akan terjadi tabrakan antar ikan dan antara ikan dengan hambatan adalah semakin banyak jumlah ikan dan semakin besar maksimum iterasi, maka jumlah akan terjadi tabrakan antar ikan dan antara ikan dengan hambatan semakin besar. Tingkat keakuratan metode Bounding Box Collision Detection dinilai dari adanya irisan antar ikan dan antara ikan dengan hambatan setelah penerapan metode ini. Gambar 7
160
M Teguh Mayendra, Mardhiah Fadhli & Meilany Dewi
menampilkan pendeteksian tabrakan antar ikan sedangkan gambar 8 menampilkan pendeteksian tabrakan antara ikan dengan hambatan.
Gambar 7
Gambar 8
Pendeteksian Tabrakan Antar Ikan
Pendeteksian Tabrakan Antara Ikan dengan Hambatan
Berdasarkan gambar 7 dan 8, objek-objek hanya bersinggungan, tidak ada terjadi irisan, sehingga dapat dikatakan bahwa metode Bounding Box Collision Detection 100% akurat. 5
Kesimpulan dan Saran Kesimpulan yang diperoleh dari peroyek akhir ini adalah :
1. Berdasarkan hasil kuisioner, pergerakan segerombolan ikan menuju sumber makanan tergolong sangat bagus dengan persentase 89% dan pergerakan segerombolan ikan menghindari hambatan dinamis tergolong bagus dengan persentase 77%. 2. Dalam kasus pergerakan segerombolan ikan menuju sumber makanan menggunakan algoritma Artificial Bee Colony (ABC), hal-hal yang mempengaruhi nilai fitness terbaik adalah jumlah ikan, maksimum iterasi, nilai batas, dan nilai random. 3. Nilai fitness terbaik didapatkan ketika jumlah ikan 10 ekor, maksimum iterasi 15, serta nilai batas 8 dan 12. 4. Pada simulasi ini, tidak ada terjadi irisan sehingga dapat dikatakan bahwa metode Bounding Box Collision Detection 100% akurat. Adapun saran untuk proyek akhir ini adalah menerapkan metode Edge Detection dan algoritma Polinom Lagrange untuk pemodelan ikan yang lebih sempurna dan pergerakan ikan yang lebih leluasa. 6
Daftar Pustaka
[1]
Soewignjo, S. (2005). Belajar Membuat Animasi 2 Dimensi Let’s Animate. Bandung : Nexx Media. Firdiansyah, M.E. (2010). Multimedia Interaktif Tiga Dimensi Tata Cara Bersuci dan Shalat. Tereshko, V. (2000). Reaction-Diffusion Model of a Honeybee Colony’s Foraging Behaviour. In M.Schoenauer (Ed.), Parallel Problem Solving from Nature VI. Lecture Notes in Computer Science, 1917, 807-816. Karaboga, D. & Akay, B. (2009). A Comparative Study of Artificial Bee Colony Algorithm. Arsandi, A., Mardi, S., & Hariadi, M. (t.t). Visualisasi Gerakan Objek 3D pada Augmented Reality dengan Deteksi Tumbukan Berbasis Bounding Box. Jeni. (t.t). Sprite & Collision Detection.
[2] [3]
[4] [5] [6]