• Tidak ada hasil yang ditemukan

BAB 2 TINJAUAN PUSTAKA

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 TINJAUAN PUSTAKA"

Copied!
16
0
0

Teks penuh

(1)

TINJAUAN PUSTAKA

2.1 Lintasan Terpendek Multi Objektif

Lintasan terpendek multi objektif (LTMO) merupakan perencanaan yang bertujuan untuk menemukan lintasan yang efisien dari titik awal ke titik tujuan dengan beberapa kendala dalam satu penyelesaian. Sebagian besar masalah dunia nyata melibatkan persoalan pencarian lintasan terpendek. Optimisasi multi ob-jektif memiliki fungsi tujuan yang bertentangan yang menimbulkan serangkai-an sosusi optimum, bukserangkai-an satu solusi optimum (Chitra dserangkai-an Subbaraj, 2010). Solusi-solusi yang memenuhi semua kendala dikenal dengan solusi pareto opti-mal. Masalah optimisasi multi objektif terdiri dari beberapa set kendala dengan satu fungsi tujuan. Optimisasi multi objektif melibatkan meminimumkan atau memaksimumkan beberapa fungsi tujuan pada satu set kendala (Mo et al., 2014). Persoalan multi objektif dalam menyelesaikan masalah lintasan terpendek yang memiliki lebih dari satu fungsi tujuan yang akan dioptimalkan secara bersamaan (Guardado et al., 2014).

Proses pencarian lintasan terpendek diawali dengan mengetahui posisi awal posisi tujuan yang akan dikunjungi. Posisi awal dan tujuan telah diketahui akan digunakan pada proses pencarian lintasan terpendek. Mengetahui posisi awal dan tujuan juga dapat mempermudah penyelesaian persoalan yang ingin diselesaikan. Dalam persoalan pencarian lintasan terpendek, setiap lintasannya harus memiliki suatu nilai atau bobot. Bobot tersebut merupakan jarak dari satu posisi ke posisi lain. Metode multi objektif sederhana adalah yang membentuk fungsi objektif komposit sebagai jumlah pertimbangan tujuan, dimana berat untuk tujuan se-banding dengan faktor preferensi yang ditetapkan untuk tujuan tertentu (Chitra dan Subbaraj, 2010). Kebanyakan masalah optimisasi dunia nyata membutuhkan dua atau lebih tujuan yang biasanya masing-masing tujuan berada dalam keadaan kontradiksi antara tujuan yang satu dengan tujuan yang lain.

(2)

Ada beberapa algoritma yang telah meneliti masalah multi objektif. Di-antaranya adalah sebagai berikut:

1. Membandingkan algoritma Martins dengan algoritma Brute. Hasil per-cobaan menunjukkan bahwa algoritma Martins menghasilkan satu set lebih lengkap dengan solusi efisien untuk semua konfigurasi jaringan. Sedangkan algoritma Brute hanya menghasilkan solusi untuk ukuran kecil dan jaringan density rendah (Janssens dan Maria, 2007).

2. Bee Colony Optimization Algorithm. Berdasarkan hasil penelitian dan pem-bahasan yang dilakukan maka diperoleh kesimpulan yaitu Pertama, penca-rian rute terpendek menggunakan konsep penelusuran multi tujuan mem-perbesar peluang ditemukannya rute perjalanan yang lebih pendek sehingga didapat solusi secara global. Kedua, Jumlah lebah yang dilepas mempenga-ruhi peluang untuk menemukan rute terpendek. Semakin banyak lebah yang dilepas akan memperbesar peluang ditemukannya rute terpendek dari po-sisi awal ke popo-sisi tujuan. Ketiga, parameter tidak memberikan pengaruh yang signifikan untuk menemukan rute terpendek (Danuri dan Prijodipro-djo, 2013).

3. Biogeography Optimization Algorithm. Hasil yang diperoleh Biogeography Optimization Algorithm memiliki keragaman yang lebih baik, variansi terke-cil yang menunjukkan bahwa lebih handal dan kuat dalam memproduksi solusi yang lebih baik (Mo et al., 2014).

4. Algorithm Discrete Bacterial Colony Chemotaxis. Operator yang digunakan memudahkan bagi bakteri untuk melompat keluar dari konvergen lokal dan mempercepat kecepatan konvergensi algoritma sehingga memungkinkan un-tuk mendapatkan solusi yang lebih efektif denga iterasi yang dn meningkat-kan nilai indeks solusi proporsi efektif (Lu et al., 2014).

(3)

2.2 Optimisasi Multi Objektif

Sebuah permasalahan optimisasi (optimization problem), yang dimodelkan secara matematis, umumnya terdiri dari fungsi-fungsi tujuan (objective functions) dan kendala-kendala (constraints). Fungsi tujuan mempresentasikan tujuan yang ingin dioptimalkan (Mahmudy dan Rahman, 2011). Sebagian besar masalah dunia nyata melibatkan beberapa fungsi objektif. Perencanaan beberapa fungsi objektif adalah untuk menentukan solusi yang lebih baik dari beberapa objek. Umum-nya, fungsi ini sering bersaingan dan tujuannya bertentangan. Optimisasi multi objektif memiliki fungsi tujuan yang bertentangan yang dapat menimbulkan se-rangkaian solusi optimal, bukan satu solusi optimal.

Gambar 2.1 Contoh grafik fungsi tujuan dengan 3 kendala

Masalah optimisasi multi objektif terdiri dari sejumlah tujuan dan beberapa kendala yang dapat dirumuskan sebagai berikut (Chitra dan Subbaraj, 2010):

M in/max fi(x) i = 1, 2, 3, . . . , Nobjectives (2.1)

Dengan kendala

gk(x) = 0, k = 1, 2, 3, . . . , K

hi(x) ≤ 0, l = 1, 2, 3, . . . , L

dengan fi merupakan fungsi tujuan ke - i, x adalah vektor keputusan yang

menggambarkan sebuah solusi, dan N merupakan jumlah tujuan yang ada. K dan L adalah jumlah kesetaraan dan ketidaksetaraan masing-masing kendala.

(4)

Dalam kehidupan sehari-hari, terdapat pertimbangan-pertimbangan yang saling berlawanan antara satu dengan yang lainnya. Oleh karena itu, solusi multi objektif sempurna yang secara bersamaan mengoptimalkan setiap fungsi tujuan hampir mustahil dikarenakan tujuan yang satu seringkali berlawanan de-ngan tujuan-tujuan yang lain yang juga ingin dicapai. Sebuah solusi yang masuk akal untuk masalah multi objektif adalah untuk menyelidiki satu set solusi, yang masing-masing memenuhi tujuan pada tingkat yang dapat diterima tanpa dido-minasi oleh solusi lain (Chitra dan Subbaraj, 2010).

2.3 Hill Climbing

Teknik heuristik adalah teknik yang digunakan untuk mempercepat pencari-an solusi. Teknik heuristik digunakpencari-an untuk mengeliminasi beberapa kemungkin-an solusi tkemungkin-anpa harus mengeksplorasinya secara penuh. Selain itu, teknik heuristik juga membantu memutuskan kemungkinan solusi mana yang pertama kali per-lu dievaper-luasi. Ada beberapa metode pencarian heuristik salah satunya adalah metode hill climbing. Algoritma pencarian heuristik memiliki eksponensial waktu dan ruang kompleksitas karena mereka menyimpan informasi yang lengkap dari lintasan yang akan diselesaikan (Potdar dan Thool, 2014).

Ada banyak masalah yang memerlukan pencarian dari sejumlah besar solusi yang mungkin untuk menemukan satu yang memenuhi semua kendala. Sebagai contoh dasar mempertimbangkan masalah menyusun jadwal kelas yang diberi satu set kendala pada ketersediaan ruang kelas dan berbagai kendala waktu antara mahasiswa dan dosen.

Hill climbing adalah metode yang dikenal untuk pencarian lokal. Gagasan untuk metode hill climbing adalah mulai secara cak dari state yang ada, berge-rak ke tetangga dengan nilai evaluasi yang terbaik dan jika suatu minimum lokal telah dicapai lalu memulai lagi secara acak pada state yang berbeda. Pengu-langan prosedur ini dilakukan hingga solusi ditemukan. Algoritma ini mengatur suatu parameter yang disebut Max-Flips. Max-flips digunakan untuk membatasi jumlah maksimum langkah dalam setiap kali pengulangan dan membantu untuk meninggalkan minimum lokal yang tidak dibatasi. Faktanya, algoritma hill clim-bing menyelidiki semua tetangga dari state sekarang sebelum memilih gerak dan ini harus diperhitungkan karena ini dapat memakan banyak waktu (Thiang dan Ninaber, 2009).

(5)

Algoritma hill climbing memperluas satu node pada suatu waktu dimulai dengan node awal. Setiap kali perluasan hanya node terbaik yang dicapai dari node saat ini. Metode ini tidak melibatkan perhitungan kompleks dan tidak dapat dipastikan kelengkapan dalam pencarian solusi (Potdar dan Thool, 2014).

Metode ini hampir sama dengan metode generate and test dan merupakan salah satu variasi dari metode tersebut. Yang membedakan kedua metode ini adalah umpan balik (feed back) yang berasal dari prosedur pengujian digunakan untuk memutuskan arah gerak dalam pencarian. Hill climbing adalah proses pengujian yang dilakukan dengan menggunakan fungsi heuristik. Pembangkitan keadaan berikutnya sangat tergantung pada f eedback dari proedur pengetesan. Tes yang berupa fungsi heuristik ini akan menunjukkan seberapa baiknya nilai terkaan yang diambil terhadap keadaan-keadaan lainnya yang mungkin.

Ada dua macam metode hill climbing yaitu, simple hill climbing dan steepest ascent hill climbing.

2.3.1 Simple hill climbing

Simple hill climbing menentukan next state dengan membandingkan current state dengan satu seccessor dan successor pertama lebih baik dan akan dipilih menjadi next state (Thiang dan Ninaber, 2009). Gerakan pencarian next state dimulai dari posisi paling kiri atau posisi langkah pertama dari pertukaran yang dilakukan tanpa mempertimbangkan nilai dari tetangga-tetangga yang lain.

Algoritma simple hill climbing adalah sebagai berikut (Thiang dan Ninaber, 2009):

1. Evaluasi state awal, jika state awal sama dengan tujuan, maka proses berhen-ti. Jika tidak sama dengan tujuan maka lanjutkan proses dengan membuat state awal sebagai state sekarang.

2. Kerjakan langkah berikut sampai solusi ditemukan atau sampai tidak ada lagi operator baru yang dapat digunakan dalam state sekarang.

(a) Cari sebuah operator yang belum pernah digunakan dalam state sekarang dan gunakan operator tersebut untuk membentuk state baru.

(b) Evaluasi state baru.

(6)

ii. Jika state baru tersebut bukan tujuan tetapi state baru lebih baik daripada state sekarang, maka state baru menjadi state sekarang. iii. Jika state baru tidak lebih baik daripada state sekarang, maka

lanjut ke langkah 2.

Berikut ini merupakan contoh tahapan proses simple hill climbing.

Gambar 2.2 Contoh simple hill climbing

Terdapat suatu lintasan dengan posisi awal ABCD. Tk merupakan tukar antara posisi yang satu dengan posisi yang lain. Misalkan saja pada gambar 2.2, Tk 1,2 adalah proses pertukaran yang pertama dilakukan dan posisinya paling kiri. Setelah dilakukan pertukaran, dihitunglah panjang lintasan atau bobot yang dimiliki oleh lintasan yang baru. Jika diperoleh hasil yang lebih kecil daripada hasil lintasan awal, maka langkah selanjutnya adalah lintasan yang baru dijadikan sebagai lintasan awal. Jika hasil yang diperoleh lebih besar daripada hasil lintasan awal, maka dilihat hasil dari tetangga yang pertama, yaitu hasil dari pertukaran yang kedua. Hal ini terus dilakukan sampai menghasilkan nilai yang ingin dicapai.

2.3.2 Steepest ascent hill climbing

Steepest ascent hill climbing hampir sama dengan simple hill climbing. Hanya saja gerakan pencarian tidak dimulai dari posisi kiri. Gerakan selanjutnya dicari berdasarkan nilai heuristik terbaik. Dalam hal ini urutan penggunaan opera-tor tidak menentukan solusi (Azizah, 2012). Steepest ascent hill climbing meru-pakan metode algoritma yang banyak digunakan untuk permasalahan optimasi salah satu penerapannya adalah untuk mencari rute yang terpendek dengan cara

(7)

memaksimumkan atau meminimumkan nilai dari fungsi optimasi yang ada. Secara harfiah steepest berarti paling tinggi, sedangkan ascent berarti kenaikan. Dengan demikian steepest ascent berarti kenaikan yag tinggi. Jadi prinsip dasar metode ini adalah mencari kenaikan paling tinggi dari keadaan sekitar untuk mencapai nilai yang paling optimal (Thiang dan Ninaber, 2009).

Algoritma steepest ascent hill climbing sebagai berikut (Thiang dan Ninaber, 2009):

1. Evaluasi keadaan awal (initial state). Jika keadaan awal sama dengan tujuan (goal state) maka kembali pada initial state dan berhenti berproses. Jika tidak maka initial state tersebut jadikan sebagai current state.

2. Mulai dengan current state = initial state.

3. Dapatkan semua pewaris (successor) yang dapat dijadikan next state pada current successor tersebut dengan fungsi evaluasi dan beri nilai pada setiap successor tersebut. Jika salah satu dari successor tersebut mempunyai nilai yang lebih baik dari current state maka jadikan successor dengan nilai yang paling baik tersebut sebagai new current state. Lakukan operasi ini terus menerus hingga tercapai current state = goal state atau tidak ada perubahan pada current statenya.

Pada steepest ascent hill climbing ada 3 masalah yang mungkin terjadi, yaitu (Azizah, 2012):

1. Local optimum yaitu keadaan semua tetangga lebih buruk atau sama dengan keadaan awal.

2. P lateu merupakan keadaan semua tetangga dengan keadaan awal.

3. Ridge merupakan local optimum yang lebih disebabkan karena ketidakmam-puan untuk menggunakan 2 operator sekaligus.

(8)

Berikut ini merupakan contoh tahapan proses steepest ascent hill climbing.

Gambar 2.3 Contoh steepest ascent hill climbing

Terdapat suatu lintasan dengan posisi awal ABCD. Misalkan saja pada gam-bar 2.3, Semua proses pertukaran dilakukan dan dihitung panjang lintasan dari masing-masing lintasan. Selanjutnya dilakukan permandingan antara tetangga yang satu dengan tetangga yang lain. Karena kasusnya adalah meminimumkan lintasan, maka dicarilah panjang lintasan yang paling minimum. Jika sudah di-peroleh, langkah selanjutnya adalah menjadikan lintasan tersebut sebagai posisi awal. Lalu dilakukan lagi pertukaran dan dihitung kembali panjang lintasannya. Hal ini terus dilakukan sampai hasil yang diinginkan tercapai.

Dalam penerapannya, metode simple hill climbing dan steepest ascent hill climbing mempunyai beberapa kelebihan dan kekurangan. Tabel 2.1 merupakan perbandingan kelebihan dan kekurangan dari kedua metode tersebut (Thiang dan Ninaber, 2009):

Tabel 2.1 Perbandingan simple hill climbing dan steepest ascent hill climbing Simple Hill Climbing Steepest Ascent Hill Climbing Kelebihan Efisiensi dari segi memori Kemungkinan untuk mendapatkan

penyelesaian lebih besar Bisa digabungkan dengan Bisa digabungkan dengan

metode pencarian lain metode pencarian lain Kekurangan Tidak dijamin ditemukan Memori yang dipakai

jalan penyelesaian lebih banyak Tidak mungkin kembali Tidak mungkin kembali

(9)

Penelitian ini menggunakan steepest ascent hill climbing karena dalam proses pencarian hasil yang optimal, setiap langkahnya mempertimbangkan hasil dari tetangga. Hal ini memungkinkan tercapainya pencarian hasil yang optimal.

2.4 Algoritma Evolusioner

Algoritma evolusioner adalah algoritma pencarian heuristik yang berdasar-kan ide-ide evolusi seleksi alam dan genetika. Dengan demikian mereka mewakili eksploitasi cerdas pencarian acak yang digunakan untuk memecahkan masalah optimasi. Meskipun secara acak, algoritma evolusioner tidak berarti acak se-baliknya mereka memanfaatkan informasi historis untuk mengarahkan pencarian kewilayah kinerja yang lebih baik dalam ruang pencarian. Pada setiap generasi, satu set baru perkiraan yang dibuat oleh proses pemilihan individu sesuai dengan tingkat kebugaran dalam domain masalah dan peternakan mereka bersama-sama menggunakan operator dipinjam dari genetik alam. Proses ini menyebabkan evo-lusi populasi individu yang lebih sesuai dengan lingkungan mereka daripada nenek moyang mereka, seperti dalam adaptasi alami.

Proses dalam algoritma evolusioner ditunjukkan pada gambar 2 (Mahmudy, 2013):

Gambar 2.4 Proses-proses dalam EA

Individu-individu dalam populasi di EA mempresentasikan solusi dari masalah yang akan diselesaikan. Sebuah fungsi f itness digunakan untuk mengukur se-berapa baik suatu individu. Individu terbaik di akhir generasi bisa dikodekan sebagai solusi terbaik yang bisa diperoleh.

Algoritma evolusioner (EA) telah banyak dianalisis dalam masalah optimasi tujuan tunggal tetapi hanya beberapa peneliti telah menerapkan EA untuk masa-lah jalan terpendek multi objektif baik sebagai masamasa-lah utama ataupun sebagai sub masalah yang berkaitan dengan perencanaan rute, lalu lintas dan desain trans-portasi, sistem informasi dan desain jaringan komunikasi. Gen dan Lin (2004) menggunakan multiobjective hybrid genetic algorithm (GA) untuk meningkatkan

(10)

solusi untuk masalah desain jaringan bicruteria (menentukan jalur terpendek) dengan dua tujuan yang saling bertentangan meminimalkan biaya dan memaksi-malkan aliran.

Sebuah diskusi lengkap algoritma evolusioner multi objektif multiobjective evolutionary algorithms (MOEA)seperti (Deb, 2011). Ada beberapa MOEA yang diteliti, Zitzler dan Thiele, Strenght Pareto Evolutionary Algorithm (SPEA) di-anggap sebagai salah satu algoritma evolusioner multi objektif yang lebih baik. Ini memiliki tiga karakteristik yang menguntungkan.

1. SPEA memiliki kebugaran strategis tugas yang sangat baik yang menyum-bangkan kekuatan individu dalam hal individu yang mendominasi dan keku-atan yang dominan tersebut.

2. SPEA menggabungkan teknik estimasi kepadatan yang mendiskriminasikan individu secara efisien.

3. SPEA memiliki metode pemotongan arsip yang mencegah solusi batas dari eliminasi.

Ada beberapa tipe algoritma evolusioner yang telah dikembangkan menurut Mahmudy (2013) adalah sebagai berikut:

1. Algoritma genetik (Genetic Algorithms, GAs)

Merupakan tipe EA yang paling popular dan banyak diterapkan pada ma-salah - mama-salah kompleks. Pada awalnya banyak menggunakan represen-tasi string biner tetapi kemudian berkembang dengan menggunakan vektor bilangan integer dan pecahan (real). Pembangkitkan solusi baru banyak mengandalkan proses tukar silang (crossover). Mutasi biasanya dipakai se-bagai operator tambahan untuk menjaga keragaman populasi.

2. Evolution Strategies (ES)

Representasi solusi biasanya menggunakan vektor bilangan pecahan. Mu-tasi merupakan operator reproduksi utama. Mekanisme self-adaptation di-gunakan untuk mengontrol perubahan nilai parameter pencarian.

3. Genetic Programming (GP)

Digunakan untuk mengoptimalkan rangkaian program komputer yang di-representasikan dalam bentuk struktur data pohon (tree).

(11)

4. Evolutionary Programming (EP)

Mempunyai tujuan seperti GP tetapi prinsip kerjanya seperti ES. Finite State Machines (FSM) digunakan untuk mempresentasikan program kom-puter.

Dalam tesis ini, penulis menggunakan algoritma genetik (Genetik Algorithm, GA), karena merupakan suatu teknik memecahkan masalah-masalah optimasi. Se-lain itu, berdasarkan penelitian-penelitian yang ada GA terbukti sesuai digunakan untuk menyelesaikan masalah multi objektif.

Genetik Algorithm (GA) disebut juga dengan algoritma genetik atau algo-ritma genetika merupakan salah satu model soft computing yang sering digunakan dalam menyelesaikan permasalahan optimisasi. Soft computing adalah suatu mo-del pendekatan untuk melakukan komputasi dengan meniru akal manusia dan memiliki kemampuan untuk menalar dan belajar pada lingkungan yang penuh dengan ketidakpastian (Muzid, 2014). Algoritma genetik diawali dengan sebuah penyelesaian dengan pembentukan populasi secara acak. Setiap individu dalam populasi disebut kromosom yang menggambarkan suatu penyelesaian. Sebuah kromosom biasanya digambarkan sebagai simbol string yang biasanya berbentuk biner, namun tidak selalu demikian (Al-Amin, 2009).

Kromosom (Chromosome) tersusun atas gen-gen yang merupakan represen-tasi nilai variabel dalam suatu fungsi yang ingin dicari solusinya dan setiap kromo-som diberi sebuah nilai fitness. Solusi dari sebuah populasi diambil dan dipergu-nakan untuk membentuk populasi yang baru dengan crossover dan mutasi. Hasil yang diharapkan adalah populasi baru yang terbentuk akan memiliki nilai fitness yang lebih tinggi dibandingkan dengan populasi sebelumnya. Aspek penting dari GA adalah inisialisasi populasi, representasi kromosom, persilangan, mutasi, se-leksi, terminasi dan fungsi evaluasi. GA telah membuktikan sebagai optimalisasi yang efektif yang dapat memberikan penyelesaian terbaik atau mendekati optimal. Siklus pengembangan GA diawali dengan pembuatan himpunan solusi baru (initialization) yang terdiri atas sejumlah string kromosom dan ditempatkan pada penampungan populasi. Kemudian dilakukan proses reproduksi dengan memilih individu-individu yang akan dikembangbiakkan. Penggunaan operator-operator genetik seperti pemindahan silang (crossover) dan mutasi (mutation) terhadap individu-individu yang terpilih dalam penampungan individu akan menghasilkan keturunan atau generasi baru. Setelah proses evaluasi untuk perbaikan

(12)

popula-si, maka generasi-generasi baru ini akan menggantikan himpunan populasi asal. Siklus ini akan berlangsung berulang kali sampai tidak dihasilkan perbaikan ketu-runan, atau sampai kriteria optimum ditemukan (Widodo dan Mahmudy, 2010). Setiap kromosom mempunyai nilai kebugaran (fitness) yang mempunyai peluangnya untuk bertahan hidup dalam generasi berikutnya (Mahmudy dan Rahman, 2011). Setelah individu-individu dalam populasi telah terbentuk, maka langkah selanjutnya adalah menghitung nilai fitness setiap individu. Fungsi fitness sendiri bertujuan untuk mengetahui baik tidaknya solusi yang ada pada suatu in-dividu dan setiap inin-dividu pada populasi harus memiliki nilai pembandingannya. Selanjutnya, nilai fitness digunakan untuk solusi terbaik dengan cara pengurutan nilai fitness dari individu-individu (Widodo dan Mahmudy, 2010).

Ada 6 (enam) tahapan untuk menyelesaikan persoalan lintasan terpendek dengan kasus multi objektif, yaitu:

1. Initial population

Sebuah jalur atau kromosom dihasilkan secara acak dalam urutan dari node sumber ke node tujuan. ID dari node sumber s ditugaskan untuk lokus pertama (indeks array) dari kromosom. ID dari node visecara acak ditugaskan untuk lokus

kedua sehingga vi memiliki set node terhubung ke sumber s. Prosedur ini terus

iteratif untuk node berikutnya sampai jalan sederhana untuk wastafel simpul t dibuat.

Mengingat proses untuk membuat jalan layak, masalah ukuran populasi N tetap menjadi masalah. Hal ini diketahui bahwa ukuran populasi solusi meningkat secara eksponensial dengan jumlah sasaran dalam PMLT. Ada dua pilihan umum untuk menanggapi masalah ini. Gunakan populasi besar atau mengintegrasikan prosedur ukuran untuk populasi dinamis dalam GA (Maria dan Janssens, 2007). Siklus perkembangan diawali dengan pembuatan himpunan solusi baru (ini-tialization) secara acak yang terdiri atas sejumlah string kromosom dan ditem-patkan pada penampungan populasi. Penentuan representasi kromosom yang sesuai memegang peranan penting dalam kesuksesan implementasi (Mahmudy dan Rahman, 2011). Pada penelitian ini digunakan representasi kromosom bi-langan bulat. Panjang string kromosom tergantung pada banyaknya variabel bebas/keputusan (x) yang digunakan.

(13)

Strategi random initialization digunakan untuk menghasilkan populasi awal P0 dan membuat arsip kosong (set eksternal) Po = ∅. Set t = 0 (Maria dan

Janssens, 2007). Set Pareto-optimal eksternal diperbaharui sebagai berikut (Potti dan Chinnasamy, 2011):

1. Populasi untuk individu non-dominated dan menyalinnya kehimpunan Pare-to eksternal.

2. Cari himpunan Pareto eksternal bagi individu non-dominated dan mengha-pus mereka semua dari himpunan.

3. Jika jumlah individu eksternal disimpan di set Pareto melebihi ukuran mak-simum yang sebelumnya telah ditentukan, kurangkan dari himpunan dengan cara pengelompokan (clustering).

2. Fitness function

SPEA2 pertama memberikan nilai kekuatan S(p) untuk setiap jalur p dari archive (N ) dan populasi (N ) yang merupakan jumlah solusi p mendominasi. Menunjuk pada (l). Kemudian raw fitness R(p) dari setiap jalur (p) dihitung yang dapat mengukur kekuatan dominasi dari p. Raw fitness bertindak sebagai mekanisme niching dan mendapatkan hasil yang buruk ketika sebagian jalan di M = N + N merupakan non-dominated, yaitu populasi yang membentuk solusi baru hanya dalam beberapa cluster.

SPEA2 memperkenalkan estimator densitas (density estomator), mekanis-me fitness sharing untuk mekanis-menghindari penyimpanan genetik. Kepadatan estima-tor didefinisikan sebagai kebalikan dari jarak individu dalam ruang tujuan untuk tetangga terdekat k − th. Nilai density kemudian ditambahkan ke nilai raw fitness untuk memberikan fungsi f itness akhir.

Ide dasar pendekatan ini adalah untuk menemukan satu set solusi dalam populasi yang non-dominated oleh seluruh populasi. Prosedur fitness assignment terdiri dari dua tahap proses. Pertama, individu dalam himpunan non-dominated eksternal P∗ dirangking. Setelah itu, individu-individu dalam populasi P dieva-luasi. Langkah fitness assignment sebagai berikut:

Langkah 1: Setiap solusi i  P∗ ditandai dengan nilai real Si [0, 1), disebut strenght. Dengan n adalah jumlah individu populasi P yang dilingkupi i dan N merupakan ukuran acak populasi yang diciptakan:

(14)

si =

ni

N + 1 (2.2)

fi = Si[0, 1) (2.3)

Langkah 2: F itness dari suatu individu j  P dikalkulasikan sebagai jumlah strength dari semua non-dominated eksternal i  P∗ yang melingkupi j.

fj = 1 +

X

iP ∧i≺j

{S(i)} (2.4)

Fitness score suatu individu tidak hanya ditentukan oleh individu-individu yang terdapat pada archive melainkan penentuan fitness score juga memperhi-tungkan jumlah individu lain yang didominasi dan mendominasi individu tersebut. Setiap individu i didalam archive Atdan populasi Ptdiberikan nilai strenght S(i),

yang mempresentasikan jumlah solusi yang mendominasinya (Maria dan Janssens, 2007).

S(i) = |{j|jPt+ Pt∧ i ≺ j}| (2.5)

Berdasarkan nilai S(i), raw f itness R(i) dari individu i dihitung dengan

Raw fitnessR(i) = X

jPt+Pt,j≺i

{S(j)} (2.6)

Untuk membedakan nilai f itness individu yang tidak saling mendominasi digunakan nilai density D(i) yang merupakan perbedaan nilai fungsi objektif (σik) suatu individu terhadap individu lainnya (Maria dan Janssens, 2007).

D(i) = 1 σk

i + 2

; k = pN + N (2.7)

Dalam penyebutan nilai fungsi objektif ditambahkan 2 untuk memastikan bahwa nilainya lebih besar dari 0 dan D(i) < 1. Sehingga dapat dihitung nilai finess score untuk setiap individu (Maria dan Janssens, 2007).

(15)

3. Selection

Seleksi memainkan peran penting dalam meningkatkan kualitas rata-rata populasi dengan melewati kromosom berkualitas tinggi untuk generasi berikut-nya (Chitra dan Subbaraj, 2010). Seleksi adalah operator yang memilih bebera-pa bebera-pasang kromosom, yang disebut Parents yang akan digunakan oleh operator crossover. P arents dipilih sesuai dengan nilai f itnessnya masing-masing. Se-makin baik kromosom, maka seSe-makin banyak kesempatan mereka miliki untuk dipilih (Boussedrja, et al., 2010).

Dengan demikian, salin semua individu yang tidak dimoninasi di Pt dan Pt

ke Pt+1. Jika ukuran Pt+1 melebihi N kemudian kurang dari Pt+1 atas

perto-longan transaksi operator, sebaliknya jika ukuran Pt+1 kurang dari N kemudian

memenuhi Pt+1 dengan individu mendominasi di Pt dan Pt (Maria dan Janssens,

2007).

Proses seleksi dimaksudkan sebagai proses pemilihan beberapa pasang kro-mosom sebagai objek yang nantinya akan disilangkan. Dalam proses seleksi, po-pulasi dan himpunan eksternal akan dikombinasikan dan setiap dua individu se-cara acak akan dipilih. Proses menyeleksi ini memegang peranan penting dalam menentukan kualitas rata-rata dari populasi dengan melewati/melampaui kuali-tas terbaik kromosom ke generasi berikutnya. Kromosom yang terbaik memiliki kesempatan lebih besar dari yang lainnya untuk terpilih karena seleksi yang paling proporsional diasosiasi dengan setiap kromosom dengan nilai fitness assignment yang terbaik.

SPEA2 menawarkan dua prosedur seleksi yaitu seleksi lingkungan dan ka-win. Pemilihan lingkungan dengan memilih individu yang harus pindah ke gene-rasi archive berikutnya Pt+1 dari archive saat ini Pt(Maria dan Janssens, 2007).

4. Recombination

Metode crossover digunakan oleh algoritma evolusioner untuk individu pa-sangan dari populasi untuk membentuk keturunan baru (Boussedjra et al., 2010). Skema crossover merupakan adaptasi dari satu titik crossover. Untuk pasangan jalur lokus dipilih secara acak dari salah satu kromosom (jalur terpendek dalam hal jumlah node) dan simpul ID dari lokus yang cocok dengan gen dalam kromo-som lainnya. Selanjutnya dilalukan perkawinan agar menghasilkan generasi baru. Dua kromosom dapat menyeberang jika mereka memiliki setidaknya satu pasang gen yang sama (node) kecuali untuk node awal (sumber) dan node tujuan. Jika

(16)

ada lagi pasangan gen umum, satu pasang yang dipilih secara acak dan lokus setiap node menjadi ditus persimpangan dari setiap kromosom.

5. Mutation

Proses mutasi adalah suatu proses kemungkinan memodifikasi informasi gen-gen pada suatu kromosom. Perubahan ini dapat membuat solusi duplikasi men-jadi memiliki nilai f itness yang lebih rendah maupun lebih tinggi daripada solusi induknya. Tujuan dari mutasi adalah untuk menciptakan keragaman dalam po-pulasi. Populasi mengalami mutasi oleh perubahan aktual atau membalik dari salah satu gen dari kromosom calon, sehingga menjaga diri dari optimal lokal (Potti dan Chinnasamy, 2011).

Operator mutasi mengubah gen dengan probabilitan yang diberikan. Ini bermaksud untuk mencegah jatuhnya semua solusi dalam populasi ke lokal op-timum dari penyelesaian masalah. Ini menciptakan kromosom baru yang meru-pakan solusi potensial (Boussedjra et al., 2010).

Dalam melakukan mutasi, sebuah node yang disebut titik mutasi, dipilih secara acak dari lintasan yang dipilih. Kemudian, mulai dari node menggunakan pencarian pertama kedalam untuk menemukan node-node berikutnya sampai node terakhir ditemukan. Hal ini menunjukkan bahwa pengulangan dapat diproduksi dalam proses mutasi.

Gambar

Gambar 2.1 Contoh grafik fungsi tujuan dengan 3 kendala
Gambar 2.2 Contoh simple hill climbing
Tabel 2.1 Perbandingan simple hill climbing dan steepest ascent hill climbing Simple Hill Climbing Steepest Ascent Hill Climbing Kelebihan Efisiensi dari segi memori Kemungkinan untuk mendapatkan
Gambar 2.4 Proses-proses dalam EA

Referensi

Dokumen terkait

secara rohani (dapat juga secara fisik), akan adanya kehadiran TUHAN di dekat kita.. • Terjadi kapanpun

Pengaruh Kompetensi Sumber Daya Manusia, Penerapan Standar Akuntansi Pemerintahan, Pemanfaatan Teknologi Informasi dan Sistem Pengendalian Internal Terhadap Kualitas

Pada penelitian ini akan digunakan metode nonlinier dengan menggunakan sistem kontrol logika fuzzy dalam menjaga stabilitas manuver kapal perang kelas SIGMA dan

Oleh karena itu,perlu dilakukan penelitian untuk mengetahui kepadatan bakteri yang ada pada telapak tangan mahasiswa sebelum dan setelah mencuci tangan.Penelitian

Dari hasil penelitian menunjukkan bahwa siswa yang memiliki percaya diri tinggi memperoleh keterampilan proses sains biologi siswa lebih baik dengan skor 118,3

06/09/2016 Kuliah IV, Pengantar Ilmu Pertanian 17  Hasil pekarangan sumber uang tunai  Butuh sistem yang lebih mantap.

Dari berbagai uraian di atas, dapat disimpulkan bahwa buku teks tematik berbasis kontekstual merupakan buku yang disusun secara sitematis, dikembangkan dari

Di atas ketiga blandar menumpu balok tumpang dengan lebar 20 cm dan tinggi 15 cm, namun terkadang balok tersebut tidak utuh sehingga tidak dapat dimasukkan sebagai