i
IMPLEMENTASI ALGORITMA GENETIKA
UNTUK MENENTUKAN MENU MAKANAN
BAGI PENDERITA JANTUNG
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Oleh :
Marina Amalia 201010370311358
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2015
vi
LEMBAR PERSEMBAHAN
Alhamdulillahirabbil’alamin , segala puji kepada Allah SWT atas rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan Tugas Akhir ini dengan baik. Penulis mengucapkan terimakasih yang sebesar-besarnya kepada :
1. Bapak Dekan Fakultas Teknik Universitas Muhammadiyah Malang.
2. Bapak Ketua Jurusan Teknik Informatika Universitas Muhammadiyah
Malang.
3. Bapak Galih Wasis Wicaksono, M.Cs. dan Bapak Yufis Azhar, M.Kom.
selaku pembimbing tugas akhir.
4. Kedua orang tua, Ibu Sulasti Susiyati dan almarhum ayah Bapak Haryono
yang senantiasa memberikan dukungan baik secara moril maupun tidak sehingga saya terus termotivasi untuk segera menyelesaikan tugas akhir.
5. Kakak tersayang Marissa Haryati yang selalu memberikan dukungan
penuh untuk tugas akhir ini.
6. Keluarga besar yang senantiasa membantu perkuliahan dan memberi
semangat kepada saya sehingga sampai menjadi sarjana.
7. Someone special Denny Hadi Santoso yang senantiasa selalu memberikan
motivasi, dukungan, dan semangat kepada saya 
8. Sahabat terdekat Vigi Lestari Basarewan, Aisyah Hanny.
9. Sahabat kelas IT H Dian Nirmala, Tri Rahmadani, Yuni Ma’rifah, Pantris
Lestiwulan, Eka, Dessy, dan kawan-kawan kelas H 2010 lainnya.
10.Sahabat sekos Retta Wulansari.
11.Teman-teman kerja Sekawan Mitra Abadi, mbak Citra Dwisaswi yang
tidak hentinya-hentinya memberikan dukungan dan selalu
memperbolehkan bimbingan skripsi, Mas Aries yang sudah sangat baik memberikan kesempatan menyelesaikan skripsi. Terima kasih atas bantuannya.
12.Serta Semua pihak yang tidak dapat penulis sebutkan satu persatu yang
viii
DAFTAR ISI
LEMBAR PERSETUJUAN ... i
LEMBAR PENGESAHAN ... ii
LEMBAR PERYATAAN ... iii
ABSTRAKSI ... iv
ABSTRACT ... v
LEMBAR PERSEMBAHAN ... vi
KATA PENGANTAR ... vii
DAFTAR ISI ... viii
DAFTAR GAMBAR ... x
DAFTAR TABEL ... xi
BAB I PENDAHULUAN 1.1 Latar Belakang Masalah ... 1
1.2 Rumusan Masalah ... 2
1.3 Tujuan Masalah ... 2
1.4 Batasan Penelitian ... 3
1.5 Metodologi Penelitian ... 3
1.6 Sistematika Penulisan ... 5
BAB II LANDASAN TEORI 2.1 Tinjauan Pustaka ... 6
2.1.1. Jantung ... 6
2.1.2. Serangan Jantung ... 6
2.1.3. Macam-macam Penyakit Jantung ... 6
2.1.4. Pengaturan Makanan untuk Penderita Jantung ... 8
2.1.5. Body Mass Index ... ... 10
2.1.6. Bassal Metabolic Rate ... 11
2.2 Algoritma Genetika ... 12
2.2.1. Komponen-komponen Utama Algoritma Genetika ... 15
2.2.2. Parameter Algoritma Genetika ... 23
BAB III ANALISA DAN PERANCANGAN SISTEM 3.1 Deskripsi Umum ... 25
ix
3.2 Analisis Permasalahan ... 26
3.3 Usulan Pemecahan Masalah ... 26
3.4 Perancangan Algoritma Genetika ... 26
3.5 Perancangan Sistem ... 32 3.5.1.Usecase Diagram ... 33 3.5.2.Activity Diagram ... 34 3.5.3.Sequence Diagram ... 35 3.5.4.Class Diagram ... 36 3.5.5.Database ... 37
3.5.6.Perancangan Antar Muka (Interface) ... 38
BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Sistem ... 41
4.1.1 Antar Muka Aplikasi dan Hasil Penentuan Menu Makanan ... 41
4.1.2 Spesifikasi Perangkat Lunak ... 45
4.2 Kode Program Algoritma Genetika ... 44
4.2.1 Kode Program Inisialisasi Kromosom... 44
4.2.2 Potongan Program Perhitungan Nilai Fitness ... 45
4.2.3 Kode Program Seleksi ... 46
4.2.4 Kode Program Mutasi ... 47
4.2.5 Kode Program Pindah Silang (Crossover) ... 47
4.2.6 Kode Program Generasi ... 49
4.3 Pengujian Sistem ... 49
4.3.1 Pengujian dengan Maksimum Generasi ... 49
4.3.2 Pengujian dengan Pengehentian Tertentu ... 51
BAB V PENUTUP 5.1 Kesimpulan ... 54
5.2 Saran ... 54
DAFTAR PUSTAKA ... 55 LAMPIRAN
x
DAFTAR GAMBAR
Gambar 2.1 Diagram alir algoritma genetika sederhana ... 14
Gambar 2.2 Representasi string ... 15
Gambar 2.3 Representasi string pohon ... 15
Gambar 2.4 Probabilitas terpilihnya suatu kromosom dalam rodaroulet.... 17
Gambar 2.5 Contoh genome sebelum dan sesudah mutasi ... 23
Gambar 3.1 Usecase Diagram ... 33
Gambar.3.2Activity Diagram Informasi Status Gizi ... 34
Gambar 3.3 Activity Diagram Kelola Data ... 35
Gambar 3.4 Sequence Diagram Informasi Status Gizi ... 35
Gambar 3.5 Sequence Diagram Kelola Data... 36
Gambar 3.6 Class Diagram ... 36
Gambar 3.7 Interface Menu Utama ... 38
Gambar 3.8 Interface Status Gizi... 39
Gambar 3.9 Interface Kelola Data ... 39
Gambar 3.10 Interface About ... 40
Gambar 3.11 Interface Help ... 40
Gambar 4.1 Tampilan Menu Utama ... 41
Gambar 4.2 Tampilan Status Gizi ... 42
Gambar 4.3 Tampilan Hasil Rekomendasi Menu ... 43
Gambar.4.4 Tampilan Kelola Data ... 43
Gambar.4.5 Kode program mengambil data dari database... ... 44
Gambar 4.6 Inisialisasi random populasi awal ... 44
Gambar 4.7 Kode program fitness pagi ... 45
Gambar 4.8 Kode program fitness siang ... 45
Gambar.4.9 Kode program fitness malam ... 46
Gambar 4.10 Kode program seleksi ... 46
Gambar 4.11 Kode program mutasi ... 47
Gambar 4.12 Kode program crossover ... 48
xi
DAFTAR TABEL
Tabel 2.1 Pengaturan Makanan untuk Penderita Jantung ... 8
Tabel 2.2 Kategori Batas Ambang BMI (Body Mass Index) ... 11
Tabel 2.3 Contoh crossover 1 titik ... 19
Tabel 2.4 Contoh crossover 2 titik ... 20
Tabel 2.5 Contoh crossover seragam ... 20
Tabel 2.6 Contoh mutasi pada pengkodean biner ... 21
Tabel 2.7 Contoh mutasi pada pengkodean permutasi ... 22
Tabel 2.8 Contoh mutasi pada pengkodean permutasi riil ... 22
Tabel 3.1 Inisialisasi Kromosom ... 27
Tabel 3.2 Perhitungan nilai fitness ... 29
Tabel 3.3 Hasil Seleksi... 30
Tabel 3.4 Contoh Crossover ... 30
Tabel 3.5 Tabel Hasil Crossover ... 31
Tabel 3.6 Tabel Hasil Mutasi ... 31
Tabel 3.7 Alur Program ... 33
Tabel 3.8 Tabel mak_pembuka ... 37
Tabel 3.9 Tabel mak_utama ... 37
Tabel 3.10 Alur mak_penutup ... 37
Tabel 4.1 Pengujian dengan jumlah populasi 10 ... 49
Tabel 4.2 Pengujian dengan jumlah populasi 15 ... 50
Tabel 4.3 Pengujian dengan jumlah populasi 20 ... 50
Tabel 4.4 engujian dengan peluang mutasi 0,1 ... 50
Tabel 4.5 Pengujian dengan peluang mutasi 0,2 ... 51
Tabel 4.6 Pengujian dengan peluang mutasi 0,25 ... 51
Tabel 4.7 Pengujian dengan jumlah populasi 10 ... 51
Tabel 4.8 Pengujian dengan jumlah populasi 15 ... 52
Tabel 4.9 Pengujian dengan jumlah populasi 20 ... 52
Tabel 4.10 Pengujian dengan peluang mutasi 0,1 ... 52
Tabel 4.11 Pengujian dengan peluang mutasi 0,2 ... 53
55
DAFTAR PUSTAKA
[1]. Soeharto Iman,2004,Penyakit Jantung Koroner dam Serangan Jantung,
Penerbit PT Gramedia Pustaka Utama, Jakarta,Halaman 6.
[2]. Iman Soeharto,2004,Penyakit Jantung Koroner dam Serangan Jantung,
Penerbit PT Gramedia Pustaka Utama, Jakarta,Halaman 42
[3]. Iman Soeharto,2004,Penyakit Jantung Koroner dam Serangan Jantung,
Penerbit PT Gramedia Pustaka Utama, Jakarta,Halaman 46
[4]. Kementrian Kesehatan RI Direktorat Bina Gizi, 2011, Diet penyakit
Jantung.
[5]. TedyRismawan,2007,
"AplikasiAlgoritmaGenetikaUntukPenentuanKomposisiBahanPanganHaria n,Yogyakarta,Jurnal Informatika.
[6]. Widyastuti, N., Ratnawati, A. Dan Cahyani, R N. 2008.
OptimasiPenjadwalanKegiatanBelajarMengajardenganAlgoritmaGenetika.
Surakarta :FakultasMatematikadanIlmuPengetahuanAlam,
UniversitasSebelasMaret.
[7]. Suyanto. 2005. AlgoritmaGenetikaDenganMatlab. Yogyakarta :Andi.
[8]. Kusumadewi, S 2003. Artificial Intelegence (TeknikdanAplikasinya),
Yogyakarta, Penerbit GrahaUtama, Halaman300
[9]. Kusumadewi, S 2003. Artificial Intelegence (TeknikdanAplikasinya),
Yogyakarta, Penerbit GrahaIlmu, Halaman 280
[10]. Kusumadewi, S 2003. Artificial Intelegence (TeknikdanAplikasinya),
Yogyakarta, PenerbitGrahaIlmu, Halaman 281-282
[11]. Suyanto. 2005. AlgoritmaGenetikaDenganMatlab, Yogyakarta, Penerbit
Andi, Halaman 10
[12]. Kusumadewi, S 2003. Artificial Intelegence (TeknikdanAplikasinya),
Yogyakarta, PenerbitGrahaIlmu, Halaman 289
[13]. Muhammad, Ali. 2013.Desain Dan ImplementasiAlgoritmaGenetikaUntuk
Program Penjadwalan “Coass” (StudiKasusLembagaKepaniteraanFk.
Umm)). Malang: JurusanTeknikInformatika UMM.
[14]. Kusumadewi, S 2003. Artificial Intelegence (TeknikdanAplikasinya),
Yogyakarta, Penerbit Graha
[15]. “Rumus dan Cara Menghitung BMI (Body Mass Index) [Online]”. Available: http://ilmupengetahuanumum.com/rumus-dan-cara-menghitung-bmi-body-mass-index/. [Accessed: 20-April-2014].