• Tidak ada hasil yang ditemukan

Perencanaan Penggunaan Lahan Industri Biodiesel Berkelanjutan Menggunakan Algoritme Genetika Tujuan Jamak

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perencanaan Penggunaan Lahan Industri Biodiesel Berkelanjutan Menggunakan Algoritme Genetika Tujuan Jamak"

Copied!
51
0
0

Teks penuh

(1)

PERENCANAAN PENGGUNAAN LAHAN INDUSTRI

BIODIESEL BERKELANJUTAN MENGGUNAKAN

ALGORITME GENETIKA TUJUAN JAMAK

FIRDAUS

SEKOLAH PASCASARJANA

INSTITUT PERTANIAN BOGOR

(2)

PERNYATAAN MENGENAI TESIS DAN SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA

Dengan ini saya menyatakan bahwa tesis berjudul Perencanaan Penggunaan Lahan Industri Biodiesel Berkelanjutan Menggunakan Algoritme Genetika Tujuan Jamak adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir tesis ini.

Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor.

Bogor, September 2016

(3)

RINGKASAN

FIRDAUS. Perencanaan Penggunaan Lahan Industri Biodiesel Berkelanjutan Menggunakan Algoritme Genetika Tujuan Jamak. Dibimbing oleh YANDRA ARKEMAN dan AGUS BUONO.

Perencanaan penggunaan lahan dapat diartikan sebagai proses mengalokasikan kegunaan atau kegiatan yang bermacam-macam ( seperti untuk pertanian dan agroindustri) kepada suatu unit-unit spesifik di suatu area lahan tertentu. Ini merupakan suatu proses yang kompleks, karena keputusan perencanaan penggunaan lahan harus dibuat tidak hanya kepada apa yang harus dilakukan (memilih sebuah tindakan), tetapi juga mempertimbangkan dimana harus dilakukan tindakan, hal ini menambah variabel keputusan ekstra dari masalah keputusan yang dihadapi. Banyaknya luas lahan dan jumlah fungsi tujuan yang di pertimbangkan akan meningkatkan jumlah keputusan yang dihasilkan.

Tujuan dilakukannya penelitian ini adalah membuat dan mengembangkan algoritme genetika untuk menyelesaikan permasalan tujuan jamak pada model perencanaan penggunaan lahan industri biodiesel di Indonesia. Ada tiga buah fungsi tujuan yang telah dilakukan optimasinya, yaitu faktor keuntungan, faktor penyerapan emisi CO2, dan faktor kesuburan tanah. Representasi kromosom

dimodelkan dengan matriks yang menggambarkan grid dari penggunaan lahan. Hasil memperlihatkan bahwa masalah skala besar dan kompleks dari perencanaan penggunaan lahan bisa diselesaikan oleh algoritme genetika tujuan jamak dengan efektif dan efisien.

(4)

SUMMARY

FIRDAUS. A Multiobjective Genetic Algorithm for Land Use Planning for Sustainable Biodiesel Industry. Supervised by YANDRA ARKEMAN and AGUS BUONO.

Land use planning may be defined as the process of allocating different activities or uses (such as agriculture and agroindustry) to specific units of area within a region. This is a complex process, as in land use planning decision must be made not only on what to do (selection of activities) but also on where to do it, adding a whole extra class of decision variables to the problem. Depending on the size of the region and the number of objectives considered, an enormous increase in the number of decision variables can easly result. Due to the complexity of the problem a non-traditional optimization method is used in this research.

The aim of this research is to develop a genetic algorithm to solve multiobjective land use planning model. There were three objective functions on which optimizations were done. This included profit factor function, carbon sequestration factor function, and soil fertility factor function. Chromosome representation was in the form of matrix that represents the grids of land use. The results show that the complex and large scale land use planning can be solved by multiobjective genetic algorithm effectively and efficiently

(5)

© Hak Cipta Milik IPB, Tahun 2016

Hak Cipta Dilindungi Undang-Undang

Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan atau menyebutkan sumbernya. Pengutipan hanya untuk kepentingan pendidikan, penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik, atau tinjauan suatu masalah; dan pengutipan tersebut tidak merugikan kepentingan IPB

(6)

PERENCANAAN PENGGUNAAN LAHAN INDUSTRI

BIODIESEL BERKELANJUTAN MENGGUNAKAN

ALGORITME GENETIKA TUJUAN JAMAK

FIRDAUS

Tesis

sebagai salah satu syarat untuk melakukan Penelitian Magister Komputer

pada

Program Studi Ilmu Komputer

SEKOLAH PASCASARJANA INSTITUT PERTANIAN BOGOR

(7)
(8)
(9)

PRAKATA

Puji dan syukur penulis panjatkan kepada Allah SWT atas segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Tema yang dipilih dalam penelitian yang dilaksanakan sejak bulan Juli 2015 sampai April 2016 ini adalah algoritme genetika tujuan jamak, dengan judul Perencanaan Penggunaan Lahan Industri Biodiesel Berkelanjutan Menggunakan Algoritme Genetika Tujuan Jamak. Tesis ini disusun sebagai salah satu syarat untuk memperoleh gelar Magister Komputer pada Program Ilmu Komputer Sekolah Pascasarjana Institut Pertanian Bogor. Pada kesempatan ini penulis menyampaikan penghargaan dan ucapan terima kasih kepada :

1. Alloh SWT, dengan rahmat dan karunianya sampai saat ini saya diberikan keselamatan, perlindungan dan kemudahan dalam menjalankan segala aktivitas saya.

2. Bapak Dr. Ir. Yandra Arkeman, MEng dan Bapak Dr. Ir. Agus Buono, MSi MKom selaku komisi pembimbing yang telah meluangkan waktu, tenaga dan pikiran sehingga tesis ini dapat diselesaikan.

3. Keluargaku tercinta yang selalu membantu dan mendoakan untuk kelancaran penyusunan laporan tesis ini.

4. Departemen Ilmu Komputer Institut Pertanian Bogor berserta seluruh staf civitas akademika dan rekan-rekan MKOM 15.

Penulis menyadari bahwa masih banyak kekurangan dalam penulisan tesis ini, namun demikian penulis berharap tesis ini dapat bermanfaat untuk bidang ilmu komputer, bidang pendidikan dan bidang umum lainnya.

Bogor, September 2016

(10)

DAFTAR ISI

DAFTAR TABEL ii

DAFTAR GAMBAR ii

DAFTAR LAMPIRAN ii

1 PENDAHULUAN 1

Latar Belakang 1

Tujuan Penelitian 2

Ruang Lingkup Penelitian 2

Manfaat Penelitian 2

2 TINJAUAN PUSTAKA 3

Algoritme Genetika 3

NSGA-II 3

Non-dominated Sorting 5

Representasi Kromosom 5

Pindah Silang (Crossover) 5

Mutasi 5

Biodiesel 5

Land Use Planning 6

3 METODE 6

Memodelkan Kromosom 7

Fungsi Tujuan 7

Fungsi faktor keuntungan 8

Fungsi faktor penyerapan CO2 8

Fungsi faktor kesuburan tanah 8

Crowding Distance 9

Binary Selection Tournament 9

Pindah silang (crossover) 10

Mutasi 10

Recombination 10

4 HASIL DAN PEMBAHASAN 11

Hasil 11

Pengujian Perangkat Lunak 11

Penentuan Parameter Probabilitas Crossover dan mutasi 13

Pembahasan 17

5 SIMPULAN DAN SARAN 18

Simpulan 18

Saran 19

DAFTAR PUSTAKA 19

LAMPIRAN 22

(11)

DAFTAR TABEL

1 Faktor Keuntungan 9

2 Faktor Penyerapan Karbon 9

3 Faktor Kesuburan Tanah 9

4 Perbandingan waktu eksekusi 13

DAFTAR GAMBAR

1 Flowchart NSGA-II 4

2 Metode 6

3 Representasi Kromosom Matrik 10×10 (Jenis Lahan) 7

4 Representasi Kromosom Matrik 10×10 (Jenis Tanaman) 7

5 Operator Crossover 10

6 Operator Mutasi 10

7 Proses Recombination 10

8 Hasil output pustaka Matlab 11

9 Hasil output perangkat lunak penulis 12

10 Hasil uji parameter Probabilatas crossover 14

11 Hasil uji parameter Probabilatas mutasi 14

12 Plot initial population 15

13 Plot generasi ke 10 15

14 Plot generasi ke 50 16

15 Plot generasi ke 100 (final) 16

16 Plot initial population dengan generasi ke 100 (final) 17

17 Plot generasi ke 10 dengan generasi ke 100 (final) 17

DAFTAR LAMPIRAN

(12)

1

PENDAHULUAN

Latar Belakang

Genetic Algorithm (Algoritme Genetika) adalah suatu teknik pencarian dan teknik optimasi yang cara kerjanya meniru proses evolusi dan perubahan struktur genetik pada makhluk hidup (Bagchi 1999; Haupt 2004; Arkeman 2012), maka dari itu algoritme genetika juga sering disebut sebagai algoritme evolusioner (evolutionary algorithms) atau algoritme yang bekerja atas mekanisme evolusi biologis. Keberagaman pada evolusi biologis adalah variasi dari kromosom antar individu organisme. Variasi kromosom ini akan mempengaruhi laju reproduksi dan tingkat kemampuan organisme untuk tetap hidup.

Pada kasus penelitian ini akan dilakukan apa yang disebut dengan multi-objective optimization atau nama lainnya adalah multi-criteria optimization, merupakan persoalan optimasi dengan fungsi tujuan lebih dari satu yang dimana diantara fungsi-fungsi tersebut akan sangat mungkin terjadi konflik (Arkeman et al. 2013; Ratono et al. 2015).

Penggunaan bahan bakar minyak (BBM) yang secara terus menerus di dunia telah menyebabkan kelangkaan yang harus segera diatasi sehingga perlu diupayakan pengganti BBM dengan sumber yang terbarukan yang berasal dari tanaman atau bioenergi (Zhiyuan et al. 2005). Bioenergi adalah sumber energi terbarukan yang berpotensi untuk mengurangi emisi karbon dibandingan dengan energi yang berasal dari fosil. Namun, meningkatkan produksi bioenergi juga bisa menyebabkan land use change (LUC) atau perubahan penggunaan lahan (Wise et al. 2015).

Berdasarkan penelitian yang telah dilakukan (Laird 2008; Zenone et al. 2011; Don et al. 2012) pergantian lahan dari hutan alami atau lahan alami yang kemudian diubah menjadi lahan pertanian biodiesel akan menyebabkan terganggunya siklus karbon (carbon fluxes) pada alam. Dimana zat karbon dalam tanah akan diserap oleh tanaman-tanaman biodiesel dan kemudian zat karbon tersebut akan terlepas ke udara pada saat produksi pembuatan biodiesel dan juga pada saat penggunaan biodiesel pada kendaraan.

Masalah lainnya yang ditimbulkan oleh LUC adalah pada skala produksi besar, lahan-lahan yang ditanami oleh tanaman-tanaman biodiesel akan mengalami degradasi kesuburan tanah karena karbon yang merupakan unsur penting untuk kesuburan tanah telah diserap oleh tanaman-tanaman biodiesel, sehingga dalam jangka panjang penanaman tanaman biodiesel tidak dapat dilakukan secara berkelanjutan karena rendahnya tingakat kesuburan tanah, padahal, pada negara-negara seperti di uni eropa, mereka telah membuat kebijakan penggunaan porsi bioenergi dari 9% ditahun 2010 menjadi 20% pada tahun 2020 (Don et al. 2012).

(13)

Salah satu tanaman penghasil bioenergi adalah kelapa sawit. Perkebunan kelapa sawit saat ini telah banyak berkembang, tidak hanya oleh perusahaan negara saja, tetapi juga perusahaan swasta dan perkebunan rakyat (Amin et al. 2015). menurut (Amin et al. 2015) dan (Astuti 2008) Indonesia adalah penghasil minyak kelapa sawit terbesar di dunia. Oleh karena itu perencanaan penggunaan lahan untuk biodiesel menjadi penting dilakukan, karena untuk mencapai tujuan yang tidak hanya mementingkan faktor ekonomi saja, tetapi juga faktor kelestarian lingkungan.

Penggunaan lahan yang baik dan tepat juga dapat membantu pembangunan ekonomi. Perencanaan penggunaan lahan diperlukan untuk mendapatkan penggunaan lahan yang optimal. Permasalahan penggunaan lahan merupakan permasalahan yang kompleks, dibutuhkan teknik komputasi cerdas untuk menyelesaikan persoalan perencanaan penggunaan lahan yang optimal (Shaygan et al. 2014; Stewart et al. 2004; Zhang et al. 2010).

Algoritme genetika telah banyak digunakan untuk menyelesaikan permasalahan penggunaan lahan. Datta et al. (2007) menggunakan multi-objective evolutionary algorithm (MOEA) untuk menyelesaikan alokasi penggunaan lahan. Shaygan et al. (2014) juga menggunakan algoritme genetika non-dominated sorting genetic algorithm (NSGA-II) untuk optimasi tujuan jamak spasial pada alokasi penggunaan lahan di wilayah Iran. Cao et al. (2011) juga Menggunakan NSGA-II untuk menyelesaikan permasalahan tujuan jamak penggunaan lahan yang optimal di wilayah Tongzhou, China. Ren Z dan Lu X (2011) juga melakukan optimasi penggunaan lahan di wilayah China namun dengan fungsi tujuan yang berbeda dari Cao et al. (2011). Berdasarkan studi literatur tersebut, maka permasalahan perencanaan penggunaan lahan industri biodiesel di Indonesia bisa diselesaikan dengan menggunakan algoritme genetika tujuan jamak.

Tujuan Penelitian

Tujuan dari penelitian ini adalah membuat dan mengembangkan algoritme genetika tujuan jamak untuk menyelesaikan permasalahan perencanaan penggunaan lahan industri biodiesel menggunakan algoritme genetika tujuan jamak NSGA-II.

Ruang Lingkup Penelitian

Ruang lingkup penelitian ini adalah :

1. Wilayah yang dijadikan penelitian bergantung pada pakar atau penelitian terkait yang telah dilakukan di Indonesia.

2. Algoritme genetika tujuan jamak yang dipakai adalah NSGA-II

Manfaat Penelitian

(14)

2

TINJAUAN PUSTAKA

Algoritme Genetika

Algoritme Genetika pertama kali dikembangkan oleh John Holland dari Universitas Michigan pada tahun 1975. John Holland mengatakan bahwa setiap masalah yang berbentuk adaptasi (alami maupun buatan) dapat dimodelkan dan diformulasikan dalam bentuk terminologi genetika. Algoritme genetika merupakan simulasi dari proses evolusi Darwin dan operasi genetika atas kromosom.

Pada dasarnya ada beberapa kondisi yang mempengaruhi proses evolusi yaitu, kemampuan organisme atau individu untuk melakukan reproduksi, keberadaan populasi individu yang dapat melakukan reproduksi, keberagaman individu dalam suatu populasi dan perbedaan kemampuan untuk bertahan. Individu yang lebih kuat (fit) akan memiliki tingkat kemampuan bertahan hidup dan reproduksi yang lebih tinggi jika dibandingkan dengan individu yang kurang kuat. Pada kurun waktu tertentu atau lebih dikenal dengan istilah generasi, populasi secara keseluruhan akan lebih banyak memuat individu yang kuat.

Dalam struktur umum algoritma genetika teknik pencarian dilakukan sekaligus atas sejumlah solusi yang dikenal dengan istilah populasi. Individu yang terdapat pada suatu populasi disebut dengan kromosom. Kromosom adalah suatu solusi yang masih berupa simbol genetik. Populasi awal dibangun dengan pembangkitan secara acak, sedangkan populasi berikutnya adalah hasil dari proses genetika kromosom-kromosom melalui suatu iterasi yang disebut sebagai generasi.

Pada setiap generasi, kromosom akan melalui proses evaluasi dengan menggunakan alat pengukur yang disebut dengan fungsi objektif atau (fitness function). Nilai fitness dari suatu kromosom mengandung nilai yang menunjukkan dari kualitas kromosom tersebut. Pada generasi berikutnya dikenal dengan sebutan keturunan atau (offspring) terbentuk dari gabungan 2 buah kromosom generasi sekarang yang berlaku sebagai orang tua atau induk dengan menggunakan operator-operator genetika sepert pindah silang (crossover) dan juga mutasi.

Populasi generasi yang baru dibentuk dengan cara melakukan seleksi nilai fitness dari kromosom orang tua dan nilai fitness dari kromosom offspring, serta mengeliminasi kromosom-kromosom lainnya yang tidak kuat, sehingga ukuran jumlah populasi pada setiap generasi konstan. Setelah melalui beberapa generasi, maka algoritme ini akan menuju konvergen (Engelbrecht 2007; Jong 2006).

NSGA-II

(15)

Masalah lainnya adalah tidak adanya mekanisme elitism, elitism adalah proses yang dapat melakukan penyimpanan individu-individu terbaik pada setiap generasi. Hal ini mengakibatkan tidak adanya yang menjaga populasi agar tercegah dari hilangnya solusi-solusi yang baik pada saat algoritme genetika menemukannya (Deb K et al. 2002).

Masalah terakhir pada NSGA adalah penggunaan algoritme ini diwajibkan menentukan parameter sharing pada setiap kasus yang berbeda. Masalah utama dari menentukan parameter ini adalah sulitnya menentukan parameter pada ukuran diversitas yang dinamis

NSGA-II atau kepanjangan dari non-dominated sorting genetic algorithm-II adalah algoritma genetika yang dikembakan dari NSGA oleh Kalyanmoy Deb (Deb K et al. 2002), yang dapat digunakan untuk menyelesaikan kasus optimasi dengan tujuan jamak. NSGA-II menjawab semua kritikan-kritikan pada algoritme sebelumnya. Berikut ini Gambar 1 adalah skema flowchart dari algoritme NSGA-II(Datta D et al. 2007; Deb K 2011).

Gambar 1 Flowchart NSGA-II

Mulai

Inisialisasi Populasi

Evaluasi Fungsi

Rank Populasi

Seleksi

Pindah Silang

Mutasi

Evaluasi Fungsi

Gabungkan parent dan offspring, rank populasi

Seleksi Individu Terbaik Konvergen?

Berhenti

Tidak

(16)

Non-dominated Sorting

Dalam sebuah optimasi tujuan jamak, terdapat beberapa fungsi objektif (fitness function) yang akan diminimumkan atau dimaksimumkan. Pada kasus dalam paper ini terdapat tiga buah fungsi objektif yang akan dimaksimumkan. Tidak seperti optimasi satu buah objektif yang hanya satu buah solusi saja yang dihasilkan, optimasi dengan tujuan jamak berisi beberapa solusi yang mungkin. Non-dominated sorting digunakan untuk menentukan solusi masalah tujuan jamak (Deb 2011). Sebagai penjelasan, dominasi antara dua buah solusi dapat

Algoritme genetika merupakan teknik optimasi yang meniru proses genetika makhluk hidup. Kromosom merupakan struktur didalam sel makhluk hidup berupa deretan molekul yang terdiri dari berbagai unsur protein yang merupakan informasi genetik suatu organisme (Engelbrecht 2007)

Pindah Silang (Crossover)

Pindah silang adalah sebuah operator genetik yang menggabungkan dua individu orang tua yang akan menghasilkan dua buah keturunan, pindah silang merupakan operator utama pada algoritme genetika (Jong 2006; Arkeman 2012). Fungsi dari operator crossover dalam algoritme genetika adalah untuk menukar gen yang terpilih secara acak antara dua buah kromosom (Cao et al. 2011).

Mutasi

Mutasi adalah proses genetik yang merubah nilai satu atau lebih gen pada sebuah kromosom dalam populasi, tujuan dari mutasi adalah untuk menjaga keragaman dari karakteristik genetik dari suatu populasi (Cao et al. 2011).

Biodiesel

Biodiesel adalah bahan bakar disel alternatif dalam bidang ilmu kimia didefinisikan sebagai mono-alkaly ester, biodiesel ini dapat berasal dari lemak nabati maupun hewani. Biodiesel ini memiliki kelebihan, pada penggunaannya mesin yang berbahan bakar diesel tidak perlu dimodifikasi untuk dapat menggunakan biodiesel. Selain itu biodiesel mudah digunakan, lebih ramah lingkungan dibandingkan dengan bahan bakar fosil dan tercampurkan dengan minyak disel pada umumnya (solar).

Berdasarkan banyak penelitian, biodiesel merupakan kandidat yang dapat menggantikan bahan bakar fosil sebagai sumber energi transportasi utama dunia, karena ia merupakan bahan bakar yang terbaharukan yang dapat menggantikan disel yang berasa dari bahan bakar fosil.

(17)

ilmuwan bernama Rudolf Diesel. Mesin diesel berbahan bakar minyak nabati pertama kali di uji coba pada tahun 1893, kemudian pada tahun 1900 Rudolf Diesel meraih penghargaan tertinggi di Paris karena mesin dieselnya tersebut dan saat itu yang digunakan adalah minyak nabati yang berasal dari kacang tanah.

Pada saat itu Rudolf Diesel meyakini bahwa penggunaan bahan bakar dengan biodiesel merupakan bahan bakar masa depan. Pada tahun 1912 Rudolf Diesel dalam pidatonya mengatakan bahwa penggunaan minyak nabati untuk bahan bakar mesin terlihat tidak menarik pada saat ini, akan tetapi menjadi hal yang sangat penting pada masa yang akan datang. Namun, pada tahun 1920an perusahaan-perusahaan mesin diesel mengutakaman pembuatan mesin dengan petrodiesel sebagai bahan bakar utama yang memiliki viskositas rendah dibandingkan mesin berbahan bakar nabati, pada saat itu industri minyak petrolium menentukan harga pasar bahan bakar dikarenakan harga bahan bakar fosil lebih murah dibandingan bahan bakar nabati, akhirnya karena persaingan ini menyebabkan infrastruktur produksi bahan bakar nabati hancur(Knothe 2001).

Land Use Planning

Land use planning dapat diartikan sebagai proses mengalokasikan aktivitas atau penggunaan (baik dalam bidang pertanian, industri, atau konservasi) kepada unit area yang spesifik. Land use planning adalah sebuah proses yang rumit, karena bukan hanya untuk merencanakan suatu keputusan yang akan dilakukan, tetapi juga dimana melakukannya secara area yang spesifik. Besarnya tingkat kerumitan bergantung pada besarnya wilayah spasial yang harus diselesaikan (Stewart et al. 2004).

3

METODE

(18)

Memodelkan Kromosom

Kromosom dimodelkan dengan bentuk matriks 2 dimensi. Ada dua buah kromosom yang dimodelkan yaitu kromosom untuk jenis lahan dan kromosom jenis tanaman. Pada kromosom matriks jenis lahan terdapat 5 jenis lahan dengan posisi nilai matriks yang tidak berubah pada kromosom jenis tanaman seperti Gambar 3 berikut.

1 4 4 2 2 2 1 1 4 5 1 3 4 4 2 2 2 3 4 4 3 3 1 4 4 2 3 3 3 4 4 4 2 2 2 3 3 3 1 1 5 3 3 2 4 3 5 1 1 2 5 4 5 5 4 3 1 1 1 1 4 2 2 5 5 4 3 1 1 4 5 5 2 5 5 3 2 4 4 5 2 1 2 3 3 2 2 1 4 5 3 4 4 4 3 2 1 1 1 2

Gambar 3 Representasi Kromosom Matriks 10×10 (Jenis Lahan)

Pada kromosom matriks jenis tanaman terdapat 3 jenis Tanaman dengan posisi nilai matriks Random antara 1 sampai 3 seperti pada Gambar 4 berikut.

1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3 1-3

Gambar 4 Representasi Kromosom Matriks 10×10 (Jenis Tanaman)

Fungsi Tujuan

(19)

et al. (2007) dengan modifikasi dan fungsi faktor kesuburan tanah diperoleh dari modifikasi rumus (Shaygan et al. 2014) dan (Datta et al 2007) dengan modifikasi. Representasi dari kromosom juga mengikuti dari representasi kromosom pada penelitian Shaygan et al. (2014). Dan pada pra penelitian ini jenis tanaman yang digunakan dibatasi sampai 3 jenis tanaman Biodiesel dan jenis lahan dibatasi sampai 4 jenis lahan dan data yang digunakan dalam bentuk numerical example untuk memperlihatkan kemampuan sistem.

Fungsi faktor keuntungan

Dalam formulasi fungsi ini, Z1 didefinisikan sebagai memaksimumkan

faktor keuntungan, dimana Eclu,i,j adalah faktor keuntungan dari penggunaan lahan

lu yang diaplikasikan pada unit (i, j) Ru adalah jumlah nya baris pada unit

penggunaan lahan dan Cu adalah jumlah kolom dari unit penggunaan lahan.

Dalam formulasi fungsi ini, Z2didefinisikan sebagai memaksimumkan

faktor penyerapan CO2, dimana Carlu,i,j adalah faktor penyerapan CO2 dari

Dalam formulasi fungsi ini, Z3 didefinisikan sebagai memaksimumkan

faktor keuntungan, dimana Keslu,i,j adalah faktor keuntungan dari penggunaan

lahan lu yang diaplikasikan pada unit (i, j) Ru adalah jumlah nya baris pada unit

penggunaan lahan dan C adalah jumlah kolom dari unit penggunaan lahan.

Data yang digunakan untuk perhitungan fungsi tujuan dalam bentuk numerical example dapat dilihat pada Tabel 1 (untuk faktor keuntungan), tabel 2 (untuk penyerapan karbon) dan Tabel 3 (kesuburan tanah). Pada bagian pertama paper ini fungsi tujuan dihitung dengan cara manual. Data yang digunakan untuk perhitungan fungsi tujuan dalam bentuk numerical example dapat dilihat pada

(20)

Tabel 1 (untuk faktor keuntungan), Tabel 2 (untuk penyerapan karbon) dan Tabel 3 (kesuburan tanah).

Tabel 1 Faktor Keuntungan Economic Return

Land Type 1 Land Type 2 Land Type 3 Land Type 4 Land Type 5

A 10 A 3 A 30 A 5 A 14

B 15 B 21 B 21 B 8 B 1

C 7 C 22 C 28 C 13 C 24

Tabel 2 Penyerapan Karbon Penyerapan Carbon

Land Type 1 Land Type 2 Land Type 3 Land Type 4 Land Type 5

A 499 A 227 A 102 A 327 A 91

B 78 B 230 B 200 B 286 B 103

C 324 C 168 C 103 C 88 C 79

Tabel 3 Kesuburan Tanah Kesuburan Tanah

Land Type 1 Land Type 2 Land Type 3 Land Type 4 Land Type 5

A 3000 A 4325 A 7230 A 1405 A 2275

B 5000 B 3346 B 7230 B 4320 B 4545

C 3500 C 7455 C 5565 C 5400 C 1230

Non-dominated Sorting

Non-dominated Sorting adalah salah satu bagian dari proses dalam algoritma NSGA-II yang dilakukan untuk memberikan ranking tiap-tiap individu berdasarkan fungsi-fungsi tujuan yang ingin dicapai (Deb et al. 2002).

Crowding Distance

Setelah ranking diberikan pada tiap-tiap individu maka nilai crowding distance juga diberikan kepada tiap-tiap individu untuk mengetahui diversitas dari masing-masing individu crowding distance sebenarnya adalah jarak euclidian dari tiap-tiap individu per fungsi tujuan dan kemudian dijumlahkan menjadi sebuah nilai kesatuan yang disebut dengan crowding distance (Deb et al. 2002, 2011).

Binary Selection Tournament

Setelah tiap-tiap individu diberikan ranking dan nilai crowding distance, maka proses seleksi dapat dilakukan. Penjelasan dari binary selection tournament adalah sebagai berikut (Deb et al. 2002).

1. Pemilihan dilakukan secara random dengan mempertemukan dua individu. 2. Jika individu/solusi berada pada ranking yang sama maka pilih yang nilai

crowding distance nya lebih besar.

(21)

Pindah silang (crossover)

Jenis crossover yang akan digunakan pada penelitian ini adalah unifrom crossover namun sudah dimodifikasi untuk kasus kromosom 2 dimensi, yang disesuaikan dengan kaidah crossover Bui and Moon (Hwan Im 2003).

Gambar 5 Operator Crossover

Mutasi

Mutasi yang digunakan adalah mutasi swap mutation (Hyun et al. 2008) namun sudah dimodifikasi dengan cara swap yang dilakukan dibangkitkan secara random.

Gambar 6 Operator Mutasi

Recombination

Recombination adalah proses untuk menyimpan individu-individu terbaik dari proses generasi pada NSGA-II. Parent dan offspring digabungkan sehingga ukuran menjadi 2 kali jumlah populasi, kemudian masing-masing individu diberikan rangking dan crowding distance setelah itu populasi dipotong menjadi setengah atau diambil dengan jumlah populasi semula. Pemotongan pada akhir individu mempertimbangkan nilai crowding distance dari individu tersebut dengan cara mengambil nilai crowding distance yang lebih tinggi (Deb et al. 2002).

(22)

4

HASIL DAN PEMBAHASAN

Hasil

Pengujian Perangkat Lunak

Pengujian perangkat lunak dilakukan karena perangkat lunak yang digunakan, dibuat oleh penulis sendiri tanpa menggunakan pustaka perangkat lunak yang sudah ada. Pengujian dilakukan untuk mengetahui apakah algoritme perangkat lunak yang dibuat oleh penulis sudah benar dengan melihat output yang dikeluarkan oleh perangkat lunak dan dibandingkan dengan pustaka perangkat lunak yang sudah ada. Pustaka perangkat lunak yang menjadi acuan sebagai pembanding adalah pustaka NSGA-II dari program Matlab, hal itu dilakukan karena penulis membuat dan mengembakan perangkat lunak di dalam bahasa program Matlab (C-like).

Pengujian dilakukan dengan menggunakan model matematika yang sama pada jumlah generasi yang sama dengan parameter genetika yang sama dan juga jumlah populasi yang sama. Model matematika yang digunakan adalah model schaffer n 1, model matematika ini adalah model standar untuk melakukan pengujian optimasi tujuan jamak. Berikut ini adalah model matematika dari schaffer n 1.

2 1(x) x

f

2 2(x)(x2)

f

Kemudian untuk nilai probabilats crossover yang digunakan adalah 90%, nilai probabilitas mutasinya 10 %, jumlah populasinya 100 dan jumlah generasinya 100. Berikut ini pada Gambar 8 adalah hasil output dari pustaka NSGA-II perangkat lunak Matlab.

Gambar 8 Hasil output pustaka Matlab

(23)

Berikut ini pada Gambar 9 adalah hasil output dari perangkat lunak NSGA-II hasil karya penulis.

Gambar 9 Hasil output perangkat lunak penulis

Dari hasil grafik output yang diperoleh, dapat dilihat bahwa hasil nilai output algoritme NSGA-II yang penulis buat sudah sesuai bahkan hasil output yang didapat dari perangkat lunak yang penulis buat lebih baik, karena jika diperhatikan pencarian yang ditemukan oleh algoritme NSGA-II penulis, titik-titik solusinya berada diangka kurang dari 4, sedangkan pada pustaka NSGA-II Matlab titik-titik solusinya masih mendekati atau sama dengan 4.

Setelah itu dilakukan juga uji statistik waktu eksekusi perangkat lunak untuk mengetahui algoritme perangkat lunak yang lebih baik. Pengujian dilakukan pada ruang lingkup spesifikasi komputer sebagai berikut ini:

1. CPU : Intel(R)

Core(TM) i5-3330 @ 3.00GHz.

2. Memori (RAM) :

VGEN 4 GB.

3. Mother Board : ECS

H61H2-MV.

4. Versi Matlab : Matlab

R2013a.

5. Sistem Operasi :

(24)

Berikut ini pada Tabel 4 adalah hasil 20 kali pengulangan waktu eksekusi masing-masing perangkat lunak.

Tabel 4 Perbandingan waktu eksekusi

No. Perangkat Lunak Penulis Pustaka Matlab

1 4.0427 7.1949

2 4.0137 7.3235

3 3.9923 7.2147

4 3.9823 7.2285

5 3.9911 7.2317

6 3.9922 7.2037

7 4.0125 7.2253

8 4.0076 7.2568

9 3.9934 7.1594

10 3.9937 7.2187

11 4.0031 7.2174

12 3.9885 7.2032

13 4.0302 7.3048

14 3.9937 7.2552

15 3.9870 7.4281

16 3.9941 7.2862

17 3.9897 7.2914

18 3.9983 7.3075

19 3.9909 7.2897

20 3.9871 7.2312

Setelah dilakukan pengulangan 20 kali, maka didapatkan rata-rata kecepatan waktu eksekusi perangkat lunak algoritme NSGA-II penulis adalah 3.9992 detik, sedangkan rata-rata kecepatan waktu eksekusi perangkat lunak pustaka NSGA-II Matlab adalah 7.2536 detik. Jadi waktu eksekusi algoritme perangkat lunak NSGA-II yang penulis buat rata-rata lebih cepat 81.38% dibandingkan dengan perangkat lunak pustaka NSGA-II Matlab. Setelah melakukan pengujian perangkat lunak, maka perangkat lunak NSGA-II yang penulis buat sudah siap untuk melakukan penyelesaian kasus penelitian sebenarnya.

Penentuan Parameter Probabilitas Crossover dan mutasi

(25)

pada pengujian adalah seberapa cepat dan stabil nilai parameter mencapai konvergen.

Gambar 10 Hasil uji parameter Probabilatas crossover.

Gambar 11 Hasil uji parameter Probabilatas mutasi

(26)

Perjalanan Kromosom

Pada Gambar 12 sampai dengan Gambar 15. Dapat dilihat perjalanan dari kromosom dari awal populasi sampai dengan populasi generasi terakhir

Gambar 12 Plot initial population

(27)

Gambar 14 Plot generasi ke 50

Gambar 15 Plot generasi ke 100 (final)

(28)

Gambar 16 Plot initial population dengan generasi ke 100 (final)

Gambar 17 Plot generasi ke 10 dengan generasi ke 100 (final)

Pembahasan

(29)

yang terlihat pada Gambar 10 dan Gambar 11, dapat ditentukan bahwa nilai dari probabilitas crossover (Pc) dan mutasi (Pm) adalah 0.5 dan 0.1

Berdasarkan hasil yang diperoleh, pada pembangkitan populasi pertama yang belum terkena generasi algoritme genetika (initial population), dapat dilihat bahwa individu-individu masih menyebar secara acak, dikarenakan pembangkitan yang memang dilakukan secara random. Individu-individu yang tidak terdominasi (non-dominated) pada saat initial population juga jumlahnya masih lebih sedikit dibandingkan dengan jumlah individu yang terdominasi.

Setelah initial population masuk dalam generasi algoritme genetika, pada generasi ke 10 yang bisa dilihat pada Gambar 13, jumlah dari individu-individu yang tidak terdominasi (non-dominated) sudah lebih banyak dari jumlah individu-individu yang terdominasi dan penyebarannya sudah mulai membentuk seperti bentuk seperempat bola, namun bentuk persebarannya masih terlihat tidak teratur, bentuk seperempat bola tercipta karena ketiga fungsi tujuan yang saling konflik dengan tujuan optimasi setiap fungsinya adalah memaksimalkan.

Pada generasi berikutnya sampai dengan generasi akhir, individu-individu yang berada pada populasi kesemuanya adalah individu yang tidak terdominasi, generasi akhir ditetapkan pada generasi ke 100, karena berdasarkan pengamatan setelah generasi berikutnya, individu-individu dalam populasi sudah tidak berubah posisinya atau sudah mencapai tahap konvergen. Jika dibandingkan dengan generasi sebelumnya, dan generasi akhir sudah memiliki bentuk seperempat bolah yang lebih halus dan teratur.

Pola pergerakan individu-individu untuk mencapai tahap kekonvergenan divisualisasikan dengan cara melakukan plot secara bersamaan generasi-generasi sebelumnya dengan generasi akhir. Dapat dilihat pada Gambar 16 dan Gambar 17. Dua gambar tersebut sudah bisa mewakili perjalanan dari individu-individu dengan sendirinya menuju posisi paling baik (konvergen) secara cerdas.

5

SIMPULAN DAN SARAN

Simpulan

Berdasarkan hasil yang diperoleh dapat disimpulkan bahwa permasalahan perencanaan penggunaan lahan biodiesel merupakan permasalahan yang kompleks yang tidak bisa dicari hanya menggunakan metode pencarian biasa saja. Karena dengan pemodelan kromosom 10 × 10 dan 3 jenis tanaman, sudah menghasilkan kompleksitas search space yang sangat banyak yaitu 3100 atau 515.377.520.732.011 × 1033 kemungkinan pencarian. Metode komputasi cerdas algoritme genetika tujuan jamak layak digunakan untuk mengatasi permasalahan ini.

(30)

Saran

(31)

DAFTAR PUSTAKA

Amin M, Hanum C, Charloq. 2015. Kandungan hara tanah dan tanaman kelapa sawit menghasilkan terhadap pemberian tandan kosong kelapa sawit dan kedalaman biopori. Jurnal Online Agroekoteknologi.

Arkeman Y, Seminar KB, Gunawan H. 2012. ALGORITMA GENETIKA Teori dan Aplikasinya untuk Bisnis dan Industri. Bogor: IPB Press.

Arkeman Y, Herdiyeni Y, Hermadi I, Laxmi GF. 2013. ALGORITMA GENETIKA Tujuan Jamak (Multi-Objective Genetic Algorithms): Teori dan Aplikasinya untuk Bisnis dan Agroindustri.Bogor:IPB Press.

Bagchi TP. 1999. Multiobjective Scheduling by Genetic Algorithm.India:Kluwer Academic Publisher.

Astuti E. 2008. Pengaruh Konsentrasi Katalisator dan Rasio Bahan terhadap Kualitas Biodiesel dari Minyak Kelapa . Jurnal Rekayasa Proses.

Cao K, Batty M, Huang B, Liu Y, Yu L, Chen J. 2011. Spatial multi-objective lan use optimization:extensions to the non-dominated sorting genetic algorithm-II . International Journal of Geographical Information Science vol.25.

Datta D, Deb K, Fonsecca CM, Lobo F, Condado P. 2007. Multiobjective evolutionary algorithm for land-use management problem. International Journal Computational Intelligence Research vol.3.

Deb K, Pratap A, Agarwal S, Meyarivan T. 2002. A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II. IEEE. 6(2).

Deb K. 2011. Multi-Objective Evolutionari Optimisation for Product Design and Manufacturing.London: Springer.

Don A, Osborne B, Hastings A, Skiba U, Carter MS, Drewer J, Flessa H, Freibauer A, Hyvonen N, Jones MB et al. 2012. Land-use change to bioenergy production in Europe: implications for the greenhouse gas balance and soil carbon. GCB Bioenergy. 4:372-391.doi: 10.1111/j.1757-1707.2011.01116.x.

Engelbrecht AP. 2007. Computational Intelligence An Introduction. South Africa:WILEY

Haupt RL, Haupt SE. 2004. Practical Genetic Algorithms.New Jersey:WILEY.

Hwan Im C, Kyo Jung H, Joo Kim Yong. 2003. Hybrid Genetic Algorithm for Electromagnetic Topology Optimization. IEEE. 39(5).

Hyun J, Kim YH, Ryou HB. 2008. Optimal Sensor Deployment for Wireless Surveilance Sensor Networks by a Hybrid Steady-State Genetic Algorithm. IEICE. 91(11).

Jong KAD. 2006. Evolutionary Computation A Unified Approach. London:MIT Press

Knothe G. 2001. Determining the Blend Level of Mixtures of Biodiesel with Conventional Diesel Fuel by Fiber-Optic Near-Infrared Spectroscopy and 1H Nuclear Magnetic Resonance Spectroscopy. JAOCS. 78(10).

(32)

Mulyani A, Las I. 2008. Potensi sumber daya lahan dan optimalisasi pengembangan komoditas penghasil bioenergi di indonesia. Jurnal Litbang Pertanian.

Ratono J, Seminar KB, Arkeman Y, Suroso AI. 2015. ERP Selection Using Fuzzy-MOGA Approach: A Food Enterprise Case Study. TELKOMNIKA. 12(2): 1-7.

Ren Z, Lu X. 2011. Using GA for Land Use Planning. IEEE

Shaygan M, Alimohammadi A, Mansourian A, Govara S, Kalami SM. 2014. Spatial multi-objective optimization approach for land use allocation using nsga-ii. IEEE.

Stewart TJ, Jansses R, Herwijenen MV. 2004. A Genetic Algorithm Approach to Multiobjective Land Use Planning. ELSEVIER. 31:2293-2313.

Wise M, Hodson EL, Mignone BK, Clarke L, Waldhoff S, Luckow P. 2015. An approach to computing marginal land use change carbon intensities for bioenergy in policy applications. ELSEVIER.

Zenone T, Chen J, Deal MW, Wilske B, Jasrotia P, Xu JN, Bhardwaj AK, Hamilton SK, Robertson GP. 2011. CO2 fluxes of transitional bioenergy crops:

effect of land conversion during the first year of cultivation. CGC Bioenergy. 3:401-412.doi: 10.1111/j.1757-1707.2011.01098.x.

(33)
(34)

Lampiran 1 Coding Program

%Tentukan Ukuran matriks individu/cromosom nxn (START)---

size_individu = 10;

%Tentukan Ukuran matriks individu/cromosom nxn (END)---

%Pada Tabel fitnes baris merepresentasikan jumlah jenis tanaman, kolom

%merepresentasikan jumlah jenis lahan.

%Contoh pada tabel economic nilai 3 adalah fitnes pada tanaman jenis 1 pada

carbon = [499 277 102 327 91;78 230 200 286 103;324 168 103 88 79];

(35)

%Baca Jumlah tanaman (END)---

%Ciptakan individu/chromosome (Tanaman Biodisel) secara random (START)----

for i = 1 : popSize

individu{i} = floor((rand(size_individu,size_individu)*3)+ 1);

end

%Ciptakan individu/chromosome (Tanaman Biodisel) secara random (END)---

%Hitung Fitness tiap individu dalam bentuk grid/matriks nxn (START)---

%Hitung Fitness tiap individu dalam bentuk grid/matriks nxn (END)---

%Put fitness of each chromosome to 3 columns table (START)---

for i = 1 : popSize

fit_ind(i,1) = sum(sum(fit_ind_economic{i})); %Put Value akumulasi fitness economic individu ke-i ke kolom 1

fit_ind(i,2) = sum(sum(fit_ind_carbon{i})); %Put Value akumulasi fitness carbon individu ke-i ke kolom 2

fit_ind(i,3) = sum(sum(fit_ind_fertility{i})); %Put Value akumulasi fitness kesuburan/fertility individu ke-i ke kolom 3 end

%Put fitness of each chromosome to 3 columns table (END)---

(36)

%IMPORTANT---

%Saving fitness Function value each generation

fit_value {generasi} = fit_ind;

mP = size(fit_ind); %Mengukur jumlah baris dan kolom tabel fitness 3 kolom

for i = 1 : mP(1)

mirror_pop = fit_ind; % Duplikasi nilai tabel fitness 3 kolom

(37)

(kandidat(1,2)<mirror_pop(j,2)) &&

%Memasukan id individu kedalam front (START)---

for i = 1 : mP(1)

fit_ind_front(i,4) = i;

end

%Memasukan id individu kedalam front (END)---

front{f} = fit_ind_front(q,:); %Masukan individu yang memiliki kalah 0 ke Front

(38)

%Simpan non dominated solution setiap generasi=============================

non_dominated {generasi} = front {1};

%Simpan non dominated solution setiap generasi=============================

(39)

sum_cD(n,2) = cDistance{1}(n,2) + cDistance{2}(n,2) + cDistance{3}(n,2);

end %end n loop

%Assign individual ranking and crowding distance to fit_ind

for m = 1 : size_subFront(1) fit_ind((sum_cD(m,1)),4) = i;

fit_ind((sum_cD(m,1)),5) = sum_cD(m,2); end %end m loop

%Clear variable value (untuk di pakai di iterasi i selanjutnya)

clear hitung_cDistance; clear cDistance;

%Saving fitness Function value each generation

fit_value {generasi} = fit_ind;

%IMPORTANT---

%Selection proses and guide to Crossover Proses(START)---

ind_select = fit_ind;

%Add individu id to column6 for i = 1 : mP(1)

ind_select(i,6) = i;

end

%Counter offspring genetic process---

m = 1; %counter first offspring

n = 2; %counter second offspring

%Counter offspring genetic process---

%Binary Selection Tournament (START)---

while isempty(ind_select) == 0 for i = 1 : 2 dipindahkan untuk proses selanjutnya(genetic process)

(40)

%Jika bilangan random1 dan random 2 sama maka random

%Jika individu/solusi berada pada front/ranking yang sama

if ind_select(select1,5) > ind_select(select2,5) % Maka Pilih yang nilai crowding distancenya lebih besar

select_genetic(i) = ind_select(select1,6); ind_select(select1,:) = [] ; %Hapus Individu karena sudah dipindahkan untuk proses selanjutnya(genetic process)

else

select_genetic(i) = ind_select(select2,6); ind_select(select2,:) = []; %Hapus Individu karena sudah dipindahkan untuk proses selanjutnya(genetic process)

end

else %Jika individu/solusi berada pada front/ranking yang berbeda

if ind_select(select1,4) < ind_select(select2,4)

%Maka individu/solusi yang memiliki ranking/front lebih kecil (lebih baik) yang dipilih

select_genetic(i) = ind_select(select1,6); ind_select(select1,:) = []; %Hapus Individu karena sudah dipindahkan untuk proses selanjutnya(genetic process)

else

select_genetic(i) = ind_select(select2,6); ind_select(select2,:) = []; %Hapus Individu karena sudah dipindahkan untuk proses selanjutnya(genetic process)

end

end %end if Crowded comparison operation

end % end if size_indSelect(1) ==1

end %end loop i

clear random1 random2 select1 select2;

%Binary Selection Tournament

(END)---%Parent 1 dan 2 adalah parent dengan nomor individu select_genetic for i = 1 : 2

(41)

cross_batas_bawah = round(0.25 * cSize); cross_batas_atas = round(0.5 * cSize);

selisih_batas = cross_batas_atas - cross_batas_bawah; rc = floor(rand() * selisih_batas) + 1;

randomCross = rc + cross_batas_bawah; cross_layer(i,2)); %parent1 gen value

cross_layer(i,4) = parent{2} (cross_layer(i,1), cross_layer(i,2)); %parent2 gen value

same position exist Do random again.

(42)

cross_layer(i,4) = parent{2} (cross_layer(i,1), cross_layer(i,2)); %parent2 gen value

end % end if rand_crossover

%Crossover Process

(END)---end %end while isempty(ind_select) == 0

%Selection proses and guide to Crossover Proses(END)---

%Mutation Process (START)---

%cari total jumlah gen dalam populasi (START)---

[rowGen, colGen] = size(offspring{1}); gTotal = popSize * rowGen * colGen;

%cari total jumlah gen dalam populasi (END)---

for mutIteration = 1 : mutCount posId = fix(1+popSize*rand); (isempty(find(posRowSave == posRow)) == 0) ||

(43)

posRow = fix(1+rowGen*rand);

genValue = offspring{posId} (posRow,posCol);

%Random Nilai gen untuk mutasi

mutGen = fix(1+size_plant(1)*rand);

%Ketika nilai mutation gen sama dengan nilai gen asal, lakukan random

%sampai nilai mutation gen berbeda dengan nilai gen asal

while (mutGen == genValue)

mutGen = fix(1+size_plant(1)*rand); end %end while

%Tempatkan gen mutation kedalam chromosome / individu

offspring{posId} (posRow,posCol) = mutGen;

posIdSave(mutIteration) = posId; posRowSave(mutIteration) = posRow; posColSave(mutIteration) = posCol;

end %end for mutIteration

clear posId posRow posCol posIdSave posRowSave posColSave;

%Mutation Process

(END)---%Put parent (individu) and offspring in pool(START)---

%Put parent (individu) and offspring in pool(END)---

%Hitung Fitness tiap individu elit dalam bentuk grid/matriks nxn (START)---

(44)

for j = 1 : size_ind(1)

%Hitung Fitness tiap individu elit dalam bentuk grid/matriks nxn (END)---

%Put fitness elit of each chromosome to 3 columns table (START)---

for i = 1 : (popSize * 2)

fit_ind_elit(i,1) = sum(sum(fit_ind_economic_elit{i})); %Put Value akumulasi fitness economic individu elit ke-i ke kolom 1

fit_ind_elit(i,2) = sum(sum(fit_ind_carbon_elit{i})); %Put Value akumulasi fitness carbon individu elit ke-i ke kolom 2

fit_ind_elit(i,3) = sum(sum(fit_ind_fertility_elit{i})); %Put Value akumulasi fitness kesuburan/fertility individu elit ke-i ke kolom 3

end

%Put fitness elit of each chromosome to 3 columns table (END)---

% non-dominated sort elit (START)---

mE = size(fit_ind_elit); %Mengukur jumlah baris dan kolom tabel fitness 3 kolom

for i = 1 : mE(1)

mirror_pop_elit = fit_ind_elit; % Duplikasi nilai tabel fitness 3 kolom

kandidat_elit(1,1:3) = mirror_pop_elit(i,1:3); %Memilih Kandidat untuk di pertandingkan

mirror_pop_elit(i,:) = []; %Menghapus Kandidat (Memisahkan Kandidat dengan Seluruh Penantang)

mM_pop_elit = size(mirror_pop_elit);

for j = 1 : mM_pop_elit(1) %Memulai Pertandingan Kandidat dengan seluruh fit_ind yang ada

%Logika Kondisi Kandidat Menang

if(((kandidat_elit(1,1)>mirror_pop_elit(j,1)) && (kandidat_elit(1,2)>mirror_pop_elit(j,2)) &&

(kandidat_elit(1,3)>mirror_pop_elit(j,3)))) menang_elit(i,j) = 1;

else

(45)

end;

%Logika Kondisi Kandidat Kalah

if(((kandidat_elit(1,1)<mirror_pop_elit(j,1)) && (kandidat_elit(1,2)<mirror_pop_elit(j,2)) &&

if(((kandidat_elit(1,1)>mirror_pop_elit(j,1)) && (kandidat_elit(1,2)>mirror_pop_elit(j,2)) &&

ind_status_elit(i,1) = sum(menang_elit(i,:)); ind_status_elit(i,2) = sum(kalah_elit(i,:)); ind_status_elit(i,3) = sum(seri_elit(i,:));

end

%Masukan individu elit kedalam front (START)---

fit_ind_front_elit = fit_ind_elit;

%Memasukan id individu elit kedalam front (START)---

for i = 1 : mE(1)

fit_ind_front_elit(i,4) = i;

end

(46)

if ( isempty(find(ind_front_elit(:,2) == 0)) == 0 )

front_elit{f} = fit_ind_front_elit(q,:); %Masukan individu yang memiliki kalah 0 ke Front

%Masukan individu kedalam front elit (END)---

for i = 1 : size_front_elit(2)

for j = 1 : 3 % 3 is the number of fitness function

(47)

%put Crowding distance for fitness function j to

cDistance_elit {j}(:,1) = hitung_cDistance_elit {j}(:,2); cDistance_elit {j}(:,2) = hitung_cDistance_elit {j}(:,3);

%Put individual elit number (id) to column 1 sum_cD_elit

sum_cD_elit(:,1) = cDistance_elit{1}(:,1);

%Counting Sum of all Crowding Distance elit and put to column

%Assign individual ranking and crowding distance to fit_ind

for m = 1 : size_subFront_elit(1)

fit_ind_elit((sum_cD_elit(m,1)),4) = i;

fit_ind_elit((sum_cD_elit(m,1)),5) = sum_cD_elit(m,2); end %end m loop

%Clear variable value (untuk di pakai di iterasi i selanjutnya)

clear hitung_cDistance_elit; clear cDistance_elit;

clear sum_cD_elit;

%Move ranking value to first column

fit_ind_elit_select(:,1) = fit_ind_elit(:,4); fit_ind_elit_select(:,2) = fit_ind_elit(:,5); fit_ind_elit_select(:,3:5) = fit_ind_elit(:,1:3);

%Put individu elit id to column 6 for i = 1 : (popSize * 2)

fit_ind_elit_select(i,6) = i;

end %end i loop

%Sort Based on Ranking

(48)

%Detect front position in last trim individu

%Sort Based on Crowding Distance value (descending)

ind_elit = sortrows(ind_elit,[-2]);

%Sort in Descending based on crowding distance value

sort_last_elit = sortrows(sort_last_elit, [-2]);

%Take all individual in -1 front last trim position

%Combine sort_last_elit under ind_elit

c = size(ind_elit);

(49)

ind_elit( (c(1) + 1) : (c(1) + d(1)), :) = sort_last_elit(1:d(1), :);

end %end if a == 1

%Trim ind_elit as size as popSize

new_ind_elit(1:popSize, : ) = ind_elit(1:popSize, : );

%And Finally the new best individual was born for i = 1 : popSize

new_ind {i} = ind_elit_select {new_ind_elit(i,6)};

end %end i loop

%Recombination/elitism (END)---

clear fit_ind_economic fit_ind_carbon fit_ind fit_ind_fertility

ind_elit new_ind_elit front front_elit mirror_pop kandidat

ind_status fit_ind_front offspring parent ind_elit_select {1}(:,3),'red','filled'); %Plot Solusi Pareto nya dengan berwarna merah

hold on; %Timpa dengan

(50)

lot{1}(:,3),'blue','filled');%Plot Semua fit_ind dengan warna er}(:,2),non_dominated{plot_counter}(:,3),'red','filled'); %Plot Solusi Pareto nya dengan berwarna merah

er}(:,2),non_dominated{plot_counter}(:,3),'red','filled'); %Plot Solusi Pareto nya dengan berwarna merah

hold on; %Timpa dengan

scatter3(fit_value_plot{plot_counter}(:,1),fit_value_plot{plot_cou nter}(:,2),fit_value_plot{plot_counter}(:,3),'blue','filled');%Plo t Semua fit_ind dengan warna biru.

(51)

RIWAYAT HIDUP

Gambar

Gambar 1 Flowchart NSGA-II
Gambar 3 berikut.
Gambar 5 Operator Crossover
Gambar 8 Hasil output pustaka Matlab
+6

Referensi

Dokumen terkait

Dari tabel 12 terlihat bahwa faktor dominan yang mendorong migran melakukan migrasi masuk di Kecamatan Driyorejo adalah lapangan pekerjaan yang sempit dan penghasilan

Pertumbuhan volume lalulintas pada ruas jalan tol cukup tinggi, yang apabila tidak dikendalikan, akan berakibat pada pengelolaan dan pengoperasian jalan tol, termasuk komponen

 Diet rendah kalori karena singkong merupakan bahan makanan dengan kandungan karbohidrat yang lebih rendah dari nasi dan roti, dengan kandungan serat yang tinggi sehingga

Distribusi frekuensi faktor-faktor yang berhubungan dengan persalinan prematur pada ibu bersalin spontan di Rumah Sakit PKU Muhammadiyah Kota Yogyakarta tahun 2010-2012 yaitu usia

Hal yang terberat dalam decision making untuk putus juga berasal dari faktor internal, seperti kondisi informan yang memiliki basic anak broken home sehingga membuatnya

Dengan ini saya menyatakan dengan sesungguhnya bahwa dalam skripsi ini tidak terdapat keseluruhan atau sebagian tulisan orang lain yang saya ambil dengan cara

Jika terdapat rasa saling percaya yang tinggi disuatu lingkungan kerja, karyawan yang bekerja ditempat tersebut pasti akan lebih terbuka satu terhadap yang lain, baik

Hal tersebut terlihat dari hasil tes kemampuan siswa dalam menulis narasi pada siklus I mencapai nilai rata-rata kelas 65,37 (C) dengan persentase ketuntasan belajar 50%,