Jurnal Matematika Murni dan Terapan “εpsilon” http://ppjp.ulm.ac.id/journals/index.php/epsilon p-ISSN: 1978-4422 | e-ISSN 2656-7660 Vol.13 No.1 (Juni 2019) Hal. 24-35

## PENYUSUNAN MENU MAKANAN UNTUK PENDERITA DIABETES MELLITUS TIPE 2 TANPA KOMPLIKASI MENGGUNAKAN ALGORITMA GENETIKA
1 Bayu Basdya Nafata*, 2 Akhmad Yusuf, 3 Muliadi
1 3 Program Studi Ilmu Komputer Fakultas MIPA Universitas Lambung Mangkurat
2 Program Studi Matematika Fakultas MIPA Universitas Lambung Mangkurat *email: bnafata@gmail.com

## ABSTRAK
Diabetes Mellitus (DM) adalah suatu penyakit atau gangguan metabolisme kronis dengan multi  etiologi  yang  ditandai  dengan  tingginya  kadar  gula  darah  (hiperglikemik)  disertai dengan  gangguan  metabolisme  karbohidrat,  lipid  dan  protein  sebagai  akibat  insufisiensi fungsi  insulin.  Penderita  diabetes  melitus  sebenarnya  dapat  di  cegah  agar  tidak  lebih parah  atau  dapat  di  jaga  berat  badan  ideal  penderita  diabetes  ditambah  dengan  olahraga teratur. Pola makan yang baik  merupakan kunci  keberhasilan untuk  mengatasi kelebihan kadar  gula  darah  bagi  penyandang  diabetes,  mengontrol  pola  hidup  yang  sesuai  dapat mencegah  atau  mempertahankan  kondisi  penderita  diabetes  agar  tidak  lebih  parah  dari kondisi  sebelumnya,  salah  satu  caranya  yaitu  dengan  mengatur  pola  makan  yang  sesuai dengan hasil diagnosis dokter atau yang disarankan oleh ahli gizi. Penelitian ini dilakukan untuk  mengetahui  proses  penyusunan  menu  makanan  menggunakan  algoritma  genetika, dan mengetahui hasil menu makanan yang sesuai untuk penderita diabetes menggunakan algoritma  genetika.  Algoritma  genetika  merupakan  salah  satu  algoritma  yang  dapat melakukan  penyusunan  makanan  berbasis  Artificial  Intellegent.  Algoritma  ini  menitik beratkan pada pembangkitan populasi awal,  proses crossover, proses mutasi, dan proses seleksi. Sehingga pada proses akhir seleksi terdapat nilai fitness atau nilai terbaik  dalam sebuah data. Evaluasi  hasil dari algoritma  genetika pada penelitian kali  ini adalah untuk mendapatkan nilai fitness terbaik pada setiap menu makanan. Dari hasil diperoleh bahwa nilai  fitness  berbanding  terbalik  dengan  total  harga  makanan  yang  dihasilkan.  Apabila nilai  fitness  dari  perhitungan  tinggi,  maka  total  harga  makan  akan  diperoleh  harga  yang paling  minimal  dan  sebaliknya  sesuai  dengan  kandungan  kebutuhan  kalori  penderita diabetes  mellitus.  Proses  algoritma  genetika  dalam  menyusun  menu  makanan  dengan hasil komposisi makanan terbaik menggunakan parameter probabilitas crossover 0.9 dan probabilitas mutase 0.1 dengan jumlah iterasi maksimal sebanyak 30 kali. Menghasilkan nilai  fitness  0.246928066  dengan  komposisi  nasi,  tahu  dan  telur  sebagai  penyusun makanan yang dominan agar tercapai harga minimum tetapi mencukupi kebutuhan kalori harian penderita.
Kata Kunci: Menu Makanan , Diabetes Mellitus,  Algoritma Genetika

## 1. PENDAHULUAN
Gejala diabetes yaitu sering lapar, sering haus, sering buang air kecil dengan jumlah banyak  dan berat badan turun. Dari  estimasi jumlah penduduk  indonesia umur 15 tahun keatas berjumlah 176 juta penduduk mengalami gangguan DM sebanyak 12 juta, DM tipe 2 sebanyak 52 juta penduduk, dan pra-diabetes sebanyak 64 juta penduduk [1].  Penderita diabetes melitus sebenarnya dapat di cegah agar tidak lebih parah atau dapat di jaga berat badan  ideal  penderita  diabetes  ditambah  dengan  olahraga  teratur. Pola  makan  yang  baik merupakan  kunci  keberhasilan  untuk  mengatasi  kelebihan  kadar  gula  darah  bagi penyandang  diabetes    Mengontrol  pola  hidup  yang  sesuai  dapat  mencegah  atau mempertahankan  kondisi  penderita  diabetes  agar  tidak  lebih  parah  dari  kondisi sebelumnya,  salah  satu  caranya  yaitu  dengan  mengatur  pola  makan  yang  sesuai  dengan hasil diagnosis dokter atau yang disarankan oleh ahli gizi [2] . Penelitian ini akan menguji seberapa optimal algoritma genetika dalam menyusun menu makanan yang sesuai dengan kebutuhan  gizi  penderita  dengan  harga  minimum.  Penelitian  ini  dibuat  untuk  membantu penderita  mendapatkan  menu  makanan  harian  yang  dibagi  menjadi  5  yaitu  makan  pagi, makan siang, makan malam, dan snack sebanyak dua kali saat menjelang siang dan sore atau malam [3].

## 2. TINJAUAN PUSTAKA

## 2.1  Parameter awal
Parameter  awal  yaitu  kebutuhan  kalori  harian  penderita.  Ada  beberapa  cara dalam  menentukan  jumlah  kalori  yang  dibutuhkan  penyandang  DM,  antara  lain dengan  memperhitungkan  kebutuhan  kalori  basal  yang  besarnya  25-30  kal/kg dengan  berat  badan  ideal.  Jumlah  kebutuhan  tersebut  ditambah  atau  dikurangi bergantung  pada  beberapa  faktor  yaitu:  jenis  kelamin,  umur,  berat  badan, aktivitas.  Ada  beberapa  cara  perhitungannya  yaitu:  indeks  masa  tubuh,  berat badan ideal, umur, jenis kelamin, aktivitas atau pekerjaan  penyandang DM [2].

## 2.1.1     Indeks Masa Tubuh
Perhitungan status gizi berdasarkan Indeks Masa Tubuh (IMT) dihitung menggunakan rumus seperti persamaan berikut:
IMT = Berat Badan(kg) (Tinggi Badan) x 2
Tabel 1 . Klasifikasi Indeks Masa tubuh Kategori Jumlah IMT Kurang ≤18,4 Normal 18,5-22,9 Lebih 23,0-24,9 Obesitas I 25.0-29,9 Obesitas II ≥30

## 2.1.2  Berat Badan Ideal
Perhitungan berat badan ideal menggunakan rumus sebagai berikut:
BBI = 90% x (TB – 100) x 1kg Keterangan:
BBI  : Berat Badan Ideal (Kg) TB  : Tinggi Badan(cm)
Bagi  laki-laki  dibawah  160cm  dan  perempuan  dibawah  150cm menggunakan rumus sebagai berikut:
BBI = (TB – 100) x 1kg Keterangan:
BBI  : Berat Badan Ideal (Kg) TB    : Tinggi Badan(cm)
Adapun  kategori  berat  badan  ideal    dan  indeks  masa  tubuh  akan  ditambah dan dikurangi jumlah kalori sesuai hasil perhitungan BBI dan IMT yaitu:
a) Kurang ditambah 20%
b) Lebih dikurang 20%
c) Obesitas I dikurang 25%
d) Obesitas II dikurang 30%

## 2.1.3   Jenis Kelamin
Kebutuhan  kalori  basal  per  hari  untuk  perempuan  sebesar  25  kal/kgBB sedangkan  untuk  laki-laki  sebesar  30  kal/kgBB  [2].  Yang  terperinci  sebagai berikut:
Laki-laki = BBI (Kg) x 30 kal Perempuan = BBI (Kg) x 25 kal

## 2.1.4   Umur (Usia)
Perhitungan kalori untuk kategori usia:
a) Usia 40- 59 tahun dikurangi 5%
b) Usia 60-69 tahun  dikurangi 10%
c) Usia 70 tahun ke atas dikurangi 20%

## 2.1.5   Aktivitas Fisik atau Pekerjaan
Jenis  aktivitas  fisik  sangat  berpengaruh  dalam  menentukan  jumlah  kalori untuk setiap penyandang DM yang dijabarkan sebagaimana di tabel berikut:
Tabel 2. Kategori Aktivitas Jenis Aktivitas Keterangan Istirahat Ditambah  10%  dari  kebutuhan basal Aktivitas ringan (Pegawai Kantor, Guru, Ibu Rumah Tangga) Ditambah  20%  dari  kebutuhan basal
Aktivitas sedang (Pegawai Industri Ringan, mahasiswa, Militer tidak tidak perang) Ditambah  30%  dari  kebutuhan basal Aktivitas  berat  (petani,  buruh tani,  tukang  kebun,  atlet,  militer dalam latihan) Ditambah  40%  dari  kebutuhan basal Aktivitas  sangat  berat  (  tukang gali, buruh angkat barang) Ditambah  50%  dari  kebutuhan basal

## 2.1.6   Berat Badan
Bagi penyandang DM yang gemuk kebutuhan kalori dikurangi sekitar 20- 30%  bergantung  pada  tingkat  kegemukan  penderita.  Penyandang  DM  untuk kategori  kurus  kebutuhan  kalorinya  ditambah  sebanyak  20-30%  sesuai  dengan peningkatan  atau  penurunan  berat  badan  ideal.  Adapun  jumlah  kalori  yang diberikan  untuk  penderita  diabetes  perempuan  yaitu  1000-1200  kalori.  Untuk penderita  diabetes  laki-laki  sebanyak  1200-1600  kalori  bergantung  pada  berat badan ideal [2].

## 2.2 Nilai Fitness dan Representasi Kromosom
Representasi  kromosom  yang  digunakan  pada  penelitian  ini  menggunakan representasi yang menggunakan tipe data integer. Dalam penelitian ini terdapat 15 gen  penyusun  kromosom,  masing-masing  jadwal  makan  pokok  dan  selingan memiliki 3 gen. Jadwal makan dibagi  5 waktu yaitu makan pagi, selingan makan pagi  atau  siang,  makan  siang,  selingan  makan  sore  atau  malam,  dan  makan malam. Nilai fitness adalah untuk menyatakan baik tidaknya nilai suatu individu. Nilai ini  membedakan kualitas kromosom agar dapat dibedakan yang berkualitas dan tidak [3]. Persamaan matematika nilai fitness dapat dilihat dibawah ini:
F = 10000 C+P
Keterangan:
F : fitness C : cost/harga P : pinalty
Nilai pinalti dapat ditentukan dengan P = Kbp + Prb + Lmp Keterangan:
Kbp adalah pinalti karbohidrat Prb adalah pinalti protein Lmp adalah pinalti lemak
Untuk  menghitung  masing-masing  pinalty  menggunakan  rumus  persamaan berikut:
Kbp = kandungan karbohidrat ideal – kandungan karbohidrat makanan Prb = kandungan protein ideal – kandungan protein makanan Lmp = kandungan lemak ideal – kandungan lemak makanan

## 2.3  Algoritma Genetika
Algoritma  genetika  memiliki  chromosome  sebagai  representasi  solusi  yang akan  dicapai.  Setiap  choromosome  mewakili  setiap  solusi  untuk  memecahkan setiap  permasalahan  dan  nilai  fitness,  nilai  fitness  itu  sendiri  adalah  nilai  yang mengukur seberapa bagus solusi tersebut. Proses algoritma genetika yaitu inisiasi awal, crossover, mutasi, dan seleksi [4].
a) Inisiasi awal dan representasi kromosom
Dalam  mengolah  data  kromosom  yang  ada  pada  populasi  dibutuhkan representasi  data  agar  dapat  diproses  oleh  sistem  yang  dibuat.  Representasi  data makanan agar dapat dilakukan penyusunan kromosom menggunakan representasi permutasi yang dapat digambarkan sebagai berikut:
Gambar 1. Representasi Kromosom
Tabel 3. Keterangan representasi kromosom
Representasi Gen Kromosom Keterangan A1 Menu makan pagi Disusun oleh penyusun karbohidrat utama A2 Menu makan pagi Disusun  oleh  penyusun  protein utama A3 Menu makan pagi Disusun  oleh  penyusun  lemak utama B1 Menu makan siang Disusun oleh penyusun  karbohidrat utama B2 Menu makan siang Disusun  oleh  penyusun  protein utama B3 Menu makan siang Disusun  oleh  penyusun  lemak utama C1 Menu makan malam Disusun oleh penyusun karbohidrat utama C2 Menu makan malam Disusun  oleh  penyusun  protein utama
C3 Menu makan malam Disusun  oleh  penyusun  lemak utama D1 Snack pagi/siang Disusun oleh penyusun karbohidrat selingan D2 Snack pagi/siang Disusun  oleh  penyusun  protein selingan D3 Snack pagi/siang Disusun  oleh  penyusun  lemak selingan E1 Snack sore/malam Disusun oleh penyusun karbohidrat selingan E2 Snack sore/malam Disusun  oleh  penyusun  protein selingan E3 Snack sore/malam Disusun  oleh  penyusun  protein selingan
b) Crossover
Crossover merupakan proses persilangan yang dilakukan pada dua individu, yang  dipilih secara acak sebagai induk untuk menghasilkan individu baru. Proses crossover yang  digunakan  dengan  teknik one  point  cut  crossover [5].  Algoritma dalam menentukan proses crossover yaitu:
1. Menentukan crossover rate
2. Menentukan parent sebagai offspring 1
3. Menentukan child sebagai offspring 2
4. Menentukan titik potong secara acak
5. Dilakukan penyilangan antar offspring sesuai dengan titik potong
6. Hitung nilai fitness pada setiap offspring yang telah disilangkan
c) Mutasi
Teknik  mutasi  yang  digunakan  adalah  teknik  mutasi one  point  mutation. Teknik  ini  memungkinkan  untuk  merubah  nilai  pada  titik  gen  yang  ditentukan secara  acak  sesuai  dengan  penyusun  gen  tersebut.  Mutasi  merupakan  modifikasi satu  atau  lebih  gen  dalam  individu  yang  sama.  Mutasi  diharapkan  dapat meningkatkan  tingkat  kesesuaian  nilai fitness yang  akan  dicapai.  Proses  mutasi akan melakukan penggantian gen pada suatu individu. Yang mana titik pergantian gen  ditentukan  secara  acak  dengan  kromosom  atau  individu  yang  sama  [3]. Algoritma mutasi adalah sebagai berikut:
1. Tentukan nilai mutasi rate
2. Hitung jumlah gen kromosom yang ada dalam suatu populasi
3. Tentukan nilai acak dari angka total gen dalam populasi
4. Nilai titik acak ditentukan akan diganti dengan gen baru
5. Nilai dari gen pada titik ditukar, lalu dihitung kembali nilai fitnessnya
d) Seleksi
Seleksi  merupakan  mempertahankan  satu  populasi  pada  setiap  generasi. Populasi  yang  dipertahankan  memiliki  nilai  fitness  yang  terbaik  dengan  teknik elitism [5].

## 3. METODE PENELITIAN
Penelitian  ini  dilakukan  dengan  cara  studi  literatur  dari  berbagai  sumber baik  buku  maupun  jurnal  yang  menunjang  dan  relevan  dengan  penelitian  yang dilakukan.  Adapun  prosedur  yang  digunakan  dalam  penelitian  adalah  sebagai berikut:
1) Pengumpulan  data  makanan  dengan  cara  wawancara  dengan  ahli  gizi  untuk daftar  makanan  yang  dapat  dikonsumsi,  harga  makanan  didapatkan  dengan wawancara dengan pedagang makanan.
2) Analisa  data  berupa  daftar  kalori  dari  setiap  golongan  makanan  dan pemprosesan data dalam menentukan nilai fitness
3) Perancangan sistem dengan alur flowchart sebagai berikut:
Gambar 2. Alur flowchart

## 4. HASIL DAN PEMBAHASAN

## 4.1 Percobaan Algoritma Genetika
Adapun  percobaan  sebanyak  4  kali  simulasi  dengan  proses  algoritma genetika  yaitu  inisiasi  parameter  pasien,  inisiasi  parameter  algoritma  genetika, membangkitkan populasi  awal, dilakukan crossover ,  mutasi, seleksi dengan  nilai parameter sebagai berikut:
Contoh  perhitungan  kalori  penderita  dengan  persamaan  matematika  dengan  data pasien sebagai berikut:
Tabel 4 . Contoh data penderita Data Penderita Keterangan Nama Ardiani Jenis Kelamin Laki - laki Berat badan 75 Kg Tinggi badan 160 Cm Kategori Pekerjaan Istirahat + 10% dari BMR Kategori Umur 60-69 Tahun -  10% dari BMR
Persamaan matematika menghitung BBI (berat badan ideal):
BBI = 90%  x (TB – 100) x 1Kg BBI = 90% x (160-100) x 1Kg
BBI = 90% x 60 x 1
BBI = 54 Kg
Persamaan matematika menghitung Asupan kalori harian sebagai berikut:
AKH = (BBI x 30 kal) – Kategori Usia + Kategori Aktivitas – Kategori IMT AKH = (54Kg x 30 kal) – 10% + 10%
AKH = 1620 – 162 + 162 – 20%
AKH = 1620 Kkal – 20%
AKH = 1296 Kkal
Tabel 5 . Parameter uji Simulasi Kondisi Penderita Parameter Uji 1 Parameter Uji 2 1 Nama              : Ardiani Jenis Kelamin : Laki – laki Berat badan     : 75 Kg Tinggi badan   : 160 Cm
Kategori Pekerjaan  : Istirahat
Kategori  Umur                  :  60-69 tahun Jumlah  Kalori  /  hari  :  1296 Kkal Jumlah Populasi : 10 Crossover rate : 0.8 Mutation rate : 0.2 Jumlah Iterasi : 30 kali Seleksi  :  1  populasi  di pertahankan Jumlah Populasi : 10 Crossover rate : 0.8 Mutation rate : 0.08 Jumlah  Iterasi  :  20 kali Seleksi  :  1  populasi di pertahankan 2 Nama              : Ningsih Jenis Kelamin : Perempuan Berat badan     : 60 Kg Tinggi badan   : 155 Cm
Kategori  Pekerjaan    :  Ibu rumah tangga
Kategori  Umur                  :  40-59 tahun Jumlah  Kalori  /  hari  :  1423 Kkal Jumlah Populasi : 10 Crossover rate : 0.9 Mutation rate : 0.1 Jumlah Iterasi : 30 kali Seleksi  :  1  populasi  di pertahankan Jumlah Populasi : 10 Crossover rate : 0.9 Mutation rate : 0.1 Jumlah  Iterasi  :  10 kali Seleksi  :  1  populasi di pertahankan Tabel 6 . Hasil simulasi
Simulasi Simulasi / Parameter Nilai fitness terbaik Jumlah kalori Jumlah kalori
dibutuhkan terpenuhi 1 Pop Awal : 10 pC : 0.8 pM : 0.2 Iterasi : 30 Kali 0.212008148 1296 Kkal 1212 Kkal Pop Awal : 10 pC : 0.8 pM : 0.2 Iterasi : 20 Kali 0.226474911 1296 Kkal 1225 Kkal 2 Pop Awal : 10 pC : 0.9 pM : 0.1 Iterasi : 30 Kali 0.246928066 1423 Kkal 1418 Kkal Pop Awal : 10 pC : 0.9 pM : 0.1 Iterasi : 10 Kali 0.2557896375 1423 Kkal 1121 kkal
Adapun hasil pada simulasi program dapat dilihat pada gambar berikut:
Gambar 3. Hasil simulasi 1
Gambar 4. Hasil simulasi 2
Gambar 5. Hasil simulasi 3

## Gambar 6. Hasil simulasi 4
Hasil  terbaik  didapatkan  dengan  simulasi  ke  5  dengan  nilai  parameter  pop awal 10, pC 0.9, pM 0.1, jumlah iterasi 30 kali. Menghasilkan nilai fitness terbaik sebesar    0.246928066  dengan  jumlah  kalori  makanan  sebesar  1418  Kkal sedangkan  kebutuhan  penderita  sebesar  1423  Kkal.  Hasil  ini  adalah  hasil  yang terbaik  sepanjang  pengujian  dikarenakan  hanya  didapatkan  nilai  error  sebesar  5 Kkal.  Dapat  disimpulkan  bahwa  jumlah  iterasi, crossover  rate , mutation rate sangat  berpengaruh  dalam  mengkombinasi  menu  makanan  menjadi  komposisi makanan dengan total  nilai  kalori  yang  hampir  mendekati  nilai kalori kebutuhan penderita.
Menu  makanan  yang  dihasilkan  dari  hasil  terbaik  selama  simulasi  yang telah dilakukan menghasilkan komposisi makanan dengan menu makan pagi nasi putih, tahu kukus, sawi rebus,  menu  makanan siang nasi putih tahu rebus, tempe goreng,  menu makan malam ubi jalar rebus tanpa kulit, dada ayam goreng, telur dadar,  menu  makanan  selingan  pagi  semangka  ,  tahu  isi,  buah  alpukat  mentega, menu  makanan  selingan  siang  /  sore  buah  jeruk,  putih  telur  matang  dan  buah alpukat  mentega.  Komposisi  menu  makan  tersebut  jumlah  kalorinya  yaitu  1418 Kkal. Jumlah kalori tersebut sudah memenuhi kebutuhan kalori penderita sebesar 1423 Kkal. Nilai fitness komposisi makanan tersebut sebesar 0.196922585 dengan total harga makanan sebesar Rp. 38.400.
Dari  hasil  pengujian  pada  simulasi  harga  yang  paling  minimum  sangat kurang  mencukupi  kebutuhan  kalori  harian  penderita  dengan  selisih  sebesar  302 Kkal pada simulasi ke–6 yang dapat dilihat pada gambar 5. Pada simulasi tersebut didapatkan komposisi makanan dengan jumlah harga Rp. 33.100. Menu makanan yang tersusun yaitu menu makan pagi ubi jalar rebus tanpa kulit, tahu kukus, sawi rebus, menu makan siang ubi jalar rebus tanpa kulit, tahu kukus, sawi rebus, menu
makan  malam  nasi  merah,  tahu  kukus,  opor  tempe,  menu  makan  selingan  pagi buah papaya, tahu isi, buah alpukat, menu makan selingan siang / sore buah salak, tahu isi dan buah alpukat mentega.

## 5. KESIMPULAN
B erdasarkan  analisis  proses  algoritma  genetika  yang  telah  dilakukan  dapat disimpulkan  bahwa  menu  makanan dapat disusun dengan  jumlah  iterasi tertentu. Dari  berbagai  alternatif  menu  makanan  yang  tersusun  hasil  terbaik  diambil  pada simulasi  ke  –  5  dengan  nilai fitness 0.246928066  dengan  jumlah  kalori  harian yang  dibutuhkan  sebesar  1423  Kkal  dan  jumlah  kalori  makanan  yang  tersusun 1418 Kkal nilai error 5 Kkal.

## REFERENSI
[1] Kementerian  Kesehatan  RI.  2014. Waspada  Diabetes  Eat  Well  Live  Wel l. Infodatin. Jakarta Selatan.
[2] Soelistijo,  Soebagijo  Adi,  Hermina  Novida,  Achmad  Rudijanto,  Pradana Soewondo,  Ketut  Suastika,  Asman  Manaf,  Harsinen  Sanusi,  Dharma  Lindarto, Alwi  Shahab,  Bowo  Pramono,  Yuanita  Asri  Langi,  Dyah  Purnamasari,  Nanny Nathalia Soetedjo, Made Ratna Saraswati, Made Pande Dwipayana, Agus Yuwono, Laksmi Sasiarini, Sugiarto, Krishna W. Sucipto, Hendra Zufry. 2015. P engelolaan Dan Pencegahan Diabetes Melitus Tipe 2 Di Indonesia 2015 . PB Perkeni. Jakarta.
[3] Nafata,  Bayu  Basdya.  2018. Penyusunan  Menu  Makanan  Untuk  Penderita Diabetes  Menggunakan  Algoritma  Genetika .  Skripsi  Program  Studi  Ilmu Komputer, Universitas Lambung Mangkurat, Banjarbaru.
[4] McCall,  J.  2005.  Genetic  Algorithms  for  Modelling  and  Optimisation. Journal  of Computational and Applied Mathematics ,Vol.1, pp.205-222.
[5] Rianawati, A. 2015. Implementasi Algoritma Genetika Untuk Optimasi Komposisi Makanan  Bagi  Penderita  Diabetes  Melitus.  Repository Jurnal  Mahasiswa  PTIIK Universitas Brawijaya , Vol. 5, No. 14.