Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer Vol. 1, No. 11, November 2017, hlm. 1321-1330
e-ISSN: 2548-964X http://j-ptiik.ub.ac.id
Implementasi Algoritma Particle Swarm Optimization (PSO) untuk Optimasi Pemenuhan Kebutuhan Gizi Balita Leni Istikomah1, Imam Cholissodin2, Marji3 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email:
[email protected],
[email protected],
[email protected] Abstrak Balita adalah anak dengan rentang umur 1-5 tahun. Menurut Riskesdas, pada tahun 2007, 2010, dan 2013 presentase kasus kekurangan gizi cenderung meningkat terutama pada balita. Upaya perbaikan gizi balita telah dilakukan pemerintah melalui Posyandu untuk memonitoring dan memberikan pelayan lebih terhadap balita. Kebutuhan gizi orang Indonesia telah diatur dalam pedoman gizi seimbang yang dikeluarkan oleh Kementerian Kesehatan RI, termasuk pedoman gizi untuk memenuhi kebutuhan gizi pada balita. Namun, pada pedoman gizi tersebut hanya menyediakan nilai dari kandungan gizi setiap bahan makanan sehingga menyulitkan petugas Posyandu untuk memberikan variasi menu agar sesuai dengan kebutuhan gizi balita. Pada penelitian ini memberikan rekomendasi variasi bahan makanan secara otomatis selama 7 hari 3 kali makan dengan menggunakan proses optimasi dari algoritma Particle Swarm Optimization yang dapat memudahkan Posyandu dan orang tua balita dalam menyediakan makanan sehari-hari sesuai kebutuhan gizi balita. Berdasarkan hasil pengujian, parameter yang paling optimal adalah Jumlah Partikel=30, Wmin=0.4, Wmax= 0.7, C1=2, C2=1.5, Jumlah Iterasi=40 dan Batas Atas angka permutasi sebesar 75 menghasilkan rata-rata selisih energi, protein, lemak dan karbohidrat sebesar 16.04%, -8.08%, 2.85% dan 25.98% yang mampu menghemat pengeluaran orangtua balita sebesar 28.56%. Kata Kunci: Particle Swarm Optimization, optimasi, gizi, balita, bahan makanan.
Abstract Toddlers are children with 1-5 years age range. According to Riskesdas, in the year 2007, 2010, and 2013 the percentage of cases of malnutrition tends to increase, especially in toddlers. In the fulfillment of nutrients, one type of food alone is not enough so it requires a variety of food ingredients that contain all the elements of nutrients. Efforts to improve child nutrition have been done by the government through Posyandu to monitor and provide more servants to toddlers. Nutrition needs of Indonesian people has been set in the guidelines of Pedoman Gizi Seimbang by the Ministry of Health Republic Indonesia, including nutritional guidelines to meet the nutritional needs of infants. However, the nutritional guidelines only provide the value of the nutrient content of each foodstuff, making it difficult for Posyandu staff to provide menu variations to fit the needs of children according to their health condition. In this research give recommendation of variation of foodstuff automatically by using optimization process of Particle Swarm Optimization algorithm so that it can facilitate Posyandu and parents of toddlers in providing daily food according to the nutritional needs of toddlers. Based on the test results, the most optimal parameter is the number of particles = 30, Wmin = 0.4, Wmax = 0.7, C1 = 2, C2 = 1.5, Number of iterations = 40 and Upper Limit Permutation number of 75 resulting in average energy, protein, fat and carbohydrate difference of 16.04%, -8.08%, 2.85% and 25.98% which can save parents toddlers by 28.56%. Keywords: Particle Swarm Optimization, optimization, nutrition, child, food.
Pemberian gizi yang cukup akan membantu perkembangan dan pertumbuhan otak seorang anak (Santoso, 2004). Seorang anak dikatakan balita jika rentang umurnya 1-5 tahun (Mitiyani, 2010), istilah umumnya adalah anak dibawah
1. PENDAHULUAN Gizi adalah hal yang penting dan sangat perlu diperhatikan pada setiap manusia. Fakultas Ilmu Komputer Universitas Brawijaya
1321
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
lima tahun (Muaris, 2006). Tingkat konsumsi yang diberikan pada tubuh sangat mempengaruhi kesehatan gizi. Tingkat Konsumsi pangan masyarakat Indonesia cenderung dibawah standar (Kemenkes, 2014). Pada tahun 2007, 2010, dan 2013 presentase kasus kekurangan gizi cenderung meningkat. Umumnya kelompok usia yang menderita kurang gizi adalah balita. Kurang kalori, protein, yodium, zat besi, vitamin, dan mineral merupakan penyebab utama balita kurang gizi (Santoso, 2004). Prevalensi anak balita kurang gizi (underweight) tahun 2007 sebesar 18,4%, tahun 2010 sebesar 17,9%, dan tahun 2013 sebesar 37,2% (Kemenkes, 2014). Sehingga balita membutuhkan tingkat konsumsi yang cukup agar terhindar dari kekurangan gizi. Kekurangan gizi akan mengakibatkan sulitnya memperbaiki kualitas bangsa (Widjaja, 2008). Upaya perbaikan gizi balita telah dilakukan pemerintah dengan menyediakan pelayanan kesehatan untuk monitoring kesehatan balita yang dapat dilakukan di posyandu. Posyandu merupakan perpaduan antara pos keluarga berencana desa, pos imunisasi, pos timbang, pos vaksinasi, dan pos kesehatan desa yang dikenal dengan kegiatan lima meja. Posyandu merupakan pos yang tepat sebagai solusi mempertahankan kesehatan balita (Santoso, 2004). Posyandu Gladiol 34 desa Wringin Agung Kab. Jember memiliki program untuk memenuhi gizi balita dalam bentuk saran dan peringatan. Saran yang diberikan oleh posyandu berupa bahan makanan yang dapat dikonsumsi oleh balita tersebut agar menambah berat badan dan meningkatkan kesehatan. Dalam memberikan rekomendasi bahan makanan, petugas harus mengingat dan membuka pedoman bahan makanan yang dianjurkan oleh DEPKES RI sehingga membutuhkan waktu yang lama terkadang hanya diberikan menumenu atau bahan makanan yang dapat dikonsumsi secara umum (tidak sesuai kondisi balita). Adanya kendala tersebut, membuat posyandu membutuhkan sistem cerdas yang dapat membantu petugas dalam merekomendasikan bahan makanan sesuai kondisi kesehatan gizi balita. Tubuh manusia membutuhkan zat gizi yang diperlukan oleh tubuh untuk tumbuh dan berkembang. Tumbuh berati bertambahnya materi tubuh seorang anak dan berkembang berati terjadinya kemajuan fungsi, kapasitas fisiologis badan atau organ badan. Dalam pemenuhan zat gizi, satu jenis makanan saja Fakultas Ilmu Komputer, Universitas Brawijaya
1322
tidak cukup sehingga memerlukan variasi bahan makananan yang mengandung semua unsur zat gizi (Alhamda & Sriani, 2014). Begitu pula dengan balita yang merupakan masa emas tumbuh dan berkembang yang memerlukan begitu banyak zat bergizi. Nilai kecukupan gizi yang diperlukan oleh masyarakat Indonesia, termasuk balita diatur dalam Tabel AKG (Angka Kecukupan Gizi). Dalam hal ini, teknologi optimasi pemenuhan kebutuhan gizi balita akan membantu memberikan solusi dengan cara menghitung kebutuhan gizi yang diperlukan oleh setiap balita dengan acuan berat badan, tinggi badan dan umur. Pengukuran pertumbuhan Berat Badan(BB), Tinggi Badan(TB) dan umur dapat membantu mengetahui status gizi balita yang selanjutnya dapat diketahui variasi bahan makanan dalam memenuhi kebutuhan gizi balita(Santoso, 2004). Berdasarkan uraian di atas, penulis mengajukan penelitian dengan judul βImplementasi Algoritma Particle Swarm Optimization (PSO) Untuk Optimasi Pemenuhan kebutuhan Gizi Balitaβ. 2. LANDASAN KEPUSTAKAAN 2.1 Balita Balita merupakan kelompok anak dibawah lima tahun yang memiliki tingkat pertumbuhan dan perkembangan yang sangat cepat (Sutomo, 2014). Gambar 1 menunjukkan perkembangan balita dari umur 0-5 tahun.
Gambar 1. Perkembangan Balita
Menurut RSCM dan PERSAGI (2003). Penuntun DIIT Anak, terdapat beberapa perhitungan dalam menentukan kebutuhan energi dan zat gizi seorang Balita. Persamaan untuk menghitung kebutuhan energi dan zat gizi setiap Balita (1-5 tahun) dapat dilihat pada Persamaan (1) untuk menghitung BBI (Berat Badan Ideal), Persamanan (2) dan Persamaan (3) untuk menghitung Kebutuhan Energi, Persamaan (4) untuk menghitung Kebutuhan
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Protein, Persamaan (5) untuk menghitung Kebutuhan Lemak dan Persamaan (6) untuk
menghitung Kebutuhan Karbohidrat. π΅π΅πΌ = (π’ππ’π β 2) + 8 πΎππ. πΈπππππ = 100 πΎππ. πΈπππππ = 90
(1)
ππππππ ππ
ππππππ ππ
(π’ππ’π 1 β 3 π‘πβπ’π) (2)
(π’ππ’π 4 β 5 π‘πβπ’π)
(3)
πΎππ. ππππ‘πππ = (10% ΓπΎππ. πΈπππππ) Γ· 4
(4)
πΎππ. πΏππππ = (20%Γπππ. ππππππ) Γ· 9
(5)
πΎππ. πΎππππβπππππ‘ = (70%Γπππ. ππππππ) Γ· 4 (6)
2.2 Prosedur Algoritma PSO Ada beberapa prosedur yang harus dilakukan untuk menerapkan Algoritma PSO dalam menyelesaikan masalah menurut Santoso (2011): 1. Insialisasi partikel dan membangkitkan kecepatan secara random Inisialisasi partikel dapat menggunakan pengkodean yang bertujuan menyederhanakan masalah. Dalam pengkodean masalah, Sulistiowati (2016) menggunakan angka permutasi dalam merepresentasikan nilai dimensi dan selanjutnya dimensi tersebut akan dikonversi kedalam indeks bahan makanan. Konversi nilai dimensi menjadi Indeks Bahan Makanan ditunjukkan pada Persamaan (7). ππππππ ππππππ π ππ β π = ((π₯ β 1) (
π¦β1 π§β1
)) + 1
(7)
Keterangan: π₯ = jumlah anggota jenis bahan makanan ke-i π¦ = nilai dimensi ke-i π§ = batas atas angka permutasi Jika diketahui jumlah anggota PH (Protein Hewani) = 40 dan batas atas=65, maka 18 β 1 ππππππ ππππππ π ππ β 1 = (40 β 1) ( )+1 65 β 1 = 11
Bahan makanan yang direkomendasikan pada dimensi 1 adalah bahan makanan berjenis protein hewani dengan nomor indeks 11. 2. Evaluasi partikel dengan cara membandingkan nilai fitness Nilai fitness digunakan sebagai acuan untuk menentukan Gbest dan Pbest. Pada Fakultas Ilmu Komputer, Universitas Brawijaya
1323
penelitian yang dilakukan oleh Eliantara (2016) nilai fitness menggunakan Persamaan (8). πΉππ‘πππ π =
1 ππππππ‘ππΊππ§π
. ππππ π‘1 +
1 πππ‘ππ π»ππππ
. ππππ π‘2 +
(8)
π£πππππ π
const1 dan const2 merupakan penyeimbang nilai fitness karena perhitungan variasi menghasilkan angka puluhan. const1 digunakan untuk pembagian PenaltiGizi sedangkan const2 digunakan untuk pembagian total harga dengan nilai konstanta const1 = 100000 dan konstanta const2 = 1000000. 3. Mencari Pbest Mencari Pbest dilakukan dengan cara membandingkan nilai Pbest sebelum dan sesudah Iterasi. Jika nilai fitness partikel baru lebih besar dari fitness Pbest sebelumnya maka partikel tersebut dijadikan Pbest terbaru. 4. Mencari Gbest sebagai partikel terbaik dari seleruh anggota swarm Nilai Gbest didapatkan dari nilai fitness Pbest tertinggi. 5. Memperbarui Kecepatan (Velocity) dan posisi partikel Nilai velocity didapatkan dari penjumlahan momentum dan pengalaman yang diambil dari Gbest dan Pbest. Momentum didapatkan dengan cara mengkalikan bobot inersia dan kecepatan sebelumnya. Untuk menentukan nilai velocity dapat melihat Persamaan (9). Untuk menghitung bobot inersia dapat dilihat pada Persamaan (10). ππ½π = πππ½π + πΆ1 ππππ1 Γ (ππππ π‘π β πππ ) + πΆ2 ππππ2 Γ (πΊπππ π‘π β πππ )
π = ππππ₯ β
(9) ππππ₯βππππ ππ‘ππ πππ₯
π₯ ππ‘ππ
(10)
Keterangan: ππ½π = velocity dimensi ke-j pada Iterasi ke-k π= bobot inertia C1 = nilai koefisien akselerasi ke-1 C2= nilai koefisiean Akselerasi ke-2 ππππ = nilai random [0, 1] Xjk= posisi dimensi ke-j pada Iterasi ke-k Pbestj= nilai Pbest dari dimensi ke-j Posisi terbaru dapat diperoleh dari hasil penjumlahan Posisi sebelumnya dengan Kecepatan baru. Menghitung posisi terbaru menggunakan Persamaan (11) dibawah ini:
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
πππ+1 = πππ + πππ+1
1324
(11)
Mulai
6. Melanjutkan langkah ke-2 jika stopping condition belum terpenuhi Data Balita, Parameter PSO
3. METODOLOGI Dalam melakukan penelitian ini tahap pertama adalah melakukan studi literatur yang berhubungan dengan objek penelitian. Tahap selanjutnya adalah pengumpulan data, analisis kebutuhan, perancangan sistem, implementasi, pengujian dan analisis. Tahap terakhir adalah penarikan kesimpulan. Data Balita diperoleh dari Posyandu Jember dan wawancara pakar ahli gizi balita (Ummu Ditya Erliana, S.Gz., M.Sc.). Data daftar harga didapatkan berdasarkan survey dari penelitian sebelumnya oleh Felia Eliantara tahun 2016. Perancangan sistem secara umum ditunjukkan pada Gambar 2 yang terdiri dari Input, Proses dan Ouput. Proses Implementasi Algoritma Particle Swarm Optimization (PSO) untuk Pemeneuhan Kebutuhan Gizi Balita dapat dilihat pada Gambar 3. Input
Proses
Output
PSO
Rekomendasi Bahan Makanan
Hitung Kebutuhan Gizi Balita
Inisialisasi Populasi Awal
For i= 1 to itermax
Update Kecepatan
Update Posisi dan Hitung fitness
Update Pbest
Update Gbest
i
Nama, umur, berat badan, tinggi badan
Partikel Terbaik
Gambar 2. Perancangan Sistem
Selesai
Gambar 3. Diagram Alir Penyelesaian Optimasi Pemenuhan Kebutuhan Gizi Balita menggunakan algoritma PSO
3.1 Input Data Data yang dibutuhkan dalam proses penyelesaian Optimasi adalah menggunakan data balita dan parameter PSO. Contoh data balita dapat dilihat pada Tabel 1. Data Balita dan Parameter PSO dapat dilihat pada Tabel 2. Parameter PSO. Tabel 1. Data Balita Nama Celsi
Fakultas Ilmu Komputer, Universitas Brawijaya
Umur (tahun) 3.6
BB (kg) 15.5
TB (cm) 96
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
1325
Tabel 2. Parameter PSO Jumla h Partike l
2
C
C2
rand1
rand2
2
0.9342
0.396 3
1
2
Iterm ax
Wmin
Wm ax
Bat as Atas
2
0.4
0.7
65
18 11 60 46 12 43
X2
3.2 Hitung Kebutuhan Gizi Sebelum menghitung kebutuhan gizi, perlu diketahui Berat Badan Ideal seorang balita. Contoh perhitungan Berat Badan Ideal: π΅π΅πΌ = (3.6Γ2) + 8 = 15.2 ππ
Setelah mendapatkan BBI, kebutuhan energi balita dapt dihitung dengan Persamaan (2). Berikut ini contoh perhitungan kebutuhan energi dan kebutuhan gizi balita:
18 11 60 46 12 43
πΎππ. ππππ‘πππ = (10%Γ1520 ππππππ) Γ· 4 = 38 ππππ Pbest2
πΎππ. πΎππππβπππππ‘ = (70%Γ1520 ππππππ) Γ· 4 = 266 ππππ
46 12 43
Gbest1
3.3.1 Inisialisasi Kecepatan Awal
3.3.2 Inisialisasi Partikel Inisialisasi Partikel merupakan cara untuk mendapatkan nilai dimensi dan untuk menyederhanakan masalah. Pada penelitian ini masalah direpresentasikan dalam bilangan permutasi dimana setiap bahan makanan diwakili satu dimensi oleh setiap partikel sehingga terdapat 189 dimensi berdasarkan dari 7 hari 3 kali makan dan 9 jenis bahan makanan. Jenis Bahan Makanan berjumlah 197 yaitu berdasarkan jenis bahan makanan Protein Hewani sebanyak 40, Protein Nabati sebanyak 13, Lemak sebanyak 12, Karbohidrat sebanyak 17, Sayuran jenis A sebanyak 10, Sayuran Jenis B sebanyak 52, Gula sebanyak 6, Buah sebanyak 40 dan Susu sebanyak 7. Contoh nilai dimensi dapat dilihat pada Tabel 3.
X1
Fitness
Nilai Dimensi PH
PN
β¦
SA
SB
186.72
Fakultas Ilmu Komputer, Universitas Brawijaya
Fitness 60 3 33 57 3 36
186.72
190.5
Nilai Dimensi 30 β¦ 59 38 11 50 5
Fitness 57 3 36
190.5
3.4 Update Kecepatan Untuk menghitung kecepatan baru dapat menggunakan Persamaan (9), namun sebelum menghitung kecepatan baru perlu diketahui nilai w yang dapat dilihat pada Persamaan (10). Berikut ini contoh update kecepatan dan menghitung nilai w pada iterasi=1: π = 0.7 β
0.7 β 0.4 π₯ 1 = 0.55 2
π11 = ππ11 + πΆ1 ππππ1 Γ (ππππ π‘1 β π11 ) + πΆ2 ππππ2 Γ (πΊπππ π‘1 β π11 ) π11 = 0.55 β 0 + 2 β 0.9342Γ(18 β 18) + 2 β 0.3963Γ(46 β 18) = 22.2
Tabel 6 menunjukkan hasil perhitungan Update Kecepatan pada partikel X1 dan X2. Tabel 6. Hasil Perhitungan Update Kecepatan
Tabel 3. Contoh Inisialisasi Partikel Partikel
Nilai Dimensi 12 β¦ 25 5 60 46 49 30 59 38 11 50 5
Tabel 5. Contoh Inisialisasi Gbest Gbest
Setiap partikel memiliki kecepatan dan kecepatan awal setiap partikel di set dengan nol.
190.5
Tabel 4. Contoh Inisialisasi Pbest
Pbest1
3.3 Insialisasi Populasi Awal
60 3 33 57 3 36
Pada awal Iterasi, nilai Pbest disamakan dengan posisi awal partikel dan nilai Gbest didapatkan dari nilai fitness Pbest yang tertinggi. Contoh inisilisasi Pbest dan Gbest dapat dilihat pada Tabel 4 dan 5.
πΎππ. πΈπππππ = 100
πΎππ. πΏππππ = (20%Γ1520 ππππππ) Γ· 9 = 33.8 ππππ
25 60 49 59 11 5
3.3.3 Inisialisasi Pbest dan Gbest
Pbest
ππππππ 15.2 ππ ππ = 1520 ππππππ
12 5 46 30 38 50
V1
22.2 0.79 -13.5
Iterasi =1 14.3 β¦ 26.16 3.17
26.9 -39 -35
-2.38 0 2.38
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
V2
0 0 0
0 0 0
0 0 0
0 0 0
1326
Pada Tabel 9 menunjukkan nilai fitness terbesar adalah dari Pbest1, sehingga Gbest iterasi=1 adalah nilai dimensi dari Pbest1. Tabel 8. Hasil Update Pbest
3.5 Update Posisi dan Hitung Fitness Dalam menghitung update menggunakan Persamaan (11) menghitung update posisi:
posisi contoh
Iterasi=1 Pbest
πππ+1 = πππ + πππ+1 Pbest
π10+1 = π10 + π10+1 = 18 + 22 = 40
Tabel 7. Contoh Hasil Update Posisi
X1
X2
22.2 0.79 -13.5 46 12 43
Iterasi =1 14.3 β¦ 26.16 3.17 30 38 50
2
26.9 -39 -35 59 11 5
-2.38 0 2.38 57 3 36
Jika penalti dan total harga Partikel X1 yang didapat adalah 721.1 dan 40886.63. Penalti dan Total Harga Partikel X2 adalah 710.725 dan 50501.59. Sedangkan variasi Partikel X1 dan Partikel X2 adalah 26 dan 30, maka: πΉππ‘πππ π (π₯1,1) =
1 1 100000 + 1000000 + 28 721.07 40886.63 = 191.13
1 1 πΉππ‘πππ π (π₯2,1) = 100000 + 1000000 + 30 710.725 50501.59 = 190.50
Setelah melakukan update posisi dapat melakukan Normalisasi Posisi, digunakan agar perpindahan posisi tidak melebihi range yang telah ditentukan. Pada contoh perhitungan ini menggunakan batas bawah = 1 dan batas atas = 65, sehingga apabila ada perpindahan posisi yang melebihi batas atas maka di set menjadi 65 dan apabila kurang dari batas bawah maka posisi di set menjadi 1. 3.6 Update Pbest dan Gbest Nilai Pbest baru didapatkan dengan cara membandingkan nilai fitness partikel baru dan fitness Pbest sebelumnya. Nilai fitness terbesar dijadikan sebagai Gbest terbaru. Contoh hasil Update Pbest pada iterasi=1 dan Update Gbest pada iterasi=1 dapat dilihat pada Tabel 8 dan Tabel 9 yang membutuhkan Nilai fitness terbaru daru Update Posisi pada iterasi=1. Fakultas Ilmu Komputer, Universitas Brawijaya
57.6 2
β¦
14
35.4
β¦ β¦ β¦
59 11 5
57 3 36
26.3
β¦
11.8
31.1 6
β¦
49.2 30 38 50
46.5 3 46 12 43
Pbest
51. 9 21. 2
40.2
1
Hasil update posisi dapat dilihat pada Tabel 7 dibawah ini:
Fitnes s
Nilai Dimensi (posisi)
3
191.1 3
190.5
Tabel 9. Hasil Update Gbest Iterasi=1 Nilai Dimensi (posisi) 46 30 β¦ 59 57 12 38 β¦ 11 3 43 50 β¦ 5 36
Gbest Gbest1
Fitness 190.5
3.7 Hasil Optimasi Hasil optimasi didapatkan dari Gbest pada iterasi terakhir, dapat dilihat pada Tabel 10 Hasil Optimasi. Tabel 10. Hasil Optimasi Hari ke-
Waktu Makan
Nama Bahan Makanan
Jumlah Keb. Berat (g)
Harg a
Total Harga Perhar i
1
Pagi
Daging Kambing Kacang Tanah Kupas Minyak Kelapa Nasi Ketan Putih Labu Air Daun Kecipir Putih Telur Ayam Kacang Tolo Keju Krim Nasi Ketan Hitam Slada Daun
10
1080
16787. 7
3.75
137.5
3.75
100.5
75
1050
75 75
450 0
26
468
8
120
18
3924
120
1920
120 120
1440 0
Siang
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Pagi
Siang
Malam
12.25
980
7
105
5.25
140.7
52.5
Lobak
105
Daun Pepaya Usus Sapi Oncom Mayonnais e Makaroni Ketimun Bit Otak Pete Segar Minyak Zaitun Roti Putih Slada Daun Mangkoka n Telur Ayam Kacang Kedele Mayonnais e Krekers
105
2362. 5 2509. 5 0
12.5 10 15
375 350 450
37.5 75 75 14 22 6
1125 450 6000 420 220 900
84 120 120
4830 1440 0
19.25
346.5
8.75
87.5
21
630
52.5
2362. 5 2799. 93 1312. 5
24098.9 3
Gambar 5. Halaman Rekomendasi Bahan Makanan
4. HASIL DAN PEMBAHASAN 4.1 Hasil Pengujian Jumlah Partikel Semakin banyak jumlah partikel maka semakin tinggi nilai fitness dan semakin lama waktu komputasi yang dihabiskan. Pengujian Jumlah Partikel
Kangkung
105
Kol
105
Total Harga
Halaman Rekomendasi Bahan Makanan.
1520
Rata-rata Fitness
2
Pepaya Ikan Kakap Kacang Tolo Minyak Kelapa Krekers
1440 1360 1280 1200 5
10
15
20
25
30
35
40
45
50
Jumlah Partikel
40886.6 3
Halaman Hasil Optimasi menunjukkan hasil dari proses perhitungan dari algortima PSO. Halaman Hasil Optimasi ditunjukkan pada Gambar 4.
Gambar 6. Grafik Hasil Pengujian Jumlah Partikel Pengujian Jumlah Partikel Rata-rata Waktu (menit)
Mala m
1327
2,65 2,15 1,65 1,15 0,65 0,15 5
10
15
20
25
30
35
40
45
50
Jumlah Partikel
Gambar 7. Gafik Hasil Waktu Komputasi berdasarkan Jumlah Partikel
Gambar 4. Halaman Hasil Optimasi
Pada halaman hasil Optimasi akan mendapatkan nilai fitness tertinggi dan partikel yang terbaik. Halaman Rekomendasi Bahan Makanan menampilkan hasil rekomendasi dari partikel terbaik berupa daftar nama bahan makanan selama 7 hari untuk 3 kali makan yaitu pagi, siang dan malam. Gambar 5 menunjukkan Fakultas Ilmu Komputer, Universitas Brawijaya
Berdasarkan Gambar 6 dan 7 dapat diambil kesimpulan bahwa jumlah partikel 30 merupakan jumlah partikel paling optimal dengan waktu komputasi sebesar 1.44 menit atau sebesar 1 menit 44 detik yang tidak terlalu kecil jumlah partikelnya dan tidak terlalu lama waktu komputasinya.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Semakin besar rentang selisih antara nilai Wmin dan Wmax dapat menyebabkan nilai W semakin besar, sehingga daya eksplorasi swarm akan menyuluruh yang dapat memberikan solusi terbaik. Kombinasi Wmin dan Wmax yang dianggap dapat memberikan solusi terbaik untuk penyelesaian masalah adalah 0.4 dan 0.7. Grafik Hasil Pengujian Kombinasi Wmin dan Wmax dapat dilihat pada Gambar 8.
1750 1650 1550 1450 1350 10
20
30
40
50
60
70
80
90 100
Jumlah Iterasi
1500 1400
Gambar 10. Grafik Hasil Pengujian Jumlah Iterasi
1300 1200
Pengujian Jumlah Iterasi Wmax;Wmin
Gambar 8. Grafik Hasil Pengujian Kombinasi Wmin dan Wmax
4.3 Hasil Pengujian Koefisien Akselerasi Pengujian Koefisien Akselerasi digunakan untuk mengetahui pengaruhnya terhadap nilai fitness. Grafik hasil pengujian dapat dilihat pada Gambar 9.
13,80 11,30 8,80 6,30 3,80 1,30 10
20
30
40
50
60
70
80
90 100
Jumlah Iterasi
Gambar 11. Gafik Hasil Waktu Komputasi berdasarkan Jumlah Partikel
Berdasarkan Gambar 10 dan 11 menghasilkan jumlah iterasi optimal sebesar 40 dengan waktu komputasi selama 6 menit 52 detik yang dapat dikatakan, tidak terlalu lama apabila dibandingkan dengan waktu konsultasi pada dokter/ahli gizi atau konsultasi pada petugas Posyandu.
Pengujian Koefisien Akselerasi 1400 1375
Rata-rata Fitness
Pengujian Jumlah Iterasi
Rata-rata Waktu (menit)
Rata-rata Fitness
Pengujian Kombinasi Wmin dan Wmax
semakin tinggi nilai fitness. Dalam pemilihan jumlah iterasi yang optimal dapat mempertimbangkan waktu komputasi yang diperlukan dalam proses optimasi, karena dalam percobaan ini waktu komputasi paling cepat sebesar 1.36 menit atau 1 menit 36 detik.
Rata-rata Fitness
4.2 Hasil Pengujian Kombinasi Wmin dan Wmax
1328
1350 1325 1300 1275 1250
1;1
1;1,5
1;2
1,5 ; 1 1,5;1,5 1,5;2
2;1
2;1,5
2;2
C1;C2
Gambar 9. Grafik Hasil Pengujian Koefisien Akselerasi
Berdasarkan Grafik diatas, nilai C1 dan C2 sebesar 2 dan 1.5 merupakan koefisien yang cukup optimal untuk digunkan dalam menyelesaikan permasalahan. Koefisien tersebut dianggap dapat mempengaruhi nilai fitness yang sangat tinggi, sehingga dapat membuat eksplorasi pencarian semakin optimal. 4.4 Hasil Pengujian Jumlah Iterasi Semakin banyak jumlah iterasi maka Fakultas Ilmu Komputer, Universitas Brawijaya
4.5 Hasil Pengujian Batas Atas Angka Permutasi Berdasarkan hasil pengujian maka didapatkan batas angka permutasi yang optimal adalah 75. Gambar 12 menunjukkan Grafik Hasil Pengujian Batas Atas Angka Permutasi.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Rata-rata Fitness
Pengujian Batas Atas Angka Permutasi 1500
Tabel 12. Kandungan Gizi Bahan Makanan Rekomendasi Sistem
Balita 1
238.25 (14.08 %)
Balita 2
430.2 (28.68 %)
Selisih Protei n (gram) -7.2 (17.02 %) 3.5 (9.33% )
Balita 3
485.9 (31.15 %)
5 (12.82 %)
Balita 4
80.4 (4.96% )
Balita 5
356.25 (25.09 %)
-12.9 (31.85 %) 1.5 (4.23% )
Balita 6
42.9 (2.68% )
Balita 7
206.9 (12.36 %)
Balita 8
-10.7 (0.74%)
Balita 9
393.9 (26.98 %)
-14 (38.89 %) 2.2 (6.03% )
Balita 10
258.6 (15.12 %)
Ratarata
248.26 (16.04 %)
Nama
1450 1400 1350
Range
Gambar 12. Grafik Hasil Pengujian Batas Atas Angka Permutasi
Semakin besar batas angka permutasi akan mengakibatkan nilai fitness yang semakin kecil. Hal ini dikarenakan nilai konversi indeks yang digunakan mengandung nilai lebih besar dari jumlah terbesar indeks bahan makanan yaitu 52, sehingga dapat mengurangi total variasi. 4.6 Hasil Analisis Global Berdasarkan parameter optimal, dilakukan pengujian terhadap 10 data balita yang diambil secara acak yang dapat dilihat pada Tabel 11. Selisih kebutuhan gizi aktual dengan kandungan gizi pada makanan ditunjukkan pada Tabel 12. Rata-rata harga per hari didapatkan dari Total Harga dibagi 7 hari, selisih harga dapat dihitung selisih antara rata-rata harga per hari pada sistem dengan rata-rata harga per hari yang dikeluarkan oleh orangtua balita. Rata-rata yang harus dikeluarkan oleh para orangtua hasil rekomendasi sistem adalah sebesar Rp.25,003.63 dan rata-rata Total Harga yang harus dikeluarkan selama 7 hari adalah Rp.175,025.44. Tabel 11. Kebutuhan Gizi Aktual Nama
Balita 1 Balita 2 Balita 3 Balita 4 Balita 5 Balita 6 Balita 7 Balita 8 Balita 9 Balita 10
Umur (tahun)
Energi (kkal)
Protei n (gram)
Lemak (gram)
Karbohidra t (gram)
5.4 3.5 3.8 5 3.1 4.9 5.3 4 3.3 5.5
1692 1500 1560 1620 1420 1620 1674 1440 1460 1710
42.3 37.5 39.0 40.5 35.5 40.5 41.9 36.0 36.5 42.8
37.6 33.3 34.7 36.0 31.6 36.0 37.2 32.0 32.4 38.0
296.1 262.5 273.0 283.5 248.5 283.5 293.0 252.0 255.5 299.3
Fakultas Ilmu Komputer, Universitas Brawijaya
1329
Selisih Energi (kkal)
Selisih Lemak (gram) 1 (2.66% )
Selisih Karbohi drat (gram) 71.5 (24.15%)
Selisih Harga 8,360.57 (23.89% )
7.0333 33 (21.10 %) 8.1666 67 (23.56 %) -5.8 (16.11 %) 5.4555 56 (17.29 %) -10.1 (28.37 %) 0.4 (1.08% )
92.5 (35.24%)
9,203.92 (26.30% )
103 (37.73%)
12,635.0 0 (36.10% ) 8,343.71 (23.84% )
29 (11.51%)
-0.55 (1.29%)
-4.3 (13.44 %) 5.9444 44 (18.32 %) 0.9 (2.37% )
-3.21 (8.08%)
0.87 (2.85% )
70.99 (25.98%)
-11.45 (28.59 %) 1.85 (4.42% )
51.9 (18.31%)
78.5 (31.59%)
53.6 (19.12%)
69.95 (23.88%)
11,113.7 1 (31.75% ) 9,040.71 (25.83% ) 13,977.0 5 (39.93% ) 8,051.26 (23.00% )
84.6 (33.11%)
8,047.14 (22.99% )
75.35 (25.18%)
11,191.4 3 (31.97% ) 9,996.45 (28.56% )
5. KESIMPULAN 1. Implementasi algoritma PSO untuk optimasi Pemenuhan Kebutuhan Gizi Balita dapat dilakukan dengan cara inisialisasi partikel awal secara random, setelah mendapatkan nilai partikel dapat melakukan konversi nilai partikel kedalam indeks bahan makanan, hasil konversi digunakan untuk mengetahui nama bahan makanan, berat dan harga. Setelah tahap-tahap tersebut maka dapat dhitung fitness, Update Kecepatan, Update Posisi, Update Pbest dan Gbest. Gbest pada iterasi terakhir dijadikan sebagai Hasil Optimasi. 2. Parameter Algoritma PSO sangat berpengaruh terhadapat hasil Optimasi Pemenuhan Gizi Balita. Parameter PSO yang dianggap optimal dalam menyelesaikan masalah adalah jumlah partikel=30, Wmin=0.4, Wmax= 0.7, C1=2,
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
C2=1.5, Jumlah iterasi=40, Batas Atas angka permutasi sebesar 75. Berdasarkan parameter optimal dapat menghasilkan ratarata selisih energi, protein, lemak dan karbohidrat sebesar 16.04%, -8.08%, 2.85% dan 25.98% yang mampu menghemat pengeluaran orangtua balita sebesar 28.56%. DAFTAR PUSTAKA Alhamda, S., & Sriani, Y. 2014. Buku Ajar Ilmu Kesehatan Masyarakat (IKM). Yogyakarta: Deepublish. Almatsier, Sunita. 2009. Prinsip Dasar Ilmu Gizi. Felia, Eliantara, Cholissodin, I., & Indriati. 2016. Implementasi Algoritma Particle swarm Optimization dalam Optimasi Pemenuhan Kebutuhan Gizi Keluarga.S1.Universitas Brawijaya. Kementerian Kesehatan. 2013. Peraturan Menteri Kesehatan Republik Indonesia No.75 Tahun 2013. [Online]. Tersedia di:
[Diakses pada tanggal 1 November 2016]. Mahmudy, W.F. 2013. Modul Algoritma Evolusi Semester Ganjil 2013-2014. Universitas Brawijaya Malang. Mitiyani. 2010. Buku Saku Ilmu Gizi. Jakarta: Tim. Muaris, H. 2006. Sarapan Sehat Untuk Anak Balita. Jakarta : PT Gramedia Pustaka Utama. Perkembangan Balita. [Online]. Tersedia di: http://www.bayi7.com/perkembanganbalita-usia-1-5-tahun/ [Diakses pada tanggal 1 Mei 2017]. Permenkes RI. 2014. Pedoman Gizi Seimbang. Rumah Sakit RSCM dan PERSAGI. 2003. Penuntun DIIT Anak. Jakarta : PT Gramedia Pustaka Utama. Santosa, Budi & Willy, Paul. 2011. Metoda Metaheuristik, Konsep dan Implementasi. Surabaya: Graha Ilmu. Santoso, Soegeng, Dr., M.Pd & Anne Lies Ranti, Dra. M.Pd. Kesehatan dan Gizi. Jakarta: PT Asdi Mahasatya. Sulistiowati, F., Cholissodin, I., & Marji. 2016. Optimasi Penyusunan Bahan Makanan Sehat untuk Pemenuhan Gizi Keluarga Fakultas Ilmu Komputer, Universitas Brawijaya
1330 dengan Algoritma Evolution Strategies. S1. Universitas Brawijaya Malang.
Sutomo, B. 2010. Menu Sehat Alami untuk Batita dan Balita. Jakarta: Demedia. Widjaja, dr., W.C. 2008. Gizi tepat untuk perkembangan otak dan kesehatan balita. Kawan Pustaka.