Thiang-Simulated Annealing Robot

Embed Size (px)

Citation preview

  • 8/17/2019 Thiang-Simulated Annealing Robot

    1/5

     

    Implementasi Metode Simulated

    Annealing pada Robot Mobil untuk

    Mencari Rute TerpendekThiang, Dhany Indrawan

    Jurusan Teknik Elektro, Universitas Kristen PetraSurabaya 60236, Indonesia

    e-mail: [email protected]

     Abstract— Makalah ini memaparkan tentang implementasimetode simulated annealing pada sebuah robot mobil mandiri

    untuk mencari rute terpendek. Karena robot mobil dikontrol

    dengan menggunakan mikrokontroler, maka metode

    simulated annealing juga diimplementasi pada mikrokontroleryang sama. Mikrokontroler yang digunakan dalam aplikasi ini

    adalah mikrokontroler AT89S51 yang merupakan salah satu

    mikrokontroler keluarga MCS51. Pada aplikasi ini, awalnya,robot diberitahu informasi peta, posisi start dan posisi tujuan.Dengan menggunakan metode simulated annealing, robot

    akan mencari rute terpendek dari posisi start sampai posisi

    tujuan, kemudian robot akan bergerak sesuai dengan rute

    yang telah didapat. Pengujian telah dilakukan dengan variasi

    posisi start dan posisi tujuan. Hasil pengujian menunjukkanbahwa metode simulated annealing berhasil diimplementasi

    pada level mikrokontroler. Robot dapat mencari rute

    terpendek dengan metode simulated annealing dan robot

    dapat bergerak mengikuti rute yang telah didapatkan.

     Kata kunci—simulated annealing, robot mobil,mikrokontroler, AT89S51 

    I.  PENDAHULUAN 

    Pada penelitian sebelumnya[1], telah berhasildiimplementasi metode hill climbing pada levelmikrokontroler dengan aplikasi. Metode hill climbingdiimplementasi pada sebuah robot mobil untuk mencari ruteterpendek. Namun dari hasil penelitian tersebut, terdapatkelemahan yaitu tidak kepastian metode hill climbing dapatmenemukan solusi yang diinginkan. Kadang metode hillclimbing menghasilkan rute yang tidak dapat mencapai

     posisi tujuan. Karena itu, penelitian ini merupakan penelitianlanjutan untuk mendapatkan hasil yang lebih baik. Metodeyang dipilih utnuk menggantikan metode hill climbingadalah metode simulated annealing yang pada dasarnyamerupakan pengembangan dari metode hill climbing.

    Tujuan utama dari penelitian ini adalah

    mengimplementasikan metode-metode sistem cerdas pada platform mikrokontroler. Beberapa metode sistem cerdasyang telah berhasil diimplementasikan pada platformmikrokontroler antara lain fuzzy logic[2], algoritmagenetika[3], termasuk hill climbing[1]. Dan kali ini metodeyang akan diimplementasikan adalah simulated annealing.Selain itu, tentunya diharapkan metode simulated annealingdapat memberikan hasil yang lebih baik dari penelitiansebelumnya[1] yang menggunakan metode hill climbing.

    Dalam penelitian ini, mikrokontroler yang dipilih untukimplementasi metode simulated annealing adalah

    mikrokontroler keluarga MCS51 yaitu mikrokontrolerAT89S52. Alasan pemilihan mikrokontroler ini adalahkarena mikrokontroler ini sangat populer dan tersedia

     banyak di Indonesia, serta harganya yang tidak terlalu mahal.Dengan demikian diharapkan penelitian ini dapatmemberikan kontribusi yang positif untuk penelitian-

     penelitian selanjutnya dalam mengimplementasikan metode-

    metode kecerdasan buatan pada level mikrokontrolerkhususnya mikrokontroler keluarga MCS51.

    II.  METODE SIMULATED A NNELALING 

    Simulated annealing adalah salah satu algoritma untukuntuk optimisasi yang bersifat generik. Berbasiskan

     probabilitas dan mekanika statistik, algoritma ini dapatdigunakan untuk mencari pendekatan terhadap solusioptimum global dari suatu permasalahan. Masalah yangmembutuhkan pendekatan simulated annealing adalahmasalah-masalah optimisasi kombinatorial,di mana ruang

     pencarian solusi yang ada terlalu besar, sehingga hampirtidak mungkin ditemukan solusi eksak terhadap

     permasalahan itu.

    Annealing adalah satu teknik yang dikenal dalam bidangmetalurgi, digunakan dalam mempelajari proses

     pembentukan kristal dalam suatu materi. Agar dapatterbentuk susunan kristal yang sempurna, diperlukan

     pemanasan sampai suatu tingkat tertentu, kemudiandilanjutkan dengan pendinginan yang perlahan-lahan danterkendali dari materi tersebut. Pemanasan materi di awal

     proses annealing, memberikan kesempatan pada atom-atomdalam materi itu untuk bergerak secara bebas, mengingattingkat energi dalam kondisi panas ini cukup tinggi. Proses

     pendinginan yang perlahan-lahan memungkinkan atom-atomyang tadinya bergerak bebas itu, pada akhirnya menemukantempat yang optimum, dimana energi internal yangdibutuhkan atom itu untuk mempertahankan posisinyaadalah minimum. Simulated annealing berjalan berdasarkan

    analogi dengan proses annealing tersebut. Simulatedannealing memanfaatkan analogi antara cara pendinginandan pembekuan metal menjadi sebuah struktur crystaldengan energi yang minimal (proses penguatan) dan proses

     pencarian untuk tujuan minimal.

    Berikut adalah algoritma metode simulated annealing:

    1.  Evaluasi keadaan awal. Jika tujuan maka KELUAR(pencarian solusi selesai). Jika tidak lanjutkan dengankeadaan awal sebagai keadaan sekarang.

  • 8/17/2019 Thiang-Simulated Annealing Robot

    2/5

     

    2.  Inisialisasi BEST_SO_FAR untuk keadaan sekarang.

    3.  Inisialisasi suhu (T) sesuai dengan annealing schedule.

    4.  Kerjakan hingga solusi ditemukan atau sudah tidak adaoperator baru lagi akan diaplikasikan kekondisi sekarang.

    a.  Gunakan operator yang belum pernah digunakanuntuk menghasilkan keadaan baru.

     b. 

    Evaluasi kondisi baru dengan menghitung:

    ∆E = nilai sekarang – nilai keadaan baru (1)

    i.  Jika kondisi baru tujuan maka KELUAR(pencarian solusi selesai).

    ii.  Jika bukan tujuan, namun nilainya lebih baik darisekarang, maka jadikan keadaan tersebut sebagaikeadaaan sekarang.

    iii. Jika nilai kondisi baru tidak lebih baik daripadakeadaan sekarang, maka tetapkan kondisi barusebagai keadaan sekarang dengan probabilitas:

     p’ = e -∆E /T (2)

    dalam kondisi ini juga generate random numberdengan range [ 0 , 1 ]. Jika random number lebihkecil dari p’ maka solusi diterima. Jika randomnumber lebih besar dari p’ abaikan (solusi tidakditerima)

    c. Perbaiki T sesuai dengan annealing schedule

    5.  BEST_SO_FAR adalah solusi yang dicari.

    Perbedaan antara metode simulated annealing danmetode simple hill climbing adalah:

    • Simulated annealing memilki annealing schedule

    • Pada metode simulated annealing solusi yang jelekmasih ada kemungkinan untuk diterima

    • Nilai keadaan sekarang adalah nilai yang terbaiksepanjang proses berlangsung. Kemudian jikakeadaan yang baru yang lebih jelek daripada keadaansekarang (karena kurang beruntung dalam

     penerimaan solusi), keadaan yang baru tersebut masih bisa digunakan.

    III.  DESKRIPSI SISTEM 

     A.  Perangkat Keras dan Mekanik Robot Mobil

    Bentuk dasar robot terbuat dari kayu tebal 3mm dan berbentuk oval 14,5cm x 11cm. Robot dilengkapi dengan 2 buah roda dan sebagai penggerak digunakan 2 buah motorDC dengan masing-masing motor memiliki sebuah gear box.

    Gambar 1 menunjukkan gambar mekanik penggerak robot.

    Robot mobil dirancang untuk bergerak mengikuti garis.Karena itu robot mobil dilengkapi dengan sensor cahaya.Secara umum, diagram blok perangkat keras robot dpatdilihat pada gambar 2.

    Gambar 1. Mekanik penggerak robot mobil.

    Gambar 2. Diagram blok perangkat keras robot.

    Sensor cahaya yang digunakan adalah sepasang LED danLDR. Karena output dari sensor LDR berupa sinyal analog,maka untuk merubah menjadi digital digunakan rangkaiankomparator. Output rangkaian ini hanya mempunyai 2 stateyaitu low dan high yang menunjukkan warna hitam dan

     putih. berikut gambar 3 dan 4 menunjukkan gambarrangkaian sensor dan komparator.

    Gambar 3. Rangkaian sensor

    Sensor

    Komparator

    Mikrocontroller

    AT89S51

    Driver

    Motor

  • 8/17/2019 Thiang-Simulated Annealing Robot

    3/5

     

    Gambar 4. Rangkaian komparator  

    Output sensor akan dibaca oleh mikrokontroler sebagiinformasi untuk mengendalikan robot mobil bergerakmengikuti garis putih. Sebagai penggerak robot mobil,digunakan 2 buah motor DC, masing-masing rodadigerakkan oleh satui motor DC. Rangkaian driver motor DCyang digunakan adalah rangkaian H-Bridge. Rangkaian H-Bridge ini menggunakan transistor TIP 41 dan TIP 42.

     berikut gambar 5 menunjukkan gambar rangkaian drivermotor DC.

    Gambar 5. Rangkaian driver motor DC 

    Mikrokontroler yang digunakan sebagai pengendali darirobot mobil adalah mikrokontroler AT89S51.mikrokontroler ini termasuk mikrokontroler keluargaMCS51. rangkaian mikrokontroler ini dirancang sederhanayaitu berupa rangkaian single chip, tanpa ada memorieksternal. Berikut gambar 6 menunjukkan gambar rangkaianmikrokontroler yang digunakan dan tabel 1 menunjukkantabel koneksi mikrokontroler dengan rangkaian sensor danrangkaian driver.

    Gambar 6. Rangkaian single chip mikrokontroler

    Tabel 1. Tabel koneksi mikrokontroler dengan sensor dan driver motor

     B.  Perangkat Lunak

    Secara umum cara kerja sistem robot mobil untukmencari rute terpendek adalah seperti yang ditunjukkan padagambar 7.

    Gambar 7. Diagram blok sistem kerja robot mobil

    Gambar 8. Peta area lintasan robot mobil

    Start

    Mencari rute dengan

    simulated annealing

    Bergerak menuju tujuan

    sesuai rute dengan

    tracking garis

    End

    Tentukan Start dan

    tujuan

  • 8/17/2019 Thiang-Simulated Annealing Robot

    4/5

     

    Pertama-tama posisi start dan tujuan robot ditentukankemudian robot akan secara otomatis menentukan rute daristart sampai tujuan dengan metode simulated annealing.Setelah mendapatkan rute, robot akan berjalan secaratracking line menuju ke tujuan sesuai dengan rutenya. Areauntuk peta telah didefinisikan terlebih dahulu. Gambar 8menunjukkan area peta yang digunakan.

    Secara detail flowchart perangkat lunak yang telahdirancang dapat dilihat pada gambar 9.

    Gambar 9. flowchart perangkat lunak robot mobil

    Pemetaan merupakan hal yang penting yang pertama kalidilakukan dalam alur program. Berhasil atau tidaknya

     pencarian benda ataupun penentuan jalur terpendek tidaklepas dari pemetaan ini. Dengan pemetaan ini maka seluruharea yang ada akan digambarkan. Hasil yang didapat dari

     pemetaan tersebut akan dijadikan acuan untuk menghitungkuadrat jarak lurus setiap titik yang ada pada area terhadaptitik tujuan. Nilai hasil perhitungan jarak yang didapattersebut akan disimpan di dalam alamat RAMmikrokontroler. Nilai tersebut kemudian akan dianalisadengan menggunakan metode simulated annealing. Denganmetode ini maka akan didapatkan rute yang terpendekmenuju titik tujuan. Namun, rute ini masih berupa alamat

    RAM bukan nilai ouput port yang sesungguhnya. Olehkarena itu perlu diubah menjadi output port. Barulah robotttersebut dapat menelusuri jalur yang telah didapat. Jalurtersebut merupakan jalur terpendek menuju tujuan yangdiinginkan.

    IV.  HASIL PENGUJIAN 

    Pengujian sistem telah dilakukan dengan variasi posisistart dan posisi tujuan untuk melihat performans sistemapakah dapat mencari rute terpendek. Beberapa pengujianyang dilakukan antara lain posisi start (0,5) dan posisi tujuan(0,2), posisi start (0,0) dan posisi tujuan (0,5), posisi start(2,0) dan posisi tujuan (4,5), posisi start (0,4) dan posisitujuan (1,0), posisi start (1,0) dan posisi tujuan (4,0).

    Berikut gambar 10 sampai gambar 14 menunjukkan rutedari hasil pengujian yang didapatkan oleh robot mobildengan menggunakan metode simulated annealing.

    Gambar 10. Rute hasil pengujian dengan psosi start (0,5) dan

     posisi tujuan (0,2)

    Gambar 11. Rute hasil pengujian dengan psosi start (0,0) dan posisi tujuan (0,5) 

  • 8/17/2019 Thiang-Simulated Annealing Robot

    5/5

     

    Gambar 12. Rute hasil pengujian dengan psosi start (0,2) dan posisi tujuan (4,5) 

    Gambar 13. Rute hasil pengujian dengan psosi start (0,4) dan posisi tujuan (1,0) 

    Gambar 14. Rute hasil pengujian dengan psosi start (1,0) dan posisi tujuan (0,4) 

    Bila melihat hasil pengujian yang telah dilakukan sepertiyang ditunkukkan oleh gambar 10 sampai gambar 13,terlihat bahwa dengan menggunakan metode simulatedannealing, robot mobil berhasil mencari rute terpendek. danrobot mobil juga dapat bergerak mengikuti rute yang telahdidapatkan. Tetapi pada hasil pengujian yang ditunjukkanoleh gambar 14, metode simulated annealing terjebak padarute yang sama sehingga robot hanya bergerak berputar-

     putar saja pada area tertentu.

    V.  K ESIMPULAN 

    Dari hasil pengujian yang telah dilakukan dapat diambilkesimpulan bahwa metode simulated annealing berhasil diterapkan untuk pencarian rute terdekat pada robot mobil.Tetapi masih terdapat kemungkinan bahwa simulatedannealing tidak dapat memberikan hasil yang terbaik sepertihasil pengujian yang ditunjukkan oleh gambar 14. Pada

     penelitian ini simulated annealing telah berhasildiimplementasikan pada level mikrokontroler.

    R EFERENSI 

    [1]  Thiang, Handry Khoswanto, Felix Pasila, Hendra Thelly, “AplikasiMetode Hill Climbing pada Standalone Robot Mobil untuk Mencari

    Rute Terpendek”, Prosiding Seminar KOMMIT 2008, Depok, 2008.

    [2]  Thiang, Anies Hannawati, Resmana Lim, Hany Ferdinando,“PetraFuz: a Low Cost Embedded Controller Based Fuzzy LogicDevelopment System”, Proceeding of The Fourth Asian FuzzySystems Symposium (AFSS 2000), Tsukuba Science City, Jepang,Juni 2000.

    [3]  Thiang, Ronald Kurniawan, Hany Ferdinando, “Implementation ofGenetic Algorithm on MCS51 Microcontroller for Finding theShortest Path”. Proceeding of Seminar of Intelligent Technology andIts Applications (SITIA 2001), ITS-Surabaya, May 2001

    [4]  Rich, Elaine. Artificial Intelligence. New York: McGraw-Hill, 1991.

    [5]  AT89S51 Datasheet. San Jose, CA: Atmel Corporation, 1995.