Aplikasi Perhitungan Gizi dan Diet Khusus Bagi Pekerja Menggunakan Particle Swarm Optimization Berbasis Web

Made Aprisintia Yudiadewia1, I Ketut Gede Darma Putraa2, Ni Kadek Dwi Rusjayanthia3 aProgram Studi Teknologi Informasi, Fakultas Teknik, Universitas Udayana, Bali e-mail: 1[email protected], 2[email protected], 3[email protected]

Abstrak

Status gizi, yang merupakan kebutuhan gizi, seharusnya dipenuhi setiap tenaga kerja karena dapat berpengaruh untuk meningkatkan derajat kesehatan dan mengoptimalkan daya kerja pekerja. Kebutuhan gizi dapat dipenuhi melalui perhitungan gizi. Penelitian yang dilakukan adalah pembuatan aplikasi perhitungan gizi berbasis web menggunakan algoritma Particle Swarm Optimization. Aplikasi diimplementasikan ke dalam tiga tahapan, yaitu proses input data proses perhitungan gizi, dan proses optimasi bahan makanan. Hasil dari aplikasi, yaitu didapatkan bahwa nilai rata-rata selisih kebutuhan energi sebesar 0%, nilai rata-rata selisih kebutuhan karbohidrat sebesar -2,8%, nilai rata-rata selisih kebutuhan protein sebesar 7,5% nilai rata-rata selisih kebutuhan lemak sebesar 14,88%, dan nilai rata-rata selisih secara keseluruhan sebesar 1,15%. Batas toleransi dari pakar sebesar ±10% sehingga dapat disimpulkan bahwa rekomendasi sistem memenuhi kebutuhan energi, karbohidrat, dan protein pengguna sedangkan kebutuhan lemak tidak memenuhi. Keoptimalan rekomendasi sistem juga lebih akurat karena semakin kecil nilai rata-rata selisih secara keseluruhan, semakin optimal rekomendasi yang diberikan.

Kata kunci: Aplikasi Perhitungan Gizi, Algoritma Particle Swarm Optimization, Web

Abstract

The nutritional needs can affect improving the health status and optimizing the work power of workers. Nutritional needs can be met through nutritional calculations. The research was conducted in the creation of a web-based nutritional calculation application using the Particle Swarm Optimization algorithm. The nutritional calculation application is implemented in three stages: data input, nutritional calculation, and food ingredient optimization. The results of the application are the average value of the difference in energy requirements is 0% carbohydrate requirements are -2.8%, protein requirements are 7.5%, fat requirements are 14.88%, and the average value of the difference as a whole is 1.15%. The tolerance limit from the expert is ±10% so it can be concluded that the system recommendation meets the user's energy, carbohydrate, and protein needs while fat requirement does not meet. The optimization of the system recommendations is also more accurate.

Keywords : Nutritional Calculation Application, Particle Swarm Optimization Algorithm, Web

  • 1.    Introduction

Pola makan merupakan perilaku yang mempengaruhi keadaan gizi setiap individu [1] Pola makan mempengaruhi keadaan gizi karena kualitas dan kuantitas yang masuk kedalam tubuh saat makan menentukan asupan gizi individu sehingga mempengaruhi kesehatan individu. Gizi seimbang membuat berat badan normal, tidak mudah terkena penyakit, produktivitas meningkat serta terhindar dari berbagai macam penyakit kronis [2].

Menurut [2], konsumsi pangan masyarakat masih belum sesuai dengan pesan gizi seimbang. Hasil dari penelitian Riset Kesehatan Dasar (RISKEDAS) tahun 2010 menyatakan gambaran bahwa pertama, masih banyak penduduk yang tidak cukup mengonsumsi sayuran dan buah-buahan. Hasil Riskesdas tahun 2013 menyatakan bahwa 93,5% penduduk usia di atas 10 tahun mengonsumsi sayuran dan buah-buahan masih di bawah anjuran. Kedua,

kualitas protein yang dikonsumsi rata-rata perorang perhari masih rendah karena sebagian besar berasal dari protein nabati seperti serealia dan kacang-kacangan. Ketiga, konsumsi makanan dan minuman berkadar gula tinggi, garam tinggi dan lemak tinggi, baik pada masyarakat perkotaan maupun perdesaan, masih cukup tinggi.

Status gizi, yang merupakan kebutuhan gizi, seharusnya untuk dipenuhi oleh setiap tenaga kerja karena dapat berpengaruh untuk meningkatkan derajat kesehatan dan mengoptimalkan daya kerja pekerja. Namun, masih belum banyak pengusaha maupun pekerja di berbagai perusahaan yang memahami status gizi [3].

Kadar gizi seimbang untuk memenuhi kebutuhan gizi setiap tenaga kerja lebih akurat jika didapatkan melalui bantuan teknologi. Banyak pilihan metode yang bisa digunakan untuk memberikan hasil rekomendasi. Salah satunya, yaitu Particle Swarm Optimization (PSO). Algoritma PSO awalnya dikembangkan oleh Eberhart dan Kennedy pada tahun 1995 [4]. PSO merupakan algoritma optimasi yang meniru kehidupan populasi burung dan ikan dalam prosesnya bertahan hidup [5].

Algoritma PSO memiliki kelebihan, yaitu algoritma PSO memiliki konsep sederhana, dapat di diimplementasikan dengan mudah, dan lebih efisien dalam perhitungan dibandingkan dengan algoritma matematika dan teknik optimisasi heuristik lainnya [6]. Kelebihan lain PSO adalah performa yang baik karena selalu konvergen ke global optimal [7]. PSO juga merupakan algoritma heuristik yang telah terbukti memberikan nilai yang optimal dan lebih kompetitif ketika dibandingkan dengan algoritma genetika untuk mengatasi pilihan masalah yang menonjol [8].

Penelitian yang dilakukan mengusulkan penggunaan algoritma Particle Swarm Optimization (PSO) sebagai metode untuk memberikan hasil rekomendasi guna memenuhi kadar gizi yang seimbang bagi pekerja.

  • 2.    Gambaran Umum Sistem

Gambaran umum sistem menjelaskan tentang alur sistem yang terjadi pada aplikasi. Aplikasi perhitungan gizi dan diet khusus menggunakan algoritma particle swarm optimization sebagai metodenya. Gambaran umum sistem dapat dijelaskan sebagai berikut.

Input data pengguna (nama, berat badan, tinggi badan, usia, jenis kelamin, aktivitas fisik)


Proses data untuk menentukan kebutuhan gizi


Hasil


Pencarian bahan makanan menggunakan algoritma particle swarm optimization (PSO)


Perhitungan untuk gizi pekerja seperti kebutuhan gizi yang harus dipenuhi dan saran bahan makanan dalam sehari


Gambar 1 Gambaran Umum Sistem

Gambar 1 merupakan gambaran umum sistem perhitungan gizi dan diet khusus. Proses aplikasi perhitungan gizi dan diet khusus dimulai dengan pengguna melakukan input data ke sistem. Aplikasi kemudian memproses data melalui perhitungan manual. Selanjutnya aplikasi melakukan pencarian bahan makanan pada database menggunakan algoritma particle swarm optimization sebagai diet khusus yang disarankan. Saran diet khusus yang telah didapatkan kemudian ditampilkan ke pengguna.

  • 3.    Studi Literatur

Studi literatur menjelaskan tentang literatur yang digunakan dalam mengembangkan aplikasi perhitungan gizi dan diet khusus bagi pekerja menggunakan particle swarm optimization berbasis web.

  • 3.1    Perhitungan Kebutuhan Gizi

Menurut [9], terdapat beberapa tahapan yang harus dilakukan untuk menghitung kebutuhan energi seseorang. Tahapan perhitungan kebutuhan energi yang digunakan, yaitu: Tahap 1 : Menentukan Status Gizi

Rumus perhitungannya dapat dilihat pada Persamaan (1).

Berat Baian i kg i

IMT = Tinggi Badan (m) x Tinggi Badan \ mi

(1)


Kategori ambang batas IMT untuk Indonesia menurut [10] adalah

Tabel 1 Kategori Ambang Batas IMT untuk Indonesia

Kategori

IMT

Kurus

Kekurangan berat badan tingkat berat

<17,0

Kekurangan berat badan tingkat ringan

17,0 – 18,5

Normal

>18,5 – 25,0

Gemuk

Kelebihan berat badan tingkat ringan

>25,0 – 27,0

Kelebihan berat badan tingkat berat

>27,0

Bila berat badan dinilai kurang dari berat badan normal atau ideal, maka kebutuhan energinya ditambah sebanyak 500 kkal. Sedangkan bila lebih, dikurangi sebanyak 500 kkal [11].

Tahap 2 : Hitung Besarnya BMR (Basal Metabolic Rate)

BMR adalah energi minimal yang diperlukan tubuh dalam keadaan istirahat sempurna, baik fisik maupun mental serta pada posisi berbaring namun tidak tidur dalam suhu ruangan 25°C [9]. Perhitungan BMR yang digunakan adalah dengan menggunakan rumus Haris Benedict (1919). Rumus perhitungannya dapat dilihat pada Persamaan (2) untuk laki-laki dan Persamaan (3) untuk perempuan.

BMR (laki-laki) = 66 + (13,7×BB) + (5×TB) – (6,8×U)                   (2)

BMR (perempuan) = 655 + (9,6×BB) + (1,8×TB) – (4,7×U)             (3)

Ket. : BB = Berat Badan

TB = Tinggi Badan U = Usia

Tahap 3 : Hitung Energi Aktivitas Fisik Harian

Kategori aktivitas fisik harian yang digunakan dibagi ke dalam tiga golongan, yaitu ringan, sedang, dan berat [12]. Aktivitas fisik ringan merupakan aktivitas dengan sedikitnya tenaga yang dikeluarkan dan atau mungkin tidak menyebabkan pernapasan atau ketahanan; aktivitas fisik sedang merupakan aktivitas yang membutuhkan tenaga intens, kekuatan atau berirama dalam menggerakkan otot; dan aktivitas fisik berat merupakan aktivitas yang membutuhkan kekuatan serta ada kaitannya dengan berolahraga dan membuat berkeringat [13].

Tabel 2 Faktor Aktivitas Fisik

Aktivitas

Gender

Laki-laki

Perempuan

Ringan

1,65

1,55

Sedang

1,76

1,70

Berat

2,10

2,00

Rumus perhitungannya ditunjukkan pada Persamaan (4)

Energi aktivitas fisik = Faktor aktivitas fisik × BMR

(4)


  • 3.2    Penyediaan Bahan Makanan

Langkah pertama dalam penyediaan bahan makanan adalah dengan menghitung nilai kalori bahan makanan per hari. Menurut [9], menghitung nilai kalori bahan makanan memerlukan beberapa instrumen antara lain:

  • 1.    Nilai Kalori Makanan

Kebutuhan kalori karbohidrat yang diperlukan dalam sehari adalah sebanyak 65% dari total kalori, kebutuhan kalori lemak yang diperlukan dalam sehari adalah sebanyak 20% dari total kalori, dan kebutuhan kalori protein yang diperlukan dalam sehari adalah sebanyak 15% dari total kalori [14]. 1 gram karbohidrat menghasilkan 4 kalori. 1 gram lemak menghasilkan 9 kalori. 1 gram protein menghasilkan 4 kalori.

  • 2.    Daftar Komposisi Bahan Makanan (DKBM)

DKBM berupa tabel yang memuat berbagai jenis makanan beserta dengan kandungan zat gizinya. Kandungan zat gizi yang terbaca dalam DKBM merupakan kandungan setiap 100 gram bahan makanan. Misalnya, dalam daftar tercantum beras mengandung 6,8 gram protein. Artinya adalah dalam setiap 100 gram beras mengandung 6,8 gram protein dan seterusnya.

  • 3.    Ukuran Rumah Tangga (URT)

URT merupakan daftar takaran bahan makanan yang menggunakan ukuran yang biasa digunakan dalam kehidupan sehari-hari. Contoh URT, yaitu ptng (potong), sdm (sendok makan), mngk (mangkuk), btr (butir), gls (gelas), dll.

Langkah selanjutnya adalah dengan menyediakan bahan makanan yang proporsional berdasarkan jumlah kebutuhan energi yang telah dihitung [15]. Bahan makanan yang digunakan pada aplikasi dibagi ke dalam tujuh golongan sebagai berikut.

  • 1.      Bahan makanan sumber karbohidrat

  • 2.      Bahan makanan sumber protein hewani

  • 3.      Bahan makanan sumber protein nabati

  • 4.      Sayuran

  • 5.      Buah-buahan

  • 6.      Minyak

  • 7.       Gula

Menu sehari yang seimbang kemudian dapat disusun dengan menggunakan daftar pola menu sehari berdasarkan kandungan energi dalam satuan penukar yang dapat dilihat pada tabel 3. Pola menu sehari menunjukkan jumlah penukar dari tiap golongan bahan makanan yang perlu dimakan sehari sesuai dengan rata-rata kebutuhan energinya sehari. Contoh pada kebutuhan energi 1500 kkal, seseorang perlu memakan bahan makanan nasi sebanyak 3 gelas, daging sebanyak 3 potong, tempe sebanyak 3 potong, sayur sebanyak 2 mangkuk, buah sebanyak 3 potong, minyak sebanyak 4 sdm, dan gula sebanyak 1 sdm. Pola menu sehari yang disarankan dapat menjamin bahwa menu sehari yang disusun seimbang dalam semua zat gizi dan bervariasi [15].

Tabel 3 Tabel Pola Menu Sehari Berdasarkan Kandungan Energi

No.

Golongan Bahan Makanan

Kandungan Energi (kkal)

1500

1700

2000

2200

2500

2800

3000

1.

Nasi

3

4

5

6

7

8

9

2.

Daging

3

3

3

3

3

4

4

3.

Tempe

3

3

3

3

3

3

3

4.

Sayur

2

2

2

1

2

1

2

1

2

L

2

5.

Buah

3

3

3

2

2

2

2

6.

Minyak

4

4

6

6

8

8

8

7.

Gula

1

1

1

2

3

4

5

6

  • 3.2    Algoritma Particle Swarm Optimization (PSO)

Algoritma Particle Swarm Optimization (PSO) merupakan salah satu algoritma optimasi yang meniru kehidupan populasi burung dan ikan dalam prosesnya bertahan hidup [5]. Menurut [16], ada beberapa prosedur yang harus dilakukan untuk menerapkan Algoritma PSO dalam menyelesaikan masalah:

  • 1.    Inisialisasi partikel secara random dan membangkitkan kecepatan awal

Inisialisasi partikel dapat menggunakan pengkodean yang bertujuan menyederhanakan masalah menggunakan angka permutasi dalam merepresentasikan nilai dimensi dan selanjutnya dimensi tersebut dikonversi ke dalam indeks bahan makanan. Konversi nilai dimensi menjadi Indeks Bahan Makanan ditunjukkan pada Persamaan (5).

indeks dimensi ke-i=


(fc-u≡)


+1


(5)


Keterangan:

x = jumlah anggota jenis bahan makanan ke-i

  • y = nilai dimensi ke-i

  • z = batas atas angka permutasi

Jika diketahui jumlah anggota PH (Protein Hewani) = 40 dan batas atas=65, maka :

—1

indeks dimensi ke-1       =(40-1) ⅛s-r + 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. Nilai fitness yang digunakan menggunakan Persamaan (6).

const

Fitness = PtBciticiii + variasi

(6)


const merupakan penyeimbang nilai fitness karena perhitungan variasi menghasilkan angka puluhan. const digunakan untuk pembagian PenaltiGizi dengan nilai konstanta const = 10000. Perhitungan PenaltiGizi ditunjukkan pada Persamaan (7).

Penalti Gizi = |Keb.energi - Kandungan kalori| + |Keb.karbohidrat - Kandungan karbohidrat| + |Keb.protein - Kandungan protein| + |Keb.lemak - Kandungan lemak| (7)

  • 3.    Mencari Pbest

Perbandingan antara nilai Pbest sebelum dan sesudah Iterasi digunakan untuk mencari Pbest. Sebuah partikel dijadikan Pbest terbaru jika nilai fitness partikel baru lebih besar dari fitness Pbest sebelumnya.

  • 4.    Mencari Gbest sebagai partikel terbaik dari seleruh anggota swarm

Nilai fitness Pbest tertinggi digunakan sebagai nilai Gbest.

  • 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. Menentukan nilai velocity dapat dilihat pada Persamaan (8) Sedangkan menghitung bobot inersia dapat dilihat pada Persamaan (9).

T7k+l — IWk 4-               Yk                 Yk

^J          v^d    C1rand1× (Pbesti,j- )+)+C2ra2×2* (Gbestij≈j)           (8)

W=Wmax —              iter                                                (9)

Keterangan: 7⅛

= velocity partikel ke-i dimensi ke-j pada iterasi ke-k

W = bobot inertia

C1= nilai koefisien akselerasi ke-1

C2 = nilai koefisiean akselerasi ke-2

rand = nilai random [0, 1]

= posisi partikel ke-i dimensi ke-j pada iterasi ke-k

Pbesti,j= nilai Pbest partikel ke-i dimensi ke-j

Gbestj = nilai Gbest dimensi ke-j

Posisi terbaru dapat diperoleh dari hasil penjumlahan Posisi sebelumnya dengan Kecepatan baru. Menghitung posisi terbaru menggunakan Persamaan (10).


(10)

  • 6.    Ulang langkah ke-2 jika stopping condition belum terpenuhi.

  • 3.3    Web

Web merupakan istilah pendek dari world wide web adalah ruang informasi dimana pengenal global yang disebut Uniform Resource Identifier mengidentifikasi sumber-sumber daya yang berguna [17]. Informasi yang disediakan melalui jalur koneksi internet, terkandung dalam bentuk data digital, seperti teks, gambar, video, audio, dan animasi lainnya [18].

  • 4.    Hasil dan Pembahasan

Hasil dan pembahasan menjelaskan mengenai hasil yang telah dicapai dari pengujian aplikasi beserta pembahasannya.

  • 4.1    Uji Coba Jumlah Partikel

Uji coba jumlah partikel dilakukan untuk mengetahui hubungan banyaknya jumlah partikel dengan rata-rata nilai fitness. Uji coba dilakukan berdasarkan status gizi pengguna, yaitu normal, kurus tingkat ringan, gemuk tingkat ringan, kurus tingkat berat, dan gemuk tingkat berat. Jumlah partikel yang digunakan mulai dari 5 sampai dengan 50 dengan kelipatan 5. Uji coba setiap jumlah partikel dilakukan sebanyak 10 kali dengan parameter yang sudah ditentukan, yaitu nilai ωmin sebesar 0,4, nilai ωmax sebesar 0,9, nilai C1 dan C2 sebesar 1, jumlah iterasi sebanyak 40 dan batas atas angka permutasi sebesar 65.

Tabel 4 Tabel Hasil Akhir Uji Coba Jumlah Partikel

No.

Kategori

Jumlah Partikel

Rata-Rata Fitness

1

Normal

50

148,4791678

2

Kurus Tingkat Ringan

50

183,8664613

3

Gemuk Tingkat Ringan

50

107,8288149

4

Kurus Tingkat Berat

45

171,8334318

5

Gemuk Tingkat Berat

50

117,9712967

Tabel 4 merupakan tabel hasil akhir uji coba terhadap banyaknya jumlah partikel. Jumlah partikel terbaik yang digunakan pada penelitian adalah jumlah partikel dengan rata-rata fitness terbesar. Rata-rata terbesar adalah 183,8664613 dengan jumlah partikel 50. Jumlah partikel sebanyak 50 digunakan sebagai parameter PSO.

  • 4.2    Uji Coba Nilai Qmin dan Umax

Uji coba nilai ωmin dan ωmax dilakukan untuk mengetahui nilai ωmin dan ωmax terbaik agar mendapatkan solusi yang optimal. Uji coba dilakukan berdasarkan status gizi pengguna, yaitu normal, kurus tingkat ringan, gemuk tingkat ringan, kurus tingkat berat, dan gemuk tingkat berat. Nilai ωmin yang digunakan pada uji coba sebesar 0,4 dan nilai ωmax yang digunakan sebesar 0,5; 0,6; 0,7; 0,8; 0,9. Uji coba tiap nilai dilakukan sebanyak 10 kali dengan parameter

yang sudah ditentukan, yaitu jumlah partikel sebanyak 50, nilai C1 dan C2 sebesar 1, jumlah iterasi sebanyak 40 dan batas atas angka permutasi sebesar 65.

Tabel 5 Tabel Hasil Akhir Uji Coba Nilai Umin dan Umax

No.

Kategori

Nilai □min dan □max

Rata-Rata Fitness

1

Normal

0,4 ; 0,8

147,047975

2

Kurus Tingkat Ringan

0,4 ; 0,7

173,2038623

3

Gemuk Tingkat Ringan

0,4 ; 0,5

119,7796032

4

Kurus Tingkat Berat

0,4 ; 0,8

164,2619916

5

Gemuk Tingkat Berat

0,4 ; 0,7

117,8375992

Tabel 5 merupakan tabel hasil akhir uji coba nilai ωmin dan ωmax. Nilai ωmin dan ωmax terbaik yang digunakan pada penelitian adalah nilai ωmin dan ωmax dengan rata-rata fitness terbesar. Rata-rata terbesar adalah 173,2038623 dengan nilai ωmin dan ωmax sebesar 0,4 dan 0,7. Nilai ωmin dan ωmax sebesar 0,4 dan 0,7 digunakan sebagai parameter PSO.

  • 4.3    Uji Coba Banyaknya Iterasi

Uji coba banyaknya iterasi dilakukan untuk mengetahui hubungan banyaknya jumlah iterasi dengan rata-rata nilai fitness. Uji coba dilakukan berdasarkan status gizi pengguna, yaitu normal, kurus tingkat ringan, gemuk tingkat ringan, kurus tingkat berat, dan gemuk tingkat berat. Jumlah iterasi yang digunakan sebanyak 10 sampai dengan 100 dengan kelipatan 10. Uji coba setiap iterasi dilakukan sebanyak 10 kali dengan parameter yang sudah ditentukan, yaitu jumlah partikel sebanyak 50, nilai C1 dan C2 sebesar 1, nilai ωmin sebesar 0,4, nilai ωmax sebesar 0,7, dan batas atas angka permutasi sebesar 65.

Tabel 6 Tabel Hasil Akhir Uji Coba Banyaknya Iterasi

No.

Kategori

Jumlah Iterasi

Rata-Rata Fitness

1

Normal

60

149,5820465

2

Kurus Tingkat Ringan

70

194,3404205

3

Gemuk Tingkat Ringan

40

112,9340891

4

Kurus Tingkat Berat

30

171,5194576

5

Gemuk Tingkat Berat

70

128,8363762

Tabel 6 merupakan tabel hasil akhir uji coba banyaknya iterasi. Iterasi terbaik yang digunakan pada penelitian adalah iterasi dengan rata-rata fitness terbesar. Rata-rata terbesar adalah 194,3404205 dengan iterasi sebanyak 70. Iterasi sebanyak 70 digunakan sebagai parameter PSO.

  • 4.4    Uji Coba Batas Atas Angka Permutasi

Uji coba batas atas angka permutasi dilakukan untuk mengetahui hubungan batas atas angka permutasi dengan rata-rata nilai fitness. Uji coba dilakukan berdasarkan status gizi pengguna, yaitu normal, kurus tingkat ringan, gemuk tingkat ringan, kurus tingkat berat, dan gemuk tingkat berat. Batas atas angka permutasi yang digunakan sebesar 40 sampai dengan 85 dengan kelipatan 5. Uji coba setiap nilai batas atas dilakukan sebanyak 10 kali dengan parameter yang sudah ditentukan, yaitu jumlah partikel sebanyak 50, nilai C1 dan C2 sebesar 1, nilai ωmin sebesar 0,4, nilai ωmax sebesar 0,7, dan jumlah iterasi sebanyak 70.

Tabel 7 Tabel Hasil Akhir Uji Coba Batas Atas Angka Permutasi

No.

Kategori

Batas Atas Angka Permutasi

Rata-Rata Fitness

1

Normal

55

159,5994303

2

Kurus Tingkat Ringan

80

187,2501073

3

Gemuk Tingkat Ringan

75

111,2585182

4

Kurus Tingkat Berat

45

172,0424636

5

Gemuk Tingkat Berat

85

124,1947781

Tabel 7 merupakan tabel hasil akhir uji coba batas atas angka permutasi. Batas atas terbaik yang digunakan pada penelitian adalah batas atas dengan rata-rata fitness terbesar. Rata-rata terbesar adalah 187,2501073 dengan batas atas sebesar 80. Batas atas sebesar 80 digunakan sebagai parameter PSO.

  • 4.5    Analisis Global Hasil Uji Coba

Hasil uji coba yang telah dilakukan mendapatkan parameter yang dianggap optimal dalam menyelesaikan masalah. Parameter-parameter tersebut adalah sebagai berikut. iterasi           =70

jumlah partikel =50

batas atas     =80

C1          =1

C2            =1

Parameter-parameter yang telah didapatkan kemudian dilakukan uji coba secara global. Uji coba dilakukan dengan menggunakan 6 data diri pekerja yang ditunjukkan pada tabel 8. Kemudian gizi aktual yang dibutuhkan pengguna dihitung secara manual. Aplikasi juga menghitung gizi yang dibutuhkan. Kedua data hasil perhitungan kemudian dibandingkan dan dicari selisihnya yang ditunjukkan pada tabel 9.

Tabel 8 Data Diri Pekerja

No.

Nama

Berat Badan (Kg)

Tinggi Badan (cm)

Usia

Jenis Kelamin

Golongan Kerja

1

Pekerja1

75

165

25

Wanita

Ringan

2

Pekerja2

88

173

29

Pria

Sedang

3

Pekerja3

47

154

25

Wanita

Ringan

4

Pekerja4

54

167

26

Pria

Sedang

5

Pekerja5

45

160

25

Wanita

Ringan

6

Pekerja6

70

165

25

Pria

Berat

Tabel 9 Tabel Hasil Selisih

No.

Nama

Keb. Energi

Keb. Karbohidrat

Keb. Protein

Keb. Lemak

1

Pekerja1

-2 (-0,1%)

2 (0,7%)

-4 (-5,6%)

1 (2,4%)

2

Pekerja2

1 (0,03%)

-18 (-3,8%)

-20 (-18,3%)

17 (26,15%)

3

Pekerja3

1 (0,05%)

-1 (-0,3%)

-7 (-9,5%)

3 (6,8%)

4

Pekerja4

-1 (-0,04%)

-25 (-6%)

-9 (-9,3%)

15 (26,3%)

5

Pekerja5

-1 (-0,04%)

-6 (-1,5%)

2 (2,2%)

2 (3,7%)

6

Pekerja6

3 (0,1%)

-30 (-6,1%)

-5 (-4,4%)

16 (23,9%)

Nilai rata-rata selisih

0,17 (0%)

-13 (-2,8%)

-7,2 (-7,5%)

9 (14,88%)

Nilai rata-rata selisih kebutuhan gizi aktual dengan kebutuhan gizi rekomendasi sistem, yaitu nilai rata-rata selisih kebutuhan energi sebesar 0%, nilai rata-rata selisih kebutuhan karbohidrat sebesar -2,8%, nilai rata-rata selisih kebutuhan protein sebesar 7,5%, dan nilai rata-rata selisih kebutuhan lemak sebesar 14,88%. Batas toleransi dari pakar sebesar ±10%

sehingga dapat disimpulkan bahwa rekomendasi sistem memenuhi kebutuhan energi, karbohidrat, dan protein pengguna sedangkan kebutuhan lemak tidak memenuhi karena diatas batas toleransi. Persentase nilai rata-rata selisih secara keseluruhan sebesar 1,15% sehingga dapat disimpulkan bahwa keoptimalan rekomendasi sistem lebih akurat karena semakin kecil nilai rata-rata selisih secara keseluruhan, semakin optimal rekomendasi yang diberikan.

  • 5.    Kesimpulan

Aplikasi perhitungan gizi dan diet khusus bagi pekerja menggunakan algoritma PSO dapat memberikan rekomendasi bahan makanan yang dapat digunakan untuk konsumsi selama sehari bagi pekerja. Aplikasi perhitungan gizi diimplementasikan ke dalam tiga tahapan, yaitu proses input data, proses perhitungan gizi, dan proses optimasi bahan makanan.

Uji coba yang dilakukan meliputi uji coba terhadap banyaknya jumlah partikel, nilai □ min dan □max, banyaknya iterasi, dan batas atas angka permutasi. Hasil uji coba yang didapatkan berupa parameter PSO yang optimal bagi penelitian. Parameter PSO yang optimal adalah jumlah partikel sebanyak 50, nilai □min dan □max sebesar 0,4 dan 0,7, iterasi sebanyak 70, dan batas atas angka permutasi sebesar 80.

Hasil dari aplikasi, yaitu didapatkan bahwa nilai rata-rata selisih kebutuhan energi sebesar 0%, nilai rata-rata selisih kebutuhan karbohidrat sebesar -2,8%, nilai rata-rata selisih kebutuhan protein sebesar 7,5%, nilai rata-rata selisih kebutuhan lemak sebesar 14,88%, dan nilai rata-rata selisih secara keseluruhan sebesar 1,15%. Batas toleransi dari pakar sebesar ±10% sehingga dapat disimpulkan bahwa rekomendasi sistem memenuhi kebutuhan energi, karbohidrat, dan protein pengguna sedangkan kebutuhan lemak tidak memenuhi karena diatas batas toleransi. Keoptimalan rekomendasi sistem juga lebih akurat karena semakin kecil nilai rata-rata selisih secara keseluruhan, semakin optimal rekomendasi yang diberikan.

References
  • [1]    Y. Il Park and N. Joo, “The Effects of industrial workers ’ food choice attribute on sugar intake pattern and job satisfaction with Structural Equcation Model,” vol. 10, no. 4, pp. 464–470, 2016, doi: 10.4162/nrp.2016.10.4.464.

  • [2]    Kemenkes, “PERATURAN MENTERI KESEHATAN REPUBLIK INDONESIA NOMOR 41 TAHUN 2014 TENTANG PEDOMAN GIZI SEIMBANG,” 2014.

  • [3]    Natizatun, T. S. Nurbaeti, and Sutangi, “Hubungan Status Gizi dan Asupan Zat Gizi dengan Kelelahan Kerja Pada Pekerja Industri Di Industri Rumah Tangga Peleburan Alumunium Metal Raya Indramayu Tahun 2018,” J. Kesehat. Masy., vol. 3, no. 2, pp. 72–78, 2018.

  • [4]    I. G. Ayu, P. Diani, and I. Cholissodin, “Optimasi Komposisi Bahan Makanan bagi Pasien Rawat Jalan Penyakit Jantung dengan Menggunakan Algoritme Particle Swarm Optimization,” vol. 1, no. 11, pp. 1385–1394, 2017.

  • [5]    A. A. Boestari, D. E. Ratnawati, and T. S. Kusuma, “Optimasi Komposisi Makanan Bagi Penderita Hipertensi Menggunakan Metode Particle Swarm Optimization,” vol. 1, no. 10, pp. 1158–1167, 2017.

  • [6]    F. Eliantara, I. Cholissodin, and Indriati, “OPTIMASI PEMENUHAN KEBUTUHAN GIZI KELUARGA MENGGUNAKAN PARTICLE SWARM OPTIMIZATION,” vol. 5662, pp. 9– 10, 2016.

  • [7]    A. U. Azmi, R. Hidayat, and M. Z. Arif, “Perbandingan Algoritma Particle Swarm Optimization (Pso) Dan Algoritma Glowworm Swarm Optimization (Gso) Dalam Penyelesaian Sistem Persamaan Non Linier,” Maj. Ilm. Mat. dan Stat., vol. 19, no. 1, p. 29, 2019, doi: 10.19184/mims.v19i1.17263.

  • [8]    A. F. Indriani and M. A. Muslim, “SVM Optimization Based on PSO and AdaBoost to Increasing Accuracy of CKD Diagnosis,” vol. 10, no. 2, pp. 119–127, 2019.

  • [9]    D. P. Irianto, PEDOMAN GIZI LENGKAP: KELUARGA & OLAHRAGAWAN. Yogyakarta: ANDI, 2017.

  • [10]    M. Adriani and B. Wirjatmadi, PERANAN GIZI DALAM SIKLUS KEHIDUPAN. Jakarta: KENCANA, 2014.

  • [11]    A. Proverawati and E. K. Wati, Ilmu Gizi untuk Keperawatan & Gizi Kesehatan. Yogyakarta: Mulia Medika, 2011.

  • [12]    A. Retno Yunitasari, T. Sinaga, and R. Nurdiani, “Asupan gizi, aktivitas fisik, pengetahuan gizi, status gizi dan kebugaran jasmani guru olahraga sekolah dasar,” vol. 14, no. 2, pp. 197–206, 2019.

  • [13]    M. Shafaat, I. Cholissodin, and E. Santoso, “Optimasi Komposisi Makanan Diet bagi Penderita Hipertensi menggunakan Algoritme Genetika,” vol. 2, no. 1, pp. 226–236, 2018.

  • [14]    A. M. Purnomo et al., “Algoritma Genetika untuk Optimasi Komposisi Makanan Bagi Penderita Hipertensi Genetic Algorithm for Optimizing Food Composition for Hypertension Patients,” vol. 7, no. January, pp. 1–6,   2019, doi:

10.14710/jtsiskom.7.1.2019.1-6.

  • [15]    S. Almatsier, PRINSIP DASAR ILMU GIZI. Jakarta: Gramedia, 2005.

  • [16]    L. Istikomah, I. Cholissodin, and Marji, “Implementasi Algoritma Particle Swarm Optimization ( PSO ) untuk Optimasi Pemenuhan Kebutuhan Gizi Balita,” vol. 1, no. 11, pp. 1321–1330, 2017.

  • [17]    J. Kawilarang, I. K. A. Purnawan, and N. M. I. M. Mandenni, “Sistem Informasi Hotel Modul Front Office Berbasis Web,” vol. 3, no. 1, pp. 8–14, 2015.

  • [18]    S. Ardhi and H. Sutiksno, “Penerapan Metode Simpleks untuk Optimasi Jumlah Kalori Makanan yang Dibutuhkan dalam Menu Diet,” vol. 8, no. 1, pp. 40–49, 2018.