Penjadwalan Pola Makan Bagi Penderita Diabetes Mellitus Menggunakan Metode Genetic Algorithm

i

PENJADWALAN POLA MAKAN BAGI PENDERITA
DIABETES MELLITUS MENGGUNAKAN
METODE GENETIC ALGORITHM

SKRIPSI

VANESA FELICIA
111402038

PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

ii


PENJADWALAN POLA MAKAN BAGI PENDERITA
DIABETES MELLITUS MENGGUNAKAN
METODE GENETIC ALGORITHM
SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi

VANESA FELICIA
111402038

PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

ii


PERSETUJUAN

Judul

: PENJADWALAN POLA MAKAN BAGI
PENDERITA DIABETES MELLITUS
MENGGUNAKAN METODE GENETIC ALGORITHM

Kategori

: SKRIPSI

Nama

: VANESA FELICIA

Nomor Induk Mahasiswa

: 111402038


Program Studi

: S1 TEKNOLOGI INFORMASI

Departemen

: TEKNOLOGI INFORMASI

Fakultas

: ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing

:

Pembimbing 2


Pembimbing 1

Romi Fadillah Rahmat, B.Comp.Sc M.Sc

M. Fadly Syahputra, B.Sc., M.Sc IT

NIP. 19860303 201012 1 004

NIP. 19830129 200912 1 003

Diketahui/disetujui oleh
Program Studi S1 Teknologi Informasi
Ketua,

Muhammad Anggia Muchtar, ST., MM.IT
NIP. 19800110 200801 1 010

Universitas Sumatera Utara

iii


PERNYATAAN

PENJADWALAN POLA MAKAN BAGI PENDERITA DIABETES MELLITUS
MENGGUNAKAN METODE GENETIC ALGORITHM

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing- masing telah disebutkan sumbernya.

Medan, 21 April 2016

VANESA FELICIA
111402038

Universitas Sumatera Utara

iv


UCAPAN TERIMA KASIH

Segala puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala
berkat dan pengasihan-Nya yang sungguh berlimpah, sehingga penulis dapat
menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Teknologi
Informasi Program Studi S1 Teknologi Informasi Universitas Sumatera Utara.
Penyelesaian skripsi ini juga tidak terlepas dari bantuan berbagai pihak. Untuk
itu, penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada Bapak
M.Fadly Syahputra B.Sc.,M.Sc.,IT dan Bapak Romi Fadillah Rahmat B.Comp.Sc., M.Sc
selaku dosen pembimbing yang telah banyak meluangkan waktu dan pikiran untuk
memberikan motivasi, kritik, dan saran kepada penulis. Penulis juga mengucapkan
terima kasih yang sebesar-besarnya kepada Ibu Amalia, ST., MT dan Bapak Ainul
Hizriadi, S.Kom., M. Comp. Sc yang telah bersedia menjadi dosen pembanding yang
telah memberikan kritik dan saran kepada penulis. Penulis juga mengucapkan terima
kasih kepada Ketua dan Sekretaris Program Studi Teknologi Informasi, Bapak M.
Anggia Muchtar, ST., MM.IT dan Bapak M.Fadly Syahputra B.Sc.,M.Sc.,IT, dan juga
seluruh Dosen dan Staff pegawai di Program Studi S1 Teknologi Informasi.
Penulis juga tidak lupa mengucapkan terima kasih kepada kedua orang tua
penulis yang telah memberikan dukungan moril dan spiritual, alm Drs. Maruli
Simanjuntak (+) dan Dra. Elisabeth Sutan. Kepada abang penulis Yorry Franky

Simanjuntak, ST, kepada kakak penulis Sri Swastika, SP, dan juga keponakan penulis
Zevany Argyaziva Richelle Simanjuntak yang turut juga memberikan motivasi dan
dukungan kepada penulis.
Terima kasih juga penulis ucapkan kepada teman-teman penulis yang setiap saat
selalu memberikan motivasi dan dukungan kepada penulis. Terutama penulis ucapkan
terima kasih kepada Dian Aria Ningsih, teman seperjuangan penulis dalam pencarian
data-data untuk menyelesaikan tugas akhir ini. Terima kasih juga penulis ucapkan kepada
seluruh teman-teman seangkatan 2011, kepada abang, kakak dan adik di jurusan
Teknologi Informasi yang tidak dapat disebutkan satu per satu.
Akhir kata, penulis ucapkan terima kasih kepada semua pihak yang telah
membantu menyelesaikan skripsi ini yang tidak dapat penulis sebutkan satu persatu.
Semoga Tuhan Yang Maha Esa membalas kebaikan kalian semua.

Universitas Sumatera Utara

v

ABSTRAK

Diabetes Melitus (DM) merupakan salah satu masalah kesehatan yang berdampak pada

produktivitas dan menurunkan mutu sumber daya manusia. Penyakit diabetes melitus
dapat dikontrol dengan cara menjaga dan mengatur pola hidup yang sehat dan seimbang,
terutama memperhatikan pola makan sehari- hari. Namun, saat ini belum ada sistem yang
dapat membantu pasien DM untuk memperoleh informasi mengenai pola makan yang
tepat. Oleh sebab itu diperlukan suatu pendekatan untuk memberikan penjadwalan pola
menu makanan setiap hari dalam satu minggu dengan nutrisi yang sesuai kepada pasien
DM guna membantu pasien diabetes untuk mengetahui makanan apa yang harus
dikonsumsi untuk membantu proses penyembuhan pasien DM. Penelitian ini
menggunakan metode Genetic Algorithm untuk menjadwalkan pola makan bagi
penderita diabetes mellitus. Pertama sekali akan dihitung jumlah kalori yang dibutuhkan
dengan persamaan Harris-Benedict yang kemudian akan dilanjutkan dengan proses
penentuan jenis diet penderita. Proses selanjutnya adalah penerapan algoritma genetika
untuk menjadwalkan menu makanan yang diawali dengan membangkitkan individu awal
secara acak. Tahap selanjutnya adalah menghitung nilai fitness, crossover, dan mutasi.
Setelah dilakukan pengujian sebanyak dua belas kali, maka dapat disimpulkan bahwa
semakin besar jumlah individu awal yang diberikan maka semakin besar ukuran populasi
dimana akan semakin banyak individu yang dihasilkan. Dengan semakin banyak individu
yang dihasilkan, maka semakin besar juga kemungkinan perubahan nilai fitness
mendekati nilai fitness yang terbaik. Dan juga dapat disimpulkan bahwa semakin besar
jumlah generasi yang diberikan, maka semakin besar peluang untuk memperoleh

individu yang terbaik dengan nilai fitness mendekati 0 atau sama dengan 0.

Kata Kunci: Diabetes Mellitus, Genetic Algorithm, penjadwalan, menu makanan

Universitas Sumatera Utara

vi

DIET SCHEDULING FOR DIABETIC PATIENT USING GENETIC ALGORITHM

ABSTRACT

Diabetes Mellitus (DM) is one of the health issues that have an impact on productivity
and decrease the quality of human resources. Diabetes Mellitus diseases can be
controlled by maintaining and controlling a healthy and balanced lifestyle, especially
paying attention to the daily diet. However, there is no system today that can help the
patient with diabetic diseases to obtain the information about the proper diet. Therefore,
we need an approach to give the information about daily food scheduling in a week with
an appropriate nutrition to the diabetic patients to help them to know what foods should
be taken for their healing process. This research is using Genetic Algorithm for

scheduling the diet for diabetic patients. The first thing to do is calculating the number of
required energy with Harris-Benedict equation and will be continued with determining
the type of diet. The next process is implementing the genetic algorithm for scheduling
the diet that begins with generating the initial individuals randomly. The next step is
calculating the fitness value, doing crossover, and doing mutation. After twelve times
testing is done, we can conclude that the greater the number of initial individuals is
given, then the greater the size of population is produced. With the greater the size of
population is produced, the greater the possibility of changes in fitness value will
approach the best fitness value. And it can also be concluded that the greater the number
of generations is given, the greater the probability to obtain the best individual with the
fitness value almost 0 or equal to 0.
Kata Kunci: Diabetes

Mellitus,

Genetic

Algorithm,

scheduling,


diet

menu

Universitas Sumatera Utara

vii

DAFTAR ISI

Halaman

Abstrak

i

Abstract

ii

Daftar Isi

iii

Daftar Tabel

vi

Daftar Gambar

Bab 1

Bab 2

vii

Pendahuluan
1.1

Latar Belakang

1

1.2

Rumusan Masalah

3

1.3

Batasan Masalah

3

1.4

Tujuan Penelitian

4

1.5

Manfaat Penelitian

4

1.6

Metodologi Penelitian

4

1.7

Sistematika Penulisan

5

Landasan Teori
2.1

Diabetes Mellitus

7

2.2

Perhitungan Kebutuhan Kalori

8

2.3

Kebutuhan Nutrisi bagi Pasien Diabetes Mellitus (DM)

10

2.4

Algoritma Genetika (Genetic Algorithm)

12

2.4.1

Proses Algoritma Genetika

13

2.4.2

Komponen Utama Algoritma Genetika

16

2.4.3

Pengertian Individu

22

2.5

2.4.4. Nilai Fitness

24

2.4.5. Elitisme

24

Penelitian Terdahulu

24

Universitas Sumatera Utara

viii

Bab 3

Analisis dan Perancangan
3.1

Arsitektur Umum

27

3.2

Data yang Digunakan

29

3.3

Perhitungan Kebutuhan Kalori

30

3.3.1. Hitung Berat Badan Ideal (BBI)

32

3.3.2. Hitung Kalori Basal

32

3.3.3. Hitung Koreksi Faktor Aktivitas

33

3.3.4. Hitung Koreksi Faktor Usia

33

3.3.5. Hitung Indeks Masa Tubuh (IMT)

33

3.3.6. Hitung Total Kebutuhan Kalori

34

3.4.

Penentuan Jenis Diet Penderita Diabetes Mellitus

34

3.5.

Model Algoritma Genetika

35

3.5.1. Struktur Algoritma Genetika

35

3.5.2. Inisialisasi Individu Awal

37

3.5.3. Evaluasi Nilai Fungsi Fitness

42

3.5.4. Seleksi

44

3.5.5. Crossover

45

3.5.6. Mutasi

49

Perancangan Sistem

51

3.6.1. Flowchart Sistem

51

3.6.2. Perancangan Database

52

3.6.3. Rancangan Tampilan Antarmuka

55

3.6.

Bab 4

Implementasi dan Pengujian Sistem
4.1. Implementasi Sistem
4.1.1. Spesifikasi Perangkat Keras dan Perangkat Lunak

67

4.1.2. Implementasi Perancangan Antarmuka

68

4.2. Pengujian Kinerja Sistem

Bab 5

67

76

Kesimpulan dan Saran
5.1. Kesimpulan

87

5.2. Saran

88

Universitas Sumatera Utara

ix

Daftar Pustaka

Universitas Sumatera Utara

x

DAFTAR TABEL

Halaman

Tabel 2.1

Kelompok Status Berat Badan

10

Tabel 2.2

Klasifikasi Diet Diabetes Mellitus dan Kandungan Nutrisi

12

Tabel 2.3

One Point Crossover

19

Tabel 2.4

Two Point Crossover

20

Tabel 2.5

Crossover Seragam

20

Tabel 2.6

Penelitian Terdahulu

25

Tabel 3.1

Parameter Pasien

29

Tabel 3.2

Parameter Nutrisi Makanan

30

Tabel 3.3

Data Pasien Diabetes Mellitus

32

Tabel 3.4

Menu Makanan dari Database

40

Tabel 3.5

Hasil Normalisasi Berat Menu Makanan Baru

42

Tabel 3.6

Menu Makanan Hasil Inisialisasi Populasi Awal

43

Tabel 4.1

Hasil Nilai Fitness tiap Generasi pada Setiap Populasi

84

Universitas Sumatera Utara

xi

DAFTAR GAMBAR

Halaman

Gambar 2.1

Diagram Alir Proses Algoritma Genetika

14

Gambar 2.2

Ilustrasi Representasi Penyelesaian Permasalahan dalam GA

23

Gambar 3.1

Arsitektur Umum

28

Gambar 3.2

Flowchart Perhitungan Kebutuhan Kalori Pasien

31

Gambar 3.3

Struktur Individu

35

Gambar 3.4

Struktur Kromosom

36

Gambar 3.5

Struktur Genotype (Gen)

36

Gambar 3.6

Flowchart Tahapan Inisialisasi Individu Awal

37

Gambar 3.7

Ilustrasi Menggunakan Rank Based Fitness Assignment

45

Gambar 3.8

Ilustrasi Proses Crossover Kondisi Pertama

47

Gambar 3.9

Ilustrasi Proses Crossover Kondisi Kedua

48

Gambar 3.10 Ilustrasi Proses Mutasi

50

Gambar 3.11 Flowchart Sistem

51

Gambar 3.12 Data pada Tabel Menu Makanan

53

Gambar 3.13 Data pada Tabel Jenis Diet

53

Gambar 3.14 Data pada Tabel Jadwal Makanan

54

Gambar 3.15 Data pada Tabel Pasien

54

Gambar 3.16 Rancangan Tampilan Halaman Utama

55

Gambar 3.17 Rancangan Tampilan Halaman Info Diabetes Mellitus

56

Gambar 3.18 Rancangan Tampilan Halaman Galeri

57

Gambar 3.19 Rancangan Tampilan Halaman Buat Jadwal

58

Gambar 3.20 Rancangan Tampilan Halaman Data Diet Pasien

60

Gambar 3.21 Rancangan Tampilan Halaman Output

62

Gambar 3.22 Rancangan Tampilan Log Proses Algoritma Genetika

63

Gambar 3.23 Rancangan Tampilan Halaman Grafik

64

Gambar 3.24 Rancangan Tampilan Data Pasien

65

Gambar 4.1

68

Halaman Utama

Universitas Sumatera Utara

xii

Gambar 4.2

Halaman Info Diabetes

69

Gambar 4.3

Halaman Galeri

69

Gambar 4.4

Halaman Pengisian Data Pasien

70

Gambar 4.5

Halaman Info Data Diet Pasien

71

Gambar 4.6

Tampilan Pemilihan Individu Awal dan Generasi

72

Gambar 4.7

Halaman Hasil Penjadwalan

73

Gambar 4.8

Tampilan Jadwal Satu Hari

74

Gambar 4.9

Tampilan Data Pasien

74

Gambar 4.10 Tampilan Halaman Grafik

75

Gambar 4.11 Tampilan Log Proses Algoritma Genetika

76

Gambar 4.12 Grafik Percobaan dengan Individu 10 dan Generasi 50

76

Gambar 4.13 Grafik Percobaan dengan Individu 10 dan Generasi 70

77

Gambar 4.14 Grafik Percobaan dengan Individu 10 dan Generasi 100

78

Gambar 4.15 Grafik Percobaan dengan Individu 20 dan Generasi 50

78

Gambar 4.16 Grafik Percobaan dengan Individu 20 dan Generasi 70

79

Gambar 4.17 Grafik Percobaan dengan Individu 20 dan Generasi 100

80

Gambar 4.18 Grafik Percobaan dengan Individu 30 dan Generasi 50

80

Gambar 4.19 Grafik Percobaan dengan Individu 30 dan Generasi 70

81

Gambar 4.20 Grafik Percobaan dengan Individu 30 dan Generasi 100

82

Gambar 4.21 Grafik Percobaan dengan Individu 40 dan Generasi 50

82

Gambar 4.22 Grafik Percobaan dengan Individu 40 dan Generasi 70

83

Gambar 4.23 Grafik Percobaan dengan Individu 40 dan Generasi 100

84

Gambar 4.24 Grafik Hubungan Individu, Generasi, dan Fitness

85

Universitas Sumatera Utara