BAB 3 ANALISIS DAN PERANCANGAN
Pada bab ini akan dibahas mengenai analisis dan perancangan sistem. Pada tahap analisis akan dilakukan analisis terhadap data yang digunakan menggunakan
algoritma firefly untuk menemukan solusi penyusunan barang yang optimal. Pada tahap perancangan akan dibahas mengenai perancangan use case diagram, flowchart
user, database, serta tampilan antarmuka sistem.
3.1. Arsitektur Umum
Metode yang diajukan untuk mengoptimalkan penyusunan barang pada penelitian ini terdiri dari beberapa tahapan yaitu input, proses, dan output. Input dari penelitian ini
berupa data barang dan data mobil box. Data-data tersebut kemudian akan diproses melalui tiga tahapan yaitu, inisialisasi, penyusunan barang, dan optimalisasi. Pada
tahapan inisialisasi, proses yang dilakukan adalah pembangkitan bilangan acak untuk menentukan urutan awal masuk barang sebanyak kandidat solusi yang diinginkan.
Tahap selanjutnya adalah penyusunan barang. Pada tahap ini, barang-barang akan disusun berdasarkan urutan masuk barang yang dimiliki masing-masing kandidat
solusi yang telah dihasilkan pada tahapan inisialisasi, kemudian dihitung nilai fitness barang-barang yang dapat disusun. Tahapan terakhir adalah optimalisasi penyusunan
barang menggunakan algoritma firefly. Tahapan optimalisasi tersebut digunakan untuk mengoptimalkan susunan barang yang sudah dihasilkan pada tahapan sebelumnya
sehingga menghasilkan urutan penyusunan barang yang lebih baik. Output yang didapat dari proses ini berupa urutan masuk barang dan posisi barang yang sudah
disusun, serta gambar tiga dimensi tata letak akhir barang. Detail setiap tahapan yang dilakukan akan dijelaskan secara terperinci pada bagian-bagian selanjutnya. Adapun
arsitektur umum dari sistem yang akan dibangun dapat dilihat pada Gambar 3.1.
Universitas Sumatera Utara
25
Gambar 3.1. Arsitektur Umum
Universitas Sumatera Utara
26
3.2. Data yang digunakan
Data yang digunakan dalam penelitian ini ada dua jenis data, yaitu data mobil box dan data barang. Data mobil box dibutuhkan untuk mengetahui kapasitas ruang untuk
penyusunan barang. Pada penelitian ini, mobil yang digunakan hanya satu buah single bin. Parameter-parameter mobil box yang digunakan adalah panjang mobil,
lebar mobil, tinggi mobil, dan beban maksimal yang dapat ditampung mobil. Contoh data mobil box beserta nilai dari parameter yang dibutuhkan dalam penelitian ini dapat
dilihat pada Tabel 3.1.
Tabel 3.1. Parameter Mobil Box
Mobil Panjang
Mobil cm Tinggi
Mobil cm Lebar
Mobil cm Beban Maks
Mobil kg
1 100
50 60
100
Data barang dibutuhkan untuk mengetahui berapa banyak barang yang akan disusun pada mobil box serta ukuran masing-masing barang. Barang yang akan
disusun pada penelitian ini harus berbentuk balok dan kubus. Parameter-parameter barang yang digunakan adalah panjang barang, lebar barang, tinggi barang, berat
barang, serta perotasian barang. Parameter dimensi barang seperti panjang, lebar, serta tinggi barang dibutuhkan untuk menentukan posisi barang pada mobil box. Parameter
berat barang dibutuhkan untuk membatasi total berat barang yang disusun agar tidak melebihi beban maksimal yang dapat ditampung mobil box. Parameter perotasian
barang dibutuhkan untuk mengetahui apakah barang tersebut bisa dirotasi dalam penyusunannya atau tidak. Contoh data barang beserta nilai dari parameternya yang
dibutuhkan dalam penelitian ini dapat dilihat pada Tabel 3.2.
Tabel 3.2. Parameter Barang Barang
Panjang Barang cm
Tinggi Barang cm
Lebar Barang cm
Berat Barang kg
Perotasian Barang
1 40
30 30
7 Ya
2 35
30 25
5 Ya
3 30
30 30
7 Ya
Universitas Sumatera Utara
27
Tabel 3.2. Parameter Barang lanjutan Barang
Panjang Barang cm
Tinggi Barang cm
Lebar Barang cm
Berat Barang kg
Perotasian Barang
4 25
20 25
6 Tidak
5 40
10 20
5 Tidak
6 40
30 30
8 Ya
7 20
30 20
8 Ya
8 25
25 25
7 Ya
9 30
20 15
5 Tidak
10 25
15 15
5 Tidak
. ...
... ...
... ...
. ...
... ...
... ...
. ...
... ...
... ...
n ...
... ...
... ...
Pada Tabel 3.2. dapat dilihat parameter-parameter barang yang digunakan dalam penyusunan pada mobil box, seperti panjang, lebar, tinggi dan berat barang.
Sedangkan perotasian barang merupakan constraint atau batasan, sehingga barang yang memiliki nilai perotasian barang sama dengan ‘tidak’ adalah barang yang tidak
dapat dirotasi penyusunannya. Sedangkan barang yang memiliki nilai perotasian barang sama de
ngan ‘ya’ dapat dirotasi penyusunannya sebanyak enam variasi perputaran.
3.3. Optimalisasi Penyusunan Barang Pada Mobil Box
3.3.1. Inisialisasi Tahapan inisialisasi dilakukan untuk menentukan urutan awal masuk barang. Proses
yang dilakukan pada tahapan inisialisasi adalah pembangkitan bilangan acak dan penentuan urutan masuk barang.
Universitas Sumatera Utara
28
Pembangkitan Bilangan Acak Pada penelitian ini, inisialisasi solusi awal penyusunan barang menggunakan
pembangkitan bilangan acak. Sebelum urutan awal masuk barang ditentukan, terlebih dahulu harus dilakukan pembangkitan bilangan acak sebanyak jumlah barang dan
kandidat solusi yang diinginkan. Sebagai contoh, jika kandidat solusi yang diinginkan berjumlah dua dan barang yang akan disusun berjumlah sepuluh, maka akan ada dua
puluh bilangan acak yang dibangkitkan.
Penentuan Urutan Masuk Barang Setelah bilangan acak dibangkitkan untuk masing-masing kandidat solusi, maka
proses selanjutnya adalah penentuan urutan masuk barang. Penentuan urutan masuk barang dilakukan dengan cara mengurutkan nilai bilangan acak yang dimiliki masing-
masing kandidat solusi dari terkecil hingga terbesar. Contoh urutan masuk barang yang didapatkan dari hasil pengurutan bilangan acak masing-masing kandidat solusi
dapat dilihat pada Tabel 3.3.
Tabel 3.3. Urutan Masuk Barang Awal Kandidat
Solusi Urutan Barang
1 2
3 4
5 6
7 8
9 10
1
4 10
1 5
3 2
8 6
9 7
2 4
9 1
10 2
7 3
6 5
8
Pada Tabel 3.3., terdapat sepuluh barang yang akan disusun sesuai dengan daftar barang yang ada pada Tabel 3.2. dan dua kandidat solusi penyusunan. Pada
kandidat solusi 1, bilangan acak terkecil berada pada barang 4 sehingga urutan barang 4 adalah 1 yang merupakan awal dari urutan, dan dilanjutkan ke urutan berikutnya
sebanyak jumlah barang sehingga akan terbentuk satu kandidat solusi yang mewakilkan urutan masuk barang. Pada penerapannya dalam penyusunan barang,
urutan ini merupakan urutan penyusunan barang, yaitu dimulai dari barang yang mendapatkan urutan 1 yaitu barang ke-4, ke-10, dan seterusnya hingga barang terakhir
yang disusun adalah barang dengan urutan 10 yaitu barang ke-7. Adapun urutan penyusunan yang dimiliki kandidat solusi 1 adalah 4-10-1-5-3-2-8-6-9-7, sedangkan
urutan penyusunan yang dimiliki kandidat solusi 2 adalah 4-9-1-10-2-7-3-6-5-8.
Universitas Sumatera Utara
29
3.3.2. Penyusunan barang Setelah urutan masuk barang awal ditentukan, maka barang-barang akan disusun
berdasarkan urutan tersebut. Penyusunan barang pertama dimulai dari baris pertama ruang kiri, depan, dan bawah mobil box. Barang selanjutnya disusun di sebelah kanan
barang pertama sepanjang lebar mobil box. Jika barang selanjutnya tidak dapat disusun di sebelah kanan, maka penyusunan dilanjutkan ke atas barang sebelumnya
dan seterusnya sampai barang tidak dapat dimuat lagi ke atas. Kemudian penyusunan dilanjutkan ke baris kedua yaitu dimulai dari sebelah kiri tepat di belakang barang
pertama diletak. Lalu penyusunan dilanjutkan seperti pada baris pertama yaitu ke sebelah kanan lalu ke atasnya. Jika ruang sudah tidak dapat terisi lagi, maka
penyusunan untuk mobil tersebut akan berakhir. Pada tahap penyusunan barang ada langkah-langkah yang harus dilakukan yaitu penentuan barang yang dapat disusun dan
perhitungan nilai fitness.
Penentuan Barang yang Dapat Disusun Sebelum total volume barang yang berhasil disusun dihitung, terlebih dahulu harus
ditentukan barang-barang mana saja yang dapat disusun pada mobil box. Penentuan barang ini sangat ditentukan oleh urutan masuk barang yang dimiliki masing-masing
kandidat solusi. Pada setiap barang yang akan disusun berdasarkan urutannya, barang tersebut akan diperiksa untuk menentukan posisi barang pada mobil box. Bisa atau
tidaknya barang tersebut disusun ditentukan oleh nilai parameter yang dimiliki masing-masing barang. Ada batasan-batasan yang tidak boleh dilanggar oleh nilai
parameter suatu barang agar barang tersebut dapat disusun pada mobil box seperti batasan orientasi, beban maksimal mobil, kapasitas ruang mobil, serta stabilitas
muatan. Barang yang tidak melanggar batasan dan memenuhi setiap kondisi yang ada akan disusun pada mobil box. Adapun pseudocode proses penentuan barang yang
dapat disusun pada mobil box dapat dilihat pada Gambar 3.2.
Universitas Sumatera Utara
30
Gambar 3.2. Penentuan Penyusunan Barang
Proses penentuan barang yang dapat disusun pada mobil box sesuai dengan langkah-langkah pada Gambar 3.2. menggunakan parameter mobil pada Tabel 3.1.
dan parameter barang pada Tabel 3.2. berdasarkan urutan masuk barang yang terdapat pada Tabel 3.4. untuk kandidat solusi 1 dapat diilustrasikan sebagai berikut.
1. Simpan parameter mobil box yang digunakan, P = 100, L = 60, T = 50, W =
100. 2.
Barang diurutkan berdasarkan urutan masuk barang yang dimiliki kandidat solusi 1, yaitu 4-10-1-5-3-2-8-6-9-7.
Simpan data barang i, i=1,2,...,n Simpan parameter mobil panjang, lebar, tinggi, beban maksimum
While
i = n Simpan parameter barang i panjang, lebar, tinggi, berat, perotasian
If berat barang i + total berat barang tersusun = beban maksimum mobil
If barang i dapat dirotasi
Analisa setiap parameter barang i sebanyak enam variasi orientasi barang Simpan nilai dimensi 1, dimensi 2, dan dimensi 3 barang sesuai variasi
orientasi yang paling sesuai mengisi celah
Else
Tetapkan panjang barang sebagai dimensi 1, tinggi barang sebagai dimensi 2, dan lebar barang sebagai dimensi 3
If dimensi 1 barang i = lebar mobil dan dimensi 2 barang i = tinggi mobil
dan dimensi 3 barang i = panjang mobil
If dimensi 1 barang i = sisa lebar mobil
Susun barang i ke samping
Else if dimensi 2 barang i = sisa tinggi mobil
Susun barang i ke atas
Else if dimensi 3 barang i = sisa panjang mobil
Susun barang i ke belakang
Else Barang i tidak dapat disusun
Simpan koordinat posisi barang i Update sisa lebar, panjang, dan tinggi mobil
Update total berat barang tersusun
Else Barang i tidak dapat disusun
Ambil barang selanjutnya i = i+1
End While Penyusunan barang berakhir
Universitas Sumatera Utara
31
3. Simpan parameter barang urutan pertama, yaitu barang 4 p = 25, l = 25, t =
20, w = 6, rotasi = tidak. 4.
Periksa berat barang w = 6 apakah tidak melebihi batas beban maksimal mobil W=100. Jika melebihi, barang tidak dapat disusun.
5. Periksa perotasian barang. Untuk barang yang dapat dirotasi, analisa setiap
parameter barang dengan menukar nilai masing-masing dimensi barang sebanyak enam variasi orientasi untuk mencari orientasi mana yang paling
sesuai mengisi celah pada mobil box. Simpan nilai dimensi 1, dimensi 2, dan dimensi 3 barang. Untuk barang yang tidak dapat dirotasi, tetapkan panjang
barang sebagai dimensi 1, tinggi barang sebagai dimensi 2, dan lebar barang sebagai dimensi 3.
6. Periksa dimensi 1, dimensi 2, dan dimensi 3 barang p = 25, t = 20, l = 25
apakah tidak melebihi lebar, tinggi, dan panjang mobil L = 60, T = 50, P = 100. Jika melebihi, barang tidak dapat disusun.
7. Periksa masing-masing dimensi 1, dimensi 2, dan dimensi 3 barang dan
bandingkan dengan masing-masing sisa lebar, tinggi, dan panjang mobil. Jika dimensi 1 barang p = 25 lebih kecil dari sisa lebar mobil L = 60, maka
barang disusun ke samping. Jika dimensi 2 barang t = 20 lebih kecil dari sisa tinggi mobil T = 50, maka barang disusun ke atas. Jika dimensi 3 barang l =
25 lebih kecil dari sisa panjang mobil P = 100, maka barang disusun ke belakang. Jika kondisi tidak terpenuhi, maka barang tidak dapat disusun.
8. Simpan koordinat dan posisi barang cox
= 0, coy = 0, coz
= 0, px = 25 , py =
20, dan pz = 25.
9. Ubah sisa panjang, lebar, tinggi, dan beban maksimal mobil P = 100-25 = 75,
L = 60-25 = 35, T = 50-20 = 30, W = 100-6 = 94. 10.
Ulangi langkah 3 hingga 9 untuk semua barang berdasarkan urutan masuk barang.
11. Ulangi langkah 2 hingga 10 untuk semua kandidat solusi.
Barang-barang yang dapat dirotasi memiliki enam variasi orientasi peletakan barang pada mobil box. Pemilihan orientasi mana yang paling sesuai diterapkan untuk
barang tersebut ditentukan dengan membandingkan selisih celah yang dapat memuat
Universitas Sumatera Utara
32
dimensi barang tersebut. Sebagai contoh, kandidat solusi 2 memiliki urutan penyusunan yaitu 4-9-1-10-2-7-3-6-5-8. Barang 1 yang berada pada urutan ke-3
memiliki parameter panjang, tinggi, dan lebar berturut-turut adalah 40, 30, dan 30 serta memiliki sifat dapat dirotasi sehingga memiliki enam variasi orientasi seperti
yang ditunjukkan oleh Gambar 2.3. Perbedaan susunan barang pada urutan ke-3 untuk enam variasi orientasi yang dimiliki barang 1 dapat dilihat pada Gambar 3.3.
a b
c
d e
f
Gambar 3.3. Variasi Orientasi Susunan Barang a Variasi 1; b Variasi 2; c Variasi 3; d Variasi 4; e Variasi 5; f Variasi 6
Pada Gambar 3.3. dapat dilihat enam variasi susunan barang pada urutan ke-3. Pada variasi 1 dan 2, dimensi panjang barang ditetapkan sebagai dimensi 1 sehingga
menempati lebar mobil. Pada variasi 3 dan 4, dimensi panjang barang ditetapkan sebagai dimensi 2 sehingga menempati tinggi mobil. Pada variasi 5 dan 6, dimensi
panjang barang ditetapkan sebagai dimensi 3 sehingga menempati panjang mobil. Variasi 3 dan 4 tidak akan dipilih sebagai orientasi untuk barang 1 dikarenakan
batasan kapasitas ruang mobil box dilanggar, yaitu tinggi penyusunan barang melebihi tinggi mobil box. Adapun orientasi barang 1 yang akan dipilih di antara variasi 1, 2, 5,
dan 6 adalah variasi 1 atau 2. Hal ini dikarenakan nilai dimensi yang menempati panjang mobil pada variasi 1 dan 2, yaitu 30 cm, lebih mendekati nilai dimensi yang
menempati panjang mobil untuk barang di urutan sebelumnya barang 4, yaitu 25 cm, sehingga selisih nilai dimensi yang menempati panjang mobil sama dengan 5 cm.
Universitas Sumatera Utara
33
Sedangkan pada variasi 5 dan 6, selisih nilai dimensi yang menempati panjang mobil sama dengan 15 cm, dikarenakan nilai dimensi yang menempati panjang mobil pada
variasi tersebut adalah 40 cm. Pemilihan orientasi barang yang paling sesuai dengan membandingkan selisih nilai dimensi yang menempati panjang mobil ini dilakukan
agar celah yang tidak dapat terisi barang dapat diminimalkan.
Perhitungan Nilai Fitness Pada setiap langkah penyusunan barang, masing-masing kandidat solusi akan
dievaluasi dengan cara menghitung nilai fitness berdasarkan fungsi objektif yang diberikan, yaitu untuk memaksimalkan total volume barang yang dapat disusun pada
mobil box. Nilai fitness dari masing-masing kandidat solusi didapatkan dengan cara menghitung total volume barang yang berhasil disusun pada mobil box. Perhitungan
nilai fitness masing- masing solusi ditentukan berdasarkan barang-barang apa saja yang dapat disusun
sesuai urutan masuk barang. Urutan masuk tersebut dievaluasi apakah menghasilkan susunan yang optimal dengan cara menghitung total volume barang yang berhasil
disusun. Pada Tabel 3.4, dapat dilihat bahwa kandidat solusi 1 memiliki urutan
penyusunan dari peletakan barang pertama hingga terakhir yaitu barang 4-10-1-5-3-2- 8-6-9-7 dan kandidat solusi 2 memiliki urutan penyusunan 4-9-1-10-2-7-3-6-5-8.
Apabila urutan tersebut diterapkan pada penyusunan barang di mobil box dengan menggunakan data mobil box yang ada pada Tabel 3.1. sesuai dengan dimensi
masing-masing barang yang terdapat pada Tabel 3.2. serta memenuhi aturan dan batasan cara penyusunan barang yang sudah dijelaskan di langkah sebelumnya yaitu
langkah penentuan barang yang dapat disusun, maka hasil penyusunan yang didapatkan dari urutan kandidat solusi 1 adalah hanya dapat menyusun 7 barang saja
yaitu barang 1, 2, 3, 4, 5, 8, dan 10. Kandidat solusi 1 tidak dapat menyusun barang 6, 7 dan 9. Sedangkan kandidat solusi 2 dapat menyusun 9 barang yaitu barang 1, 2, 3, 4,
5, 6, 7, 9, dan 10 dan tidak dapat menyusun barang 8. Berdasarkan ukuran panjang,
lebar, dan tinggi masing-masing barang yang terdapat pada Tabel 3.2., maka apabila urutan masuk barang yang dihasilkan oleh kandidat solusi 1 diterapkan, nilai total
volume barang yang dapat disusun dan dihitung menggunakan Persamaan 2.1. dari kandidat solusi 1 adalah sebagai berikut.
Universitas Sumatera Utara
34
fx 1 = 4030301 + 3525301 + 3030301 + 2525201 +
4020101 + 4030300 + 2020300 + 2525251 + 3015200 + 2515151
= 36000 + 26250 + 27000 + 12500 + 8000 + 0 + 0 + 15625 + 0 + 5625
= 131000
Sedangkan total volume yang didapat jika urutan masuk barang yang dihasilkan oleh kandidat solusi 2 diterapkan adalah sebagai berikut.
fx 2 = 4030301 + 3525301 + 3030301 + 2525201 +
4020101 + 4030301 + 2020301 + 2525250 + 3015201 + 2515151
= 36000 + 26250 + 27000 + 12500 + 8000 + 36000 + 12000 + 0 + 9000 + 5625
= 172375
Dari dua perhitungan total volume di atas dapat dilihat bahwa nilai fitness yang dihasilkan oleh kandidat solusi 1 adalah 131000 sedangkan nilai fitness yang
dihasilkan oleh kandidat solusi 2 adalah 172375.
3.3.3. Optimalisasi Penyusunan Barang Menggunakan Algoritma Firefly Pada tahapan optimalisasi penyusunan barang, penerapan algoritma firefly digunakan
untuk mengoptimalkan susunan barang yang telah dihasilkan pada tahapan sebelumnya sehingga didapatkan solusi penyusunan yang lebih baik dibandingkan
susunan yang dihasilkan sebelumnya sesuai dengan batasan-batasan yang ada. Tahapan penerapan algoritma firefly dalam optimalisasi penyusunan barang dapat
dilihat pada flowchart di Gambar 3.4.
Universitas Sumatera Utara
35
Gambar 3.4. Tahapan Penerapan Algoritma Firefly
Adapun rincian langkah-langkah penerapan algoritma firefly dalam melakukan
optimalisasi penyusunan barang dapat dilihat pada Gambar 3.5.
Universitas Sumatera Utara
36
Gambar 3.5. Langkah-langkah Algoritma Firefly pada Optimalisasi
Penyusunan Barang
Adapun penjelasan dari Gambar 3.5. adalah sebagai berikut : Tahapan awal pada algoritma firefly adalah tahapan inisialisasi untuk
pembentukan populasi awal algoritma firefly. Pada tahapan ini parameter- parameter algoritma firefly ditentukan. Nilai posisi awal dari masing-masing
firefly juga akan ditentukan sesuai dengan bilangan acak yang dihasilkan pada tahapan sebelumnya sebanyak jumlah barang yang akan disusun dan kandidat
solusi yang diinginkan. Kemudian nilai intensitas cahaya masing-masing firefly akan ditentukan sesuai
dengan nilai fitness yang dihasilkan pada tahapan sebelumnya. Lalu, lakukan pencarian nilai fitness kedua yaitu pencarian total volume barang untuk
ketinggian 0-12 tinggi mobil. Inisialisasi jumlah populasi firefly n, jumlah generasi atau iterasi t, jumlah
barang d Inisialisasi parameter algoritma firefly
α,
o
,
Tentukan posisi awal masing-masing firefly x
i
i=1,2,..,n Tetapkan nilai fitness awal firefly fx sebagai intensitas cahaya firefly x I
x
Hitung nilai fitness 2 firefly fx
2
While kriteria berhenti belum terpenuhi
For i = 1 sampai i = n
For j = i+1 sampai j = n
If I
i
I
j
atau I
i
= I
j
dan fi
2
fj
2
Lakukan pergerakan firefly i mendekati firefly j
End if
Evaluasi solusi dengan melakukan penyusunan barang berdasarkan posisi baru firefly
Hitung nilai fitness firefly baru Tetapkan nilai fitness firefly baru sebagai nilai intensitas cahaya baru
masing-masing firefly
Hitung nilai fitness 2 firefly
End for j
End for i
Urutkan firefly dari tertinggi hingga terendah berdasarkan nilai I Tetapkan firefly dengan nilai I tertinggi sebagai firefly terbaik nbest
End While Tetapkan firefly terbaik nbest sebagai solusi penyusunan terbaik
Universitas Sumatera Utara
37
Pada tahapan pergerakan firefly, masing-masing firefly dibandingkan berdasarkan nilai intensitas cahayanya. Firefly yang memiliki intensitas cahaya
lebih kecil akan bergerak mendekati firefly yang memiliki intensitas cahaya lebih besar. Apabila terdapat firefly yang memiliki nilai intensitas cahaya
sama, maka bandingkan nilai fitness 2 masing-masing firefly. Firefly yang memiliki nilai fitness 2 lebih kecil akan bergerak mendekati firefly yang
memiliki nilai fitness 2 lebih besar. Dari proses pergerakan firefly tersebut akan didapatkan posisi baru bagi masing-masing firefly.
Solusi penyusunan akan dievaluasi sesuai dengan urutan masuk barang yang dihasilkan oleh posisi baru firefly dengan cara menyusun barang-barang
menggunakan urutan tersebut. Posisi baru masing-masing firefly ini akan menghasilkan solusi penyusunan yang baru juga sehingga nilai intensitas
cahaya dan nilai fitness 2 masing-masing firefly akan berubah dikarenakan berubahnya urutan masuk barang masing-masing firefly.
Firefly lalu diurutkan berdasarkan intensitas cahayanya. Firefly yang memiliki intensitas cahaya terbesar akan ditandai sebagai firefly terbaik pada iterasi ini
dan akan dipertahankan untuk iterasi berikutnya. Tahapan pergerakan firefly hingga pengurutan firefly akan terus diulang
sampai kriteria berhenti terpenuhi. Firefly terbaik dari seluruh iterasi akan diambil sebagai solusi penyusunan
terbaik.
Inisialisasi Populasi Firefly Tahapan inisialisasi populasi firefly dilakukan untuk membangkitkan populasi firefly.
Tahapan inisialisasi dimulai dengan menentukan nilai dari parameter-parameter algoritma firefly seperti jumlah populasi firefly n, jumlah generasi atau iterasi t,
konstanta alpha α, konstanta ketertarikan
o
, dan konstanta gamma . Setelah itu
dilanjutkan dengan menentukan banyaknya dimensi firefly yang akan digunakan sebagai posisi awal dari masing-masing firefly x
ij
. Terdapat dua dimensi yaitu dimensi i dan dimensi j. Banyaknya dimensi i ditentukan oleh banyaknya populasi
firefly yang merupakan jumlah kandidat solusi yang diinginkan sedangkan banyaknya dimensi j ditentukan oleh banyaknya barang yang akan disusun.
Universitas Sumatera Utara
38
Setelah banyaknya dimensi ditentukan, pembangkitan bilangan acak dilakukan untuk menentukan nilai posisi awal masing-masing firefly, kemudian diisikan ke
dalam matriks solusi
i
x
j
dimana dimensi i akan mewakilkan kandidat solusi dan dimensi j akan mewakilkan barang yang akan disusun. Setiap satu firefly i akan
memiliki nilai posisi sebanyak j. Sebagai contoh, jika ada dua firefly dengan jumlah
barang sebanyak sepuluh, maka akan ada dua puluh nilai posisi yang harus diisikan ke dalam matriks solusi. Adapun nilai posisi awal masing-masing firefly i x untuk setiap
barang j dapat dilihat pada Tabel 3.4.
Tabel 3.4. Nilai Posisi Awal Firefly f1 dan f2
Firefly i
Dimensi j
1 2
3 4
5 6
7 8
9 10
x
f1
0.100 0.194 0.179 0.002 0.168 0.555 0.857 0.221 0.693 0.066
x
f2
0.040 0.289 0.620 0.007 0.834 0.653 0.597 0.954 0.027 0.260
Penentuan Nilai Intensitas Cahaya Firefly Pada penelitian ini, nilai intensitas cahaya masing-masing firefly ditentukan oleh
fungsi objektif sesuai dengan Persamaan 2.5. yang dalam hal ini merupakan nilai fitness. Nilai intensitas cahaya awal firefly ditentukan berdasarkan nilai fitness yang
dihasilkan oleh masing-masing kandidat solusi pada tahapan perhitungan fitness sebelumnya. Nilai fitness yang dihasilkan masing-masing kandidat solusi akan
dijadikan nilai intensitas cahaya awal masing-masing firefly. Nilai intensitas cahaya awal untuk masing-masing firefly f1 dan f2 sesuai dengan perhitungan fitness pada
tahapan sebelumnya dapat dilihat pada Tabel 3.5.
Tabel 3.5. Nilai Intensitas Cahaya Awal Firefly f1 dan f2
Firefly Intensitas Cahaya I
Urutan Masuk Barang
f1 131000
4-10-1-5-3-2-8-6-9-7 f2
172375 4-9-1-10-2-7-3-6-5-8
Pada Tabel 3.5. dapat dilihat bahwa firefly f1 memiliki nilai intensitas cahaya yang sesuai dengan nilai fitness yang dihasilkan oleh kandidat solusi 1 pada tahapan
perhitungan total volume barang yang dapat disusun. Begitu juga dengan firefly f2
Universitas Sumatera Utara
39
yang memiliki nilai intensitas cahaya sesuai dengan nilai total volume barang yang dapat disusun oleh kandidat solusi 2.
Pergerakan Firefly Pada tahapan ini, solusi yang dihasilkan oleh masing-masing firefly pada tahap
sebelumnya akan dioptimalkan dengan cara mencari solusi lain sehingga diharapkan dapat menghasilkan solusi yang optimal. Pergerakan firefly terjadi apabila ada satu
firefly yang intensitas cahayanya lebih besar daripada intensitas cahaya firefly yang berada di sekitarnya.
Pada penentuan nilai intensitas cahaya firefly sebelumnya diketahui bahwa firefly f1 memiliki intensitas cahaya sebesar 131000 sedangkan firefly f2 memiliki
intensitas cahaya sebesar 172375. Dikarenakan intensitas cahaya firefly f2 lebih besar daripada intensitas cahaya firefly f1, maka firefly f1 akan bergerak mendekati firefly
f2. Perhitungan dari pergerakan firefly dilakukan sebanyak barang yang ada sehingga akan menghasilkan posisi baru bagi firefly f1. Sebelum posisi baru dari masing-
masing firefly untuk setiap dimensi j dihitung, jarak antara dua firefly harus dicari terlebih dahulu. Ilustrasi perhitungan jarak antar dua buah firefly f1 dan f2 dapat
dilihat pada Tabel 3.6.
Tabel 3.6. Perhitungan Jarak Dua Firefly
Firefly i
Dimensi j
1 2
3 4
5 6
7 8
9 10
x
f1
0.100 0.194 0.179 0.002 0.168 0.555 0.857 0.221 0.693 0.066
x
f2
0.040 0.289 0.620 0.007 0.834 0.653 0.597 0.954 0.027 0.260
x
f2
-x
f1 2
0.003 0.008 0.194 0.001 0.444 0.009 0.067 0.537 0.442 0.037
Jarak antar firefly dihitung dengan menjumlahkan selisih kuadrat dari posisi firefly f1 dengan firefly f2 sebanyak dimensi yang ada. Pada Tabel 3.6. dapat dilihat
hasil dari selisih kuadrat posisi firefly f1 dan f2 untuk masing-masing dimensi, kemudian hasil selisih kuadrat tersebut dijumlahkan dan dicari akarnya. Contoh
perhitungan jarak antar firefly f1 dan firefly f2 dengan menggunakan Persamaan 2.6.
adalah sebagai berikut:
Universitas Sumatera Utara
40
r
f1f2
= 0.003+0.008+0.194+0.001+0.444+0.009+0.067+0.537+
0.442+0.037 =
1.476 =
1.321
Setelah jarak antar firefly diperoleh, maka dilanjutkan dengan menggerakkan firefly f1 mendekati firefly f2 dengan cara mencari posisi baru bagi firefly f1. Posisi
awal dari firefly f1 x
f1
diubah menjadi posisi baru x
f1’
dikarenakan intensitas cahaya firefly f1 lebih kecil daripada intensitas cahaya firefly f2. Contoh perhitungan
pergerakan firefly f1 pada dimensi j=1 berdasarkan Persamaan 2.7 dengan nilai parameter α = 0.2,
o
= 0.3, = 0.15, dan bilangan acak yang dihasilkan rand =
0.802. adalah sebagai berikut:
x
f1’j=1
= 0.100 + 0.3 0.040
– 0.100 + 0.2 0.802 – 0.5 = 0.100 + 0.230 -0.06 + 0.064
= 0.146
Perhitungan tersebut dilanjutkan sebanyak dimensi j yang ada pada firefly f1. Adapun hasil perhitungan pergerakan firefly f1 untuk setiap dimensi j terdapat pada
Tabel 3.7.
Tabel 3.7. Posisi Baru Firefly f1
Firefly i
Dimensi j
1 2
3 4
5 6
7 8
9 10
x
f1
0.100 0.194 0.179 0.002 0.168 0.555 0.857 0.221 0.693 0.066
x
f2
0.040 0.289 0.620 0.007 0.834 0.653 0.597 0.954 0.027 0.260
x
f1’
0.146 0.179 0.330 0.001 0.363 0.617 0.747 0.338 0.588 0.206
Pada Tabel 3.7., nilai x
f1’
merupakan posisi baru dari firefly f1 dan akan dijadikan posisi awal untuk proses selanjutnya. Perhitungan pergerakan firefly akan
dilanjutkan sampai semua firefly pada dimensi i selesai dibandingkan intensitas cahayanya sehingga masing-masing firefly akan menghasilkan posisi baru kecuali
firefly dengan intensitas cahaya terbesar.
Universitas Sumatera Utara
41
Evaluasi Solusi Baru Posisi baru yang dihasilkan pada proses pergerakan firefly sebelumnya akan dijadikan
sebagai urutan masuk barang yang baru bagi masing-masing firefly. Nilai posisi masing-masing firefly untuk setiap dimensi j akan diurutkan dari terkecil hingga
terbesar sama seperti pengurutan bilangan acak yang dibangkitkan pada tahapan inisialisasi sebelumnya. Nilai posisi baru yang diurutkan tersebut akan dijadikan
urutan masuk barang baru masing-masing firefly. Adapun urutan masuk barang yang baru setelah firefly mengalami pergerakan dapat dilihat pada Tabel 3.8.
Tabel 3.8. Urutan Masuk Barang Baru Firefly f1 dan f2
Firefly i
Barang j
1 2
3 4
5 6
7 8
9 10
f1 0.146 0.179 0.330 0.001 0.363 0.617 0.747 0.338 0.588 0.206
Urutan 2
3 5
1 7
9 10
6 8
4 f2
0.393 0.249 0.672 0.368 0.492 0.876 0.317 0.813 0.361 0.493
Urutan 5
1 8
4 6
10 2
9 3
7
Pada Tabel 3.8. dapat dilihat bahwa urutan masuk barang yang dimiliki oleh firefly f1 mengalami perubahan dari urutan masuk barang sebelumnya yang semula
urutannya 4-10-1-5-3-2-8-6-9-7 berubah menjadi 4-1-2-10-3-8-5-9-6-7. Hal ini disebabkan oleh berubahnya nilai posisi yang dimiliki oleh firefly f1. Sedangkan
urutan masuk barang yang dimiliki oleh firefly f2 tidak berubah karena nilai posisi firefly f2 tidak mengalami perubahan firefly f2 tidak mengalami pergerakan yaitu
tetap dengan urutan 4-9-1-10-2-7-3-6-5-8. Setelah urutan baru masing-masing firefly didapat, maka proses selanjutnya
adalah mengevaluasi intensitas cahaya yang dihasilkan oleh urutan baru masing- masing firefly tersebut. Urutan-urutan tersebut akan dievaluasi dengan cara melakukan
langkah-langkah yang ada pada tahapan penyusunan barang sebelumnya, yaitu langkah penentuan barang yang dapat disusun dan perhitungan nilai fitness. Nilai
fitness yang dihasilkan oleh urutan masuk barang yang baru tersebut akan digunakan sebagai nilai intensitas cahaya firefly yang baru. Jika urutan masuk barang yang
terdapat pada Tabel 3.8. diterapkan sesuai dengan prosedur yang ada pada tahapan perhitungan nilai fitness sebelumnya, maka firefly f1 dengan urutan masuk barang
Universitas Sumatera Utara
42
baru 4-1-2-10-3-8-5-9-6-7 dapat menyusun semua barang yang berjumlah sepuluh barang. Nilai fitness tersebut ditetapkan sebagai intensitas cahaya baru untuk masing-
masing firefly. Adapun nilai intensitas cahaya baru masing-masing firefly f1 dan dapat dilihat pada Tabel 3.9.
Tabel 3.9. Perubahan Nilai Intensitas Cahaya Firefly Setelah
Mengalami Pergerakan Firefly
Solusi Intensitas
Cahaya I Awal
Urutan Masuk Barang
Awal Intensitas
Cahaya I Baru
Urutan Masuk Barang
Baru
f1 131000
4-10-1-5-3-2-8-6-9-7 188000
4-1-2-10-3-8-5-9-6-7 f2
172375 4-9-1-10-2-7-3-6-5-8
172375 4-9-1-10-2-7-3-6-5-8
Pada Tabel 3.9. dapat dilihat bahwa nilai intensitas cahaya firefly f1 mengalami perubahan dari sebelumnya 131000 meningkat menjadi 188000. Hal ini
disebabkan oleh perubahan urutan yang dimiliki firefly f1. Perubahan urutan masuk barang tersebut dapat menghasilkan nilai intensitas cahaya yang berbeda dari
sebelumnya. Sedangkan nilai intensitas cahaya firefly f2 tidak mengalami perubahan yaitu tetap bernilai 172375 dikarenakan tidak berubahnya urutan masuk barang firefly
f2. Peningkatan nilai intensitas cahaya yang dialami oleh firefly f1 disebabkan
oleh pergerakan yang dilakukan oleh firefly f1 mendekati firefly f2 sehingga nilai intensitas cahaya baru yang dihasilkan oleh firefly f1 akan mendekati nilai intensitas
cahaya firefly f2.
Pengurutan Firefly Setelah solusi baru dari masing-masing firefly sudah dievaluasi, maka firefly akan
diurutkan dari yang memiliki intensitas cahaya terbesar hingga terkecil. Firefly yang memiliki nilai intensitas cahaya terbesar akan ditandai sebagai firefly dengan solusi
terbaik pada iterasi ini dan intensitas cahaya yang dimiliki firefly terbaik ditandai sebagai intensitas cahaya terbaik pada iterasi ini. Pada Tabel 3.10. dapat dilihat bahwa
nilai intensitas cahaya baru yang dimiliki oleh firefly f1 lebih besar daripada firefly f2.
Universitas Sumatera Utara
43
Oleh karena itu firefly f1 akan ditandai sebagai firefly terbaik pada iterasi ini dengan nilai fitness 188000.
Setelah firefly diurutkan berdasarkan intensitas cahaya, maka proses untuk iterasi ini telah selesai. Apabila iterasi maksimum belum tercapai, maka proses akan
dilanjutkan pada iterasi berikutnya, yaitu dimulai lagi dari pergerakan firefly. Proses pergerakan firefly hingga pengurutan firefly akan dilakukan sebanyak iterasi yang ada.
Kriteria Berhenti Pada optimalisasi penyusunan barang menggunakan algoritma firefly, kriteria berhenti
digunakan untuk
menentukan kondisi
berhenti algoritma
firefly dalam
mengoptimalkan penyusunan barang. Algoritma firefly akan berhenti melakukan optimalisasi apabila kriteria berhenti sudah terpenuhi. Pada penelitian ini, kriteria
berhenti yang digunakan adalah ruang mobil box terisi 100, tidak ada lagi barang tersisa untuk disusun, dan jumlah generasi yang telah ditentukan pada tahap
inisialisasi populasi firefly.
Solusi Penyusunan Terbaik Setelah tahapan sebelumnya kriteria berhenti sudah terpenuhi, maka dipilih firefly
terbaik yaitu firefly yang memiliki nilai intensitas cahaya terbesar dari seluruh iterasi yang ada. Firefly tersebut akan dianggap sebagai firefly yang memiliki solusi terbaik.
Pada contoh kasus sebelumnya, diasumsikan jumlah iterasi adalah satu, sehingga firefly f1 yang memiliki nilai intensitas cahaya terbesar dianggap sebagai firefly
terbaik. Oleh karena itu, susunan barang yang dianggap sebagai susunan optimal adalah susunan dengan urutan masuk barang yang dimiliki oleh firefly f1 yaitu 4-1-2-
10-3-8-5-9-6-7. Adapun hasil dari proses optimalisasi yang merupakan posisi susunan
barang yang didapatkan dari urutan tersebut jika batas iterasi adalah satu dapat dilihat
pada Tabel 3.10.
Universitas Sumatera Utara
44
Tabel 3.10. Posisi Akhir Barang Solusi Terbaik = Firefly f1
Urutan Barang P
T L
B Rot Cox Coy Coz
Px Py
Pz
1 4
25 20
25 6
T 25
20 25
2 1
40 30
30 7
Y 25
30 40
30 3
2 35
30 25
5 Y
20 25
30 35
4 10
25 15
15 5
T 35
25 15
15 5
3 30
30 30
7 Y
25 35
30 30
30 6
8 25
25 25
7 Y
15 35
25 25
25 7
5 40
10 20
5 T
40 35
40 10
20 8
9 30
20 15
5 T
65 30
20 15
9 6
40 30
30 8
Y 30
65 30
40 30
10 7
20 30
20 8
Y 10
20 65
20 20
30
Pada Tabel 3.10. dapat dilihat urutan beserta posisi akhir barang setelah dilakukan optimalisasi penyusunan barang. Kolom P, T, L, dan M masing-masing
mewakili panjang, tinggi, lebar, dan berat barang. Kolom Rot mewakili perotasian barang, bernilai Y untuk barang yang bisa dirotasi dan bernilai T untuk barang yang
tidak dapat dirotasi. Kolom cox, coy, dan coz masing-masing mewakili koordinat awal posisi peletakan barang sejajar sumbu x, sumbu y, dan sumbu z. Sedangkan kolom px,
py, dan pz masing-masing mewakili orientasi posisi barang sejajar sumbu x, sumbu y, sumbu z. Barang urutan 1 hingga 10 memiliki nilai cox sampai pz. Hal ini
menunjukkan bahwa barang urutan 1 hingga 10 dapat disusun pada mobil box. Hasil penyusunan barang pada Tabel 3.10. juga tidak melanggar batasan-
batasan yang ada seperti batasan orientasi barang, beban maksimal mobil, dan kapasitas ruang mobil box. Batasan orientasi barang tidak dilanggar dikarenakan tidak
adanya pertukaran dimensi untuk barang yang memiliki nilai Rot = T, seperti barang 4, 5, 9, dan 10. Nilai Px, Py, dan Pz untuk barang-barang tersebut sama dengan nilai
P, T, dan L. Hal ini menunjukkan bahwa barang tersebut tidak mengalami perotasian sehingga tidak terjadinya pergantian dimensi. Sedangkan barang yang memiliki nilai
Rot = Y, seperti barang 1, mengalami pergantian dimensi. Nilai Px yang dimiliki barang 1 yaitu 30 tidak sama dengan nilai P barang tersebut yaitu 40. Hal ini
menunjukkan bahwa adanya perotasian barang yang dialami barang 1.
Universitas Sumatera Utara
45
Batasan beban maksimal mobil tidak dilanggar dikarenakan jumlah berat barang pada Tabel 3.11. adalah 63 yang mana jumlah berat barang tersebut lebih kecil
dari beban maksimal mobil yang terdapat pada Tabel 3.1. yaitu 100. Batasan kapasitas ruang mobil juga tidak dilanggar. Hal tersebut ditunjukkan dengan tidak adanya nilai
P, T, atau L yang dimiliki barang-barang pada Tabel 3.10. yang melebihi masing- masing nilai panjang, tinggi, dan lebar mobil box pada Tabel 3.1.
3.4. Perancangan Sistem
3.4.1. Use case diagram Use case diagram merupakan sebuah model yang menggambarkan kebutuhan sistem
dan fungsionalitas yang diharapkan dari suatu sistem dari sudut pandang pengguna sistem. Use case dibuat untuk memudahkan pengguna atau pembaca dalam mengerti
alur kerja suatu sistem sehingga sistem dapat digunakan sebaik mungkin. Adapun aktor yang berperan pada sistem yang dibangun ini satu orang aktor yaitu user
aplikasi yang akan menggunakan sistem untuk melakukan optimalisasi penyusunan barang pada mobil box. Rancangan use case sistem dapat dilihat pada Gambar 3.6.
Gambar 3.6. Sistem Penyusunan Barang
Universitas Sumatera Utara
46
Adapun penjelasan mengenai kegiatan-kegiatan di dalam diagram use case sistem penyusunan barang tersebut dapat dilihat pada Tabel 3.11.
Tabel 3.12. Deskripsi Use Case Sistem Penyusunan Barang
No Use Case
Deskripsi
1 Login
Proses yang harus dilalui user untuk masuk ke dalam sistem.
2 Logout
Proses untuk keluar dari sistem dan hanya bisa dilakukan apabila user telah login.
3 Lihat Data Barang Menampilkan daftar barang yang ada pada database
perusahaan serta informasi-informasi mengenai barang tersebut.
4 Lihat Data Mobil
Box Menampilkan daftar mobil box yang ada pada
database perusahaan serta informasi-informasi mengenai barang tersebut.
5 Lihat Data
Pengiriman Menampilkan detail data pengiriman sesuai dengan
kode pengiriman seperti tanggal pengiriman, mobil yang digunakan, serta daftar barang yang akan
dikirim. 6
Tambah, Edit, Hapus
Proses untuk menambah, mengedit, atapun menghapus data seperti data barang, data mobil box,
dan data pengiriman. Proses ini hanya dapat dilakukan apabila user telah menampilkan masing-
masing data tersebut. 7
Susun Barang Proses untuk mengoptimalkan penyusunan barang-
barang yang telah tersimpan pada data pengiriman ke dalam mobil box yang digunakan. Jika proses ini
dilakukan maka user juga pasti bisa melihat posisi masing-masing barang yang telah disusun.
8 Lihat Posisi
Barang Setelah Disusun
Menampilkan posisi barang yang telah tersusun pada mobil box dan otomatis dilakukan jika proses susun
barang telah delakukan.
Universitas Sumatera Utara
47
Tabel 3.12. Deskripsi Use Case Sistem Penyusunan Barang lanjutan
No Use Case
Deskripsi
9 Lihat Gambar
Barang Menampilkan visualisasi 3 dimensi susunan barang-
barang pada mobil box dan hanya bisa dilakukan jika user telah melakukan proses susun barang.
10 Print
Proses untuk mencetak laporan hasil penyusunan barang yang berisi posisi barang pada mobil box dan
dapat dilakukan apabila user dapat melakukan proses lihat posisi susunan barang.
3.4.2. Proses user Proses user merupakan tahapan atau alur yang akan dilakukan user untuk
menggunakan aplikasi penyusunan barang pada mobil box ini. Adapun flowchart tahapan yang dilakukan user pada sistem dapat dilihat pada Gambar 3.7.
Gambar 3.7. User
Universitas Sumatera Utara
48
Adapun penjelasan dari Gambar 3.7. adalah sebagai berikut : User membuka aplikasi dan masuk ke halaman login.
Pada halaman login user mengisikan username dan password. Jika
username dan password sesuai, maka user dapat masuk ke halaman utama untuk dapat mengakses sistem. Jika tidak, user diminta untuk mengisikan
username dan password yang sesuai. Untuk melakukan proses optimalisasi penyusunan barang, user harus
memilih menu optimalisasi. User diminta memilih jenis mobil box yang akan digunakan serta barang-
barang apa saja yang akan disusun pada mobil box tersebut. Setelah itu, user menekan tombol inisialisasi dan optimalisasi agar sistem
dapat melakukan proses optimalisasi penyusunan. Sistem akan menampilkan output yang berupa hasil optimalisasi
penyusunan yaitu volume ruang yang terpakai, barang-barang apa saja yang dapat disusun di dalam mobil, serta ururan, dan posisi atau koordinat
barang pada mobil box. User juga dapat memilih untuk mencetak laporan hasil penyusunan barang
dan menampilkan visualisasi tiga dimensi gambar akhir barang yang telah tersusun.
3.4.3. Perancangan database Perancangan database pada sistem ini digunakan untuk menyimpan informasi-
informasi yang berkaitan dengan proses penyusunan barang. Penjelasan mengenai tabel-tabel pada database yang dirancang adalah sebagai berikut :
1. Tabel tbl_user, berfungsi sebagai tempat penyimpan data-data yang
berhubungan dengan proses login seorang user. 2.
Tabel tbl_barang, berfungsi sebagai tempat penyimpanan daftar barang yang akan disusun pada mobil box serta informasi yang berkaitan dengan barang
tersebut. 3.
Tabel tbl_mbl, berfungsi sebagai tempat penyimpanan daftar mobil box yang akan digunakan untuk menampung barang serta informasi yang berkaitan
dengan mobil tersebut.
Universitas Sumatera Utara
49
4. Tabel tbl_pengiriman, berfungsi sebagai tempat penyimpanan informasi
mengenai pengiriman yang akan dilakukan perusahaan seperti tanggal pengiriman dan mobil box yang digunakan.
5. Tabel tbl_pengiriman_detail, berfungsi sebagai tempat penyimpanan detail
informasi pengiriman barang-barang apa saja yang akan dikirim pada pengiriman tersebut.
6. Tabel tbl_hasil_penyusunan, berfungsi sebagai tempat penyimpanan sementara
hasil penyusunan barang pada mobil box di dalam suatu pengiriman. 7.
Tabel tbl_detail_optimalisasi, berfungsi sebagai tempat penyimpanan sementara detail nilai fitness setiap generasi yang dihasilkan algoritma firefly.
Adapun database relationship dari database yang dirancang untuk sistem optimalisasi penyusunan barang ini dapat dilihat pada Gambar 3.8.
Gambar 3.8. Database Relationship
Universitas Sumatera Utara
50
3.4.4. Rancangan tampilan antarmuka Tampilan antarmuka merupakan sebuah desain awal dari antarmuka sistem yang akan
dibangun.
Rancangan Halaman Login Pada halaman login, user harus melakukan proses login dengan mengisikan username
dan password yang sesuai lalu menekan tombol “login” untuk menggunakan sistem.
Rancangan halaman login dapat dilihat pada Gambar 3.9.
Gambar 3.9. Rancangan Halaman Login
Rancangan Halaman Utama Setelah user berhasil login, maka user akan masuk ke halaman utama. Pada halaman
utama ini terdapat menu-menu yaitu menu master dan menu optimalisasi yang dapat diakses oleh user untuk menggunakan sistem. Pada halaman ini juga terdapat nama
aplikasi dan logo perusahaan. Rancangan halaman utama dapat dilihat pada Gambar 3.10.
Universitas Sumatera Utara
51
Gambar 3.10. Rancangan Halaman Utama
Keterangan : a.
Menu ”Master” memungkinkan user untuk masuk ke halaman master yang berisi data barang dan data mobil box.
b. Menu “Proses” memungkinkan user untuk masuk ke halaman optimalisasi
untuk melakukan proses penyusunan barang. c.
Tombol “Logout” memungkinkan user untuk keluar dari aplikasi dan kembali ke halaman login.
Rancangan Halaman Master Halaman master akan muncul apabila user memilih menu master pada halaman utama.
Di halaman ini user dapat melihat, menambah, mengedit, serta menghapus data-data barang dan mobil box yang ada di perusahaan. Rancangan halaman master dapat
dilihat pada Gambar 3.11.
Universitas Sumatera Utara
52
Gambar 3.11. Rancangan Halaman Master
Keterangan: a.
Form informasi barang memungkinkan user untuk menambahkan, mengedit, serta menghapus data barang.
b. Form informasi mobil memungkinkan user untuk menambahkan, mengedit,
serta menghapus data mobil box. c.
Tabel “Daftar Barang” memungkinkan user untuk melihat semua data-data barang yang telah tersimpan di sistem.
d. Tabel “Daftar Mobil Box” memungkinkan user untuk melihat semua data-data
mobil box yang telah tersimpan di sistem.
Rancangan Halaman Optimalisasi Halaman optimalisasi akan muncul apabila user memilih menu optimalisasi pada
halaman utama. Di halaman ini, user dapat melakukan proses optimalisasi penyusunan barang untuk mengetahui susunan barang akhir yang akan diterapkan. Rancangan
halaman optimalisasi dapat dilihat pada Gambar 3.12.
Universitas Sumatera Utara
53
Gambar 3.12. Rancangan Halaman Optimalisasi
Keterangan: a.
Form detail pengiriman memungkinkan user untuk menambahkan atau mengedit detail data pengiriman, seperti mobil box yang digunakan dan
barang-barang yang akan dikirim. b.
Form kode pengiriman memungkinkan user untuk memilih data pengiriman yang sudah pernah tersimpan sebelumnya sesuai dengan kode pengiriman
yang dipilih, lalu dapat menampilkan detailnya pada form detail pengiriman atau menghapus data pengiriman tersebut.
c. Tabel “Daftar Barang” memungkinkan user untuk melihat semua data-data
barang yang telah ditambahkan ke data pengiriman. d.
Tombol ”reset” memungkinkan user untuk menghapus semua data barang yang telah tersimpan di data pengiriman.
e. Tombol “inisialisasi” memungkin user untuk melihat susunan awal
penyusunan barang secara acak sesuai dengan data pengiriman yang telah diinputkan.
Universitas Sumatera Utara
54
f. Tombol “optimalisasi” memungkinkan user untuk memulai proses
optimalisasi penyusunan barang sesuai dengan data pengiriman yang telah diinputkan.
g. Form hasil optimalisasi memungkinkan user untuk melihat hasil optimalisasi
dari penyusunan barang yang telah dilakukan menggunakan algoritma firefly. h.
Tabel “posisi barang” memungkinkan user untuk melihat daftar barang yang berhasil disusun pada mobil box beserta urutan dan koordinat posisinya pada
mobil. i.
Tombol “detail optimalisasi” memungkinkan user masuk ke halaman detail optimalisasi untuk melihat detail nilai fitness yang dihasilkan setiap generasi
algoritma firefly. j.
Tombol “visualisasi” memungkinkan user masuk ke halaman visualisasi untuk melihat visualisasi tiga dimensi susunan barang akhir pada mobil box.
k. Tombol “print” memungkinkan user masuk ke halaman laporan untuk
mencetak laporan hasil penyusunan barang beserta posisi barang yang dapat disusun pada mobil box.
l. Tabel “sisa barang” memungkinkan user untuk melihat daftar barang yang
tidak berhasil disusun pada mobil box.
Universitas Sumatera Utara
BAB 4 IMPLEMENTASI DAN PENGUJIAN
Bab ini membahas hasil yang didapatkan dari implementasi algoritma Firefly dalam mengoptimalkan penyusunan barang pada mobil box dan pengujian sistem sesuai
dengan analisis dan perancangan yang telah dibahas pada Bab 3.
4.1. Implementasi Sistem
Pada tahap implementasi sistem, algoritma firefly akan diimplementasikan ke dalam sistem menggunakan bahasa pemrograman Java sesuai dengan perancangan yang
telah dilakukan.
4.1.1. Spesifikasi perangkat keras dan perangkat lunak yang digunakan Spesifikasi perangkat keras dan perangkat lunak yang digunakan pada pembangunan
sistem adalah sebagai berikut. 1.
Processor Intel Core i3-3217U CPU 1.80GHz. 2.
Sistem Operasi Windows 7 Ultimate 64-bit. 3.
Memory 4.00 GB RAM DDR3. 4.
Kapasitas harddisk 500GB. 5.
Netbeans IDE 7.4. 6.
XAMPP versi 1.8.1. 7.
JAVA 3D API versi 1.5.1.
4.1.2. Implementasi perancangan antarmuka Adapun implementasi perancangan antarmuka pada sistem yang telah dibangun
adalah sebagai berikut.
Universitas Sumatera Utara