OPTIMASI TEBAR BENIH DAN PAKAN PADA SUATU KOLAM MENGGUNAKAN ALGORITMA GENETIKA (Studi Kasus : Budidaya Ikan Lele di Sungai Carang Kelurahan Air Raja Tanjungpinang)
Riltia Zuldora Mahasiswa Teknik Informatika, FT UMRAH (
[email protected]) Nerfita Nikentari, ST., M.Cs Dosen Teknik Informatika, FT UMRAH (
[email protected]) Martaleli Bettiza, S.Si, M.Sc Dosen Teknik Informatika, FT UMRAH (
[email protected])
ABSTRAK Dalam rangka meningkatkan produksi sumberdaya perikanan yang termasuk salah satu didalamnya adalah usaha budidaya ikan lele memerlukan suatu alternatif pemecahan masalah pada tebar benih dan pakan yang optimal pada suatu kolam, maka dibutuhkan suatu metode optimasi untuk menyelesaikan permasalahan tersebut. Salah satunya adalah dengan menggunakan algoritma genetika. Dalam penelitian ini melibatkan beberapa variabel, seperti luas kolam, jumlah tebar benih, dan jumlah pakan yang dibutuhkan dalam suatu kolam budidaya ikan lele. Berdasarkan ujicoba yang telah dilakukan dengan jumlah populasi sebanyak 6, 11, dan 16 serta iterasi sebanyak 5, 10, dan 15 dengan parameter pengujian berupa luas kolam memiliki nilai parameter 4, jumlah tebar benih memiliki nilai parameter 7, dan total pakan memiliki nilai parameter 5 maka didapatkan tebar benih dan pakan yang optimal pada setiap kolam yang ada pada budidaya ikan lele di Sei.Carang Kel.Air Raja Tanjungpinang dengan memperhatikan fitness terbaik yang bernilai 1, dengan artian tidak ditemukan adanya Pakan Tidak Ideal (PTI=0) pada setiap iterasi yang terjadi untuk setiap ujicoba yang telah dilakukan. Optimasi tebar benih dan pakan pada suatu kolam budidaya ikan lele dengan Algoritma Genetika bergantung pada pembangkitan bilangan acak dan ada atau tidaknya nilai PTI yang ditemukan yang kemudian akan mempengaruhi nilai fitness yang dihasilkannya, sehingga iterasi tidak dapat dijadikan batasan proses untuk mencapai hasil yang optimal. Kata kunci : algoritma genetika, optimasi tebar benih dan pakan, kolam budidaya ikan lele.
1
ABSTRACT To increase the production of fishery resources which included one in it is catfish farming requires an alternative solution to the seeding and the optimal feed in a pond, it needed an optimization method to solve these problems. One is by using a genetic algorithm. In this study involving several variables, such as large pool, the amount of seeding, and the amount of feed needed in a pond catfish farming. Based on experiments conducted with a total population of 6, 11, and 16 and iteration as many as 5, 10, and 15 with the testing parameters such as swimming area has a parameter value 4, the amount of seeding has a parameter value 7, and the total feed has a parameter value 5 then obtained seeding and the optimal feed on any existing pond on catfish farming in Carang’s River, Air Raja’s Village, Tanjungpinang with due regard to the best fitness value is 1, with the sense that there were no Feed Not Ideal (PTI = 0) at each iteration that happens to every test that has been carried out. Optimization of seeding and feeding on a catfish pond with Genetic Algorithm relies on generating random numbers and whether or not the value of the PTI were found which would then affect the value of fitness resulting from it, so it can’t be limitation iteration processes to achieve optimal results. Keywords: genetic algorithms, optimization of seeding and feeding, pond catfish farming.
I. PENDAHULUAN
II. KAJIAN LITERATUR
Sumber daya perikanan merupakan salah satu asset nasional yang harus dikelola dengan baik karena memiliki peran penting sebagai penghasil pendapatan daerah maupun sebagai penghasil protein bagi masyarakat. Dalam rangka meningkatkan produksi sumberdaya perikanan, salah satunya adalah dengan usaha budidaya ikan lele yang bertujuan untuk meningkatkan pendapatan masyarakat sekitar. Budidaya ikan lele melibatkan beberapa variabel, seperti luas kolam, jumlah tebar benih, dan jumlah pakan yang dibutuhkan dalam suatu kolam. Sejumlah permasalahan pun diteliti untuk mendapatkan tebar benih dan pakan yang optimal dalam suatu kolam budidaya ikan lele, misalnya jumlah benih yang ditebarkan juga harus seimbang dengan sejumlah pakan yang dibutuhkan pada setiap kolamnya. Untuk membuat suatu alternatif pemecahan masalah pada jumlah tebar benih dan pakan yang optimal dalam suatu kolam budidaya ikan lele dibutuhkan suatu metode optimasi untuk menyelesaikan permasalahan tersebut. Salah satunya adalah dengan menggunakan Algoritma Genetika.
A. Kajian Terdahulu Komang Setemen (2008) mengimplementasikan Algoritma Genetika dalam Pengembangan Sistem Aplikasi Penjadwalan Kuliah. Sebagai ujicoba kemampuan sistem yang dikembangkan untuk pembuatan jadwal mata kuliah, digunakan data mata kuliah semester genap tahun akademik 2007/2008 pada Fakultas Teknik dan Kejuruan Universitas Pendidikan Ganesha. Implementasi perangkat lunak yang dikembangkan, diujicobakan pada tiga kelompok data dengan jumlah mata kuliah setiap kelompok data berbeda-beda. Dari ujicoba ketiga kelompok data didapatkan hasil yakni, algoritma genetika cukup baik digunakan sebagai algoritma membuat jadwal mata kuliah, hal ini dapat dilihat dari hasil Ujicoba I sampai dengan Ujicoba III yang telah dilakukan. Keberhasilan ini dapat dilihat dari nilai fitness sama dengan nol yang dihasilkan setiap kali ujicoba, yang menandakan bahwa jadwal yang dihasilkan sudah tidak ada bentrok. Luh Kesuma Wardhani, M.Safrizal, dan Achmad Chairi (2011) menerapkan Algoritma Genetika dalam Optimasi Komposisi Bahan Pakan Ikan Air Tawar. Penerapan metode ini pada aplikasi untuk ikan air tawar dapat bekerja dengan ratarata tingkat keberhasilan pemenuhan nilai
2
gizi mencapai 100 % dan tingkat efisiensi biaya mencapai 46.5 %. Kombinasi optimal untuk menghasilkan pakan sejumlah 6 kg tersebut dapat dicapai menggunakan parameter panjang gen 5, jumlah kromosom 200, probabilitas crossover 0.01, probabilitas mutasi 0.2, probabilitas elitism 0.03, dan jumlah generasi 5. Michael Gareth Muthini Kituu (2011) menerapkan Algoritma Genetika dalam Optimasi Perancangan dan Kinerja Pengering Ikan Terobosan Panel Surya. Penelitian dilakukan untuk mengoptimalkan perancangan dan kinerja dari terobosan panel surya dengan menggunakan algoritma genetika. Pada awalnya, model dikembangkan untuk simulasi komputer dengan model prediksi dari radiasi matahari secara umum pada mesin pengering, jumlah energi matahari yang dimanfaatkan serta pengeringan ikan. Model tersebut kemudian divalidasi berdasarkan data aktual dan kemudian digunakan di dalam proses optimasi. Energi matahari kemudian diubah perancangannya sehingga diperoleh perancangan yang optimal. Terobosan panel surya tersebut diuji untuk mengevaluasi kinerjanya dalam pemanfaatan energi matahari dan pengeringan ikan nila. B. Landasan Teori Algoritma ini ditemukan di Universitas Michigan, Amerika Serikat oleh John Holland (1975) melalui sebuah penelitian dan dipopulerkan oleh salah satu muridnya, David Goldberg (1989). Dimana mendefenisikan algoritma genetik ini sebagai metode algoritma pencarian berdasarkan pada mekanisme seleksi alam dan genetik alam. Algoritma genetik memberikan suatu pilihan bagi penentuan nilai parameter dengan meniru cara reproduksi genetik, pembentukan kromosom baru serta seleksi alami seperti yang terjadi pada makhluk hidup. Golberg (1989) mengemukakan bahwa variabel dan parameter yang digunakan pada algoritma genetik adalah :
1.
2. 3. 4. 5.
Fungsi fitness (fungsi tujuan) yang dimiliki oleh masing-masing individu untuk menentukan tingkat kesesuaian individu tersebut dengan kriteria yang ingin dicapai. Populasi jumlah individu yang dilibatkan pada setiap generasi. Probabilitas terjadinya persilangan (crossover) pada suatu generasi. Probabilitas terjadinya mutasi pada setiap individu. Jumlah generasi yang akan dibentuk yang menentukan lama penerapan algoritma genetik.
III. METODE PENELITIAN A. Metode Pengumpulan Data Metode pengumpulan data adalah dengan studi literatur dan observasi kepada obyek data, yaitu pengumpulan data untuk mengetahui data apa saja yang akan digunakan untuk mengoptimasi tebar benih dan pakan pada suatu kolam budidaya ikan lele yang berlokasi di Sungai Carang, Kelurahan Air Raja, Tanjungpinang. B. Metode Pengembangan Sistem Pada tahap pengembangan sistem adalah dengan menggunakan UML (Unified Modelling Language). UML merupakan analisis perancangan perangkat lunak berorientasi objek. Secara khusus, UML menspesifikasikan langkah-langkah penting dalam pengambilan keputusan analisis dan perancangan serta implementasi dalam sebuah sistem.
3
IV. PERANCANGAN DAN IMPLEMENTASI Perancangan sistem ini seperti yang tampak pada gambar-gambar berikut :
Pendataan (Input Data)
Proses Data (Mencari Solusi)
User Laporan Hasil (Melihat Solusi)
Gambar 1. Use Case Diagram
Use case diagram digunakan untuk menggambarkan bagaimana sistem akan dibangun. Aplikasi ini diperuntukkan untuk pembudidaya ikan lele. M
Proses optimasi tebar benih dan pakan pada suatu kolam budidaya ikan lele dengan algoritma genetika dapat dilihat pada gambar 2 di atas. Proses diawali dengan pengkodean data. Pembangkitan populasi awal dilakukan dengan cara pengambilan data dari database yang diperoleh untuk proses random (acak). Selanjutnya dilakukan pengevaluasian fungsi fitness untuk mengetahui jumlah Pakan Tidak Ideal (PTI) yang terjadi diikuti dengan pemeriksaan nilai fitness sudah memenuhi kriteria berhenti atau belum. Jika belum, proses dilanjutkan dengan menyeleksi kromosom yang terbentuk, kromosom yang bernilai baik memiliki kemungkinan yang cukup besar terpilih untuk dilanjutkan ke proses selanjutnya. Kromosom-kromosom hasil seleksi disilangkan dengan membangkitkan bilangan acak yang dibandingkan dengan probabilitas pindah silang yang di-set oleh pengguna. Selanjutnya kromosom-kromosom hasil persilangan dimutasi dengan cara membangkitkan bilangan acak yang dibandingkan dengan probabilitas mutasi yang di-set oleh pengguna. Hal ini dilakukan secara berulang hingga memenuhi kriteria berhenti.
Gambar 2. Flowchart Algoritma Genetika
4
A. Menentukan Populasi Awal dan Inisialisasi Kromosom
Mulai
N = Jumlah Kromosom (Misalkan N=5)
indeks populasi (i) = 1 to N Buat Gen Kromosom dengan teknik Random Generator (Contoh gen : K01Tb02TP03)
Tidak N
Tabel 2. Data Tebar Benih Ikan Lele
id_tebar Tb01 Tb02 Tb03 Tb04 Tb05 Tb06 Tb07
jumlahtebar 1.000 3.000 5.000 6.000 9.000 10.000 20.000
Tabel 3. Data Pakan Ikan Lele
id_pakan TP01 TP02 TP03 TP04 TP05
totalpakan 500 650 800 1.000 2.000
Ya Berhenti
B. Fungsi Fitness
Gambar 3. Flowchart Pembentukan Kromosom
Pada penelitian ini, solusi yang dihasilkan adalah untuk mengoptimalkan tebar benih dan pakan pada suatu kolam budidaya ikan lele. Panjang satu kromosom adalah gabungan gen berdasarkan variabel-variabel tersebut. Satu gen berisi informasi mengenai luas kolam, jumlah tebar benih, dan jumlah pakan yang dibutuhkan dalam suatu kolam. Sebagai contoh untuk inisialisasi pembentukan kromosom, misalkan ada sebaran data kolam pada tabel 1, data jumlah tebar benih pada tabel 2, dan data pakan pada tabel 3. Tabel 1. Data Kolam Ikan Lele
id_kolam K01 K02 K03 K04
luaskolam 5x2 10 x 5 10 x 12 8 x 15
Fungsi yang digunakan untuk mengukur nilai kecocokan atau derajat optimalitas suatu kromosom disebut dengan fitness function. Nilai fitness ini akan berkisar dari nilai 0 (nol) sampai 1 (satu). Nilai yang dihasilkan dari fungsi tersebut menandakan seberapa optimal solusi yang diperoleh. Nilai yang dihasilkan oleh fungsi fitness merepresentasikan seberapa banyak jumlah Pakan yang Tidak Ideal (PTI), sehingga dalam kasus ini semakin kecil nilai PTI yang dihasilkan maka solusi yang dihasilkan semakin baik. Untuk setiap PTI yang terjadi akan diberi nilai 1. ………….………………...(1) Keterangan : PTI = banyaknya Pakan Tidak Ideal PTI (Pakan Tidak Ideal) didapatkan dari : > 10 ekor lele ………………. (2) Keterangan : Tb = Jumlah Tebar benih ikan lele TP = Total Pakan yang dbutuhkan
5
C. Seleksi
D. Pindah Silang (Crossover)
Mulai
Mulai
Hitung Total Nilai Fitness
Pc = 0,5
Hitung Probabilitas Tiap Kromosom
Bangkitkan Bilangan Acak [0..1] Tiap Kromosom
Tempatkan Tiap Kromosom pada Interval Nilai [0..1]
Tidak
Bilangan Acak Kromosom < Pc
Ya
Bangkitkan Bilangan Acak [0..1] Tiap Kromosom
Bentuk Susunan Kromosom Populasi Baru
Pilih Kromosom Induk (Mis: kromosom 2, 3, 4, & 5)
Tentukan Acak 1 Titik Potong (Misalnya bilangan acak yang dibangkitkan adalah 2, artinya titik potong berada setelah gen 2)
Berhenti Pindah Silang 2 Kromosom
Selesai
Gambar 4. Flowchart Proses Seleksi
Proses seleksi dimulai dari menghitung total nilai fitness, menghitung probabilitas setiap kromosom, menempatkan setiap kromosom pada interval nilai [0..1], membangkitkan bilangan acak [0..1] setiap kromosom, sehingga susunan kromosom hasil seleksi terbentuk menjadi populasi baru.
Gambar 5. Flowchart Proses Pindah Silang (Crossover)
Menurut (Suyanto, 2005), Pc (probabilitas crossover) umumnya di-set mendekati 1, misalnya 0,5. Kemudian, bangkitkan bilangan acak [0..1] pada setiap kromosomnya, jika bilangan acak kurang dari Pc yang telah ditentukan maka pilih kromosom tersebut dan tentukan secara acak titik potongnya, lakukan pindah silang terhadap kromosom tersebut.
6
E. Mutasi
F. Syarat Berhenti (Kondisi Selesai)
Mulai
Pm = 0,1
Hitung Total Jumlah Gen= 4 x 5 = 20 Hitung Gen yang dimutasi = Pm x Total Gen = 0,1 x 20 = 2
Hitung nilai PTI setiap gen
Dengan didapatkannya susunan kromosom baru maka dapat dilakukan evaluasi fungsi fitness, sehingga dapat dibandingkan hasil nilai fitness populasi awal dengan populasi baru. Pada kasus ini, kondisi selesai yang dapat menghentikan proses algoritma genetika ini adalah jika memenuhi nilai fitness atau iterasi maksimum telah tercapai. Dan solusi yang diharapkan adalah solusi yang memiliki nilai fitness terbaik, yaitu 1. Dapat dilihat bahwa setelah mengalami satu iterasi algoritma genetika, nilai fitness suatu kromosom menjadi lebih baik atau mendekati optimal.
Tidak Ada nilai PTI?
Ya
Bangkitkan nilai PTI tertinggi yang dimiliki masing-masing gen
Pilih dan Ubah Informasi Gen yang memiliki nilai PTI tertinggi (total pakan gen ke-1 pada kromosom 3 & 4 yang diubah)
Berhenti
Gambar 6. Flowchart Proses Mutasi
Menurut (Suyanto, 2005), Pm (probabilitas mutasi) umumnya di-set antara [0..1], misalnya 0,1. Untuk mendapatkan posisi gen yang akan dimutasi maka perlu dihitung jumlah total gen dalam satu populasi yaitu Total Gen = Jumlah gen dalam satu kromosom x jumlah kromosom yang ada. misalkan Total Gen = 4 x 5 = 20. Probabilitas mutasi ditetapkan 0,1 maka diharapkan mutasi yang terjadi adalah : 0,1 x 20 = 2 gen yang akan mengalami mutasi. Kemudian, hitung nilai PTI (Pakan Tidak Ideal) setiap gen. Jika ada yang mendapatkan PTI yang tinggi, maka bangkitkan nilai PTI tertinggi yang dimiliki masing-masing gen tersebut. Pilih dan ubah gen tersebut, informasi gen yang diubah adalah total pakan, sehingga akan menghasilkan susunan kromosom baru hasil mutasi.
V. PEMBAHASAN Ujicoba dilakukan terhadap kolam budidaya ikan lele yang berlokasi di Sungai Carang Kelurahan Air Raja Tanjungpinang. Berikut parameter uji coba yang digunakan: Tabel 4. Parameter Pengujian
No
Nama Parameter
1 2 3
Luas kolam Jumlah tebar benih Total pakan
Nilai Parameter 4 7 5
Pengujian dilakukan terhadap 3 macam jumlah populasi, yaitu 6, 11, dan 16 serta 3 macam jumlah iterasi, yaitu 5, 10, dan 15. - Uji Coba 1 (Jumlah Populasi : 6)
7
Ujicoba I dilakukan dengan membangkitkan 6 populasi awal. Berdasarkan hasil yang diperoleh pada ujicoba ini, untuk mendapatkan tebar benih dan pakan yang optimal dalam suatu kolam budidaya ikan lele diambil berdasarkan nilai fitness terbaik (fitness = 1) pada setiap iterasi yang terjadi, maka didapatkan optimasi sebagai berikut :
Tabel 6. Hasil Pengujian Uji Coba II
Luas Kolam (m)
5x2
Tabel 5. Hasil Pengujian Uji Coba I
Luas Kolam (m) 5x2
10 x 5 10 x 12 8 x 15
Jumlah Tebar Benih (ekor) 1.000 6.000 3.000 9.000 5.000 6.000 6.000 6.000
Total Pakan (kg) 650 1.000 650 2.000 1.000 1.000 2.000 1.000
- Uji Coba II (Jumlah Populasi : 11)
Uji coba II dilakukan dengan membangkitkan 11 populasi awal. Berdasarkan hasil yang diperoleh pada uji coba ini, untuk mendapatkan tebar benih dan pakan yang optimal dalam suatu kolam budidaya ikan lele diambil berdasarkan nilai fitness terbaik (fitness = 1) pada setiap iterasi yang terjadi, maka didapatkan optimasi sebagai berikut :
10 x 5
10 x 12
8 x 15
Jumlah Tebar Benih (ekor) 1.000 3.000 3.000 1.000 5.000 3.000 5.000 6.000 6.000 5.000 9.000 10.000 5.000 10.000 9.000 10.000 20.000
Total Pakan (kg) 500 500 650 650 500 500 500 1.000 800 500 1.000 2.000 800 1.000 1.000 1.000 2.000
- Uji Coba III (Jumlah Populasi : 16)
Uji coba III dilakukan dengan membangkitkan 16 populasi awal. Berdasarkan hasil yang diperoleh pada uji coba ini, untuk mendapatkan tebar benih dan pakan yang optimal dalam suatu kolam budidaya ikan lele diambil berdasarkan nilai fitness terbaik (fitness = 1) pada setiap iterasi yang terjadi, maka didapatkan optimasi sebagai berikut :
8
Tabel 7. Hasil Pengujian Uji Coba III
Luas Kolam (m)
5x2
10 x 5
10 x 12
8 x 15
Jumlah Tebar Benih (ekor) 1.000 6.000 3.000 5.000 1.000 3.000 3.000 3.000 5.000 6.000 5.000 9.000 6.000 6.000 5.000 6.000 5.000 9.000 10.000 5.000 9.000 6.000 10.000 6.000 6.000 20.000 9.000 6.000
Total Pakan (kg) 650 800 650 500 500 500 500 650 1.000 800 500 2.000 1.000 650 500 1.000 1.000 1.000 2.000 800 2.000 800 1.000 800 1.000 2.000 1.000 650
VI. KESIMPULAN DAN SARAN Kesimpulan yang dapat diambil dari penelitian Optimasi Tebar Benih dan Pakan pada Suatu Kolam Menggunakan Algoritma Genetika adalah sebagai berikut : 1. Dengan melakukan pengujian terhadap ujicoba I, II, dan III, didapatkan tebar benih dan pakan yang optimal pada setiap kolam yang ada pada budidaya ikan lele di Sungai Carang Kelurahan Air Raja Tanjungpinang dengan memperhatikan fitness yang bernilai 1, dengan artian tidak ditemukan adanya Pakan Tidak Ideal (PTI=0) pada setiap iterasi yang terjadi untuk setiap ujicoba yang telah dilakukan. 2. Tebar benih dan pakan yang optimal pada suatu kolam budidaya ikan lele dengan Algoritma Genetika bergantung pada pembangkitan bilangan acak dan ada atau tidaknya nilai PTI yang ditemukan yang kemudian akan mempengaruhi nilai fitness yang dihasilkannya, sehingga iterasi tidak dapat dijadikan batasan proses untuk mencapai hasil yang optimal. Untuk pengembangan topik penelitian ini lebih lanjut, ada beberapa saran yang perlu disampaikan dengan harapan akan menjadi saran yang bermanfaat, yaitu : 1. Hasil yang diperoleh agar tidak hanya terbatas pada satu algoritma saja tetapi memungkinkan menggunakan algoritma optimasi lainnya sebagai bahan untuk perbandingan ke depannya. 2. Pengujian dapat dilakukan dengan menambahkan variasi dari parameter pengujian, jumlah populasi dan jumlah iterasi untuk memperoleh hasil lebih akurat. 3. Algoritma Genetika dapat digunakan untuk memecahkan permasalahan optimasi lainnya. Untuk masing-masing topik permasalahan optimasi masih sangat mungkin untuk diteliti dan dicari pemecahan masalahnya.
9
DAFTAR PUSTAKA Basuki, Ahmad. 2003. Algoritma Genetika, Suatu Alternatif Penyelesaian Permasalahan Searching, Optimasi dan Machine Learning. PENS-ITS Surabaya. Goldberg, David. E. 1989. Genetic Algorithms in Search, Optimization and Machine Learning. Canada : Addison - Wesley Publishing Company, Inc. Juniawati. 2003. Implementasi Algoritma Genetika Untuk Mencari Volume Terbesar Bangun Kotak Tanpa Tutup Dari Suatu Bidang Datar Segi Empat. Jurnal Ilmiah. Surabaya, Indonesia: Universitas Surabaya. Kituu, Michael Gareth Muthini. 2011. Application of Genetic Algorithms in the Optimization of a Solar Tunnel Fish Dryer Design and Performance. Jurnal,terpublikasi. A thesis submitted in fulfilment for the degree of Doctor of Philosophy in Agricultural Engineering in the Jomo Kenyatta University of Agriculture and Technology, Kenya. Kusumadewi, Sri. 2003. Artificial Intelegence: Teknik dan Aplikasinya. Yogyakarta : Graha Ilmu. Nugraha, Ivan. 2008. Aplikasi Algoritma Genetik Untuk Optimasi Penjadwalan Kegiatan Belajar Mengajar. Jurnal. Prodi Teknik Informatika, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung. Setemen, Komang. 2008. Implementasi Algoritma Genetika dalam Pengembangan Sistem Aplikasi Penjadwalan Kuliah. Jurnal IKA (Ikatan Keluarga Alumni) Universitas Pendidikan Ganesha Singaraja Vol 8 No 1.
Suyanto. 2005. Algoritma Genetika dalam Matlab. Yogyakarta: Andi offset. Wardhani, Luh Kesuma, dkk,. 2011. Optimasi Komposisi Bahan Pakan Ikan Air Tawar Menggunakan Metode Multi-Objective Genetic Algorithm. Jurnal. Jurusan Teknik Informatika, Fakultas Sains dan Teknologi UIN Sultan Syarif Kasim Riau. Zukhri, Zainudin. 2013. Algoritma Genetika : Metode Komputasi Evolusioner untuk Menyelesaikan Masalah Optimasi. Yogyakarta : Andi.
10