Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer Vol. 1, No. 12, Desember 2017, hlm. 1668-1677
e-ISSN: 2548-964X http://j-ptiik.ub.ac.id
Optimasi Kebutuhan Gizi untuk Balita Menggunakan Hybrid Algoritma Genetika dan Simulated Annealing Fitri Anggarsari1, Wayan Firdaus Mahmudy2, Candra Dewi3 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email:
[email protected],
[email protected],
[email protected] Abstrak Keadaan gizi seseorang pada dasarnya dipengaruhi oleh perilaku pola makan sehingga kuantitas dan kualitas makanan dan minuman yang dikonsumsi memberikan dampak pada kesehatan. Gizi yang seimbang memiliki peran penting pada pertumbuhan, perkembangan fisik, dan kecerdasan bagi semua kalangan baik itu balita, anak-anak, maupun orang dewasa. Gizi pada balita harus diperhatikan karena pada saat itu terjadi masa pertumbuhan serta perkembangan pada fisik yang tinggi dan rawan terjadi hal yang buruk seperti infeksi yang menyebabkan penyakit kronis, obesitas dan bahkan kematian. Pada penelitian ini mengimplementasikan hybrid algoritma genetika dan simulated annealing untuk mengoptimasi kebutuhan gizi pada komposisi bahan makanan untuk balita. Representasi kromosom yang digunakan ada dua segmen, segmen pertama menggunakan bilangan integer dan segmen kedua menggunakan bilangan real code. Untuk proses reproduksi menggunakan metode extended intermediate crossover dan metode random mutation. Hasil pengujian menghasilkan nilai fitness sebesar 0.10106 dengan parameter ukuran populasi = 100, generasi = 50, kombinasi Cr dan Mr = 0.8 dan 0.3, nilai alpha = 0.8, nilai T0 = 2 dan Tn = 0.2. Hasil dari penelitian ini berupa rekomendasi bahan makanan sesuai kebutuhan gizi yang mendekati kebutuhan gizi balita yang sebenarnya dengan mempertimbangkan berat bahan makanan dan harga yang minimal dalam satu hari. Kata kunci: hybrid, algoritma genetika, simulated annealing, optimasi, kebutuhan gizi, balita. Abstract The nutritional state of a person is basically influenced by dietary behavior so that the quantity and quality of the food and beverages consumed has an impact on a person health. Balanced nutrition plays an important role in the growth, physical development, and intelligence of all people, including toddlers, children, and adults. Nutrition in toddlers should be considered because at that time they growth and develope so rapid and prone to occur bad things such as infections that can cause chronic illness, obesity and even death. In this research, we implement hybrid genetic algorithm and simulated annealing to know optimize nutrition requirement on food composition for toddlers. There are two segments of the chromosomal representation that is used in this research, the first segment uses the integer number and the second segment uses the real code number. We use extended intermediate crossover method and random mutation method for the reproduction process. The test resulted in the highest average fitness value of 0.10106 with the best parameters are population = 100, generations = 50, combination between Cr and Mr = 0.8 and 0.3, value of alpha = 0.8, value of T0 = 2 and value of Tn = 0.2. The results of this study is recommendations of foodstuffs according to the nutritional needs that approached the actual needs of the toddlers by considering the weight of food and the minimum price in one day. Keywords: hybrid, genetic algorithm, simulated annealing, optimization, nutritional needs, toddlers. sehingga akan memberikan dampak pada tingkat kesehatan seseorang. Maka dari itu, untuk meningkatkan kesehatan seseorang maka harus menjaga kualitas dan kuantitas makanan yang dikonsumsi agar dapat mengarahkan pada gizi yang seimbang. Gizi yang seimbang
1. PENDAHULUAN Pada dasarnya keadaan gizi seseorang dipengaruhi oleh perilaku pola makan. Dimana hal tersebut dikarenakan adanya kuantitas dan kualitas makanan minuman yang dikonsumsi Fakultas Ilmu Komputer Universitas Brawijaya
1668
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
memiliki peran penting khususnya pada pertumbuhan, perkembangan fisik dan kecerdasan seseorang. Kondisi tersebut juga berlaku pada seluruh umur baik pada bayi, anak-anak, dewasa dan lansia (Kemkes, 2014). Gizi pada bayi atau balita dapat dikatakan suatu yang harus dijaga karena pada saat itu terjadi suatu pertumbuhan serta perkembangan pada fisik yang tinggi dan rawan terjadi hal yang buruk. Balita dengan gizi yang tidak seimbang dikhawatirkan mudah mengalami penyakit infeksi yang dapat berujung pada penyakit kronis dan kematian (Kemkes, 2014). Gizi tidak seimbang bukan hanya membuat pertumbuhan bayi menjadi terhambat dan menurunkan berat badan, akan tetapi juga dapat mengakibatkan obesitas karena mengalami kelebihan gizi. Pihak orang tua maupun pegawai pelayanan kesehataan masyarakat harus memperhatikan makanan dan mengontrol tumbuh kembang pada balita secara teratur, mulai dari menjaga pola makan dengan cara mengatur komposisi makanan yang berpengaruh pada keadaan gizi balita. Dimana dalam mengatur komposisi makanan yang diberikan oleh balita tentu harus memiliki kandungan gizi yang lengkap dan baik untuk tumbuh kembang balita tersebut, seperti memberikan makanan yang mengandung karbohidrat, protein hewani, protein nabati dan lemak. Selain hal itu pemberian ASI Eksklusif perlu diperhatikan terutama pada balita umur 06 bulan (Kemkes, 2014). Kondisi tersebut sering dianggap tidak begitu penting bagi sebagaian orang tua dan kurangnya pemahaman mengenai resiko yang ditimbulkan akibat kebutuhan gizi balita yang tidak seimbang. Bahkan menurut data Riskesdas 2007, 2010, 2013 menunjukkan bahwa Indonesia memiliki balita dengan resiko menderita obesitas pada balita cukup tinggi yakni sebesar 12,2% (Kemkes, 2014). Dengan kondisi diatas diperlukan sebuah penelitian untuk melakukan optimasi gizi pada komposisi makanan untuk balita. Untuk melakukan penelitian ini dapat menggunakan berbagai metode untuk melakukan optimasi, yakni swarm intelligence dan algoritma genetika. Dengan metode swarm intelligence dapat memecahkan permasalahan yang berkaitan dengan optimasi dalam mencari solusi (Mansura, Prahasto dan Farikhin, 2014). Sedangkan algoritma genetika adalah algoritma pencarian solusi yang mampu menyelesaikan Fakultas Ilmu Komputer, Universitas Brawijaya
1669
suatu masalah yang cukup kompleks (Mahmudy, 2015). Akan tetapi, algoritma genetika memiliki berbagai kelemahan salah satunya adalah sering mengalami konvergensi dini sehingga untuk mengatasinya perlu dikombinasikan dengan metode-metode seperti algoritma particle swarm optimization, simulated annealing, local search, variable neighbourhoods search (VNS) dan metodemetode lainnya (Mahmudy, 2015). Beberapa penelitian pernah dilakukan dengan menggunakan metode algoritma genetika, seperti yang dilakukan oleh Suprayogi dan Mahmudy (2015) yang menerapkan algoritma genetika untuk menyelesaikan permasalahan pencarian rute terpendek dengan menggunakan vahicle routing problem with time windows (VRPTW). Selanjutnya penerapan algoritma genetika terkait permasalahan gizi juga pernah dilakukan untuk menyelesaikan permasalahan optimasi biaya untuk pemenuhan gizi dan nutrisi pada umur lanjut (Suci, Mahmudy, Putri, 2015). Untuk metode algoritma simulated annealing sudah diimplementasikan pada sebuah kasus untuk melakukan penjadwalan produksi rokok. Pada penelitian tersebut menggunakan sebuah aturan Earliest Due Date (EDD) sebagai jadwal inisiasi dalam meminimasi nilai Max. Tardiness. Dari hasil penelitian tersebut didapatkan bahwa algoritma simulaed annealing dapat menghasilkan jadwal yang lebih efisien dari jadwal yang ada sebelumnya digunakan (Azmi, Sugiono, Tantrika, 2015). Selanjutnya penelitian dengan menggunakan algoritma simulated annealing juga dilakukan untuk menyelesaikan permasalahan diagnosis kanker. Pada penelitian tersebut algoritma simulated annealing dikombinasikan dengan fuzzy clustering yang menghasilkan sebuah kesimpulan bahwa penggunaan algoritma tersebut dapat mencari solusi dan menghasilkan cluster yang lebih baik (Wang, Garibaldi, 2005). Selain itu, penelitian dengan menggunakan algoritma simulated annealing juga pernah dilakukan oleh Mahmudy (2014) yang menerapkan untuk mengoptimasi dengan VRPTW. Dalam penelitian tersebut, simulated annealing terbukti dapat menemukan sebuah solusi yang baik dalam waktu singkat. Dari uraian sebelumnya mengenai definisi metode-metode dan penelitan yang telah ada, maka metode yang dirasa cukup baik untuk menyelesaikan permasalahan untuk
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
mengoptimasi gizi pada komposisi makanan untuk balita adalah dengan menggunakan metode hybrid algoritma genetika dengan simulated annealing. Dengan melakukan hibridisasi maka dapat menyeimbangkan kemampuan algoritma genetika dalam mengeksplorasi ruang lingkup dan mengeksploitasi daerah lokal pada saat melakukan pencarian solusi, sehingga dapat menghasilkan solusi yang lebih baik (Mahmudy, Marian, & Luong, 2013). Algoritma genetika memiliki beberapa struktur dan operator yang cukup kompleks untuk mendukung permasalahan tersebut, sedangkan simulated annealing dapat membantu menutupi kekurangan dari algoritma genetika dalam hal mencari sebuah solusi di daerah optimum lokal. Diharapkan dengan menggunakan metode hybrid algoritma genetika dengan simulated annealing dapat mengetahui kandungan berat makanan yang dianjurkan dan mengandung kandungan gizi yang seimbang, seperti karbohidrat, protein, dan lemak.
TEE = (88.5 – (61.9 x U) + PA x (26.7 x BB + 903 x TB)) + 20 Kal (3) Balita dengan umur 36 bulan keatas dan berjenis kelamin perempuan TEE = (135.3 – (30.8 x U) + PA x (10 x BB + 934 x TB)) + 20 Kal (4) Keterangan TEE
= Total Energy Expenditure (Kal)
BB
= Berat badan (Kg)
TB
= Tinggi Badan (m)
U
= Umur
PA
= Koefisien aktivitas fisik
Koefisien aktivitas fisik balita pada umur dibawah 3 tahun dapat dikatakan sangat ringan, sedangkan untuk umur yang lainnya pada masa balita ditunjukkan pada Tabel 1. Tabel 1 Tabel Aktifitas Fisik
2. KEBUTUHAN GIZI BALITA Gizi pada balita adalah suatu yang penting untuk selalu diperhatikan. Hal tersebut dikarenakan pada umur dibawah lima tahun banyak mengalami perkembangan dan pertumbuhan yang paling pesat. Status gizi pada saat itu akan memberikan dampak yang cukup besar bagi tumbuh kembang balita nantinya. Dalam pemenuhan gizi balita dapat dibedakan berdasarkan umur, berat badan dan tinggi badan balita tersebut (Kemkes, 2014). 2.1. Perhitungan Kebutuhan Gizi Untuk mengetahui kebutuhan gizi balita dapat dengan cara menentukan jumlah kalori yang memerlukan beberapa kategori yakni umur, jenis kelamin, tinggi badan, dan berat badan. Untuk nilai toleransi penyusunan atau penetapan kalori balita sebesar ± 10 %. Dalam menghitung kebutuhan energi balita dapat menggunakan persamaan seperti dibawah ini: Balita umur 7-12 bulan TEE = (89 x BB – 100) + 22 Kal
PA
Laki – laki
Perempuan
Sangat ringan
1
1
Ringan
1.13
1.16
Aktif
1.26
1.31
Sangat aktif
1.42
1.56
(Sumber : (IOM), 2015 dalam penelitian Hardinsyah dkk, 2012)
Kemudian menghitung kebutuhan asupan karbohidrat, protein, dan lemak pada balita dalam satu hari. Presentase kebutuhan energi dari karbohidrat, protein, dan lemak ditunjukkan pada Tabel 2. Tabel 2 Tabel Presentase Kebutuhan Energi Umur
Energi Karbohidrat (%)
Energi Protein (%)
Energi Lemak (%)
Total
0-5 bln
54.4
9.4
36.2
100
6-11 bln
59.8
11.2
29.0
100
1-3 th
59.3
13.0
27.9
100
4-6 th
59.8
13.1
27.0
100
(Sumber : Hardinsyah dkk, 2012)
(1)
Balita umur 13-35 bulan TEE = (89 x BB – 100) + 20 Kal
1670
(2)
Balita dengan umur36 bulan keatas dan berjenis kelamin laki-laki Fakultas Ilmu Komputer, Universitas Brawijaya
Selanjutnya menghitung berat makanan yang dianjurkan untuk balita dapat menggunakan persamaan seperti dibawah ini: nilai gen (Maks – Min) + Min nilai gen maksimal
(5)
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Keterangan: - Nilai gen pada representasi kromosom yang akan digunakan memiliki interval [0..1] -> nilai gen maksimal adalah 1. - Maks dan Min merupakan nilai proporsi kebutuhan zat gizi balita per data makanan.
1671
3. PERANCANGAN ALGORITMA Proses penyelesaian permasalahan optimasi kebutuhan gizi untuk balita dengan menggunakan hybrid algoritma genetika dan simulated annealing memiliki langkah-langkah yang ditunjukkan pada Gambar 1
2.2. Hybrid Algoritma Genetika dan Simulated Annealing Dalam melakukan hybrid algoritma genetika dan simulated annealing ini dilakukan untuk melengkapi masing-masing algoritma tersebut. Algoritma genetika memiliki sifat konvergen yang prematur dimana operator genetik yang digunakan tidak dapat menghasilkan keturunan yang lebih baik dari induknya. Sedangkan untuk simulated annealing memiliki kelemahan yang hanya dapat menyimpan satu solusi. Sehingga dari kelemahan tersebut akan mencoba dihilangkan dengan mengkombinasikan kedua algoritma tersebut. Simulated annealing dapat memanfaatan pengendalian penjadwalan pada penurunan temperatur untuk bertahan dalam menghadapi lokal optimum (Sofianti, 2014). Selanjutnya untuk algoritma genetika mampu memilih solusi terbaik dari individu yang baru maupun individu awal atau induk selama individu tersebut memiliki nilai fitness yang tinggi. Berikut adalah proses dari hybrid algoritma genetika dan simulated annealing: 1.
Memasukkan parameter dari algoritma genetika dan simulated annealing seperti populasi, probabilitas mutasi (Mr), probabilitas crossover (Cr), generasi, temperatur awal (T0), alpha (α), dan temperatur akhir (Tn).
2.
Melakukan proses inisialisasi populasi awal secara acak.
3.
Melakukan proses reproduksi crossover dan mutasi.
4.
Melakukan perhitungan keseluruhan populasi.
5.
Melakukan proses seleksi.
6.
Melakukan proses simulated annealing yang mengambil individu yang lolos seleksi atau memiliki nilai fitness terbaik.
7.
Menyelesaikan proses hingga mencapai iterasi maksimum, jika sudah mecapai iterasi maksimum maka proses selesai dan akan menghasilkan individu terbaik dari proses optimasi.
fitness
Fakultas Ilmu Komputer, Universitas Brawijaya
Gambar 1 Flowchart Hybrid Algoritma Genetika dan Simulated Annealing
Langkah pertama yang harus dilakukan adalah menghitung kebutuhan gizi balita. Selanjutnya melakukan membentuk suatu pencarian solusi dalam bentuk rekomendasi bahan makanan menggunakan hybrid algoritma genetika dan simulated annealing. Representasi kromosom dalam bahan makanan tersebut menggunakan dua segmen. Segmen pertama dalam bilangan integer yang menunjukkan indeks atau nomor makanan dan segmen kedua dalam bilangan real code interval [0..1] yang menunjukkan berat makanan atau proporsi yang dianjurkan oleh sistem dalam satu hari yang terdiri 15 tersusun atas makan pagi, siang dan malam. Contoh representasi kromosom untuk makan pagi dapat ditunjukkan pada Tabel 3.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Tabel 3 Representasi Kromosom Makan Pagi
1672
Indeks
Proporsi
K
11
0.2
PH
5
0.4
PN
9
0.5
S
1
0.1
dilakukan proses reproduksi crossover dan mutasi. Untuk crossover menggunakan metode extended intermediate crossover dengan memilih dua induk secara acak. Persamaan metode tersebut seperti pada persamaan (7) dan (8) (Mahmudy, 2015). C1 = P1 + α (P2 – P1) (7)
PL
0
0.8
C2 = P2 + α (P1 – P2)
(8)
Keterangan: Keterangan: K = Karbohidrat PH = Protein Hewani PN = Protein Nabati S = Sayuran PL = Pelengkap Dari representasi kromosom di atas kemudian dilakukan proses perhitungan berat makanan sesuai dengan persamaan 5, dan harga makanan yang disesuaikan. Selanjutnya melakukan perhitungan penalti yang didapatkan dari perkalian nilai prioritas masing-masing kandungan makanan dengan selisih antara masing-masing kebutuhan yang dianjurkan dengan total kebutuhan yang diperlukan. Sedangkan untuk perhitungan fitness dengan menggunakan dan (6). Fitness:
1000 total penalti + total harga
Selanjutnya melakukan inisialisasi populasi awal sebanyak populasi yang telah ditentukan. Contoh dari inisialisasi populasi awal ditunjukkan pada Tabel 4. Tabel 4 Inisialisasi Populasi Awal
Makan Pagi
= offspring dari induk
P1 & P2
= induk yang terpilih
α
= bilangan random
Jika hanya menghasilkan 1 offspring dan nilai α = 0.5 maka hasil proses crossover dari induk P1 dan P2 pada inisialisasi populasi awal seperti pada Tabel 5. Tabel 5 Hasil Crossover Makan Pagi
Indeks
Proporsi
K
9
0.35
PH
9
0.65
PN
6
0.4
S
3
0.2
PL
4
0.45
(6)
Pada persamaan di atas, nilai konstanta 1000 merupakan kisaran rata-rata total penalti dan kisaran rata-rata total harga makanan (Rianawati & Mahmudy, 2015). Kemudian dibagi dengan jumlah total penalti dan total harga yang didapatkan.
Indeks
C1 & C2
Proporsi
P1
P2
P3
P1
P2
P3
K
11
7
4
0.2
0.5
0.4
PH
5
13
17
0.4
0.9
0.9
PN
9
2
10
0.5
0.3
0.1
S
1
3
8
0.1
0.3
PL
0
7
14
0.8
0.3
Sedangkan untuk mutasi menggunakan metode random mutation dengan persamaan (9) (Mahmudy, 2015) x’i = x’i + r (maxi - minj)
(9)
Keterangan: -
(maxi - minj) = domain variabel ij x’i, x’n = offspring yang dihasilkan
-
r
= range r (random)
Jika misal r = 0,001, maxi = 0,9 minj = 0,02 dan induk yang dipilih adalah P3 maka didapatkan hasil mutasi dari induk P3 seperti pada Tabel 6. Tabel 6 Hasil Mutasi Indeks
Proporsi
K
4
0.4008
0.2
PH
17
0.9008
0.1
PN
10
0.1008
S
8
0.2008
PL
14
0.1008
Dari inisialisasi populasi awal di atas Fakultas Ilmu Komputer, Universitas Brawijaya
Makan Pagi
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Selanjutnya dari individu yang ada (induk dan offspring) akan diseleksi menggunakan metode elitism berdasarkan nilai fitness yang dihasilkan dari persamaan (6). Individu yang memiliki fitness terbesar akan lolos untuk proses simulated annealing. Proses dari simulated annealing 1.
Melakukan proses perulangan terkait batas temperatur awal (T0), dan temperatur akhir (Tn).
2.
Melakukan proses neigborhood (memodifikasi kromosom) individu dengan nilai fitness terbaik untuk menghasilkan individu baru dan menghitung juga nilai fitnessnya (E. Aycan & T.Ayav, 2009).
3.
Melakukan perbandingan, jika selisih nilai fitness antara individu baru dengan individu lama. Jika ∆E lebih dari atau sama dengan 0 maka individu baru tersebut akan mengganti individu lama (Orkcu, 2013).
4.
Jika nilai ∆E kurang dari 0 maka proses akan dilanjutkan dengan melakukan perbandingan antara probabilitas Boltzman dengan angka random (Orkcu, 2013). exp(-(∆E/T)) ≥ δ
= Selisih nilai cost / fitness
T
= Temperatur saat ini
δ
= bilangan random antara 0-1
Kemudian jika persamaan (10) terpenuhi maka individu baru tersebut akan mengganti individu lama. Jika tidak terpenuhi maka proses akan dilanjutkan dengan melakukan penurunan suhu menggunakan persamaan (11) dan melakukan kembali proses perulangan pada langkah pertama. (11)
Keterangan: T0+n = Temperatur untuk iterasi berikutnya α
= Alpha
Ts
= Temperatur saat ini
4. PENGUJIAN DAN PEMBAHASAN Pengujian dan pembahasan pada penelitian ini dilakukan lima kali pengujian berdasarkan berdasarkan ukuran populasi banyaknya generasi, pengujian kombinasi nilai Cr dan Mr, pengujian nilai alpha, dan pengujian nilai T0 untuk mengetahui parameter terbaik yang digunakan untuk mengoptimasi kebutuhan gizi pada salah satu balita. 4.1. Pengujian Ukuran Populasi Dengan parameter algoritma yang digunakan seperti Cr = 0.3, Mr = 0.4, generasi = 1, T0 = 0.5, α = 0.7, dan Tn = 0.2. Untuk ukuran populasi dimulai dari kelipatan 10 sampai 100. Hasil pengujian dapat ditunjukkan pada Gambar 2.
Gambar 2 Grafik Rata-rata Nilai Fitness Berdasarkan Pengujian Ukuran Populasi
∆E
= α x Ts
awal telah mencapai temperatur akhir atau iterasi maksimal.
(10)
Keterangan:
T0+n
1673
Proses akan berhenti jika temperatur Fakultas Ilmu Komputer, Universitas Brawijaya
Pada Gambar 2 bahwa semakin besar
ukuran populasi maka nilai fitness cenderung akan semakin besar. Dari hal tersebut dapat dikatakan bahwa semakin besar ukuran populasi maka semakin besar nilai fitness yang dihasilkan dari banyaknya variasi individu yang dihasilkan. Seperti pada pengujian yang dilakukan yang menghasilkan nilai rata-rata fitness terendah sebesar 0.05658 terjadi pada ukuran populasi 10. Kemudian nilai rata-rata fitness tertinggi sebesar 0.067 terjadi pada ukuran populasi 100 yang akan digunakan sebagai parameter jumlah populasi pada pengujian selanjutnya. Sedangkan pada percobaan jumlah populasi 50 dan 60 mengalami penurunan rata-rata nilai fitness yang signifikan semula sebesar 0.0663 menjadi 0.06244. Hal tersebut dikarenakan populasi awal dibangkitkan secara random sehingga tidak menjamin bahwa nilai rata-
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
rata fitness akan tetap. Selain itu juga didukung dengan kondisi bahwa rata-rata nilai fitness tidak dapat meningkat secara signifikan dan hal tersebut memang sudah hal umum terjadi pada algoritma heuristic (Wijayaningrum dan Mahmudy, 2016).
1674
digunakan seperti ukuran populasi = 100, generasi = 50, T0 = 0.5, α = 0.7, dan Tn = 0.2. Untuk kombinasi nilai Cr dan Mr dimulai dari bilangan 0.1 sampai 1. Hasil pengujian dapat ditunjukkan pada Gambar 4.
4.2. Pengujian Banyaknya Generasi Dengan menggunakan parameter algoritma yang digunakan seperti Cr = 0.3, Mr = 0.4, ukuran populasi = 100, T0 = 0.5, α = 0.7, dan Tn = 0.2. Untuk jumlah atau banyaknya generasi dimulai dari kelipatan 10 sampai 100. Hasil pengujian dapat ditunjukkan pada Gambar 3. Gambar 4 Grafik Rata-rata Nilai Fitness Berdasarkan Pengujian Nilai Cr dan Mr
Gambar 3 Grafik Rata-rata Nilai Fitness Berdasarkan Pengujian Banyaknya Generasi
Pada Gambar 3 menunjukkan bahwa rata-rata nilai fitness terbesar terjadi pada generasi = 50 sebesar 0.07072 yang selanjutnya akan digunakan pada pengujian selanjutnya. Sedangkan untuk rata-rata nilai fitness terkecil terjadi pada generasi = 10 yakni sebesar 0.06510. Kemudian untuk pengujian banyaknya generasi dari 30 ke 40 dan 50 sampai 70 mengalami penurunan rata-rata nilai fitness sedangkan pada generasi dari 40 ke 50 dan 70 ke 80 mengalami peningkatkan rata-rata nilai fitness yang cukup signifikan. Kemudian pada pengujian dengan banyaknya generasi 80-100 penaikan dan penurunan nilai ratarata fitness yang stabil. Sehingga hal tersebut dapat disimpulkan bahwa jumlah atau banyaknya generasi yang ditingkatkan tidak membuat perubahan rata-rata nilai fitness yang signifigkan. Hal tersebut juga terjadi pada penelitian yang dilakukan oleh Rianawati dan Mahmudi (2015). 4.3. Pengujian Kombinasi Nilai Cr dan Mr Dengan
parameter
algoritma
yang
Fakultas Ilmu Komputer, Universitas Brawijaya
Pada Gambar 4 menunjukkan bahwa ratarata nilai fitness terbesar terjadi pada kombinasi nilai Cr = 0.8 dan Mr = 0.3 sebesar 0.07132 yang akan digunakan sebagai sebagai parameter Cr dan Mr untuk pengujian selanjutnya. Sedangkan untuk percobaan pengujian yang lainnya mengalami beberapa penurunan ratarata nilai fitness yang sering terjadi seperti pada kombinasi nilai Cr = 0.1 dan Mr = 1 dengan nilai Cr = 0.2 dan Mr = 0.9 serta pada kombinasi nilai Cr = 0.6 dan Mr = 0.5 dengan nilai Cr = 0.7 dan Mr = 0.4. Jika dilihat dari rata-rata nilai fitness yang hasil pengujian tersebut dapat disimpulkan bahwa nilai Cr lebih perpengaruh dibandingkan dengan nilai Mr. Selain itu, pada jika nilai Cr dan Mr semakin besar maka akan menghasilkan individu yang semakin besar pula. Sehingga kemungkinan adanya variasi nilai fitness yang optimal juga semakin besar (Suprayogi dan Mahmudy, 2015). 4.4. Pengujian Nilai Alpha Dengan parameter algoritma yang digunakan seperti ukuran populasi = 100, generasi = 50, T0 = 0.5, Cr = 0.8, Mr = 0.3 , dan Tn = 0.2. Untuk nilai alpha dimulai dari bilangan 0.1 sampai 0.9. Hasil pengujian dapat ditunjukkan pada Gambar 5.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
1675
menunjukkan bahwa rata-rata nilai fitness terbesar terjadi pada nilai T0 = 2 sebesar 0.07075 dan untuk rata-rata nilai fitness terkecil terjadi pada nilai T0 = 1.25 sebesar 0.06839. Kemudian untuk pengujian dari nilai T0 = 0.75 1.25 dan T0 = 2 – 2.5 mengalami penurunan rata-rata nilai fitness. Akan tetapi pada T0 = 1.25 - 2 mengalami peningkatan rata-rata nilai fitness. Sehingga hal tersebut dapat disimpulkan bahwa semakin besar nilai T0 maka tidak menjamin akan menghasilkan nilai fitness atau solusi yang lebih baik.
Gambar 5 Grafik Rata-rata Nilai Fitness Berdasarkan Pengujian Nilai Alpha
4.6. Analisa Hasil
Pada Gambar 5 menunjukkan bahwa ratarata nilai fitness terbesar terjadi pada nilai alpha = 0.8 sebesar 0.0705 yang akan digunakan sebagai parameter nilai alpha untuk pengujian selanjutnya. Sedangkan untuk rata-rata nilai fitness terkecil terjadi pada nilai alpha = 0.5 sebesar 0.06689. Kemudian untuk pengujian dari nilai alpha 0.1 sampai 0.5 mengalami penurunan rata-rata nilai fitness sedangkan pada nilai alpha 0.7 menuju 0.8 mengalami peningkatkan rata-rata nilai fitness yang cukup signifikan. Sehingga hal tersebut dapat disimpulkan bahwa semakin besar nilai alpha akan memperluas ruang pencarian solusi pada proses simulated annealing akan tetapi tidak atau belum tentu memberikan pengaruh terhadap rata-rata nilai fitness yang dihasilkan karena pengaruh dari sifat stochastic pada algoritma itu sendiri (Huda, Basuki & Santoso, 2003).
Dari hasil dan pembahasan pada pengujian yang telah dilakukan didapatkan parameter yang dibutuhkan dan terbaik seperti banyaknya generasi = 50, ukuran populasi = 100, Cr = 0.8, Mr = 0.3, α = 0.8, T0 = 2, dan Tn = 0.2. Maka menghasilkan suatu rekomendasi makanan dari sistem, dan kemudian dilakukan perbandingan dengan kebutuhan kandungan gizi yang sebenarnya. Perbandingan tersebut dapat ditunjukkan pada Tabel 7. Tabel 7 Perbandingan Kebutuhan Kandungan Gizi
Kandungan Gizi Makanan
Kebutuhan Gizi Kebutuhan Balita Gizi Sebenarnya Rekomendasi Sistem
Karbohidrat
211.48308875
204.80862
Protein
46.32823525
47.82661
Lemak
42.438078
45.52744
4.5. Pengujian Nilai T0 Dengan parameter algoritma yang digunakan seperti ukuran populasi = 100, generasi = 50, α = 0.8, Cr = 0.8, Mr = 0.3 , dan Tn = 0.2. Untuk nilai T0 dimulai dari bilangan 0.25 sampai 2.5. Hasil pengujian dapat ditunjukkan pada Gambar 6.
Dari tabel di atas dapat disimpulkan bahwa kebutuhan kalori yang direkomendasikan sistem belum sesuai atau mendekati dengan kebutuhan kalori balita yang sebenarnya. Selain itu jumlah kalori yang dibutuhkan juga belum sesuai, yang mana kebutuhan kalori balita sebenarnya yaitu sebesar 1414.6026 dengan kebutuhan kalori yang direkomendasikan sistem sebesar 1390.31314. Akan tetapi, hasil kebutuhan kalori rekomendasi makanan dari sistem masih memasuki batas toleransi dalam penyusunan atau penetapan sebesar ± 10 %. 5. KESIMPULAN Dalam penerapan hybrid algoritma genetika dan simulated annealing ini menggunakan representasi kromosom dua segmen, segmen pertama dengan menggunakan bilangan integer untuk menunjukkan indeks atau nomor
Gambar 6. Grafik Rata-rata Nilai Fitness Berdasarkan Pengujian Nilai T0
Pada
Gambar
6
Pada
Gambar
Fakultas Ilmu Komputer, Universitas Brawijaya
6.5
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
makanan sedangkan segmen kedua dalam bilangan real code yang menunjukkan atau merepresentasikan berat makanan yang dianjurkan. Untuk proses reproduksi yang dilakukan menggunakan metode extended intermediate crossover dan random mutation. Kemudian untuk seleksi menggunakan metode elitism. Dari hasil seleksi atau generasi terbaik dari algoritma genetika akan diproses pada algoritma simulated annealing. Pengujian yang dilakukan menghasilkan rata-rata nilai fitness berdasarkan pengujian ukuran populasi terbesar yakni 0.067. Untuk hasil pengujian banyaknya generasi sebesar 0.07072 sedangkan hasil pengujian kombinasi nilai Cr dan Mr sebesar 0.067132. Untuk hasil pengujian nilai alpha sebesar 0.0705 dan hasil pengujian nilai T0 sebesar 0.07075. Sehingga dari analisa hasil pengujian yang dilakukan menghasilkan rata-rata nilai fitness sebesar 0.10106. Hasil dari pengujian yang dilakukan diketahui bahwa kebutuhan kalori balita yang sebenarnya belum sesuai atau belum mendekati dengan kebutuhan kalori yang direkomendasikan. Akan tetapi masih berada pada batas toleransi penetapan atau penyusunan kalori. Sehingga implementasi hybrid algoritma genetika dan simulated annealing ini mampu mengoptimasi kebutuhan gizi balita dengan baik. Selain itu, dari pengujian dan analisa hasil yang telah dilakukan didapatkan beberapa saran yang dapat menjadi bahan pertimbangan untuk melakukan pengembangan penelitian selanjutnya, yakni dapat menambah kandungan gizi yang digunakan seperti vitamin, kalsium dan sebagainya untuk lebih memenuhi kebutuhan gizi balita. Selain itu, metode yang digunakan pun juga dapat dikembangkan lebih lanjut seperti dengan menggunakan metode crossover, mutasi dan seleksi yang lainnya, atau dapat mengkombinasikan dengan metode algoritma genetika dengan metode lainnya untuk mengatasi konvergensi dini pada algoritma genetika sehingga dapat menghasilkan solusi yang lebih baik. Kemudian, untuk data bahan makanan yang digunakan diharapkan dapat dengan mempertimbangkan kelayakan bahan makanan untuk dikonsumsi balita, serta dapat menggunakan rumus perhitungan fitness yang tidak terpengaruh pada besarnya nilai variabel Fakultas Ilmu Komputer, Universitas Brawijaya
1676
harga dan memperbanyak variasi data bahan makanan agar dapat menghasilkan kebutuhan kalori balita sebenarnya dengan kebutuhan kalori rekomendasi oleh sistem yang mendekati ataupun sama. Rekomendasi makanan pada penelitian ini juga dapat dikembangkan lebih lanjut dengan mempertimbangkan kondisi kesehatan balita seperti misalnya alergi tidaknya balita dalam mengonsumsi makanan, ataupun penyakit lainnya. 6. DAFTAR PUSTAKA Aycan, E. & Ayav, T. 2009. Solving the Cource Schedulling Problem Using Simulated Annealing. IEEE International Advance Computing Conference, 462-466. Azmi, MH. Sugiono. Tantrika, CFM. 2015. Penjadwalan Produksi Rokok Untuk Meminimalkan Maximum Tardiness Menggunakan Algoritma Simulated Annealing (Studi Kasus di PR. Adi Bungsu Malang). Jurusan Teknik Industri, Universitas Brawijaya. Vol 3, no 2. Hardinsyah. Riyadi, A. Napitupulu, V. 2012. Kecukupan Energi, Protein, Lemak, dan Karbohidrat. Departemen Gizi Masyarakat, FEMA, IPB. Huda, M. Basuki, A. & Santoso, TB. 2003. Penyelesaian Alokasi Kanal Radio Dinamis dengan Menggunakan Metoda Simulated Annealing (SA). IES, Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh Nopember Surabaya. (IOM) Institute of Medicine. 2015. Dietary Reference Intake for Energy, Carbohydrate, Fiber, Fat, Fatty Acids, Cholesterol, Protein, and Amino Acids. A Report of the Panel on Macronutrients, Subcommittees on Upper Reference Levels of Nutrients and Interpretation and Users of Dietary Reference Intakes, and the Standing Commitee on the Scientific Evaluation of Dietary Reference Intakes. National Academics Press, Washington, DC. (Kemkes) Kementrian Kesehatan RI. 2014. Pedoman Gizi Seimbang. Mahmudy, WF. 2015. Dasar-Dasar Algoritma Evolusi. Universitas Brawijaya. Malang. Mahmudy, WF. 2014, Improved Simulated Annealing For Optimization Of Vehicle
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Routing Problem With Time Windows (VRPTW). Kursor, Vol. 7, no. 3. Mahmudy, WF. Marian, RM & Luong, LHS. 2013, Hybrid genetic algorithms for multi-period part type selection and machine loading problems in flexible manufacturing system, IEEE International Conference on Computational Intelligence and Cybernetics. Yogyakarta, Indonesia. 34 December, pp. 126-130. Mansura, Prahasto, T & Farikhin. 2014. Particle Swarm Optimization Untuk Sistem Informasi Penjadwalan Resource Di Perguruan Tinggi. Jurusan Matematika, Fakultas Sains Matematika, Universitas Diponegoro Semarang. No. 2. Orkcu, HH. 2013. Subset Selection in Multiple Linear Regression Models : A Hybrid of Genetic and Simulated Annealing Algorithms. Applied Mathematics and computation, 11018-11028. Rianawati, A & Mahmudy, WF. 2015. Implementasi Algoritma Genetika Untuk Optimasi Komposisi Makanan Bagi Penderita Diabetes Mellitus, DORO: Repository Jurnal Mahasiswa PTIIK Universitas Brawijaya. vol. 7, no. 7. Sofianti, TD. 2004. Penjadwalan Multipurpose Batch Chemical Plant Dengan Metode Optimasi Gabungan : Algoritma Genetika – Simulated Annealing. Proceedings, Komputer dan Sistem Intelijen (KOMMIT2004). Auditorium Universitas Gunadarma, Jakarta. Suci, WW. Mahmudy, WF. Putri, RRM. 2015. Optimasi Biaya Pemenuhan Gizi Dan Nutrisi Pada Manusia Lanjut Usia Menggunakan Algoritma Genetika,DORO: Repository Jurnal Mahasiswa PTIIK Universitas Brawijaya. vol. 5, no.17. Suprayogi, DA & Mahmudy, WF. 2015. Penerapan Algoritma Genetika Traveling Salesman Problem with Time Window: Studi Kasus Rute Antar Jemput Laundry. Jurnal Buana Informatika. Vol. 6, no. 2. Wang, X. Garibaldi, JM. 2005. Simulated Annealing Fuzzy Clustering in Cancer Diagnosis. The University of Nottingham, Jubilee Campus, Wollaton
Fakultas Ilmu Komputer, Universitas Brawijaya
1677
Road, United Kingdom. Wijayaningrum, VN. Mahmudy, WF. 2016. Optimization of Ship’s Route Scheduling Using Genetic Algorithm. Indonesian Journal of Electrical Engineering and Computer Science, Vol. 2, no. 1 : 180-186.