• Tidak ada hasil yang ditemukan

PENDEKATAN FIREFLY ALGORITHM (FA) UNTUK MENYELESAIKAN MASALAH PENGEPAKAN PERSEGI TIGA DIMENSI SKRIPSI

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENDEKATAN FIREFLY ALGORITHM (FA) UNTUK MENYELESAIKAN MASALAH PENGEPAKAN PERSEGI TIGA DIMENSI SKRIPSI"

Copied!
106
0
0

Teks penuh

(1)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI PENDEKATAN FIREFLY ALGORITHM (FA) UNTUK MENYELESAIKAN

MASALAH PENGEPAKAN PERSEGI TIGA DIMENSI

SKRIPSI

DESSY PITON’S BUNGA PERTIWI

PROGRAM STUDI S-1 MATEMATIKA DEPARTEMEN MATEMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS AIRLANGGA 2016

(2)

ii

(3)

iii

(4)

iv

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI PEDOMAN PENGGUNAAN SKRIPSI

Skripsi ini tidak dipublikasikan, namun tersedia di perputakaan dalam lingkungan Universitas Airlangga. Diperkenankan untuk dipakai sebagai refrensi kepustakaan, tetapi pengutipan harus seizin penulis dan harus menyebutkan sumbernya sesuai kebiasaan ilmiah. Dokumen skripsi ini merupakan hak milik

(5)

v

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

(6)

vi

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI KATA PENGANTAR

Alhamdulillahirabbil’alamin. Segala puji syukur penulis panjatkan kepada

Allah SWT karena hanya dengan rahmat dan karunia-Nya, sehingga skripsi yang berjudul “Pendekatan Firefly Algorithm (FA) untuk Menyelesaikan Masalah Pengepakan Persegi Tiga Dimensi” ini dapat diselesaikan dengan baik. Shalawat serta salam bahagia semoga senantiasa tercurahkan kepada junjungan kita, Nabi Besar Muhammad SAW, pemimpin sekaligus sebaik-baiknya suri tauladan bagi kehidupan umat manusia.

Ucapan terima kasih disampaikan kepada :

1. Universitas Airlangga yang telah memberikan kesempatan kepada penulis untuk menuntut ilmu.

2. Badrus Zaman, S.Kom, M.Cs selaku Kepala Departemen Matematika Fakultas Sains dan Teknologi Universitas Airlangga.

3. Dr. M. Imam Utoyo, M.Si selaku Kepala Prodi Matematika Fakultas Sains dan Teknologi, sekaligus dosen wali yang senantiasa penuh kesabaran, ketelitian, keramahan, dalam memberikan bimbingan berupa ilmu, arahan, waktu, serta semangat.

4. Dr. Herry Suprajitno, M.Si selaku dosen pembimbing I yang senantiasa penuh kesabaran, ketelitian, keramahan, dalam memberikan bimbingan berupa ilmu, arahan, waktu, serta semangat.

(7)

vii

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

5. Auli Damayanti S.Si, M. Si selaku dosen pembimbing II yang senantiasa penuh kesabaran, ketelitian, keramahan, dalam memberikan bimbingan berupa ilmu, arahan, waktu, serta semangat.

6. Dr. Eridani, Drs., M.Si dan Dr. Fatmawati, M.Si selaku dosen yang selalu memberikan semangat dan motivasi saat perkuliahan.

7. Yang Tercinta, kedua orang tua penulis, Eko Harto H. P. dan Sutrami, kedua adik penulis, Imelda Amitharia Jayanti dan Venando Aditya Putra, serta anggota keluarga lain yang selalu memberikan dukungan, perhatian, semangat, doa dan kasih sayangnya.

8. Teman-teman seperjuangan mahasiswa Matematika angkatan 2012, khususnya Qonitah Asia, Rien Recylia, Yulia Haqi, Rafika Agustina, Nindhyta, Rizky Azizia, Syahrul Fadilah, Herfinggi Ayu, Rokhana, Selva Putri, Kartika, Purani, dan masih banyak lainnya yang telah bersama selama kuliah, saling memberi semangat dan motivasi di celah-celah canda tawa.atas dukungan dan kebersamaannya selama ini.

Penulis berharap semoga skripsi ini dapat bermanfaat sebagai bahan pustaka dan penambah informasi khususnya bagi mahasiswa Universitas Airlangga. Penulis menyadari bahwa dalam penulisan skripsi ini, kemungkinan masih terdapat kekurangan sehingga saran dan kritik yang membangun sangat diharapkan untuk penulisan berikutnya.

Surabaya, 2 Agustus 2016

(8)

viii

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Dessy Piton’s Bunga Pertiwi, 2016, Pendekatan Firefly Algotirhm (FA) untuk

Menyelesaikan Masalah Pengepakan Persegi Tiga Dimensi, Skripsi ini dibawah

bimbingan Dr. Herry Suprajitno, M.Si dan Auli Damayanti, S.Si, M.Si. Departemen Matematika, Fakultas Sains dan Teknologi, Universitas Airlangga.

ABSTRAK

Makalah ini bertujuan untuk memecahkan masalah pengepakan persegi tiga dimensi menggunakan Firefly Algorithm (FA). Masalah pengepakan persegi tiga dimensi dapat didefinisikan sebagai penempatan sejumlah barang berbentuk persegi ke dalam suatu wadah berbentuk persegi tiga dimensi. Tujuan dari masalah ini adalah untuk meminimalkan penggunaan ruang pada wadah. Pendekatan menggunakan FA dipilih untuk menyelesaikan masalah pengepakan persegi tiga dimensi. FA sendiri terinspirasi oleh perilaku kunang-kunang. Pada FA terdapat dua masalah penting, pertama variasi intensitas cahaya, kedua perumusan daya tarik (attractiveness). Intensitas cahaya kunang-kunang akan ditentukan oleh fungsi tujuan, semakin terang intensitas cahaya kunang-kunang maka panjang wadah semakin minimum. Daya tarik sebanding dengan kecerahan, sehingga kunang-kunang dengan intensitas cahaya yang redup akan bergerak menuju kunang-kunang-kunang-kunang dengan intensitas cahaya yang lebih terang. Terdapat beberapa langkah dalam membuat program untuk menyelesaikan masalah pengepakan persegi tiga dimensi dengan pendekatan FA. Langkah pertama adalah membuat flowchart, dilanjutkan dengan membuat prosedur FA untuk menyelesaikan masalah pengepakan persegi tiga dimensi, dan yang terakhir adalah membuat program dengan menggunakan

software Borland C++. Program digunakan untuk membantu perhitungan saat

jumlah tipe barang dan unit barang banyak. Terdapat tiga data yang diselesaikan dengan bantuan program, yaitu masalah pengepakan persegi tiga dimensi dengan 5 tipe barang dengan 81 unit barang, 10 tipe barang dengan 106 unit barang, dan 20 tipe barang dengan 110 unit barang. Berdasarkan hasil yang diperoleh menunjukkan bahwa semakin banyak iterasi yang dilakukan maka solusi yang diperoleh semakin baik. Menurut Yang (2010), menyelesaikan masalah menggunakan FA mempunyai solusi yang lebih baik dibandingkan dengan Genetic

Algorithm dan Partical Swarm Optimization. Kemudian solusi yang diperoleh

menggunakan FA lebih baik daripada hybrid Genetic Algorithm-Simulated

Annealing (Putra, 2013) dan hybrid Partical Swarm Optimization-Simulated Annealing (Arasy, 2015).

(9)

ix

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Dessy Piton’s Bunga Pertiwi, 2016, Approach Firefly Algorithm (FA) for

Solving Rectangular Three-Dimension Packing Problem, This theses was

supervised by Dr. Herry Suprajitno, M.Si and Auli Damayanti, S.Si, M.Si, Faculty of Science and Technology, Airlangga University.

ABSTRACT

This paper aims to solve the problem of rectangular three-dimensional packing problem using Firefly Algorithm. Rectangular three-dimensional packing problem can be defined as the placement of a small item shaped like a square into one large rectangular object in three dimensions. The purpose of the problem is to minimize the use of the space of object large. Approach with FA have to solve the problem of rectangular three-dimension packing problem. Firefly Algorithm (FA) that inspired by the behavior of fireflies. In the FA, there are two important think, first the variation of light intensity, second formulation of the attractiveness. Firefly light intensity will be determined by the objective function, the brighter the light intensity of a firefly, the greater the minimum length of the object. The appeal is comparable to the brightness, so fireflies with low light intensity will move towards fireflies with higher light intensity. There are several steps in creating a program to solve the problem of rectangular three-dimension packing problem approach to the FA. The first step is to create a flowchart, followed by making the FA procedure to solve the problem of rectangular three-dimension packing problem, and the last is to make software programs using Borland C ++. The program is used to assist calculations when many of the type of item and unit of item . There are three data solved with the help of the program, the problem of rectangular three-dimension packing problem with 5 types of item and 81 units of item, 10 types of item and 106 units of item, and 20 types of item and 110 units of item. Based on the results obtained show that the more iterations performed, the obtained solution the better. According to Yang (2010), to solve the problem using the FA have a better solution than the Genetic Algorithm and Partical Swarm Optimization. Then the obtained solution using the FA better than hybrid Genetic Algorithm-Simulated Annealing (Putra, 2013) and hybrid Partical Swarm Optimization-Simulated Annealing (Arasy, 2015).

(10)

x

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI DAFTAR ISI

LEMBAR JUDUL ... i

LEMBAR PERNYATAAN ... ii

LEMBAR PENGESAHAN NASKAH SKRIPSI ... iii

PEDOMAN PENGGUNAAN SKRIPSI ... iv

SURAT PERNYATAAN TENTANG ORISINILITAS ... v

KATA PENGANTAR ... vi

ABSTRAK ... viii

ABSTRACT ... ix

DAFTAR ISI ... x

DAFTAR TABEL ... xiii

DAFTAR GAMBAR ... xiv

DAFTAR LAMPIRAN ... xv BAB I PENDAHULUAN 1.1 Latar Belakang ... 1 1.2 Rumusan Masalah ... 3 1.3 Tujuan ... 3 1.4 Manfaat ... 4

BAB II TINJAUAN PUSTAKA 2.1 Linear Programming ... 5

2.2 Pengepakan Persegi Tiga Dimensi ... 7

(11)

xi

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

2.4 Pengkodean ... 9

2.5 Firefly Algorithm ... 10

2.6 C++... 15

BAB III METODOLOGI PENELITIAN ... 17

BAB IV PEMBAHASAN 4.1 Prosedur Firefly Algorithm (FA) untuk Menyelesaikan Masalah Pengepakan Persegi Tiga Dimensi ... 22

4.1.1 Input Data dan Inisialisasi Parameter ... 24

4.1.2 Membangkitkan Populasi Awal Firefly ... 25

4.1.3 Proses Pengelompokan Barang Berdasarkan Tipe ... 26

4.1.4 Evaluasi ... 27

4.1.5 Menentukan Intensitas Cahaya Firefly... 29

4.1.6 Membandingkan Firefly ... 30

4.1.7 Menentukan Firefly Terbaik ... 32

4.1.8 Menentukan Global Best Sementara ... 32

4.1.9 Melakukan Movement Pada Firefly Terbaik ... 34

4.2 Data ... 34

4.3 Contoh Kasus Pengepakan Persegi Tiga Dimensi yang diselesaikan Secara Manual ... 35

4.3.1 Input Data dan Inisialisasi Parameter ... 36

4.3.2 Membangkitkan Populasi Awal Firefly ... 36

4.3.3 Proses Pengelompokan Barang Berdasarkan Tipe ... 37

(12)

xii

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

4.3.5 Menentukan Intensitas Cahaya Firefly... 44

4.3.6 Membandingkan Firefly ... 45

4.3.7 Menentukan Firefly Terbaik ... 49

4.3.8 Menentukan Global Best Sementara ... 49

4.3.9 Melakukan Movement Pada Firefly Terbaik ... 50

4.3.10 Mengecek Maksimum Iterasi ... 51

4.4 Implementasi Program Pada Contoh Kasus Pengepakan Persegi Tiga Dimensi ... 51

4.4.1 Implementasi Program Pada Data 1 (5 Tipe Barang dan 81 Jumlah Barang) ... 52

4.4.2 Implementasi Program Pada Data 1 (10 Tipe Barang dan 106 Jumlah Barang) ... 53

4.4.3 Implementasi Program Pada Data 1 (20 Tipe Barang dan 110 Jumlah Barang) ... 55

4.5 Perbandingan Hasil Perhitungan Firefly Algorithm (FA) dengan Hibrid Algoritma PSO-SA dan Hibrid Algoritma GA-SA ... 56

BAB V PENUTUP 5. 1. Kesimpulan ... 58

5. 2. Saran ... 59

DAFTAR PUSTAKA ... 61 LAMPIRAN

(13)

xiii

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI DAFTAR TABEL

No Judul Halaman

4.1 Membangkitkan Populasi Awal Firefly 36 4.2 Pengurutan Bilangan dan Pembagian dan Tipe Barang 37 4.3 Urutan Barang yang Akan Dimasukkan 38

4.4 Hasil Evaluasi Setiap Firefly 44

4.5 Intensitas Cahaya Firefly 45

4.7 Firefly Baru dan Pengurutan Berdasarkan Tipe 47 4.8 Proses Membandingkan Intensitas Cahaya Tiap Firefly 48 4.9 Populasi Baru Firefly Setelah Melakukan Movement 48

4.10 Populasi Baru 50

4.11 Hasil Running Program Pada Data 1 52 4.12 Hasil Running Program Pada Data 2 54 4.13 Hasil Running Program Pada Data 3 55 4.14 Hasil Perbandingan FA dengan Hibrid PSO-SA dan

Hibrid GA-SA

(14)

xiv

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI DAFTAR GAMBAR

No Judul Halaman

4.1 Prosedur Firefly Algorithm 23

4.2 Prosedur Inisialisasi Parameter 24

4.3 Prosedur Input Data 24

4.4 Prosedur Membangkitkan Populasi Awal 25 4.5 Prosedur Pengelompokan Barang Berdasarkan Tipe 26

4.6 Prosedur Input Barang Pada wadah 27

4.7 Prosedur Cek Konstrain 2.4 28

4.8 Prosedur Cek Konstrain 2.4 28

4.9 Prosedur Menghitung Fungsi Tujuan 29 4.10 Prosedur Menghitung Intensitas Cahaya Firefly ke-i 30 4.11 Prosedur Membandingkan Intensitas Cahaya Firefly 30 4.12 Prosedur Menghitung Jarak dan Attractiviness 31

4.13 Prosedur Persamaan Movement 31

4.14 Prosedur Firefly Terbaik 32

4.15 Prosedur Menentukan Global Best 33

4.16 Prosedur Firefly Terbaik 34

4.17 Ilustrasi Penempatan Barang Pertama 38

4.18 Ilustrasi Saat Pindah Strip 39

4.19 Ilustrasi Saat Pindah Layer 42

(15)

xv

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI DAFTAR LAMPIRAN

No Judul Lampiran

1 Flowchart Penyelesaian Pengepakan Persegi Tiga Dimensi

Menggunakan Firefly Algorithm

2 Data Tipe, Jumlah, dan Dimensi Barang 3 Source Code Program

4 Hasil Runninng Program Data 1 5 Hasil Runninng Program Data 2 6 Hasil Runninng Program Data 3

(16)

1

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI BAB I

PENDAHULUAN 1. 1. Latar Belakang

Pada suatu industri diperlukan beberapa bentuk efisiensi dalam pelaksanaan kegiatannya. Salah satu kegiatan yang harus diefisiensikan adalah kegiatan distribusi dan penyimpanan barang berbentuk persegi tiga dimensi. Biaya yang dikeluarkan untuk kedua kegiatan tersebut berpengaruh terhadap peningkatan biaya operasional suatu industri. Oleh karena itu diperlukan solusi optimal untuk menekan biaya pendisitribusian dan penyimpanan barang yang berkaitan dengan masalah pengepakan. Dereli dan Sena (2011) mengatakan bahwa masalah pengepakan ini telah banyak diaplikasikan di beberapa industri seperti tekstil, kayu, dan kertas.

Menurut Bortfeldt dan Gehring (2001), pengepakan persegi tiga dimensi dapat diartikan sebagai proses penempatan sejumlah barang berbentuk persegi kedalam suatu wadah persegi dalam bentuk tiga dimensi yang bertujuan untuk meminimalkan penggunaan ruang dalam wadah yang terpakai. Pengembangan metode untuk menyelesaikan masalah pengepakan persegi tiga dimensi harus memperhatikan unsur yang berpengaruh terhadap masalahnya. Proses penentuan urutan barang yang dimasukkan ke dalam wadah secara manual dirasakan kurang efektif dan kurang memberikan solusi yang baik (Chen, 1995). Hal ini dikarenakan sedikitnya variasi yang digunakan dalam penataan barang tersebut. Masalah pengepakan sendiri telah diteliti dengan beberapa metode, salah satu

(17)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

metodenya adalah hibrid GA (Genetic Algorithm) dengan SA (Simulated

Annealing), hibrid PSO (Particle Swarm Optimization) dengan SA.

Pada kesempatan ini akan dilakukan penelitian terhadap pendekatan

Firefly Algorithm (FA) untuk menyelesaikan masalah pengepakan persegi tiga

dimensi. Algoritma kunang-kunang atau Firefly Algorithm (FA) adalah algoritma yang memperoleh inspirasi dari cara berkedipnya kunang-kunang. Algoritma ini diperkenalkan oleh Dr Xin-she Yang di Universitas Cambridge pada tahun 2007. Menurut Yang (2010) terdapat tiga hal yang mendasari algoritma kunang-kunang. Pertama, kunang-kunang akan tertarik dengan kunang-kunang lain yang tingkat kecerahannya lebih tinggi. Kedua, kecerahan atau intensitas cahaya kunang-kunang ditentukan oleh nilai fungsi tujuan dari masalah yang diberikan. Dan ketiga, intensitas cahaya dari kunang-kunang akan berkurang seiring dengan bertambahnya jarak. Selain itu, FA dianggap lebih mengungguli dibandingkan dengan GA dan PSO.

Menggunakan pendekatan firefly algorithm (FA) untuk masalah pengepakan persegi tiga dimensi diharapkan memperoleh solusi yang lebih baik. Oleh karena itu penulis tertarik untuk mengkaji pendekatan firefly algorithm (FA) untuk masalah pengepakan persegi tiga dimensi.

(18)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 1. 2. Rumusan Masalah

Berdasarkan latar belakang tersebut, muncul beberapa masalah yang dirumuskan sebagai berikut :

1. Bagaimana menyelesaikan masalah pengepakan persegi tiga dimensi menggunakan pendekatan firefly algorithm (FA) ?

2. Bagaimana membuat program yang dapat digunakan untuk menyelesaikan masalah pengepakan persegi tiga dimensi menggunakan pendekatan firefly algorithm (FA) ?

3. Bagaimana mengimplementasikan program pengepakan persegi tiga dimensi menggunakan pendekatan firefly algorithm (FA) pada contoh kasus ?

1. 3. Tujuan

Berdasarkan rumusan masalah tersebut, diperoleh tujuan dari penelitihan ini, yaitu :

1. Penyelesaian pengepakan persegi tiga dimensi menggunakan pendekatan firefly algorithm (FA).

2. Membuat program untuk menyelesaikan pengepakan persegi tiga dimensi menggunakan pendekatan firefly algorithm (FA).

3. Mengimplementasikan program pengepakan persegi tiga dimensi menggunakan pendekatan firefly algorithm (FA) pada contoh kasus.

(19)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 1. 4. Manfaat

Manfaat yang diharapkan setelah membaca penelitihan ini adalah untuk memperluas wawasan mengenai pengoptimalan masalah pengepakan persegi tiga dimensi menggunakan pendekatan firefly algorithm (FA). Selain itu, penulis berharap informasi yang ada pada penelitihan ini dapat dilanjutkan untuk membuat penelitihan dengan metode yang lain.

(20)

5

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA) UNTUK MENYELESAIKAN MASALAH PENGEPAKAN PERSEGI TIGA DIMENSI

DESSY PITON’S BUNGA PERTIWI BAB II

TINJAUAN PUSTAKA

Pada bab ini akan diuraikan beberapa definisi yang digunakan pada pembahasan penerapan Firefly Algorithm (FA) pada masalah pengepakan persegi tiga dimensi.

2. 1 Linear Programming

Materi yang dibahas pada bagian ini bersumber dari Taha (1996). Pemrograman linier (LP) telah terbukti sebagai salah satu alat riset operasi yang paling efektif. Keberhasilannya berakar dari keluwesan dalam menjabarkan berbagai situasi kehidupan nyata di bidang-bidang berikut ini: industri, pertanian, transportasi, ekonomi, dan kesehatan. Pemrograman linier adalah sebuah alat deterministik, yang berarti bahwa semua parameter model diasumsikan dengan pasti.

Pada umumnya, model pemrograman linear (LP) seperti pada model riset operasi, memiliki tiga komponen dasar yaitu :

1. Menentukan variabel keputusan yang akan dicari.

2. Fungsi tujuan yang kita butuhkan untuk mengoptimalkan (memaksimalkan atau meminimalkan)

3. Kendala dengan solusi yang memenuhi batasan yang ada.

Sebuah model LP dapat mencakup batasan dengan segala jenis (≤, ≥, =).

Lebih jauh lagi, variabel dapat positif atau tidak dibatasi dalam tandanya untuk mengambangkan sebuah metode pemecahan umum, masalah LP ditempatkan

(21)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

dalam format yang sama, yang disebut bentuk standar. Sifat dari bentuk ini adalah sebagai berikut:

1. Semua batasan berbetuk persamaan. 2. Semua variabel bernilai positif.

3. Fungsi tujuan dapat berupa maksimisasi atau minimisasi.

Untuk masalah maksimalisasi, solusi optimal untuk LP adalah titik di daerah layak dengan nilai fungsi tujuan terbesar. Demikian pula, untuk masalah minimalisasi, solusi optimal adalah titik di wilayah layak dengan nilai fungsi tujuan terkecil.

Masalah LP dalam bentuk standar dapat diekspresikan dalam bentuk matriks sebagai berikut:

Maksimumkan , 𝑍 = ∑𝑛𝑖=1 𝑐𝑖𝑥𝑖 (2.1)

dengan syarat kendala

(𝐴, 𝐼)𝑋 = 𝑏 (2.2)

𝑋 ≥ 0

Dimana I adalah matriks identitas berordo 𝑚𝑥𝑚 dan 𝑋 = (𝑥1, 𝑥2, … , 𝑥𝑛)𝑇, 𝐶 = (𝑐 1, 𝑐2, … , 𝑐𝑛) A = [ 𝑎11 𝑎21 ⋮ 𝑎𝑚1 𝑎12 𝑎22 … … 𝑎1,𝑛−𝑚 𝑎2,𝑛−𝑚 ⋮ ⋱ ⋮ 𝑎𝑚2 … 𝑎𝑚,𝑛−𝑚 ] b =[ 𝑏1 𝑏2 ⋮ 𝑏𝑚 ]

dengan 𝑐𝑖 adalah unit biaya untuk kegiatan 𝑖, 𝑥𝑖 adalah tingkat kegiatan 𝑖, 𝑎𝑖𝑗

(22)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

banyaknya sumber daya yang tersedia untuk kegiatan 𝑖, 𝑚 adalah banyaknya jenis sumber daya, dan 𝑛 adalah banyaknya jenis kegiatan.

Fungsi tujuan diatas dapat berubah menjadi meminimumkan, dengan kendala fungsional yang dapat berganti tanda menjadi ≥ atau = sesuai dengan permasalahan akan diselesaikan.

2. 2 Pengepakan Persegi Tiga Dimensi

Pengepakan persegi tiga dimensi dapat diartikan sebagai proses penempatan sejumlah barang berbentuk kotak kedalam suatu wadah dalam bentuk persegi tiga dimensi yang bertujuan untuk meminimalkan penggunaan ruang dalam wadah yang terpakai.

(Bortfeldt dan Gehring 2001)

Pada masalah pengepakan persegi tiga dimensi terdapat 𝑛 barang yang memiliki panjang, lebar, dan tinggi, serta wadah yang memiliki tinggi (H) yang tetap dan lebar (W) yang tetap. Baranng tersebut ditempatkan pada wadah secara baik dan efektif sehingga dapat mengoptimalkan fungsi tujuan yang diberikan.

(23)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Menurut Dereli dan Sena (2011), masalah pengepakan dapat diselesaikan dengan asumsi sebagai berikut :

1. Produk berbentuk kotak persegi panjang didefinisikan dengan dimensi panjang, lebar, dan tinggi yang diketahui.

2. Kotak dapat diputar.

3. Setiap kotak dapat ditumpuk diatas kotak yang lain.

Fungsi tujuan pada masalah pengepakan adalah meminimalkan ruang kosong pada wadah saat semua barang dimasukkan ke dalam wadah.

Secara matematis permasalahan ini dideskripsikan sebagai berikut : 𝑀𝑒𝑚𝑖𝑛𝑖𝑚𝑢𝑚𝑘𝑎𝑛, 𝑍 = ∑𝐾𝑘=1𝑑𝑘 (2.3) Dengan Kendala, ∑𝑛𝑖=1𝑃𝑖𝑗𝑘 ≤ 𝑊 (2.4) 𝑟𝑖𝑗𝑘 + ∑𝑗−1𝑖=1𝑖𝑘 ≤ 𝐻, (2.5) 𝑖 = 1,2, … , 𝑛, 𝑗 = 1,2, … , 𝐽, 𝑘 = 1,2, … , 𝐾 Keterangan

𝑑𝑘 = tebal layer ke-k

𝑃𝑖𝑗𝑘 = panjang barang ke-i pada strip ke-j layer ke-k

𝑊 = lebar wadah

𝑟𝑖𝑗𝑘 = tinggi barang ke-i pada strip ke-j layer ke-k

𝑖𝑘 = tinggi strip barang ke-i layer ke-k

H = tinggi wadah

(24)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

J = banyaknya strip yang terbentuk pada wadah n = banyaknya barang yang akan dimasukkan

(Imahori et al, 2007) 2. 3 Algoritma

Algoritma adalah sebuah strategi yang mengandalkan kemampuan berpikir secara logis untuk memecahkan suatu masalah. Dalam algoritma, dimulai dengan berpikir apa yang dimiliki (kekuatan dan kelemahan), selanjutnya akan diatur langkah agar tujuan yang diharapkan terwujud.

(Wahyudi, 2004)

Secara informal, algoritma adalah prosedur komputasi yang terdefinisi dengan baik yang mengambil beberapa nilai, atau himpunan nilai, sebagai masukan dan menghasilkan beberapa nilai, atau himpunan nilai sebagai output. Sebuah algoritma adalah urutan langkah-langkah komputasi yang mengubah input ke output.

(Cormen et al, 2001) 2. 4 Pengkodean

Menurut Zomaya (1996) fungsi tujuan merupakan fungsi yang digunakan untuk menunjukkan ukuran hasil perhitungan dari calon solusi pada domain masalah. Calon solusi diperoleh dengan membangkitkan bilangan secara random yang kemudian diubah ke angka permutasi, dalam hal ini disebut dengan pengkodean. Dalam Obitko (1998), pengkodean merupakan suatu cara untuk menyajikan suatu solusi, ada beberapa jenis pengkodean diantaranya:

(25)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

1. Pengkodean biner

Dalam pengkodean biner, setiap solusi adalah rangkaian dari 0 atau 1. 2. Pengkodean nilai

Dalam pengkodean nilai, setiap solusi adalah rangkaian dari beberapa nilai. Nilai tersebut adalah nilai apapun yang dapat dihubungkan ke permasalahan, dari angka, bilangan real atau huruf hingga beberapa objek yang rumit.

3. Pengkodean permutasi

Dalam pengkodean permutasi, setiap solusi adalah rangkaian dari angka, dimana menggambarkan angka dalam suatu barisan.

2. 5 Firefly Algorithm

Algoritma Firefly (FA) pertama kali dikembangkan oleh Xin-She Yang

pada akhir tahun 2007 dan 2008 di Cambridge University, yang didasarkan pada pola berkedip dan perilaku kunang-kunang. Menurut Xin Yang (2010), FA menggunakan tiga aturan yang dianggap ideal, yakni :

1. Kunang bersifat unisex, sehingga satu kunang-kunang dapat tertarik dengan kunang-kunang lain tanpa melihat jenis kelamin.

2. Ketertarikan antar kunang kunang akan sebanding dengan tingkat kecerahan kunang-kunang tersebut. Dengan ketentuan bahwa semakin jauh jarak antar kunang, maka tingkat kecerahan kunang akan menurun atau menghilang. Jadi untuk setiap dua kunang-kunang yang berkedipan, kunang-kunang-kunang-kunang yang kurang terang (redup)

(26)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

akan mendekati kunang-kunang yang lebih terang. Jika dari kedua kunang-kunang tidak ada yang lebih terang maka kunang-kunang akan bergerak secara acak.

3. Kecerahan pada kunang-kunang akan ditentukan oleh fungsi tujuan dari masalah yang diberikan.

Berikut ini beberapa istilah yang digunakan dalam Firefly Algorithm (FA) dan definisinya menurut Yang (2010) :

Definisi 2.1 Populasi adalah sebuah kumpulan solusi yang direprentasikan dengan kunang-kunang (firefly)

Definisi 2.2 Firefly adalah individu dalam populasi yang terdiri dari

kumpulan kode yang merepresentasikan solusi dari permasalahan.

Definisi 2.3 Intensitas cahaya adalah nilai atau ukuran untuk

mengevaluasi firefly.

Definisi 2.4 Atractiveness adalah daya tarik seekor kunang-kunang

yang dinilai oleh kunang-kunang lainnya berdasarkan intensitas cahayanya.

Definisi 2.5 Distance adalah jarak antar dua firefly.

Definisi 2.6 Movement adalah pergerakan yang dlakukan

masing-masing firefly menuju firefly lain yang intensitas cahayanya lebih terang.

(27)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 2.5.1 Intensitas cahaya

Dalam algoritma FA, terdapat dua masalah penting yaitu variasi intensitas cahaya dan perumusan atractiveness. Kecerahan pada kunang-kunang akan ditentukan oleh fungsi tujuan dan atractiveness sebanding dengan kecerahan, dengan demikian untuk setiap dua kunang-kunang yang berkedip, kunang-kunang dengan cahaya yang kurang terang akan bergerak ke arah kunang-kunang yang cahanya lebih cerah.

Intensitas cahaya pada kunang-kunang dipengaruhi oleh fungsi tujuan. Tingkat intensitas cahaya untuk masalah meminimumkan sebuah

kunang-kunang 𝑥 dapat dilihat sebagai 𝐼(𝑥) = 1

𝑓(𝑥). Nilai 𝐼(𝑥) merupakan

tingkat intensitas cahaya pada kunang-kunang 𝑥 yang berbanding terbalik

terhadap solusi fungsi tujuan permasalahan yang akan dicari 𝑓(𝑥).

Atractiveness 𝛽 bernilai relatif, karena intensitas cahaya harus dilihat dan dinilai oleh kunang-kunang lain. Dengan demikian, hasil penilaian akan berbeda tergatung dari jarak antara kunang-kunang yang satu dengan yang lainnya 𝑟𝑖𝑗. Selain itu, intensitas cahaya akan menurun

dari sumbernya dikarenakan terserap oleh media, misalnya udara. Sehingga dapat ditentukan atractiveness (𝛽) dengan jarak 𝑟 sebagai

berikut :

𝛽 = 𝛽0𝑒−𝛾𝑟2 (2.6)

Dengan 𝛽0 adalah daya tarik di saat tidak ada jarak antar kunang-kunang

(28)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 2.5.2 Distance

Distance atau jarak antara dua kunang-kunang i dan j pada posisi

𝑥𝑖 , dan 𝑥𝑗, masing-masing adalah jarak kartesian yang dirumuskan sebagai

berikut:

𝑟𝑖𝑗 = ‖𝑥𝑖− 𝑥𝑗‖ = √∑𝑛𝑘=1(𝑥𝑖𝑘− 𝑥𝑗𝑘)2 (2.7)

dengan 𝑥𝑖𝑘 adalah komponen ke- 𝑘 dari 𝑥𝑖 pada firefly 𝑖 .

(Yang, 2010) 2.5.3 Movement

Movement adalah pergerakan yang dilakukan firefly 𝑖 karena ketertarikan terhadap firefly lain 𝑗, yang intensitas cahanya lebih terang.

Dengan adanya movement, maka posisi firefly atau solusi dari firefly tersebut akan berubah sesuai rumus berikut :

𝑥𝑖_𝑛𝑒𝑤𝑘 = 𝑥𝑖_𝑙𝑎𝑚𝑎𝑘 + 𝛽0 𝑒−𝛾𝑟2(𝑥

𝑗𝑙𝑎𝑚𝑎𝑘 − 𝑥𝑖𝑙𝑎𝑚𝑎𝑘 ) + 𝛼 (𝑟𝑎𝑛𝑑 − 1

2) (2.8)

dengan suku pertama merupakan posisi lama dari 𝑓𝑖𝑟𝑒𝑓𝑙𝑦, suku kedua terjadi karena ketertarikan, suku ketiga adalah pergerakan random firefly dengan 𝛼 adalah koefisien parameter random dan 𝑟𝑎𝑛𝑑 adalah bilangan real random pada interval [0,1]. Pada sebagian besar implementasi Firefly

Algorithm menggunakan 𝛽0 = 1, 𝛼 ∈ [0,1] dan 𝛾 ∈ [0, ∞)

(29)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 2.5.4 Proses Firefly Algorithm

Menurut Yang (2014), Firefly Algorithm dijalankan dengan cara sebagai berikut :

1. Inisialisasi parameter Firefly Algorithm.

2. Membangkitkan secara random populasi awal sebanyak 𝑚 firefly. Hitung intensitas cahaya tiap firefly 𝐼(𝑥) berdasarkan nilai fungsi tujuan 𝑓(𝑥).

3. Membandingkan intensitas cahaya tiap firefly dengan firefly lainnya. Apabila terdapat firefly yang intensitas cahayanya lebih besar, akan dilakukan update pergeraka firefly menggunakan persamaan movement (2.5).

4. Menentukan G-best. Untuk iterasi pertama, firefly terbaik (firefly dengan intensitas cahaya terbesar) adalah G-best.

5. Membandingkan firefly terbaik tiap iterasi denngan G-best yang diperoleh. Apabila intensitas cahaya firefly terbaik saat itu lebih besar daripada G-best maka firefly tersebut menjadi G-best.

6. Melakukan movement dengan persamaan

𝑥𝑖_𝑛𝑒𝑤𝑘 = 𝑥𝑖_𝑙𝑎𝑚𝑎𝑘 + 𝛼 (𝑟𝑎𝑛𝑑 −1

2) (2.9)

kepada firefly terbaik dan menggabungkannya dengan firefly yang lain untuk menjadi populasi awal pada iterasi selanjutnya.

(30)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

2. 6 Program C++

Materi yang dibahas pada bagian ini bersumber dari Abdul Kadir (2013). Pemograman C++ merupakan bahasa pemograman yang berlandaskan bahasa C. Bahasa C adalah pemrograman terstuktur yang membagi program dalam bentuk sejumlah blok, sehingga dapat mempermudah dalam pembuatan dan pengembangan program. Bahasa C diciptakan pada tahun 1972 oleh Brian W. Kernighan dan Dennis M. Ritche. Satu dekade kemudian, Bjarne Stroustrup, menciptakan C++ sehingga bahasa C++ lebih bersifat kompatible. Nama C++ sendiri diberikan oleh Rick Mascitti pada musim panas 1983.

C++ mendukung Pemograman Berorientasi Objek (PBO). Kebanyakan pakar setuju bahwa PBO dan C++ dapat mengurangi kekompleksitasan, terutama pada program yang terdiri dari 10.000 baris atau lebih. Greg Perry (1993) mengutip ungkapan para pelopor industri C++ yang pada intinya menyatakan C++ dapat meningkatkan produktivitas pemogram lebih dari dua kali dibanding bahasa prosedural seperti C, Pascal, Basic. Hal ini didasarkan pada kenyataan bahwa kode yang ditulis pada C++ lebih mudah untuk digunakan kembali pada program-program lain.

Ide dasar pada bahasa berorientasi obyek (PBO) adalah mengkombinasikan data dan berfungsi untuk mengakses data menjadi sebuah unit. Unit lebih dikenal dengan nama obyek yang mencerminkan pola kerja manusia dalam kehidupan sehari-hari. Sebuah obyek dapat diibaratkan sebagai departemen-departemen di dalam perusahaan bisnis, misalnya pada penjualan, akaunting, dan personalia.

(31)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Program C++ dapat ditulis menggunakan sebarang editor teks, seperti EDIT (milik DOS), Workstar, slidekick ataupun menggunakan editor bawaan dari compiler. Program C++ biasa ditulis dengan nama ekstensi .CPP (dari kata c plus-plus). Agar program ini bisa dijalankan atau dieksekusi, program harus dikompilasi lebih dahulu dengan menggunakan compiler C++. Pada saat pengkompilasian, program sumber (.C++) bersama fiele-file header (berekstensi .H atau .HPP) akan diterjemahkan compiler C++dalam bentuk onyek (.OBT). file obyek ini berupa file dalam format biner (berkode 0 dan 1). Selanjutnya file obyek ini bersama-sama dengan file obyek lain serta file pustaka (.LIB) dikaitkan menjadi satu oleh linker. Hasilnya berupa file yang bisa dijalankan dari sistem operan secara langsung.

Saat ini banyak compiler C+ yang beredar. Sebagai contohnya Microsoft

Comporation, sebagai perusahaan pembuat perangkat lunak yang sangat

termashur, mengeluarkan produk compiler C++ berupa Microsot C/C++ serta Visual C++. Adapun Borland International, yang sangat popular dengan Turbo Pascal-nya, mengeluarkan Turbo C++ dan Borland C++. Produk compiler Borland C++ ini yang digunakan untuk menyelesaikan bahasa C++.

(32)

17

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI BAB III

METODE PENELITIAN

Untuk menyelesaikan masalah pengepakan persegi tiga dimensi dengan

menggunakan pendekatan firefly algorithm (FA) diperlukan langkah-langkah

sebagai berikut :

1. Melakukan Studi pustaka tentang pengepakan persegi tiga dimensi

berbentuk kotak, dan firefly algorithm (FA).

2. Menginputkan banyaknya tipe barang (l) berdasarkan tinggi (t), lebar (q)

dan panjang (p) barang, kemudian banyaknya barang (n), lebar wadah (W)

dan tinggi wadah (H).

3. Menerapkan Firefly Algorithm (FA) dalam masalah pengepakan persegi

tiga dimensi dengan prosedur seperti berikut :

A. Menginisialisasi parameter yang akan digunakan, seperti

banyaknya firefly (m), koefisien parameter random 𝛼, keatraktifan

pada saat awal 𝛽0, koefisien penyerapan cahaya pada medium 𝛾,

dan maksimum iterasi yang diinginkan (MaxIterasi).

B. Membangkitkan populasi awal firefly dengan cara membangkitkan

secara acak bilangan real [0,1] sejumlah barang untuk

(33)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

C. Mengevaluasi masing-masing firefly dengan cara sebagai berikut :

i. Mengurutkan elemen firefly (tanpa mengubah urutan

kolom) sesuai dengan tipe barang yang digunakan.

ii. Membentuk alur barang yang akan dimasukkan terlebih

dahulu kedalam wadah. Barang pertama yang dimasukkan

akan diletakkan di ujung kiri bawah wadah, dengan tinggi

barang sejajar dengan tinggi wadah, panjang barang sejajar

dengan lebar wadah, dan lebar barang sejajar dengan

panjang wadah. Saat barang pertama dimasukkan, terdapat

ruang kosong yang terletak diatas, disamping, dan didepan

barang pertama. Kemudian barang selanjutnya akan

diletakkan di depan barang sebelumnya. Hal tersebut

dilakukan terus hingga terbentuk strip pertama, dengan

tinggi strip ℎ𝑘 = max {𝑟𝑖𝑘}. Jika panjang semua barang

sudah melebihi lebar dari wadah maka barang tersebut

diletakkan di atas barang pertama. Hal ini dilakukan hingga

tinggi semua strip kurang dari atau sama dengan tinggi

wadah dan membentuk layer, dengan lebar dari layer 𝑑𝑘 =

(34)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

iii. Menghitung fungsi tujuan yaitu jumlah total dari lebar

layer yang terbentuk.

iv. Menghitung intensitas cahaya untuk masing-masing firefly

dengan rumusan 𝐼(𝑥) = 1

𝑓(𝑥).

D. Membandingkan intensitas cahaya firefly i dengan firefly j,

seperti berikut :

i. Jika intensitas cahaya firefly i lebih besar dari firefly j,

maka ulangi langkah ini dengan 𝑗 = 𝑗 + 1.

ii. Jika intensitas cahaya firefly i lebih kecil dari firefly j, maka

akan dihitung jarak firefly i ke firefly j sesuai dengan

persamaan (2.4). Kemudian menghitung attractiveness (𝛽)

dan melakukan movement dari firefly i ke firefly j.

E. Ulangi langkah D dengan 𝑗 = 𝑗 + 1 hingga semua firefly

dibandingkan.

F. Menetukan firefly terbaik yakni firefly dengan intensitas cahaya

yang paling besar.

G. Menentukan g-best yaitu firefly terbaik yang menjadi g-best pada

(35)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

pada dengan g-best. Jika intensitas cahaya firefly terbaik lebih

besar daripada intensitas cahaya g-best maka firefly tersebut akan

menjadi g-best.

H. Menyimpan g-best sebagai calon solusi terbaik.

I. Melakukan movement pada firefly terbaik dengan persamaan

𝑥𝑖𝑘𝑛𝑒𝑤 = 𝑥𝑖𝑘𝑙𝑎𝑚𝑎 + 𝛼 (𝑟𝑎𝑛𝑑 −1 2)

Hasil dari movement akan menjadi populasi awal pada iterasi

selanjutnya.

J. Ulangi langkah D sampai G hingga maksimum iterasi tercapai.

K. Membandingkan intensitas cahaya g-best dengan hasil movement

firefly terbaik di akhir iterasi (𝑥𝑖_𝑏𝑎𝑟𝑢). Jika I(g-best) < I(𝑥𝑖_𝑏𝑎𝑟𝑢),

maka g-best= 𝑥𝑖_𝑏𝑎𝑟𝑢. Sehingga diperoleh solusi dari g-best.

4. Membuat program dari prosedur yang telah dijelaskan sebelumnya.

5. Mengimplementasikan program pada contoh kasus.

Keseluruhan proses penyelesaian Pengepakan Persegi Tiga Dimensi

menggunakan Firefly Algorithm (FA) dapat dilihat pada flowchart yang disajikan

(36)

22

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI BAB IV

PEMBAHASAN

Pada bab ini akan dijelaskan penggunaan Firefly Algorithm (FA) untuk menyelesaikan masalah pengepakan persegi tiga dimensi.

4. 1. Prosedur Firefly Algorithm (FA) untuk Menyelesaikan Masalah Pengepakan Persegi Tiga Dimensi

Prosedur Firefly Algorithm dimulai dari inisialisasi parameter yang digunakan dalam Firefly Algorithm. Kemudian menginputkan data yang berhubungan dengan masalah pengepakan persegi tiga dimensi. Selanjutnya membangkitkan populasi awal firefly 𝑥𝑖 (𝑖 = 1,2, … , 𝑛). Data yang dibangkitkan secara random dari bilangan real tersebut akan diurutkan pada proses pengurutan dan kemudian akan diubah menjadi data urutan masuknya barang ke dalam wadah berdasarkan tipe barang yang digunakan. Langkah selanjutnya menghitung fungsi tujuan. Dari fungsi tujuan akan diperoleh intensitas cahaya yang akan dilakukan pembandingan antar firefly. Firefly yang memiliki intensitas rendah akan mendekati firefly yang mempunyai intensitas lebih besar dengan cara movement. Setelah semua firefly dibandingkan, akan dicari firefly terbaik disetiap iterasi yang akan dibandingkan intensitasnya dengan intensitas cahaya 𝑔 − 𝑏𝑒𝑠𝑡 pada iterasi sebelumnya. Kemudian firefly terbaik akan melakukan perpindahan secara acak. Pada saat maksimum iterasi akan dibandingkan intensitas cahaya 𝑔 − 𝑏𝑒𝑠𝑡 yang diperoleh dengan hasil movement firefly terbaik pada iterasi tersebut, jika lebih baik gbest maka solusi terbaik adalah pada 𝑔 − 𝑏𝑒𝑠𝑡, begitu pula

(37)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

sebaliknya. Prosedur Firefly Algorithm untuk menyelesaikan masalah pengepakan persegi tiga dimensi disajikan pada Gambar 4.1.

Prosedur Firefly Algorithm Begin

inisialisasi parameter();

input data();

bangkitkan populasi awal firefly();

pengurutan data();

hitung fungsi tujuan();

hitung intensitas cahaya setiap firefly();

While (𝑡 < 𝑚𝑎𝑘𝑠_𝑖𝑡𝑒𝑟𝑎𝑠𝑖)

For 𝑖 ← 1 to banyak firefly

For 𝑗 ← 1 to banyak firefly If (𝐼(𝑥𝑖) < 𝐼(𝑥𝑗))

lakukan movement pada 𝑥𝑖();

hitung fungsi tujuan(); update intensitas cahaya;

End if

End for 𝑗

End for 𝑖

tentukan firefly terbaik();

tentukan global best sementara();

lakukan movement random pada firefly terbaik();

End while

tentukan 𝑔 − 𝑏𝑒𝑠𝑡;

End

Gambar 4.1. Prosedur Firefly Algorithm

Untuk mempermudah ilustrasi penyelesaian Pengepakan Persegi Tiga Dimensi dengan menggunakan FA, flowchart penyelesaiannya dapat dilihat pada

(38)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Prosedur Firefly Algorithm selengkapnya akan dijelaskan pada sub bab berikut ini.

4.1.1 Input Data dan Inisialisasi Parameter

Langkah pertama dari FA adalah inisialisasi parameter. Prosedur utuk inisialisasi parameter disajikan pada Gambar 4.2.

4.1.2

Prosedur inisialisasi parameter Begin

m ← jumlah populasi awal fireflies ;

maks_iterasi ← jumlah iterasi ;

𝛼 ← koefisien parameter random;

𝛽0← koefisien ketraktifan awal ;

𝛾 ← koefisien penyerapan cahaya oleh udara ;

End

Gambar 4.2. Prosedur Inisialisasi Parameter

Langkah selanjutnya adalah memasukkan data berupa ukuran barang untuk setiap tipe dan ukuran wadah. Prosedur utuk input data disajikan pada Gambar 4.3.

Prosedur input data Begin

For i ← 1 𝑡𝑜 𝑗𝑢𝑚𝑙𝑎ℎ 𝑡𝑖𝑝𝑒 For 𝑦 ← 1 𝑡𝑜 𝑑𝑖𝑚𝑒𝑛𝑠𝑖

𝐷𝑖𝑦← membaca ukuran barang ;

𝑃 ← ambil panjang barang ;

𝑑 ← ambil lebar barang ;

𝑟 ← ambil tinggi barang ;

End for 𝑦

End for 𝑖 End

Gambar 4.3. Prosedur Input Data

𝐷𝑖𝑦 bermakna bahwa data yang dimasukkan adalah tipe ke-i dengan

dimensi ke-𝑦.Karena data yang akan dibaca dari notepad adalah panjang, lebar, tinggi, dan jumlah barang, maka jumlah dimensinya adalah 4.

(39)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 4.1.2 Membangkitkan Populasi Awal Firefly

Pembangkitan populasi awal firefly akan dilakukan sebanyak m

firefly. Setiap firefly mempunyai banyak elemen sesuai dengan banyaknya

barang yang akan dimasukkan. Pembangkitkan elemen firefly dilakukan dengan cara membangkitkan secara acak bilangan real pada interval [0,1]. Prosedur untuk membangkitkan populasai awal firefly disajukan pada

Gambar 4.4.

Prosedur membangkitkan populasi awal firefly Begin For p ← 1 𝑡𝑜 𝑚 For u ← 1 𝑡𝑜 𝑛 𝑟 ← 𝑟𝑎𝑛𝑑%1000 ; 𝑅 ← 0.001 ∗ 𝑟 ; 𝐷𝑅𝑘𝑢 ← 𝑅 ; End for u End for p End

Gambar 4.4. Prosedur Membangkitkan Populasi Awal

Langkah pertama untuk memperoleh elemen firefly yang diinginkan adalah mengambil bilangan real secara acak kemudian mencari modulo 1000 dari bilangan real tersebut, yang disimbolkan dengan 𝑟. Selanjutnya 𝑟

akan dikalikan dengan 0,001 untuk memperoleh bilangan real interval [0,1], langkah ini disimbolkan dengan 𝑅. Dengan demikian diperoleh 𝐷𝑅𝑝𝑢 yang berarti elemen firefly ke-𝑝 dan komponen barang ke-𝑢.

(40)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 4.1.3 Proses Pengelompokan Barang Berdasarkan Tipe

Prosedur pengelompokan barang berdasarkan tipe Begin

For 𝑝 ← 1 𝑡𝑜 𝑚 For 𝑢 ← 1 𝑡𝑜 𝑛

𝑅𝑝𝑢← Pengurutan elemen firefly ;

End for 𝒖 End for 𝑝 For 𝑝 ← 1 𝑡𝑜 𝑚 For 𝑢 ← 1 𝑡𝑜 𝑛 If (𝐷𝑅𝑝𝑢== 𝑅𝑝𝑢) 𝐷𝑈𝑝𝑢 ← 𝑢 ; If else For 𝑣 ← 1 𝑡𝑜 𝑛 If (𝐷𝑅𝑝𝑢 == 𝑅𝑝𝑣) 𝐷𝑈𝑝𝑢 ← 𝑣 ; End if End for 𝑣 End else End for 𝑢 End for 𝑝 𝑛1 ← 0; 𝑛2 ← 0; For 𝑝 ← 1 𝑡𝑜 𝑚 For 𝑖 ← 1 𝑡𝑜 𝑗𝑢𝑚𝑙𝑎ℎ 𝑡𝑖𝑝𝑒 𝑛1← 𝑛1+ 𝐷𝑖3 ; For 𝑢 ← 1 𝑡𝑜 𝑛 If (𝐷𝑈𝑝𝑢<= 𝑛1) If (𝐷𝑈𝑝𝑢<= 𝑛2) 𝐷𝑈𝑝𝑢← 𝑖 ; End if End if End for 𝑢 𝑛1← 𝑛1+ 𝐷𝑖3 ; End for 𝑖 End for 𝑝 End

Gambar 4.5. Prosedur Pengelompokan Barang Berdasarkan Tipe

Tiap elemen dari firefly akan ditransformasikan menjadi urutan barang yang akan dimasukkan ke dalam wadah. Langkah pertama adalah mengurutkan elemen-elemen tersebut dari yang terkecil sampai yang terbesar kemudian melakukan penomoran pada elemen. Dari penomoran tersebut data dimodifikasi sedemikian sehingga menjadi urutan barang

(41)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

berdasarkan tipe barang. Prosedur pengelompokan barang berdasarkan tipe disajikan pada Gambar 4.5.

Pertama yang dilakukan adalah melakukan pengurutan elemen firefly ke-𝑝 dan komponen barang ke-𝑢 yang disimbolkan dengan 𝑅𝑝𝑢.

Selanjutnya, jika 𝐷𝑅𝑝𝑢 = 𝑅𝑝𝑢 maka kita memperoleh 𝐷𝑈𝑝𝑢 = 𝑢, dengan

𝐷𝑈 adalah symbol dari data yang digunakan pada tahap selanjutnya. Setelah itu 𝐷𝑈 dimodifikasi sedemikian hingga sesuai dengan tipe barang.

4.1.4 Evaluasi

Pada tahap ini akan dihitung fungsi tujuan setiap firefly dengan menggunakan aturan fungsi tujuan (2.3). Langkah pertama adalah memasukkan barang sesuai dengan urutan pada setiap firefly. Prosedur input barang disajikan pada Gambar 4.6.

G a m

bar 4.6. Prosedur Input Barang Pada Wadah

Barang yang dimasukkan ke dalam wadah tidak melalui proses perputaran balik secara vertikal maupun horizontal. Makna dari 𝐵𝑠𝑡 adalah

barang yang berada di strip ke-𝑠 layer ke- 𝑡. 𝐽 adalah banyaknya strip yang terbentuk dalam suatu layer dan 𝐾 adalah banyaknya layer yang terbentuk

pada wadah. Strip akan membagi tinggi wadah menjadi beberapa bagian Prosedur input barang pada wadah

Begin For 𝑠 ← 1 𝑡𝑜 𝐽 For t ← 1 𝑡𝑜 𝐾 𝐵 𝑠𝑡 ← input barang ; End for 𝑠 End for 𝑡 End

(42)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

dan layer akan membagi panjang wadah menjadi beberapa bagian. Setiap barang yang dimasukkan ke dalam wadah akan melalui tahap pengecekan konstrain (2.4) dan (2.5). Prosedur cek konstrain (2.4) disajikan pada

Gambar 4.7.

Prosedur Cek Konstrain 2.4 (pindah strip) Begin

If (Panjang total > lebar wadah) 𝐵𝑠𝑡 ← pindah strip ;

s++ ;

Panjang total ← P ; End if

End

Gambar 4.7. Prosedur Cek Konstrain 2.4

Jika panjang total dari barang yang telah dimasukkan lebih besar dari lebar wadah, maka dilakukan pindah strip. Panjang total sementara untuk suatu strip adalah panjang barang yang menyebabkan terbentuknya strip baru. Setelah melakukan pengecekan pada konstrain (2.4) langkah selanjutnya adalah melakukan pengecekan pada konstrain (2.5). prosedur cek konstrain (2.5) disajikan pada Gambar 4.8.

Prosedur Cek Konstrain 2.5 (pindah layer) Begin

For 𝑠 ← 1 𝑡𝑜 𝐽 For 𝑡 ← 1 𝑡𝑜 𝐾

If (Tinggi srip > tinggi wadah)

𝐵𝑠𝑡 ← pindah layer ; 𝑡++ ; End if 𝐵𝑠𝑡 ← 𝑟 ; End for 𝑡 End for 𝑠 End

(43)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Jika tinggi strip yang telah terbentuk lebih besar dari wadah, maka akan dilakukan pindah layer yang disimbolkan dengan t++. Tinggi strip pertama pada layer selanjutnya merupakan tinggi barang (r) pada layer sebelumnya yang menyebabkan terjadinya pindah layer. Saat pindah layer maka dapat diketahui tebal pada layer sebelumnya. Prosedur menghitung fungsi tujuan disajikan pada Gambar 4.9.

Prosedur Menghitung Fungsi Tujuan Begin

For 𝑝 ← 1 𝑡𝑜 𝑚

f(𝑥𝑝) ← 𝑆𝑈𝑀 𝑑(1, 𝐾) ;

End for 𝑝 End

Gambar 4.9. Prosedur Menghitung Fungsi Tujuan

Setelah semua barang sudah dimasukkan ke dalam wadah, maka telah terbentuk beberapa layer yang masing-masing memiliki lebar. Dengan demikian diperoleh fungsi tujuan dengan menjumlahkan lebar layer yang telah terbentuk.

4.1.5 Menentukan Intensitas Cahaya Firefly

Fungsi tujuan dalam kasus pengepakan persegi tiga dimensi ini adalah meminimalkan panjang wadah. Intensitas cahaya yang baik adalah nilai intensitas cahaya yang besar, sehingga nilai intensitas cahaya berbanding terbalik dengan nilai dari fungsi tujuan. Prosedur menghitung intensitas cahaya disajikan pada Gambar. 4.10.

(44)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Prosedur Menghitung Intensitas Cahaya firefly Ke-i Begin

𝐼𝐶𝑝 ← 𝑝𝑜𝑤(𝑓(𝐶𝑝), −1) ;

End

Gambar 4.10. Prosedur Menghitung Intensitas Cahaya firefly ke-i

Intensitas cahaya (𝐼𝐶𝑝) yang diperoleh dengan rumus

1 𝑓𝑢𝑛𝑔𝑠𝑖 𝑡𝑢𝑗𝑢𝑎𝑛

merupakan indikator baik buruknya suatu firefly p. Jika suatu firefly memiliki intensitas cahaya paling tinggi dibandingkan firefly lainnya, maka dapat dikatakan bahwa firefly tersebut adalah solusi terbaik.

4.1.6 Membandingkan Firefly

Pada tahap ini nilai intensitas cahaya pada firefly yang akan dibandingkan untuk memperoleh firefly terbaik. Prosedur untuk membandingkan intensitas cahaya disajikan pada Gambar 4.11.

Prosedur Membandingkan Intensitas Cahaya firefly Begin

For p ← 1 𝑡𝑜 𝑚 For q ← 1 𝑡𝑜 𝑚 If (𝐼𝐶𝑝 < 𝐼𝐶𝑞 )

firefly p bergerak menuju firefly q ;

End if

End for q

End for p End

Gambar 4.11. Prosedur Membandingkan Intensitas Cahaya Firefly

Dalam tahap ini, jika nilai intensitas cahaya firefly 𝑝(𝐼𝐶𝑝) kurang

dari nilai intensitas cahaya firefly q (𝐼𝐶𝑞) maka akan terjadi movement firefly p menuju firefly q yang memerlukan perhitungan jarak dan

(45)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI attractiveness. Prosedur untuk menghitung jarak dan attractiveness

disajikan pada Gambar 4.12.

Prosedur Menghitung Jarak dan Attractiveness Begin For 𝑝 ← 1 𝑡𝑜 𝑚 For 𝑞 ← 1 𝑡𝑜 𝑚 jumlah = 0 ; a ← 𝐼𝐶𝑞 − 𝐼𝐶𝑝 ; b ← pow (a, 2); jumlah ← jumlah + b ; jarak ← sqrt (jumlah) ; 𝛽 ← 𝛽0∗ exp(−𝛾 ∗ 𝑗𝑎𝑟𝑎𝑘) ; End for p End for q End

Gambar 4.12. Prosedur Menghitung Jarak dan Attractiveness

Setelah menghitung jarak dan attractiveness, selanjutnya adalah melakukan movement ke firefly 𝑞. Sehingga diperoleh solusi baru untuk setiap firefly. Prosedur untuk movement disajikan pada Gambar 4.13.

Prosedur Persamaan Movement Begin rand ← random (0, 1) ; For 𝑝 ← 1 𝑡𝑜 𝑚 For 𝑞 ← 1 𝑡𝑜 𝑚 For 𝑢 ← 1 𝑡𝑜 𝑛 𝑎 ← 𝐼𝐶𝑞 − 𝐼𝐶𝑝 ; 𝐷𝑅𝑝𝑢= 𝐷𝑅𝑝𝑢+ 𝛽 ∗ 𝑎 + 𝛼 ∗ (𝑟𝑎𝑛𝑑 − 0.5) ; End for u End for 𝑞 End for 𝑝 End

Gambar 4.13. Prosedur Persamaan Movement

Prosedur movement akan dilakukan pada firefly yang memiliki intensitas cahaya lebih kecil dibandingkan firefly lainnya hingga semua firefly telah dibandingkan.

(46)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 4.1.7 Menentukan Firefly terbaik

4.2.2

Prosedur Firefly Terbaik Begin 𝑏𝑒𝑠𝑡 ← 𝐼𝐶1 ; For 𝑝 ← 2 𝑡𝑜 𝑚 If (𝑏𝑒𝑠𝑡 < 𝐼𝐶𝑝 ) 𝑏𝑒𝑠𝑡 ← 𝐼𝐶𝑝; End if End for 𝑝 End

Gambar 4.14. Prosedur Firefly Terbaik

Setelah membandingkan intensitas cahaya tiap firefly, langkah selanjutnya adalah menentukan firefly dengan intensitas cahaya tertinggi. Intensitas tertinggi pada setiap iterasi ini dianggap sebagai firefly terbaik. Prosedur untuk movement disajikan pada Gambar 4.14.

4.1.8 Menentukan Global best Sementara

Global best (𝑔 − best) adalah firefly yang mempunyai intensitas terbesar dari semua iterasi yang telah dilakukan. Apabila firefly terbaik pada saat itu lebih besar intensitas cahayanya daripada 𝑔 − best, maka

firefly tersebut menjadi 𝑔 − best.

Pada iterasi pertama, 𝑔 − best merupakan firefly terbaik. Sedangkan

untuk iterasi selanjutnya, firefly terbaik pada iterasi tersebut akan dibandingkan dengan 𝑔 − best pada iterasi sebelumnya. Apabila firefly terbaik memiliki intensitas cahaya lebih besar dibandingkan dengan 𝑔 − best pada iterasi sebelumnya, maka firefly tersebut akan menjadi 𝑔 −

best. Sebaliknya, jika firefly terbaik memiliki intensitas cahaya lebih

(47)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

best pada iterasi tersebut sama dengan 𝑔 − best pada iterasi sebelunya. Prosedur untuk menentukan 𝑔 − best disajikan pada Gambar 4.15.

Prosedur Menentukan Global Best Begin If (𝑖𝑡𝑒𝑟𝑎𝑠𝑖 = 1) 𝑖𝑑𝑔𝑏𝑒𝑠𝑡 = 𝑖𝑑𝑓𝑏𝑎𝑖𝑘; 𝑓𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊 =f(𝑥𝑖𝑑𝑔𝑏𝑒𝑠𝑡) 𝑖𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊= 𝐼𝐶𝑖𝑑𝑔𝑏𝑒𝑠𝑡 For 𝑢 ← 1 𝑡𝑜 𝑛 𝑔𝑏𝑒𝑠𝑡𝑓(𝑖𝑡𝑒𝑟𝑎𝑠𝑖)(𝑢)= 𝐷𝑅(𝑖𝑑𝑔𝑏𝑒𝑠𝑡)(𝑢) End for 𝑢 Else if (𝑖𝑡𝑒𝑟𝑎𝑠𝑖 > 1) If(𝐼𝐶𝑖𝑑𝑓𝑏𝑎𝑖𝑘≥ 𝑖𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊−𝟏) 𝑖𝑑𝑔𝑏𝑒𝑠𝑡 = 𝑖𝑑𝑓𝑏𝑎𝑖𝑘; 𝑓𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊 =f(𝑥𝑖𝑑𝑔𝑏𝑒𝑠𝑡) 𝑖𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊= 𝐼𝐶𝑖𝑑𝑔𝑏𝑒𝑠𝑡 For 𝑢 ← 1 𝑡𝑜 𝑛 𝑔𝑏𝑒𝑠𝑡𝑓(𝑖𝑡𝑒𝑟𝑎𝑠𝑖)(𝑢)= 𝐷𝑅(𝑖𝑑𝑔𝑏𝑒𝑠𝑡)(𝑢) End for 𝑢 Else if(𝐼𝐶𝑖𝑑𝑓𝑏𝑎𝑖𝑘≥ 𝑖𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊−𝟏) 𝑓𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊 =f(𝑥𝑖𝑡𝑒𝑟𝑎𝑠𝑖−1) 𝑖𝑔𝑏𝑒𝑠𝑡𝒊𝒕𝒆𝒓𝒂𝒔𝒊= 𝐼𝐶𝑖𝑡𝑒𝑟𝑎𝑠𝑖−1 For 𝑢 ← 1 𝑡𝑜 𝑛 𝑔𝑏𝑒𝑠𝑡𝑓(𝑖𝑡𝑒𝑟𝑎𝑠𝑖)(𝑢)= 𝐷𝑅(𝑖𝑡𝑒𝑟𝑎𝑠𝑖−1)(𝑢) End for 𝑢 End if End if End

Gambar 4.15. Prosedur Menentukan Global Best

Setelah mendapatkan 𝑔 − best, langkah selanjutnya adalah melakukan

movement pada firefly terbaik.

(48)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI Firefly terbaik pada setiap iterasi akan melakukan pergerakan secara

random. Hal ini dilakukan untuk mencari solusi lain disekitar firefly terbaik. Prosedur untuk movement pada firefly terbaik disajikan pada

Gambar 4.16.

Prosedur Firefly Terbaik Begin rand ← random(0,1) ; For 𝑖𝑡𝑒𝑟𝑎𝑠𝑖 ← 1 𝑡𝑜 𝑚𝑎𝑘𝑠 𝑖𝑡𝑒𝑟𝑎𝑠𝑖 For 𝑢 ← 1 𝑡𝑜 𝑛 𝐷𝑅(𝑖𝑡𝑒𝑟𝑎𝑠𝑖)(𝑢)= 𝐷𝑅(𝑖𝑡𝑒𝑟𝑎𝑠𝑖)(𝑢) + 𝛼 ∗ (𝑟𝑎𝑛𝑑 − 0.5) ; End for 𝑢 End for 𝑖𝑡𝑒𝑟𝑎𝑠𝑖 End

Gambar 4.16. Prosedur Firefly Terbaik

Prosedur ini akan terus dilakukan hingga mencapai maksimum iterasi.

4. 2. Data

Data yang digunakan pada skripsi ini adalah data sekunder berasal dari

OR-library oleh J. E Beasley. Pada perhitungan secara manual, data yang

diperoleh dari website

http://people.brune1.ac.uk/~mastjjb/jeb/orlib/files/wtpack2.txt dimodifikasi

jumlah barang tiap tipe untuk mempermudah dalam melakukan perhitungan secara manual sehingga diperoleh 3 tipe dan 12 unit barang.dan disesuikan dengan kriteria data. Kemudian akan digunakan tiga data yang akan dihitung meggunakan bantuan program, yaitu :

(49)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Data kecil yang digunakan berisi 3 tipe barang dan 12 unit barang. Data tersebut diperoleh dari alamat website

http://people.brune1.ac.uk/~mastjjb/jeb/orlib/files/wtpack2.txt.

b. Data Sedang

Terdapat 10 tipe barang dan 106 unit barang yang digunakan pada data sedang. Data tersebut diperoleh dari alamat website

http://people.brune1.ac.uk/~mastjjb/jeb/orlib/files/wtpack4.txt c. Data Besar

Pada data besar akan digunakan 20 tipe barang dan 110 unit barang. Data

tersebut diperoleh dari alamat website

http://people.brune1.ac.uk/~mastjjb/jeb/olib/files/wtpack7.txt.

Keseluruhan data dapat dilihat pada Lampiran 2.

4. 3. Contoh Kasus Pengepakan Persegi Tiga Dimensi yang Diselesaikan Secara Manual

Berikut ini adalah contoh kasus pengepakan persegi tiga dimensi dengan 3 tipe barang dan 12 unit barang yang akan diselesaikan secara manual menggunakan Firefly Algorithm. Sesuai dengan tujuan dari masalah pengepakan peregi tiga dimensi ini, yaitu akan dicari susunan barang paling optimal berdasarkan urutan tipe barang yang akan dimasukkan kedalam suatu wadah. Dengan demikian memperoleh ukuran minimum dari wadah yang digunakan. Lebar dan tinggi wadah secara berturut-turut adalah 233 cm dan 220 cm. Data lain berupa tipe, jumlah, dan ukuran barang disajikan pada Lampiran 2.

(50)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI

Langkah-langkah yang digunakan untuk menyelesaikan masalah pengepakan persegi tiga dimensi dengan menggunakan Firefly Algorithm adalah sebagai berikut :

4.3.1 Input Data dan Inisialisasi parameter

Pertama adalah dengan menentukan pengkodean yang akan digunakan, dalam hal ini adalah pengkodean real. Kemudian akan ditentukan parameter-parameter yang akan digunakan pada proses selanjutnya. Parameter-parameter Firefly Algorthm (FA) yang akan digunakan dalam menyelesaikan contoh kasus masalah pengepakan persegi tiga dimensi secara manual, yaitu sebagai berikut : banyaknya firefly (popsize)=7, tinggi dan lebar wadah berturut-turut adalah 233 cm dan 220 cm, MaxIterasi=1, 𝛽0 = 1, 𝛾 = 1, 𝛼 = 0.1.

4.3.2 Membangkitkan Populasi Awal Firefly

Tabel 4.1. Membangkitkan populasi awal firefly

Proses membangkitkan populasi awal firefly sebanyak popsize dengan elemen setiap firefly yang terdiri atas hasil random bilangan real pada interval [0,1]. Hasil membangkitkan populasi awal firefly dengan merandom bilangan real yang akan disajikan pada Tabel 4.1.

Firefly Random sejumlah barang

1 2 3 4 5 6 7 8 9 10 11 12 𝑥1 0.3 0.31 0.1 0.5 0.12 0.2 0.22 0.71 0.35 0.41 0.43 0.88 𝑥2 0.5 0.4 0.42 0.01 0.61 0.81 0.51 0.11 0.13 0.18 0.31 0.78 𝑥3 0.8 0.23 0.25 0.09 0.9 0.01 0.7 0.21 0.15 0.3 0.51 0.6 𝑥4 0.5 0.61 0.09 0.32 0.39 0.4 0.11 0.29 0.18 0.72 0.2 0.25 𝑥5 0.18 0.27 0.74 0.22 0.35 0.04 0.53 0.78 0.12 0.21 0.09 0.17 𝑥6 0.12 0.43 0.13 0.43 0.73 0.048 0.56 0.23 0.65 0.17 0.83 0.2 𝑥7 0.12 0.78 0.74 0.22 0.18 0.04 0.21 0.31 0.12 0.01 0.09 0.17

(51)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI 4.3.3 Pengelompokan Barang Berdasarkan Tipe

Setelah membangkitkan populasi dengan merandom bilangan real sebanyak jumlah barang, langkah selanjutnya adalah mengurutkan bilangan yang diperoleh secara acak tersebut. Setelah bilangan tersebut diurutkan, selanjutnya adalah membagi jumlah barang berdasarkan tipe. Diketahui barang tipe satu berjumlah empat, barang tipe dua berjumlah lima, dan barang tipe tiga berjumlah tiga. Oleh karena itu bilangan dengan urutan 1-4 akan menjadi barang tipe satu, bilangan dengan urutan 5-9 akan menjadi barang tipe dua, dan bilangan dengan urutan 10-12 akan menjadi barang dengan tipe tiga. Pengurutan bilangan yang diperoleh secara acak dan pembagian tipe barang akan disajikan dalam Tabel 4.2.

Tabel 4.2. Pengurutan Bilangan dan Pembagian Tipe Barang

Proses tersebut dilakukan kepada semua firefly dengan cara yang sama. Sehingga diperoleh urutan barang yang akan dimasukkan ke dalam wadah yang disajikan pada Tabel 4.3.

Firefly Random sejumlah barang

1 2 3 4 5 6 7 8 9 0 11 12 𝑥1 Populasi awal 0.3 0.31 0.1 0.5 0.12 0.2 0.22 0.71 0.35 0.41 0.43 0.88 Pengurutan Bilangan 5 6 1 10 2 3 4 11 7 8 9 12 Urutan Barang Berdasarkan Tipe 2 2 1 3 1 1 1 3 2 2 2 3

Firefly Random sejumlah barang

(52)

SKRIPSI PENDEKATAN FIREFLY ALGORITHM (FA)… DESSY PITON’S BUNGA PERTIWI T a b e l 4

.3. Urutan Barang yang Akan Dimasukkan

Dari data tersebut akan diperoleh nilai fungsi tujuan pada setiap firefly.

4.3.4 Evaluasi Firefly

Pada tahap ini akan dihitung fungsi tujuan dari masing-masing individu. Nilai fungsi tujuan diperoleh setelah malalui proses penempatan barang sesuai dengan urutan barang yang akan dimasukkan. proses evaluasi akan diuraikan sebagai berikut :

Misalnya pada firefly-1 (𝑥1) : 2 2 1 3 1 1 1 3 2 2 2 3

𝑥1 2 2 1 3 1 1 1 3 2 2 2 3 𝑥2 2 2 2 1 3 3 2 1 1 1 2 3 𝑥3 3 2 2 1 3 1 3 1 1 2 2 2 𝑥4 3 3 1 2 2 2 1 2 1 3 1 2 𝑥5 2 2 3 2 2 1 3 3 1 2 1 1 𝑥6 1 2 1 2 3 1 2 2 3 1 3 2 𝑥7 1 3 3 2 2 1 2 3 2 1 1 2

Gambar

Gambar 4.1. Prosedur Firefly Algorithm
Gambar 4.2. Prosedur Inisialisasi Parameter
Gambar 4.4. Prosedur Membangkitkan Populasi Awal
Gambar 4.5. Prosedur Pengelompokan Barang Berdasarkan Tipe
+7

Referensi

Dokumen terkait

PENERAPAN PENDEKATAN GENERATIVE LEARNING DENGAN STRATEGI PEER LESSONS UNTUK MENINGKATKAN KEAKTIFAN DAN HASIL BELAJAR SISWA PADA MATERI DIMENSI TIGA DI KELAS X3

Penelitian ini bertujuan untuk mengetahui pengaruh pendekatan saintifik berbantuan media tiga dimensi terhadap hasil belajar siswa pada materi virus kelas X SMA

Hal ini menunjukkan bahwa kemampuan pemecahan masalah siswa yang diajarkan dengan menggunakan pendekatan Open Ended efektif dari pada kemampuan pemacahan masalah siswa yang diajarkan

Dari data tersebut tersebut diatas penerapan pendekatan pemecahan masalah dapat meningkatkan aktivitas dan hasil belajar siswa dalam menyelesaikan soal cerita pada

Untuk itu, peneliti dan guru matematika kelas X SMA negeri 7 Palu sepakat menerapkan suatu model pembelajaran kelompok dan membuat siswa memahami materi tersebut sehingga Dimensi Tiga