• Tidak ada hasil yang ditemukan

MODIFIKASI PSO TINGKAT LANJUT UNTUK PENCARIAN SATU SUMBER

4.6 Utilisasi Angin

Gambar 4.22: Pemanfaatan Arah Angin untuk Penentuan Arah Gerak Robot

Pada pencarian sumber asap, kondisi lingkungan selalu mempengaruhi berhasil atau tidaknya sebuah pencarian. Subbab-subbab sebelumnya menceritakan modifikasi-modifikasi yang dapat digunakan agar PSO dapat lebih adaptif terhadap perubahan ling-kungan. Namun, dari seluruh modifikasi tersebut, belum ada yang melibatkan kondisi

angin dalam perhitungannya. Utilisasi Angin (Wind Utilization), selanjutnya akan dise-but sebagai WU, adalah teknik untuk memverifikasi dan menentukan arah gerak robot dengan memanfaatkan informasi angin (anemotaksis) yang dirasakan oleh partikel [20]. Teknik WU ini merupakan adaptasi dari konsep Odor-Gated Rheotaxis (OGR) yang di-jelaskan pada subsubbab 2.2.3 di halaman 31.

Sifat adveksi membuat asap berpindah mengikuti arah pergerakan angin, seperti yang terlihat pada Gambar 4.22. Selain asap dan angin, gambar tersebut juga mem-perlihatkan sebuah titik kuning berlabel ’robot’ yang berada pada posisi cukup strate-gis karena robot berada ditengah-tengah kepulan asap yang baru saja keluar dari sum-bernya. Apabila robot hanya bergerak dengan menggunakan hasil perhitungan PSO, maka robot dapat bergerak ke segala arah sesuai dengan posisi local best dan global best yang dia miliki. Misalkan jika pada saat itu posisi global best berada berada pada sebelah barat, maka besar kemungkinan robot juga akan bergerak ke sebelah barat dan semakin jauh dengan sumber asap. Secara visual Anda tentu dapat meli-hat bahwa langkah yang diambil robot merupakan langkah yang tidak efisien karena alih-alih bertambah dekat, robot justru semakin jauh. Berdasarkan informasi angin dan asap yang bergerak ke arah barat, robot seharusnya menghindari untuk mengikuti arah gerak angin. Kemampuan inilah yang ingin diimplementasikan dalam robot dengan menggunakan teknik WU.

Gambar 4.23: Konsep Utilisasi Angin

Sekarang mari kita lihat konsep WU secara matematis dengan memperhatikan Gam-bar 4.23, Persamaan 4.7, Persamaan 4.8, dan Persamaan 4.9. Pada penjelasan sebelum-nya sudah dijelaskan bahwa teknik WU perlu mengetahui arah angin dan arah gerak robot sehingga dapat mengarahkan robot agar tidak mengikuti arah angin. Pada WU ke-butuhan ini disederhanakan menjadi keke-butuhan untuk memastikan bahwa robot tidak

bergerak ke arah yang sama dengan arah angin. Secara matematis, kebutuhan tersebut dapat diubah menjadi kebutuhan untuk melihat arah gerak robot relatif terhadap arah angin. Atau sebaliknya, melihat arah gerak angin relatif terhadap arah gerak robot.

Asumsikan dua buah variabel Vi untuk menyatakan kecepatan dan arah partikel serta Wn untuk menyatakan kecepatan dan arah angin, maka arah relatif gerak robot dan angin dapat dihitung menggunakan teknik pada Gambar 4.23. Apabila Vi dan Wnmerupakan vektor kecepatan yang dapat diurai dalam kecepatan pada sumbu x dan sumbu y, maka besarnya θ dapat dihitung dengan menggunakan Persamaan 4.9. Jika nilai θ adalah nol, maka partikel pasti bergerak ke arah yang sama dengan arah angin. Jika nilai θ berada di antara 135o sampai 225o, maka bisa dikatakan bahwa partikel bergerak berlawanan dengan arah angin.

Vi= vnx.ex+ vny.ey (4.7) Win= wnx.ex+ wny.ey (4.8) θi= arccos  Vi.Win kVik.kWn i k  (4.9) dimana:

Vi= kecepatan sementara partikel ke i

Win= kecepatan angin disekitar partikel i pada iterasi ke n vnx = kecepatan partikel terhadap sumbu x pada iterasi ke n vny = kecepatan partikel terhadap sumbu y pada iterasi ke n wnx = kecepatan angin terhadap sumbu x pada iterasi ke n wny = kecepatan angin terhadap sumbu y pada iterasi ke n

ex= koefisien kecepatan terhadap sumbu x ey= koefisien kecepatan terhadap sumbu y

θi= arah gerak partikel i relatif terhadap arah angin

Pada Persamaan 4.9 Anda sudah dapat menghitung arah gerak partikel relatif ter-hadap arah gerak angin, namun masih belum dapat menggabungkan teknik ini dalam perhitungan PSO. Oleh karena partikel selalu melakukan perhitungan PSO untuk iterasi ke t sebelum iterasi tersebut dilakukan, maka partikel juga harus menghitungWU juga dengan cara yang sama. Berhubung WU merupakan teknik utilisasi, maka partikel harus melakukan perhitungan ini setelah melakukan perhitungan Vn+1 dengan PSO. Partikel tidak boleh langsung menggunakan nilai Vn+1 yang sudah didapatkan ini karena masih memiliki kemungkinan untuk membuat partikel menjadi lebih jauh dari sumber asap. Artinya teknik WU menganggap nilai Vn+1sebagai nilai tentatif sehingga

Vn+1dapat diubah menjadi V(n+1)∗sesuai dengan Persamaan 4.10.

Vin+1→ Vi(n+1)∗ (4.10)

Vi(n+1)∗≡ Vi (4.11)

dimana:

Vi(n+1)∗= kecepatan sementara partikel PSO

Penggunaan WU pada PSO tetap membutuhkan nilai θ untuk mengetahui arah relatif kecepatan angin dan partikel. Besarnya nilai θ tetap dapat dihitung dengan menggunakan Persamaan 4.9 hanya saja nilai Vi perlu diganti dengan nilai V(n+1)∗, seperti yang terlihat pada Persamaan 4.13. Nilai Win dapat diperoleh dari sensor angin berdasarkan hasil pembacaan sensor yang terakhir. Kemudian, nilai V(n+1)∗ dan nilai θn+1i dimasukan dalam sebuah fungsi utilisasi futilisasiuntuk menghitung besar dan arah kecepatan untuk partikel tersebut. Ada berbagai macam cara yang dapat digunakan dalam fungsi utilisasi. Pada buku ini, kami menceritakan mengenai teknik utilisasi de-ngan area terlarang dan penggunaan parameter pengontrol θ0.

Vi(n+1)∗= χ(Vin+ individu z }| { c1.rand().(pni − xin) + sosial z }| { c2.rand().(png− xni)) (4.12) θn+1i = arccos V (n+1)∗ i .Win kVi(n+1)∗k.kWn i k ! (4.13) Vin+1= futilisasi(Vi(n+1)∗, θn+1i ) (4.14) xin+1= xni +Vin+1 (4.15) dimana:

futilisasi(Vi(n+1)∗) = fungsi utilisasi angin terhadap kecepatan sementara partikel

θn+1i = besar sudut antara kecepatan angin dan partikel pada iterasi n + 1

4.6.1 Utilisasi Angin dengan Area Terlarang

Teknik penghitungan fungsi utilisasi dengan area terlarang ini merupakan teknik yang cukup intuitif. Mari lihat kembali Gambar 4.22. Pada kondisi seperti pada gambar tersebut, area yang berada di sebelah barat partikel merupakan area yang tidak boleh menjadi arah gerak partikel. Secara matematis, untuk memastikan bahwa partikel ber-gerak ke arah yang benar dapat dilakukan dengan membandingkan nilai θn+1i . Apabila arah partikel menuju area yang tidak diperbolehkan, maka partikel tidak boleh melan-jutkan perpindahannya. Jika kondisi yang terjadi adalah sebaliknya, maka partikel boleh

melanjutkan perpindahannya dengan kecepatan dan arah sesuai hasil perhitungan PSO. futilisasi(Vi(n+1)∗, θn+1i ) =        0 jika θ < |θterlarang| Vi(n+1)∗ untuk lainnya (4.16) dimana:

θterlarang= wilayah arah gerak yang tidak boleh dilewati robot

Persamaan 4.16 merupakan persamaan untuk teknik utilisasi dengan area terlarang. Persamaan ini memunculkan sebuah variabel baru yang bernama θterlarang yang me-nyimpan informasi daerah yang tidak boleh dituju oleh partikel. Besar θterlarang dapat ditentukan sendiri sesuai dengan kebutuhan, seperti yang terlihat pada Gambar 4.24. Sebagai contoh, nilai θterlarang pada Gambar 4.24a sebesar 90o. Pada nilai θterlarang sebesar ini, partikel hanya boleh untuk melanjutkan perjalanannya jika partikel ber-gerak pada arah > 90o dan < 270o. Atau dengan kata lain, partikel hanya boleh bergerak berlawanan arah dengan arah gerak angin. Berbeda dengan Gambar 4.24b,

θterlarang pada kasus ini sebesar 45o. Hal ini berarti partikel diizinkan untuk bergerak

ke mendekati arah angin.

(a) Area Terlarang untuk θterlarang= 900 (b) Area Terlarang untuk θterlarang= 450

Gambar 4.24: Ilustrasi Area Telarang pada Utilisasi Angin

Besar nilai θterlarang dapat ditentukan dengan bebas, namun harus memperhatikan kecenderungan agen dalam lapangan. Sebagai contoh, mari asumsikan nilai θterlarang sebesar 90o. Pada kondisi agen pencari berada jauh dari sumber asap dan angin berge-rak ke arah agen (seperti pada Gambar 4.25a dan Gambar 4.25b), maka nilai θterlarang tersebut sudah tepat karena dapat menghalangi agen untuk menjauh dari sumber. Na-mun untuk kondisi seperti pada Gambar 4.25c, dimana agen sudah melewati sumber

asap, nilai tersebut sudah tidak tepat lagi. Oleh karena posisi agen yang sudah melewati sumber asap, maka agen tersebut harus bergerak searah dengan arah angin agar dapat kembali mendekat pada sumber asap. Namun adanya konfigurasi area terlarang dengan

θterlarang sebesar 90omembuat agen tidak mungkin melakukan hal tersebut. Lain

hal-nya jika nilai θterlarang hanya sebesar 45o, dimana agen masih dapat bergerak walau searah dengan arah angin. Kasus-kasus seperti inilah yang harus diperhatikan ketika menentukan besarnya θterlarang.

(a) Robot Jauh dari Sumber (b) Robot Berada dalam Asap

(c) Robot Melewati Asap Gambar 4.25: Beberapa Kondisi

4.6.2 Utilisasi Angin dengan Parameter Pengontrol θ

0

Teknik lain yang dapat digunakan sebagai fungsi utilisasi dalam WU adalah penggu-naan parameter pengontrol θ0. Berbeda dengan teknik area terlarang, alih-alih mem-batasi area gerak robot, teknik ini justru memanipulasi kecepatan robot berdasarkan arah geraknya. Konsepnya adalah semakin searah dengan arah angin, maka kecepatan partikel juga semakin menurun. Sebaliknya, jika semakin berlawanan arah dengan arah angin, maka kecepatan partikel akan semakin meningkat. Penggunaan teknik ini me-mungkinkan partikel yang ada pada kondisi seperti pada Gambar 4.25c untuk bergerak

mendekati sumber asap.

Persamaan 4.17 dalah bentuk fungsi utilisasi menggunakan teknik ini. Dimana θ0 merupakan parameter pengontrol yang akan menentukan seberapa besar penurunan yang dikenakan terhadap Vi(n+1)∗. Anda dapat menghitung besarnya θ0dengan meng-gunakan Persamaan 4.18 yang jika dipetakan maka akan berbentuk seperti pada Gam-bar 4.26. Pada hasil pemetaan terlihat bahwa bahwa partikel akan melaju dengan ke-cepatan penuh jika dan hanya jika arah geraknya berlawanan dengan arah gerak angin.

futilisasi(Vi(n+1)∗, θn+1i ) = θ0.Vi(n+1)∗ (4.17) θ0= 1 2 1 − cos θ n+1 i  (4.18) dimana:

θ0= pengontrol kecepatan partikel

Gambar 4.26: Fungsi Kontinu Pengontrol Kecepatan Robot

4.7 Evaluasi Performa dari Algoritma Modifikasi dan