Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual Menggunakan Algoritma Artificial Bee Colony dan Bounding Box Collision Detection

dokumen-dokumen yang mirip
Penempatan Dan Penentuan Kapasitas Optimal Distributed Generator (DG) Menggunakan Artificial Bee Colony (ABC)

Adhiswara Mangala 1, Memen Akbar 2, Meilany Dewi 3. Kata kunci :Potential Field, pergerakan gerombolan ikan,hambatan statis

Penempatan Dan Penentuan Kapasitas Optimal Distributed Generator (DG) Menggunakan Artificial Bee Colony (ABC)

PENYELESAIAN KNAPSACK PROBLEM MENGGUNAKAN ALGORITMA GENETIKA

Pemilihan Jalur Evakuasi Dalam Keadaan Darurat Menggunakan Algoritma Quantum Ant-Colony

Dynamic Economic Dispatch Mempertimbangkan Prohibited Operating Zones Menggunakan Algoritma Improved Artificial Bee Colony

Pemodelan dan Animasi Ikan Dalam Simulasi Akuarium Maya

Desain Rute Terpendek untuk Distribusi Koran Dengan Algoritma Ant Colony System

SIMULASI PERGERAKAN EVAKUASI KELUAR SEGEROMBOLAN MANUSIA DALAM BENTUK 2D DENGAN METODE FLOCKING DAN RAY CASTING (Studi Kasus : Rumah)

Penempatan Dan Penentuan Kapasitas Optimal Distributed Generator (DG) Menggunakan Artificial Bee Colony (ABC)

APLIKASI TRAVELLING SALESMAN PROBLEM DENGAN METODE ARTIFICIAL BEE COLONY

ABSTRAK. Universitas Kristen Maranatha

KNAPSACK PROBLEM DENGAN ALGORITMA GENETIKA

ALGORITMA OPTIMASI UNTUK PENYELESAIAN TRAVELLING SALESMAN PROBLEM (Optimization Algorithm for Solving Travelling Salesman Problem)

Penyelesaian Permasalahan Optimasi Global Menggunakan AlgoritmaKoloni Lebah Buatan

Optimisasi Dynamic Economic Dispatch Menggunakan Algoritma Artificial Bee Colony

IMPLEMENTASI METODE ANT COLONY OPTIMIZATION UNTUK PEMILIHAN FITUR PADA KATEGORISASI DOKUMEN TEKS

VISUALISASI GERAKAN OBJEK 3D PADA AUGMENTED REALITY DENGAN DETEKSI TUMBUKAN BERBASIS BOUNDING BOX

PENYELESAIAN MASALAH ALIRAN MAKSIMUM MENGGUNAKAN EDMONS KARP ALGORITHM

ANALISIS ALOKASI KANAL DINAMIK PADA KOMUNIKASI SELULER DENGAN ALGORITMA ARTIFICIAL BEE COLONY

PENYELESAIAN TRAVELLING SALESMAN PROBLEM ( TSP ) DENGAN MENGGUNAKAN ARTIFICIAL BEE COLONY

Implementasi Artificial Bee Colony untuk Pemilihan Titik Pusat pada Algoritma K-means

PENERAPAN ALGORITMA GENETIKA PADA PERENCANAAN LINTASAN KENDARAAN Achmad Hidayatno Darjat Hendry H L T

PENERAPAN TEORI GRAF UNTUK MENYELESAIKAN MASALAH MINIMUM SPANNING TREE (MST) MENGGUNAKAN ALGORITMA KRUSKAL

METODE KOLONI SEMUT PADA DOMAIN KONTINU UNTUK OPTIMISASI PENJADWALAN EKONOMIS UNIT PEMBANGKIT PLTG DI PLTGU PT INDONESIA POWER TAMBAK LOROK

PENGEMBANGAN LONGEST PATH ALGORITHM (LPA) DALAM RANGKA PENCARIAN LINTASAN TERPANJANG PADA GRAF BERSAMBUNG BERARAH BERUNTAI

IMPLEMENTASI ALGORITMA GREEDY PADA PERMAINAN OTHELLO

TEKNIK PENJADWALAN KULIAH MENGGUNAKAN METODE ALGORITMA GENETIKA. Oleh Dian Sari Reski 1, Asrul Sani 2, Norma Muhtar 3 ABSTRACT

ABSTRAK Kata kunci : Universitas Kristen Maranatha

ABSTRAK. Kata kunci: Jadwal pelajaran, algoritma Artificial Bee Colony, fitness. ii Universitas Kristen Maranatha

OPTIMASI ECONOMIC DISPATCH PADA UNIT PEMBANGKIT PLTG DI PLTGU TAMBAK LOROK MENGGUNAKAN ALGORITMA ARTIFICIAL BEE COLONY

BAB 3 PENANGANAN JARINGAN KOMUNIKASI MULTIHOP TERKONFIGURASI SENDIRI UNTUK PAIRFORM-COMMUNICATION

BAB III KONSEP DAN PERANCANGAN APLIKASI

OPTIMASI PENJADWALAN PENGERJAAN SOFTWARE PADA SOFTWARE HOUSE DENGAN FLOW-SHOP PROBLEM MENGGUNAKAN ARTIFICIAL BEE COLONY

BAB III PEMODELAN MASALAH

OPTIMASI PENEMPATAN DAN KAPASITAS SVC DENGAN METODE ARTIFICIAL BEE COLONY ALGORITHM

ABSTRAK. Universitas Kristen Maranatha

IMPLEMENTASI ALGORITMA FUZZY EVOLUSI PADA PENJADWALAN PERKULIAHAN

Aplikasi Algoritma Genetika Untuk Menyelesaikan Travelling Salesman Problem (TSP)

Penyelesaian Masalah Travelling Salesman Problem Menggunakan Ant Colony Optimization (ACO)

2 TINJAUAN PUSTAKA. 2.1 Peringkasan Teks

OPTIMASI ECONOMIC DISPATCH PADA UNIT PEMBANGKIT PLTG DI PLTGU TAMBAK LOROK MENGGUNAKAN ALGORITMA ARTIFICIAL BEE COLONY

APLIKASI ALGORITMA GENETIKA UNTUK PENENTUAN TATA LETAK MESIN

OPTIMASI PENJADWALAN CERDAS MENGGUNAKAN ALGORITMA MEMETIKA

Pembuatan Program Pembelajaran Integer Programming Metode Branch and Bound. Frengki

ERWIEN TJIPTA WIJAYA, ST.,M.KOM

Matematika dan Statistika

IMPLEMENTASI ALGORITMA GENETIKA PADA PENJADWALAN PERKULIAHAN

PENENTUAN SLACK BUS PADA JARINGAN TENAGA LISTRIK SUMBAGUT 150 KV MENGGUNAKAN METODE ARTIFICIAL BEE COLONY

PENGENALAN ANGKA DENGAN MENGGUNAKAN ALGORITMA GENETIK. Fakultas Teknik dan Ilmu Komputer, Jurusan Teknik Informatika Universitas Komputer Indonesia

BAB 3 ANALISIS DAN PERANCANGAN APLIKASI

Penerapan Algoritma A* (A Star) Sebagai Solusi Pencarian Rute Terpendek Pada Maze

BAB 3 ANALISIS DAN PERANCANGAN

Pemanfaatan Algoritma Hybrid Ant Colony Optimization dalam Menyelesaikan Permasalahan Capacitated Minimum Spanning Tree. Tamam Asrori ( )

PENERAPAN METODE COLLISION DETECTION DALAM PERMAINAN BERBASIS ANDROID. Yulianti Haerun Nisa,Prihastuti Harsani dan Arie Qur ania.

BAB II KAJIAN PUSTAKA. Pada bab kajian pustaka berikut ini akan dibahas beberapa materi yang meliputi

Penentuan Letak dan Kapasitas Bank Kapasitor Secara Optimal Menggunakan Bee Colony Algorithm

BAB 2 LANDASAN TEORI

OPTIMASI PENCAPAIAN TARGET PADA SIMULASI PERENCANAAN JALUR ROBOT BERGERAK DI LINGKUNGAN DINAMIS

KONSEP ALGORITMA GENETIK BINER UNTUK OPTIMASI PERENCANAAN JADWAL KEGIATAN PERKULIAHAN

BAB 2 LANDASAN TEORI

Penentuan MVar Optimal SVC pada Sistem Transmisi Jawa Bali 500 kv Menggunakan Artificial Bee Colony Algorithm

Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek

PENENTUAN TITIK INTERKONEKSI DISTRIBUTED GENERATION

OPTIMISASI TOTAL TEMPUH NPC PADA RTS GAME MENGGUNAKAN HARMONY SEARCH ALGORITHM. Herti Miawarni 1* Jl. A. Yani 114, Surabaya 60231, Telp.

Pencarian Jalur Terpendek dengan Algoritma Dijkstra

SKRIPSI HYBRID ALGORITMA CAT SWARM OPTIMIZATION (CSO) DAN TABU SEARCH (TS) UNTUK PENYELESAIAN PERMUTATION FLOWSHOP SCHEDULING PROBLEM (PFSP)

SIMULASI OPTIMASI PENEMPATAN KAPASITOR MENGGUNAKAN LOGIKA FUZZY DAN ALGORITMA GENETIKA PADA SISTEM TEGANGAN MENENGAH REGION JAWA BARAT

Penerapan Algoritma Greedy dalam Permainan MarketGlory

PERMASALAHAN OPTIMASI 0-1 KNAPSACK DAN PERBANDINGAN BEBERAPA ALGORITMA PEMECAHANNYA

UJM 3 (2) (2014) UNNES Journal of Mathematics.

Prosiding SENTIA 2016 Politeknik Negeri Malang Volume 8 ISSN:

BAB I PENDAHULUAN. 1.1 Latar Belakang

Optimalisasi Penyelesaian Knapsack Problem Dengan Algoritma Genetika

Implementasi Algoritma Greedy pada Permainan Ludo

BAB IV ANALISIS MASALAH

ILMU KOMPUTER. Daftar Isi : HEALTH INFORMATICS : AN INTRODUCTION... 1 I Made Agus Setiawan

Algoritma Greedy untuk Pengambilan Keputusan dalam Permainan Kartu Hearts

Seleksi Fitur Dua Tahap Menggunakan Information Gain dan Artificial Bee Colony untuk Kategorisasi Teks Berbasis Support Vector Machine

BAB I PENDAHULUAN. alam dan operator genetika. Particle swarm optimization algoritm mensimulasikan

Implementasi Algoritma Genetika dalam Pembuatan Jadwal Kuliah

PENYELESAIAN TRAVELING SALESMAN PROBLEM (TSP) MENGGUNAKAN ALGORITMA RECURSIVE BEST FIRST SEARCH (RBFS)

BAB 1 PENDAHULUAN. I.1. Latar Belakang. Perkembangan teknologi informasi terutama teknologi multimedia dewasa

ALGORITMA GENETIKA PADA PEMROGRAMAN LINEAR DAN NONLINEAR

DETEKSI MAHASISWA BERPRESTASI DAN BERMASALAH DENGAN METODE K- MEANS KLASTERING YANG DIOPTIMASI DENGAN ALGORITMA GENETIKA

BAB II TINJAUAN PUSTAKA. Job shop scheduling problem (JSSP) adalah permasalahan optimasi

BAB II TINJAUAN PUSTAKA. dibangkitkan oleh pembangkit harus dinaikkan dengan trafo step up. Hal ini

BAB IV METODE PENELITIAN. Beberapa peralatan yang digunakan dalam penelitian ini adalah: 5.86GT/s, Cache 12MB, Quad-Core, Socket LGA1366 (No HSF)

SIMULASI PENGENDALIAN KECEPATAN MOBIL OTOMATIS MENGGUNAKAN LOGIKA FUZZY DAN ALGORITMA GENETIKA

BAB III PERANCANGAN. Gambar 3.1 di bawah ini mengilustrasikan jalur pada TSP kurva terbuka jika jumlah node ada 10:

Sistem Optimasi Rute Tempat Wisata Kuliner Di Malang Menggunakan Algoritma Bee Colony

MENEMUKAN AKAR PERSAMAAN POLINOMIAL MENGGUNAKAN PARTICLE SWARM OPTIMIZATION

SIMULASI OPTIMASI PENEMPATAN KAPASITOR MENGGUNAKAN METODA ALGORITMA KUANTUM PADA SISTEM TEGANGAN MENENGAH REGION JAWA BARAT

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

PENERAPAN ALGORITMA GENETIKA UNTUK TRAVELING SALESMAN PROBLEM DENGAN MENGGUNAKAN METODE ORDER CROSSOVER DAN INSERTION MUTATION

PERANCANGAN ALGORITMA BELAJAR JARINGAN SYARAF TIRUAN MENGGUNAKAN PARTICLE SWARM OPTIMIZATION (PSO)

PENEMPATAN KAPASITOR DAN OPTIMASI KAPASITASNYA MENGGUNAKAN ARTIFICIAL BEE COLONY (ABC) PADA SALURAN DISTRIBUSI PRIMER

Penggunaan Algoritma Greedy Dalam Perancangan Papan Teka Teki Silang

What Is Greedy Technique

BAB II LANDASAN TEORI

Transkripsi:

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 Mayendra 1, Mardhiah Fadhli 2 & Meilany Dewi 3 1,3 Program Studi Teknik Informatika Politeknik Caltex Riau, Pekanbaru 28265 2 Program Studi Teknik Komputer Politeknik Caltex Riau, Pekanbaru 28265 Email: teguhmayendra@yahoo.com 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 151 1 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 M Teguh Mayendra, Mardhiah Fadhli & Meilany Dewi 2.5 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] : Dimana p i merupakan nilai probabilitas sumber makanan, fit i 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. (1)

Simulasi Animasi Tiga Dimensi Gerombolan Ikan dalam Akuarium Virtual 153 Untuk menghasilkan kandidat posisi makanan, algoritma Artificial Bee Colony (ABC) menggunakan persamaan 2 berikut : Dimana v ij 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 : (2) Setelah masing-masing kandidat posisi sumber makanan v ij 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. (3) (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 x i, dimanai = 1, 2,,SN Evaluasi populasi Siklus = 1 Repeat Tentukan solusi baru v i 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 p i untuk solusi x i menggunakan persamaan (1) Tentukan solusi baru v i untuk lebah pengamat dengan solusi x i dipilih berdasarkan p i 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 155 3 Perancangan Aplikasi 3.1 Diagram Alir 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 157 Gambar 3 Diagram Alir Metode Bounding Box Collision Detection 4 Hasil dan Analisa 4.1 Hasil Simulasi Simulasi terdiri dari tiga tampilan, yaitu tampilan awal untuk menginputkan parameter, tampilan simulasi pergerakan ikan, dan tampilan akhir yang menampilkan hasil dari simulasi.

158 M Teguh Mayendra, Mardhiah Fadhli & Meilany Dewi 4.1.1 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 Tampilan Awal Simulasi 4.1.2 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 Tampilan Simulasi 4.1.3 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 Tampilan Akhir Simulasi 4.2 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 159 4.2.1 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. Percobaan Jumlah Ikan Tabel 1 Input Maksimum Iterasi Hasil Pengujian Parameter Kontrol Batas Nilai Fitness Terbaik Output Jumlah Terdeteksi Akan Terjadi Tabrakan Antar Ikan Jumlah Terdeteksi Akan Terjadi Tabrakan Antara Ikan dengan Hambatan 23 8 0.937026 167631 5749 10 15 24 12 0.937026 167631 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 Pendeteksian Tabrakan Antar Ikan Gambar 8 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. [2] Firdiansyah, M.E. (2010). Multimedia Interaktif Tiga Dimensi Tata Cara Bersuci dan Shalat. [3] 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. [4] Karaboga, D. & Akay, B. (2009). A Comparative Study of Artificial Bee Colony Algorithm. [5] Arsandi, A., Mardi, S., & Hariadi, M. (t.t). Visualisasi Gerakan Objek 3D pada Augmented Reality dengan Deteksi Tumbukan Berbasis Bounding Box. [6] Jeni. (t.t). Sprite & Collision Detection.