## Penerapan Algoritma Genetika untuk Menghitung Biaya Optimal Komposisi Bahan Makanan pada Penderita Uric Acid
F Kurniasari 1 , P Andayani 2 *
Program Studi Informatika, Universitas Internasional Semen Indonesia 1,2 fitri.kurniasari15@student.uisi.ac.id 1 , puji.andayani@uisi.ac.id 2 *
diterima: 9 September 2020 direvisi: 2 Maret 2021 dipublikasi: 1 September 2021

## Abstrak
Pola  makan  yang  tidak  seimbang  dengan  jumlah  asupan  protein  sangat  tinggi  menyebabkan tingginya kadar asam urat di dalam tubuh. Uric Acid adalah salah satu penyakit yang disebabkan karena tingginya kadar asam urat dalam tubuh manusia. Di Indonesia, Uric Acid menjadi salah satu jenis penyakit yang banyak diderita masyarakat Indonesia. Penelitian Angriani(2018) menyebutkan bahwa  penyebab  tertinggi uric  acid karena  asupan  purin  yang  terlalu  tinggi.  Bagi  sejumlah masyarakat,  mengatur  menu  makanan  sehari-hari  menjadi  hal  yang  berat.  Guna  mengatasi permasalahan  tersebut,  pada  penelitian  ini  dibuat  sistem  pemilihan  menu  bahan  makanan  untuk penderita uric  acid dengan  algoritma  genetika.  Pada  penelitian  ini  digunakan  50  bahan  makanan dengan masing-masing kandungan gizi (karbohidrat, protein, lemak). Representasi kromosom yang digunakan merupakan permutasi bilangan integer yang memiliki panjang kromosom 15. Hasil yang diperoleh dari penelitian ini berupa rekomendasi bahan makanan untuk penderita uric acid (asam urat)  dengan  rincian  nama  bahan  makanan,  berat,  kandungan  kalori,  kandungan  karbohidrat, kandungan  protein,  kandungan  lemak,  dan  harga.  Harga  total  biaya  juga  ditampilkan,  guna memprediksi biaya yang dikeluarkan.
Kata kunci: algoritma genetika; uric acid ; komposisi makanan; optimal; harga

## Abstract
An unbalanced diet with a very high protein intake causes high levels of uric acid in the body. Uric Acid is a disease caused by high levels of uric acid in the human body. In Indonesia, Uric Acid is one type of disease that many Indonesians suffer from. Angriani's research (2018) states that the highest cause of uric acid is due to too high purine intake. For several people, managing their daily diet has become a difficult task. To overcome this problem, in this study, a system of selecting food ingredients for uric acid sufferers was developed using a genetic algorithm. In this study, 50 food ingredients  were  used  with  their  respective  nutritional  content  (carbohydrates,  protein,  fat).  The chromosome  representation  used  is  a  permutation  of  an  integer  number  that  has  a  chromosome length of 15. The results obtained from this study are food recommendations for people with uric acid (uric acid) with details on the name of food ingredients, weight, calorie content, carbohydrate content, protein content, content. fat, and the price. The total cost price is also displayed, to predict the costs incurred.
Keywords: genetic algorithm; uric acid; food ingredients; optimal; prices

## 1. Pendahuluan
Indonesia merupakan negara terbesar di dunia yang penduduknya menderita asam urat, prevalensi  penyakit uric  acid (asam  urat)  diperkirakan    sekitar  1,6-13,6/100.000  orang. Faktor penyebab terjadinya penyakit uric acid (asam urat) adalah pola makan yang tinggi kandungan purin dan faktor genetik. Purin adalah protein dari golongan nukleoprotein yang sedikt dibutuhkan oleh tubuh.  Umumnya pola makan yang tidak seimbang (jumlah asupan
protein sangat tinggi) menyebabkan tingginya kadar asam urat di dalam tubuh (NURSILMI, 2013).
Menurut  (YUNITA,  2018)  penyebab  utama  peningkatan  kadar  asam  urat  dalam  darah adalah  konsumsi  makanan  mengandung  purin  secara  berlebihan  seperti  daging,  jerohan, kepiting, kerang, polong-polongan, dan keju. Penyakit asam urat terjadi ketika kadar asam urat dalam darah melebihi batas normal. Berdasarkan hasil penelitian laboratorium klinis, kadar asam urat normal wanita 2,4 – 5,7 mg/dl dan untuk pria lebih tinggi yaitu 3,4 – 7,0 mg/dl. Pada anak kadar asam urat berkisar antara 3,0 – 4,0 mg/dl dan setelah pubertas pada pria mencapai 5,2 mg/dl (KUSUMAYANTI, 2014).
Masalah  tersebut  dapat  diatasi  dengan  mengatur  komposisi  bahan  makanan  dengan mengendalikan kadar purin pada penderita asam urat. Bagi orang awam penderita asam urat, mengatur komposisi makanan masih dirasa sulit karena kurangnya pengetahuan mengenai kandungan  gizi  yang  ada  pada  bahan  makanan  karena  setiap  bahan  makanan  mempunyai kandungan gizi  yang berbeda-beda. Selain dari masalah pengetahuan, masalah biaya juga menjadi faktor utama penghambat dalam mengatur komposisi bahan makanan bagi penderita asam  urat.  Penggunaan  konsep  optimasi  akan  menghasilkan  suatu  keluaran  berupa  bahan makanan  yang  sebaiknya  dikonsumsi  oleh  penderita  asam  urat . Menurut  (KAMIL,  2014) optimasi  merupakan  aktivitas  untuk  mendapatkan  hasil  yang  terbaik  dari  pilihan  yang tersedia.
Algoritma  genetika  pernah  digunakan  dalam  beberapa  penelitian  untuk  menyusun komposisi  makanan,  seperti  yang  dilakukan  oleh  Siahaan  (2017)  yang  menggunakan algoritma  genetika  untuk  mendapatkan  komposisi  makanan  yang  baik  bagi  penderita penyakit jantung. Pada penelitian Siahaan memetakan solusi kedalam kromosom permutasi, metode crossover yang  digunakan adalah extended intermediate crossover , untuk  metode mutasi yang digunakan adalah random mutation dan metode seleksi yang digunakan elitism selection .  Penelitian  selanjutnya  dilakukan  oleh  Kartikasari  (2017)  yang  menggunakan algoritma genetika untuk mendapatkan komposisi makanan bagi penderita hipertensi. Pada penelitiannya  metode crossover yang  digunakan  adalah one  cut  point  crossover ,  metode mutasi  yang  digunakan  adalah reciprocal  exchange  mutation ,  dan  metode  seleksi  yang digunakan adalah elitism selection .
Berdasarkan keberhasilan penerapan algoritma pada permasalahan menyusun komposisi bahan  makanan  maka  pada  skripsi  ini  dilakukan  penelitian  terhadap  optimasi  komposisi bahan makanan bagi penderita uric acid dengan algoritma genetika. Capaian dari skripsi ini yaitu rekomendasi bahan makanan untuk sehari yang terdiri dari jenis-jenis bahan makanan, berat bahan makanan, kandungan karbohidrat, protein, lemak, dan harga dari setiap bahan makanan.  Penelitian  ini  diharapkan  mampu  membantu  penderita uric  acid dalam memberikan rekomendasi komposisi bahan makanan dengan biaya paling ekonimis.

## 2. Kajian Pustaka
Asam urat merupakan sisa hasil akhir metabolisme purin baik yang berasal dari makanan yang dikonsumsi maupun yang berasal dari pemecahan protein tubuh (sel tubuh yang rusak). Penyakit asam urat lebih sering ditemukan pada pria dibanding wanita. Hal ini disebabkan karena pria tidak mempunyai hormon esterogen yang dapat membantu pembuangan asam urat, sedangkan wanita mempunyai hormon esterogen yang dapat membantu pembuangan asam urat (KUSUMAYANTI, 2014). Kadar asam urat dalam darah melebihi 7mg/dl akan menyebabkan asam urat mengendap di sendi atau kulit. Bila kondisi tersebut dibiarkan maka akan  terjadi  komplikasi  lebih  lanjut  yaitu  asam  urat  akan  mengendap  di  ginjal  selajutnya akan menyebabkan gagal ginjal (PURWANINGSIH, 2010).
Energi merupakan daya atau sumber kemampuan untuk bekerja. Energi tidak dapat rusak melainkan  mengalami  perubahan  bentuk  dari  suatu  bentuk  tertentu  menjadi  bentuk  yang lainnya (SIAHAAN, 2017). Energi dapat dihitung salah satunya dengan menggunakan AMB (Angka  Metabolisme  Basal)  atau  BMR  ( Basal  Metabolic  Rate ).  Adapun  rumus  untuk menghitung AMB berikut (ALMATSIER, 2008):
a. Pada Laki-laki
𝐴𝑀𝐵 = 66 + (13.7 𝑥 𝐵𝐵) + (5 𝑥 𝑇𝐵) − (6.8 𝑥 𝑈)                                                            (1) b. Pada Perempuan
𝐴𝑀𝐵 = 655 + (9.6 𝑥 𝐵𝐵) + (1.8 𝑥 𝑇𝐵) − (4.7 𝑥 𝑈)                                                        (2)
Keterangan : BB = berat badan dalam kg TB = tinggi badan dalam cm
U = usia dalam tahun
Setelah  diperoleh  nilai  kebutuhan  energi  dengan  menggunakan  AMB,  selanjutnya dilakukan perhitungan kebutuhan gizi penderita uric acid seperti pada persamaan berikut:
𝐾𝑒𝑏𝑢𝑡𝑢ℎ𝑎𝑛 𝑘𝑎𝑟𝑏𝑜ℎ𝑖𝑑𝑟𝑎𝑡 = 60 − 75% x energi harian
4 (3) 𝐾𝑒𝑏𝑢𝑡𝑢ℎ𝑎𝑛 𝑙𝑒𝑚𝑎𝑘 = 10 − 25% x energi harian 9 (4) 𝐾𝑒𝑏𝑢𝑡𝑢ℎ𝑎𝑛 𝑝𝑟𝑜𝑡𝑒𝑖𝑛 = 10 − 15% x energi harian 4 (5)
Algoritma  genetika  adalah  algoritma  pencarian  heuristik  yang  dikembangkan  pada prinsip  genetika  dan  proses  seleksi  alamiah  Teori  Evolusi  Darwin.  Dalam  Teori  Evolusi Darwin,  individu  dibentuk  secara  acak  kemudian  berkembang  biak  melalui  proses reproduksi sehingga terbentuk sekumpulan individu yang disebut sebagai populasi. Setiap individu  mempunyai  tingkat  kebugaran  yang  berbeda,  tingkat  kebugaran  ini  menentukan individu  yang  tetap  bertahan  dalam  populasi  tersebut.  Sebagian  individu  tetap  bertahan hidup  dan  sebagian  lainnya  mati.  Dalam  teori  ini  dikenal  adanya  proses  seleksi  alam, individu  yang  memiliki  tingkat  kebugaran  yang  tinggi  saja  yang  bisa  bertahan  hidup (ZUKHRI, 2014).

## 3. Metode Penelitian
Pada sub bab ini akan dijelaskan mengenai penyelesaian masalah menggunakan algoritma genetika.  Tahapan  penyelesaiannya  meliputi  mengumpulkan  data  bahan  makanan, penentuan  populasi  awal,  evaluasi  populasi,  penyilangan,  mutasi,  seleksi,penentuan individu-individu  terbaik.  Flowchart  tahapan  pada  algoritma  genetika  dapat  dilihat  pada Gambar 1.

## Gambar 1. Alur Penyelesaian Algoritma Genetika
Berikut merupakan contoh permasalahan dengan memanfaatkan algoritma genetika. Data dari seorang penederita uric acid perempuan adalah sebagai berikut, tinggi badan 158 cm, berat badan 50 kg, usia 30 tahun, jenis kelamin perempuan. Langkah pertama yang harus dilakukan adalah menghitung kebutuhan kalori seorang pasien menggunakan rumus AMB. 𝐴𝑀𝐵 = 655 + (9.6 𝑥 𝐵𝐵) + (1.8 𝑥 𝑇𝐵) − (4.7 𝑥 𝑈)
= 655 + (13.7 𝑥 58) + (5 𝑥 158) − (6.8 𝑥 30) = 1355.2 𝑘𝑘𝑎𝑙
Setelah  diperoleh  kebutuhan  kalori  dari  penderita uric  acid ,  selanjutnya  dihitung kebutuhan karbohidrat, protein, dan lemak
𝐾𝑒𝑏𝑢𝑡𝑢ℎ𝑎𝑛 𝑘𝑎𝑟𝑏𝑜ℎ𝑖𝑑𝑟𝑎𝑡 = 60% x 1355.2 4 = 203.28 𝑔𝑟𝑎𝑚. 𝐾𝑒𝑏𝑢𝑡𝑢ℎ𝑎𝑛 𝑙𝑒𝑚𝑎𝑘 = 25% x 1355.2 9 = 37.64 𝑔𝑟𝑎𝑚. 𝐾𝑒𝑏𝑢𝑡𝑢ℎ𝑎𝑛 𝑝𝑟𝑜𝑡𝑒𝑖𝑛 = 15% x 1355.2 4 = 50.82 𝑔𝑟𝑎𝑚.
Berdasarkan  hasil  perhitungan  tersebut,  maka  kebutuhan  kalori  penderita uric  acid sebesar 1355.2 kkal, kebutuhan karbohidrat sebesar 203.28 gram, kebutuhan lemak 37.6444 gram, dan kebutuhan protein sebesar 50.82 gram.
Representasi kromosom yang digunakan pada penelitian ini adalah representasi permutasi dengan bilangan integer yang berisi nomor bahan makanan yang akan dikonsumsi. Pada satu kromosom terdapat 15 gen penyusun dengan susunan  yang telah ditentukan,  yaitu pada 5
gen  pertama  merupakan  komposisi  menu  bahan  makanan  pagi,  5  gen  kedua  merupakan komposisi  menu  bahan  makanan  siang  serta  5  gen  terakhir  berisi  komposisi  menu  bahan makanan  malam.  Masing-masing  5  gen  tersebut  merepresentasikan  makanan  4  sehat  5 sempurna  diantaranya  karbohidrat,  sumber  hewani,  sayur,  buah  dan  susu.  Representasi komponen pada setiap bahan makanan untuk makan pagi, siang dan malam ditunjukkan pada gambar berikut.

## Gambar 2. Contoh Representasi Kromosom

## 4. Hasil dan Pembahasan

## 4.1. Analisis Data
Pada penelitian ini kebutuhan bahan makanan diperoleh dari Website Dinas Kesehatan Indonesia. Data yang digunakan dalam penelitian yaitu jenis bahan makanan, berat bahan makanan, jumlah kalori bahan makanan, dan harga bahan makanan. Berikut beberapa daftar bahan makanan yang boleh dikonsumsi oleh penderita uric acid .

## Tabel 4. 1 Bahan Makanan Penderita
Uric Acid No Bahan Makanan Berat (gr) Kalori (kkal) Karbohidrat (gr) Protein (gr) Lemak (gr) Harga (Rp) 1 Beras 50 178.5 38.55 4.2 0.85 550 2 Beras Ketan 50 48.5 10.5 1.01 0.095 800 3 Tepung Beras 50 176.5 40 3.5 0.4 650 4 Tepung Terigu 50 166.5 38.6 4.5 0.5 500 5 Tepung Jagung 50 177.5 36.85 5.6 1.95 800 6 Tepung Sagu 100 354 87.55 0.42 0.05 2100 7 Ubi 100 83 18.8 1.5 0.2 500 8 Kentang 100 36 37.7 1.05 0.1 650 9 Singkong 100 160 38.06 1.36 0.28 500 10  Gembili 50 65.5 15.65 0.55 0.1 500 11  Talas 50 56 13.23 0.75 0.1 600 12  Bihun 50 174 41.05 2.35 0.05 550 13  Jagung Manis 100 86 19.02 3.22 1.18 1500 14  Wortel 100 36 7.9 1 0.6 1000 15  Terong Ungu 100 28 5.5 1.1 0.2 400 16  Labu Siam 100 30 6.7 0.6 0.1 700 17  Lobak 100 28 6.43 0.9 0.1 350 18  Sawi Putih 100 12 2.23 1.1 0.17 1200 19  Sawi Hijau 100 30 5.69 2.45 0.42 1300 20  Tomat 100 18 3.92 0.88 0.2 650 21  Daun Kelor 100 92 14.3 3.1 1.6 1000 22  Jantung Pisang 100 32 7.1 1.2 0.3 860 23  Pare 100 29 6.82 1.12 0.22 1600
24  Daun Pepaya 100 87 11.9 8 2 1500 25  Pepaya Muda 100 26 4.9 2.1 0.1 600 26  Kecipir 100 32 5.8 2.9 0.2 2000 27  Baby Corn 190 80 17 3 0 4700 28  Labu Acar 100 46 7.94 1.08 1.75 1200 29  Labu Kuning 100 26 6.5 1 0.1 1000 30  Kubis 100 24 5.58 1.44 0.12 450 31  Labu Air 100 19 3.8 0.6 0.2 1500 32  Oyong 100 18 4.02 1.08 0.18 1500 33  Makaroni 100 88.25 19.6 2.1 0.1 1600 34  Agar-agar 100 25 5.92 0.01 0.02 3000 35  Telur Puyuh 50 74 0.205 6.5 5.5 1300 36  Telur Ayam 50 73.5 4.38 6.29 4.5 1200 37  Daging Ayam 75 223.5 0 13.6 6 2100 38  Ikan Mujaher 100 169 2.22 24.55 6.92 3500 39  Belut 100 92 0 18.51 1.42 6500 40  Bandeng 100 148 0 20.53 6.73 2300 41  Ikan Mas 100 86 12 10 2 2400 42  Apel 100 52 13.81 0.26 0.17 2500 43  Pir 100 58 15.46 0.38 0.12 2500 44  Pisang 100 120 31.8 1.2 0.2 2200 45  Pepaya 100 46 12.2 0.5 0.14 800 46 Jambu Biji Merah 100 49 12.2 0.9 0.3 600 47  Semangka 100 30 7.55 0.61 0.15 1000 48  Melon 100 34 8.16 0.84 0.19 1000 49  Belimbing 100 36 8.8 0.4 0.4 1600 50  Susu 244 146 11.03 5.86 5.93 3000

## 4.2 Pembentukan Populasi Awal
Para proses membangkitkan populasi awal akan dibangkitkan 3(tiga) jenis populasi. Pada setiap  populasi  nilai  gen  diacak  dari  angka  1  sampai  50  secara  acak.  Adapun  contoh inisialisasi populasi seperti Gambar 3.
P1  8 31  36  47  50  1  37  14  42  50  1  36  18  42  50 P2  7 13  37  43  50  1  15  35  47  50  1  17  37  45  50 P3  11  14  35  49  50  1  21  41  47  50  1  19  35  42  50 P4  2 14  37  48  50  1  31  41  47  50  1  21  38  45  50 P5  3 13  35  45  50  1  22  35  42  50  1  15  37  49  50 P6  3 27  37  45  50  1  21  36  48  50  1  15  41  45  50 P7  4 13  35  44  50  1  22  38  45  50  1  15  36  45  50 Gambar 3. Pembentukan Populasi Awal
Perhitungan nilai fitness dilakukan untuk mengetahui bobot dari masing-masing individu. Nilai  fitness  ini  menunjukkan  kualitas  dari  masing-masing  individu.  Hasil  perhitungan
fitness ini kemudian digunakan untuk masukan proses seleksi untuk mencari individu terbaik yang akan menjadi solusi penyelesaian masalah. Semakin besar nilai fitness yang dimiliki maka  semakin  baik  juga  kualitas  dari  individu  tersebut.  Untuk  menghitung  nilai  fitness digunakan persamaan (Kamil, 2014)
𝑓𝑖𝑡𝑛𝑒𝑠𝑠 = 1 (Σa − b) + 1 .
Keterangan: a : Jumlah kalori dalam bahan makanan b : Kebutuhan kalori penderita uric acid
Berdasarkan populasi awal yang ditunjukkan di Gambar 3, maka untuk nilai fitness dari setiap individu sebagai berikut:
Fitness [P1] = 0.0218, Fitness [P2] = 0.0058, Fitness [P3] = 0.0027, Fitness [P4] = 0.0025, Fitness [P5] = 0.0087, Fitness [P6] = 0.0034, dan Fitness [P7] = 0.0029.
Dari  hasil  perhitungan  fitness  diatas  menunjukkan  bahwa  nilai  fitness  populasi  1  [P1] merupakan nilai  yang paling besar. Hal ini menunjukkan bahwa populasi 1 [P1] memiliki kemungkinan lebih besar dari populasi yang lain untuk terpilih ke proses selanjutnya.

## 4.3 Seleksi
Metode  seleksi  yang  digunakan  adalah  seleksi  elitism  yaitu  memilih  calon  induk berdasarkan nilai fitness yang dimiliki populasi tersebut. Semakin besar nilai fitness yang dimiliki maka semakin besar kemungkinan populasi itu terpilih sebagai calon induk. Dari perhitungan fitness diatas menunjukkan bahwa populasi 1 [P1] memiliki nilai fitness paling besar,  maka  populasi  1  [P1]  memiliki  kemungkinan  lebih  besar  dari  populasi  lain  untuk terpilih sebagai calon induk.

## 4.3.1 Persilangan
Metode persilangan yang digunakan salah satunya adalah one-cut point crossover , langkah-langkahnya sebagai berikut:
a. Membangkitkan nilai random untuk setiap kromosom, nilai random yang dibangkitkan dari 0-1.
R[1] = 0.451, R[2] = 0.211, R[3] = 0.302, R[4] = 0.877, R[5] = 0.771, R[6] = 0.131, dan R[7] = 0.006.
b. Maka  populasi  ke- 𝑘 yang  akan  dipilih  sebagai  induk  jika 𝑅[𝑘]   <  𝑝𝑐 dari  bilangan acak R diatas maka yang dijadikan induk adalah populasi 2 [P2], populasi 6 [P6], dan populasi 7 [P7].
c. Pilih posisi persilangan dengan membangkitkan bilagan acak 1-3 Populasi[2] = 2, Populasi[6] = 2, dan Populasi[7] = 1.
d. Proses persilangan Offspring[2] = Populas[2] >< Populasi[6]
= [ 7, 13, 35, 44, 50, 1, 22, 38, 45,50, 1, 15, 36, 45, 50] >< [3, 14, 37, 43, 50, 1, 15, 35, 47,50, 1, 16, 37, 45, 50]
= [7, 13, 37, 43, 50, 1, 15, 35, 47, 50, 1, 16, 37, 45, 50].
Offspring[6] = Populasi[6] >< Populasi[7] = [3, 14, 37, 43, 50, 1, 15, 35, 47, 50, 1, 16, 37, 45, 50] ><
[4, 24, 37, 45, 50, 1, 21, 36, 48, 50, 1, 15, 41, 48, 50]
= [3, 14, 37, 45, 50, 1, 21, 36, 48, 50, 1, 15, 41, 48, 50].
Offspring[7] = Populasi[7)] >< Populasi[2]
= [4, 24, 37, 45, 50, 1, 21, 36, 48, 50, 1, 15, 41, 48, 50] >< [7, 13, 35, 44, 50, 1, 22, 38, 45, 50, 1, 15, 36, 45, 50] = [4, 13, 35, 44, 50, 1, 22, 38, 45, 50, 1, 15, 36, 45, 50].
e. Hasil persilangan
Populasi [1] = [8, 31, 36, 47, 50, 1, 37, 14,  42, 50, 1, 36, 18, 42, 50], Populasi [2] = [7, 13, 37, 43, 50, 1, 15, 35,  47, 50, 1, 16, 37, 45, 50], Populasi [3] = [9, 14, 35, 49, 50, 1, 21, 41,  47, 50, 1, 19, 35, 47, 50],
Populasi [4] = [2, 14, 37, 44, 50, 1, 31, 41, 47, 50, 1, 21, 38, 47, 50], Populasi [5] = [3, 13, 35, 45, 50, 1, 22, 40, 42, 50, 1, 15, 37, 49, 50], Populasi [6] = [3, 14, 37, 45, 50, 1, 21, 36, 48, 50, 1, 15, 41, 48, 50], dan Populasi [7] = [4, 13, 35, 44, 50, 1, 22, 38, 45, 50, 1, 15, 36, 45, 50].

## 4.3.2 Mutasi
Proses mutasi dilakukan dengan cara mengganti satu gen yang terpilih secara acak dengan suatu nilai baru yang didapat secara acak. Langkah-langkah proses mutasi :
a. Dihitung pajang total gen dalam populasi
𝑃𝑎𝑛𝑗𝑎𝑛𝑔 𝑡𝑜𝑡𝑎𝑙 𝑔𝑒𝑛   = 𝑗𝑢𝑚𝑙𝑎ℎ 𝑔𝑒𝑛 𝑑𝑎𝑙𝑎𝑚 𝑘𝑟𝑜𝑚𝑜𝑠𝑜𝑚 𝑥 𝑗𝑢𝑚𝑙𝑎ℎ 𝑝𝑜𝑝𝑢𝑙𝑎𝑠𝑖 = 15 𝑥 7  =  105 𝑔𝑒𝑛.
b. Memilih  posisi  gen  yang  mengalami  mutasi  dilakukan  dengan  cara  membangkitkan bilangan integer acak antara 1 sampai total gen, yaitu 1 sampai 105
c. Menghitung jumlah gen yang mengalami mutasi dengan cara mengalikan mutation rate dengan panjang total gen.
𝐽𝑢𝑚𝑙𝑎ℎ 𝑚𝑢𝑡𝑎𝑠𝑖   = 𝑚𝑢𝑡𝑎𝑡𝑖𝑜𝑛 𝑟𝑎𝑡𝑒 𝑥 𝑝𝑎𝑛𝑗𝑎𝑛𝑔 𝑡𝑜𝑡𝑎𝑙 𝑔𝑒𝑛 = 0,1 × 105 = 10.
d. Berdasarkan hasil diatas maka terdapat 10 gen yang akan mengalami mutasi. Setelah dibangkitkan bilangan acak terpilih posisi gen 2, 9, 27, 31, 44, 49, 59, 68, 77, 89 yang mengalami mutasi. Oleh sebab itu, yang akan mengalami mutasi adalah populasi ke 1 gen nomor 2, populasi ke 1 gen nomor 9, populasi ke 2 gen nomor 12, populasi ke 3 gen nomor 1, populasi ke 3 gen nomor 14, populasi ke 4 gen nomor 4, populasi ke 4 gen nomor 14, populasi ke 5 gen nomor 8, populasi 6 gen nomor 2, populasi ke 6 gen nomor 14. Maka nilai  gen pada posisi tersebut diganti dengan bilangan acak 1  – 50. Bilangan acak yang terbangkitkan adalah 29, 46, 17 11, 42, 48, 45, 35, 27, 45. Maka populasi setelah mengalami mutasi adalah:
Populasi [1] = [8, 29, 36, 47, 50, 1, 37, 14, 46, 50, 1, 36, 18, 42, 50], Populasi [2] = [7, 13, 37, 43, 50, 1, 15, 35, 47, 50, 1, 17, 37, 45, 50],
Populasi [3] = [11, 14, 35, 49, 50, 1, 21, 41, 47, 50, 1, 19, 35, 42, 50],
Populasi [4] = [2, 14, 37, 48, 50, 1, 31, 41, 47, 50, 1, 21, 38, 45, 50],
Populasi [5] = [3, 13, 35, 45, 50, 1, 22, 35, 42, 50, 1, 15 37, 49, 50],
Populasi [6] = [ 3, 27, 37, 45, 50, 1, 21, 36, 48, 50, 1, 15, 41, 45, 50], dan
Populasi [7] = [4, 13, 35, 44, 50, 1, 22, 38, 45, 50, 1, 15, 36, 45, 50].
Berdasarkan hasil mutasi diatas selanjutnya dihitung nilai fitness untuk setiap populasi, populasi yang memiliki nilai fitness paling tinggi yang menjadi solusi terbaik. Berikut nilai fitness setelah mutasi:
𝑓𝑖𝑡𝑛𝑒𝑠𝑠 = 1 (Σa − b) + 1 ; 𝑓𝑖𝑡𝑛𝑒𝑠𝑠[𝑃1] = 0.0200; 𝑓𝑖𝑡𝑛𝑒𝑠𝑠[𝑃2] = 𝑓𝑖𝑡𝑛𝑒𝑠𝑠[𝑃3] = 0.1724; 𝑓𝑖𝑡𝑛𝑒𝑠𝑠[𝑃4] = 0.0074; 𝑓𝑖𝑡𝑛𝑒𝑠𝑠[𝑃5] = 0.0037;  𝑓𝑖𝑡𝑛𝑒𝑠𝑠[𝑃6] = 0.0024; dan 𝑓𝑖𝑡𝑛𝑒𝑠𝑠[𝑃7] = 0.0051.
Berdasarkan nilai fitness di atas diperoleh fitness [P1] sebesar 0.0200, fitness [P2] sebesar 0.0028, fitness [P3] sebesar 0.1724, fitness [P4] sebesar 0.0074, fitness [P5] sebesar 0.0037, fitness [P6] sebesar 0.0024, fitness [P7] sebesar 0.0051. Dari hasil tersebut diperoleh nilai fitness [P3] merupakan nilai fitness paling tinggi, sehingga populasi [3] merupakan solusi terbaik.

## 4.4 Simulasi
Simulasi merupakan tahapan yang dilakukan setelah memperoleh hasil penjabaran pada penerapan algoritma genetika. Simulasi dilakukan dengan menggunakan software Matlab. Pada  tahap  simulasi  yang  sebagai  masukan  adalah  berat  badan  (dalam  kg),  usia  (dalam tahun),  tinggi  badan  (dalam  cm),  jenis  kelamin.  Hasil  dari  penelitian  optimasi  biaya komposisi bahan makanan sebagai berikut.

## Gambar 4. Tampilan Perhitungan Kebutuhan Kalori
Pada  tampilan  yang  ada  pada  Gambar  4  berguna  untuk  melakukan  proses  perhitungan kebutuhan  kalori  penderita uric  acid (asam  urat)  dengan  memasukkan  berat  badan,  usia, tinggi  badan,  dan  usia.  Setelah  itu  klik  tombol  hasil  untuk  melihat  kebutuhan  kalori, karbohidrat,  protein,  dan  lemak  yang  dibutuhkan.  Pada  halaman  tersebut  juga  bisa menambahkan bahan makanan dengan klik tombol bahan makanan, maka akan ditampilkan halaman pada Gambar 5.

## Gambar 5. Tampilan Halaman Bahan Makanan
Pada tampilan yang ada pada Gambar 5 berguna untuk menambah data bahan makanan, menampilkan data bahan makanan. Untuk menambah data bahan makanan dilakukan dengan cara  mengisi  pada  panel  input  bahan  makanan,  mulai  dari  nama  bahan,  berat,  kandungan kalori, kandungan karbohidrat, kandungan protein, kandungan lemak, dan biaya. Setelah itu klik tombol tambah, sebagaimana terlihat pada Gambar 6 untuk melihat data bahan makanan dilakukan dengan cara klik tombol open yang ada pada panel bahan makanan sebagaimana terlihat pada Gambar 7.
Gambar 6. Halaman Bahan Makanan 1
Gambar 7. Halaman Bahan Makanan 2

## Gambar 8. Tampilan Perhitungan Kebutuhan Kalori
Berdasarkan  tampilan  perhitungan  kebutuhan  kalori  yang  ada  pada  Gambar  5  dengan memasukkan  berat  badan  58  kg,  usia  30  tahun,  tinggi  badan  158  cm,  jenis  kelamin perempuan didapatkan hasil kebutuhan kalori sebesar 1355.2 kkal, kebutuhan karbohidrat sebesar  203.16  gram,  kebutuhan  protein  sebesar  50.82  gram,  kebutuhan  lemak  sebesar 37.6444 gram.

## Gambar 9. Tampilan Rekomendasi Bahan Makanan Menu ke-1
Berdasarkan  Gambar  9  diperoleh  hasil  rekomendasi  bahan  makanan  untuk  satu  hari dengan  komposisi  makanan  untuk  makan  pagi  terdiri  dari  talas  sebagai  sumber  makanan pokok, wortel sebagai sayuran, telur puyuh sebagai sumber hewani, belimbing sebagai buah, susu sebagai pelengkap. Komposisi makan siang terdiri dari beras sebagai sumber makanan pokok, daun kelor sebagai sayur, ikan mas sebagai sumber hewani, semangka sebagai buah, susu sebagai pelengkap. Komposisi makan malam terdiri dari beras sebagai sumber makanan pokok, sawi hijau sebagai sayuran, telur puyuh sebagai sumber hewani, apel sebagai buah, susu sebagai pelengkap. Dilengkapi juga dengan berat bahan makanan, kandungan kalori, kandungan karbohidrat, kandungan protein, kandungan lemak, dan biaya yang dibutuhkan. Berdasarkan  hasil  tersebut  kalori  yang  terpenuhi  sebesar  1360  kkal,  karbohidrat  yang terpenuhi  sebesar  205  gram,  protein  yang  terpenuhi  sebesar  56.94  gram,  lemak  yang terpenuhi sebesar 39.93 gram dengan biaya sebesar Rp 24.100.
Gambar 10. Tampilan Rekomendasi Bahan Makanan Menu ke-2
Berdasarkan  Gambar  10  diperoleh  hasil  rekomendasi  bahan  makanan  untuk  satu  hari dengan  komposisi  makanan  untuk  makan  pagi  terdiri  dari  tepung  beras  sebagai  sumber makanan pokok, jagung manis sebagai sayur, telur puyuh sebagai sumber hewani, papaya sebagai  buah,  susu  sebagai  pelengkap.  Komposisi  makan  siang  terdiri  dari  beras  sebagai sumber makanan pokok, jantung pisang sebagai sayur, telur puyuh sebagai sumber hewani, apel  sebagai  buah,  susu  sebagai  pelengkap.  Komposisi  makan  malam  terdiri  dari  beras sebagai sumber makanan pokok, terong sebagai sayur, daging ayam sebagai sumber hewani, belimbing  sebagai  buah,  susu  sebagai  pelengkap.  Dilengkapi  juga  dengan  berat  bahan makanan, kandungan kalori, kandungan karbohidrat, kandungan protein, kandungan lemak, dan  biaya  yang  dibutuhkan.  Melalui  asil  tersebut  diperoleh  kalori  yang  terpenuhi  sebesar 1621 kkal, karbohidrat yang terpenuhi sebesar 225.03 gram, protein yang terpenuhi sebesar 58.76 gram, lemak yang terpenuhi sebesar 45.28 gram dengan biaya sebesar Rp 24.310.

## Gambar 11. Tampilan Rekomendasi Bahan Makanan Menu ke-3
Berdasarkan  11  diperoleh  hasil  rekomendasi  bahan  makanan  untuk  satu  hari  dengan komposisi  makanan  untuk  makan  pagi  terdiri  dari  ubi  sebagai  sumber  makanan  pokok, jagung manis sebagai sayur, daging ayam sebagai sumber hewani, buah pir sebagai buah, susu sebagai pelengkap. Komposisi makan siang terdiri dari beras sebagai sumber makanan pokok, terong sebagai sayur, telur puyuh sebagai sumber hewani, semangka sebagai buah,
susu sebagai pelengkap. Komposisi makan malam terdiri dari beras sebagai sumber makanan pokok, lobak sebagai sayur, daging ayam sebagai sumber hewani, papaya sebagai buah, susu sebagai  pelengkap.  Dilengkapi  juga  dengan  berat  bahan  makanan,  kandungan  kalori, kandungan karbohidrat, kandungan protein, kandungan lemak, dan biaya yang dibutuhkan. Dari  hasil  tersebut  diperoleh  kalori  terpenuhi  sebesar  1623  kkal,  karbohidrat  terpenuhi sebesar  230.615gram,  protein  terpenuhi  sebesar  63.75  gram,  lemak  terpenuhi  sebesar 45.16gram dengan biaya sebesar Rp 24.450.
Berdasarkan  rekomendasi  bahan  manakan  dari  menu  ke-1,  menu  ke-2,  menu  ke-3 diperoleh hasil yang optimal yaitu pada menu ke-1 dengan komposisi makanan untuk makan pagi terdiri dari talas sebagai sumber makanan pokok, wortel sebagai sayuran, telur puyuh sebagai sumber hewani, belimbing sebagai buah, susu sebagai pelengkap. Komposisi makan siang terdiri dari beras sebagai sumber makanan pokok, daun kelor sebagai sayur, ikan mas sebagai sumber hewani, semangka sebagai buah, susu sebagai pelengkap. Komposisi makan malam terdiri dari beras sebagai sumber makanan pokok, sawi hijau sebagai sayuran, telur puyuh  sebagai  sumber  hewani,  apel  sebagai  buah,  susu  sebagai  pelengkap.  Dari  hasil tersebut  kalori  yang  terpenuhi  sebesar  1360  kkal,  karbohidrat  yang  terpenuhi  sebesar 205gram,  protein  yang  terpenuhi  sebesar  56.94  gram,  lemak  yang  terpenuhi  sebesar 39.93gram dengan biaya sebesar Rp 24.100.

## 5. Kesimpulan
Berdasarkan hasil penelitian ini diperoleh bahwa biaya komposisi bahan makanan yang optimal  untuk  penderita uric  acid dapat  dianalisis  dengan  representasi  kromosom.  Setiap kromosom terdiri dari 15 gen, dimana setiap gen merepresentasikan nomor dari setiap bahan makanan.  Algoritma  genetika  mampu  menyelesaikan  permasalahan  optimasi  biaya komposisi  bahan  makanan  bagi  penderita uric  acid dengan  menghasilkan  rekomendasi bahan makanan dalam satu hari yang terdiri dari makan pagi, makan siang, makan malam beserta biayanya.

## Daftar Pustaka
[1]     E.  Angriani,  A.P.  Dewi,  R.  Novayelinda.  Faktor-faktor  yang  berhubungan  dengan kejadian gout arthritis masyarakat melayu. JOM FKp . 5(2). 683-692. 2018.
[2]   Nursilmi.  Pengaruh  Pola  Konsumsi,  Status  Gizi,  dan  Aktivitas  Fisik  Dengan  Kadar Asam  Urat  Lansia  Wanita  Peserta  Posbindu  Sinarsari. Departemen  Gizi  Mayarakat Fakultas Ekologi Manusia Institut Pertanian Bogor, 1 (1), 50-62. 2013.
[3] E.F.  Yunita.  Hubungan  Antara  Obesitas,  Konsumsi  Tinggi  Purin,  dan  Pengobatan terhadap Kadar Asam Urat dengan Pengunaan Allopurinol pada Pasien Hiperurisemia. Jurnal Farmasi Klinik Indonesia, 7 (1), 2-5. 2018.
[4] G.  W.  Kusumayanti.  Diet  Mencegah  Dan  Mengatasi  Gangguan  Asam  Urat. Jurnal Ilmu Gizi, 5 (1), 69-78. 2014.
[5] M. Kamil. Optimasi Penentuan Bahan Pangan Harian Atlet Sepakbola Menggunakan Algoritma  Genetika  Untuk  Memenuhi  Kecukupan  Gizi.  Malang:  Universitas  Islam Negeri Maulana Malik Ibrahim. 2014.
[6] E.C. Siahaan. Sistem Rekomendasi Bahan Makanan Bagi Penderita Penyakit Jantung Menggunakan  Algoritma  Genetika. Pengembangan  Teknologi  Informasi  dan  Ilmu Komputer, 1(1). 2017.
[7] A.  Kartikasari,  D.E.  Ratnawati,  T.S.  Kusuma.  Optimasi  Komposisi  Makanan  untuk Penderita  Hipertensi  Menggunakan  Algoritma  Genetika  dan  Simulated  Annealing. JPTIIK : Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer. Vol 1 (11). Hlm. 1236-1243. 2017.
[8] T. Purwaningsih. Faktor-Faktor Risiko Hiperurisemia (studi kasus di Rumah Sakit Umum Kardinah Kota Tegal). Thesis Book. 2010. Tersedia : http://eprints.undip.ac.id/24334/1/TINAH_PURWANINGSIH.pdf. [Diakses 1 Agustus 2019] .
[9] E.C. Siahaan. Sistem Rekomendasi Bahan Makanan Bagi Penderita Penyakit Jantung Menggunakan  Algoritma  Genetika. Pengembangan  Teknologi  Informasi  dan  Ilmu Komputer, 1 (1), 1-11. 2017.
[10]   S. Almatsier. Penuntun Diet Edisi Baru. Jakarta : Gramedia Pustaka Utama. 2008.
[11]  Z. Zuhri. Algoritma Genetika. Yogyakarta : penerbit Andi. 2014.
[12]  Rusdiana. Optimasi Penjadwalan Kuliah Menggunakan Metode Algoritma Genetika. Teknik Informatika Universitas Islam Negeri Syarif Hidayatullah Jakarta.2014.
[13]  S.S. Jaliana. Faktor-Faktor Yang Berhubungan Dengan Kejadian Asam Urat Pada Usia 20-44 Tahun Di RSUD Bahteramas Provinsi Sulawesi Tenggara Tahun 2017. Jurnal Ilmiah Mahasiswa Kesehatan Masyarakat, 3(2). 2018.