Pembelajaran Robot dengan Fuzzy Q-Learning pada Sistem Navigasi Robot Otonom Multiplatform Made Santo Gitakarma1,2, Son Kuswadi3, Rusdhianto Effendi2, Indra Adji Sulistijono3, Achmad Jazidie2, Mitsuji Sampei4 1
Department of Electrical Engineering, Sepuluh Nopember Institute of Surabaya, Indonesia Department of Electrical Engineering, Ganesha Education University, Singaraja, Indonesia (Tel : +62-32-25571; e-mail :
[email protected]) 3 Department of Mechatronics, Electronics Engineering Polytechnic Institute of Surabaya, Surabaya, Indonesia 4 Department of Mechanical and Environmental Informatics, Tokyo Institute of Technology, Tokyo, Japan 2
Abstrak - Robot multiplatform memiliki mekanisme perpaduan antara beroda dan berkaki. Salah satu jenis robot ini telah dikembangkan di PENS ITS dengan nama iSRo (intelligent Search Robot) I dan II untuk tujuan rescue robot. Pada penelitian ini akan didesain iSRo II yang memiliki kemampuan learning dari lingkungannya secara langsung tanpa bimbingan dari manusia lagi (unsupervised learning). Algoritma pembelajaran yang diterapkan pada robot adalah Fuzzy Q Learning (FQL) untuk menghindari rintangan (obstacle avoidance) dan menemukan target (target searching) dalam lingkungan yang tidak beraturan. Hasil simulasi yang dilakukan menunjukkan bahwa algoritma FQL dengan 9 rule berhasil membuat robot melakukan navigasi secara otonom menghindari rintangan yang ada dalam arena dan menemukan target yang diinginkan berupa sumber cahaya. Dari 100 episode pelatihan yang dilakukan dalam suatu simulasi dengan area yang ditentukan, FQL memiliki performasi yang baik secara keseluruhan. Saat episode awal kegagalan tertinggi oleh FQL tercapai sebesar 60 dan menurun hingga minimal 15. Begitu juga dengan reward atau hukuman yang didapat dengan FQL mencapai -68 saat episode awal dan meningkat hingga maksimal -4. Sedangkan kontroler fuzzy dasar hanya memberikan kegagalan (failures) konstan sebesar 32 dan reward konstan sebesar -45 setiap episodenya. Kata kunci : robot multiplatform, obstacle avoidance, target searching, fuzzy q learning 1. PENDAHULUAN Robotika adalah bidang yang menantang di bidang rekayasa maupun sains. Robotika telah memberikan kontribusi yang penting di industri, di mana telah banyak industri yang menggunakan robot untuk tugastugas seperti perakitan (assembling), pengelasan, pemindahan material, dan lain-lain. [1] Secara bersamaan, bermunculan penelitian tentang robot yang memiliki peran penunjang (assistive) seperti robot pencari korban [2], penyapu ranjau [3], pengawasan (surveillance) [4], eksplorasi [5] dan keamanan [6]. Selain itu, minat penelitian ke arah
robot dengan kemampuan merayap (climbing) dan berjalan tegak (walking) mendapat perhatian juga. Pada medan bencana alam yang tidak terduga, luas dan senantiasa berbeda satu dengan yang lain, robot penyelamat harus memiliki kemampuan melakukan manuver pada daerah yang sangat kompleks dan susah diprediksi. Karena itu, dibutuhkan robot dengan kemampuan mekanis yang fleksibel dan memiliki algoritma kendali yang memadai. Dengan mekanisme yang fleksibel, robot harus memiliki derajat kebebasan yang cukup dan kaya dengan berbagai jenis aktuator sehingga mampu menangani situasi yang berbeda. Beberapa peneliti mengajukan berbagai jenis robot, seperti beroda (wheeled) [7] dan berkaki (legged) [8]. Saat ini, para peneliti yang tergabung dalam Robotic and Automation Based on Biologically Inspired Technology (RABBIT) Research Group dari Politeknik Elektronika Negeri Surabaya – Institut Teknologi Sepuluh Nopember (PENS ITS) telah berhasil mengembangkan robot multiplatform yaitu perpaduan antara beroda dan berkaki yang diberi nama iSRo [9]. iSRo I memiliki 10 primitive behavior dan 10 derajat kebebasan [10] sedangkan iSRo II memiliki 22 primitive behavior dan 12 derajat kebebasan. Selain arsitektur robot otonom yang baik, untuk mengatasi hal – hal yang tidak direncanakan sebelumnya, perlu dilakukan mekanisme pembelajaran yang tepat pada robot. Pada mekanisme Supervised Learning (SL) diperlukan “guru”, sedang pada Unsupervised Learning (UL) yang lebih cocok untuk aplikasi robot, suatu agent harus belajar sendiri. Reinforcement Learning (RL) adalah metode UL yang dapat belajar dari kritik/reward secara langsung (online) dari lingkungan [11]. Salah satu metode pembelajaran RL yang paling cocok dan banyak digunakan untuk aplikasi robot otonom adalah RL dengan jenis algoritma Q-Learning. Algoritma ini menggunakan tabel Q untuk mencocokkan diskrit state dan action saja. Sedangkan pada robot otonom ukuran state dan data sensornya bersifat kontinyu, sehingga hal ini menjadi tidak praktis. Oleh karena itu, untuk memperluas algoritma Q-Learning berkaitan dengan state dan action yang kontinyu, L. Jouffe dalam [12] mengkombinasikan Q-
Learning dengan Fuzzy Inference System (FIS) yang dikenal dengan Fuzzy Q-Learning (FQL). Pada penelitian ini akan dirancang robot multiplatform iSRo II dengan arsitektur behavior based control. Algoritma FQL hanya diterapkan pada dua prilaku yaitu menghindari rintangan, dan mencapai target.
arah dengan jarum jam dari sumbu Y+ ke Y-. Ruang rotasi untuk right knee servo dinotasikan dengan Rright2, yaitu pada bidang XY yang bergerak searah dengan jarum jam dari sumbu Y+ ke Y-. Sedangkan ruang rotasi left ankle servo dan right ankle servo dinotasikan dengan Rleft3 dan Rright3, yaitu pada bidang YZ yang bergerak dengan rotasi penuh.
2. METODE PENELITIAN 2.1. Perancangan Pergerakan Robot Berikut ini ukuran robot multiplatform iSRo II (dalam satuan cm). Robot dalam posisi direntangkan atau merayap untuk mempermudah pemberian ukuran. Robot dibagi menjadi tiga bagian utama yaitu : Main Body (kotak utama), Left Box (kotak kiri) dan Right Box (kotak kanan).
Gambar 3. Konfigurasi rotasi servo-servo
2.2. Sensor - Sensor pada Robot Sensor yang digunakan dalam sistem navigasi otonom robot multiplatform ini ialah dua buah sensor jarak dan dua buah sensor cahaya seperti yang terlihat pada Gambar 2. Karakteristik dari sensor jarak nampak pada grafik berikut. Gambar 1. Ukuran bagian robot multiplatform iSRo II
Jika robot multiplatform diatur dalam kondisi inisial (berdiri), maka bentuknya akan tampak seperti gambar berikut.
Gambar 4. Grafik karakteristik sensor jarak
Dari grafik tersebut nampak bahwa jangkauan terjauh sensor ialah 0.5 m. Sedang karakteristik dari sensor cahaya nampak pada grafik berikut.
Gambar 2. iSRo II dalam kondisi inisial
Masing-masing kaki terdiri dari 3 buah motor servo yang diberi nama : hip servo, knee servo dan ankle servo. Left box dan right box masing-masing terdiri dari 8 roda motor listrik yang dihubungkan dengan sabuk (belt) setiap 4 roda motor listrik yang sejajar. Konfigurasi rotasi dari masing-masing servo robot ini dapat digambarkan pada Gambar 3. Ruang rotasi left hip servo dinotasikan dengan Rleft1, yaitu pada bidang XZ yang bergerak berlawanan arah jarum jam dari sumbu Z+ ke Z-. Ruang rotasi right hip servo dinotasikan dengan Rright1, yaitu pada bidang XZ yang bergerak searah jarum jam dari sumbu Z+ ke Z.Ruang rotasi untuk left knee servo dinotasikan dengan Rleft2, yaitu pada bidang XY yang bergerak berlawanan
Gambar 5. Grafik karakteristik sensor cahaya
Dalam simulasi ini, kedua sensor diasumsikan ideal dan bebas noise. 2.3. Perancangan Perangkat Lunak Robot akan dikendalikan secara langsung oleh low level controller (berupa kontroler P) yang berfungsi untuk mengendalikan pergerakan robot dengan
beberapa motor servo yang ada. Robot juga akan mengirim sinyal persepsi (melalui sensor – sensor yang dimilikinya) pada high level controller. Kemudian sinyal tersebut menjadi masukan stimulus yang akan mengaktifkan behavior – behavior tertentu (yang dikoordinasi oleh bagian behavior coordination). Output dari behavior coordination diberikan pada low level controller untuk pengendalian robot. Diagram blok keseluruhan robot terlihat pada gambar berikut.
policy (off-policy) yang mampu menentukan operator terbaik setiap saat. 2.4.2. Fuzzy Q-Learning Asumsi Xt dan A(Xt) adalah state input dan aturan aktif pada waktu t. Dan vR ( X t ) adalah nilai kebenaran dari t
aturan Ri setelah penerapan Xt. Pendekatan saat ini untuk nilai Q dari pasangan state-aksi saat ini ~ Qt ( X t ,U t ( X t )) dapat ditulis sebagai berikut: ~ Qt ( X t , U t ( X t )) =
∑
Ri ∈ A ( X t )
∑
vRi ( X t ) ⋅ wtj (U ti )
Ri ∈ A ( X t
(4)
v (Xt ) ) Ri
dimana U adalah aksi ε-Greedy dari aturan Ri pada i t
waktu t, dan U t ( X t ) adalah total dobel ε-Greedy atau maksimum aksi ε-Greedy. Untuk itu nilai kualitas optimal, nilai-Q, dari state saat ini dinyatakan dengan Qt* ( X t ) adalah sebagai berikut: Qt* ( X t ) =
Gambar 6. Diagram blok perangkat lunak robot [13,14]
2.4. Algoritma Pembelajaran Robot 2.4.1. Q-Learning Q-Learning adalah pembelajaran kompetisi dimana ada agen-agen dengan kemampuan belajar untuk beraksi secara optimal dengan mengevaluasi konsekuen dari aksi-aksinya. Glorennec dalam [15] menyatakan Q-Learning berupa fungsi Q yang mencoba mengestimasi sinyal reinforcement berikutnya yang didiskon untuk mengambil aksi-aksi dari state-state yang telah diberikan. Implementasinya sebagai berikut. 1. Ruang state U ⊂ Rn, dipartisi ke dalam sel-sel berbentuk matriks. 2. Agen aksi j, j ∈ {1,…,J}, berkompetisi dalam sel state c, c ∈ {1,…,M}, yang dinyatakan oleh nilai kualitasnya Q[c,j]. Probabilitas agen j dalam c dipilih dengan distribusi Boltzmann. 3. Saat agen aksi keluar sel c dan masuk ke sel c’, pada time step t, agen lain dipilih untuk sel c’ dan fungsi Q dari agen sebelumnya ditambahkan: (1) ∆Q[c, j ] = α {r (t ) + γ max Q[ k , c' ] − Q[c, j ]} k
dimana α adalah learning rate (α < 1), γ adalah faktor diskon (γ < 1) dan r(t) sinyal reinforcement. + 1 r (t ) = 0 − 1
reward don' t care punishment
(2)
Sehingga fungsi Q yang baru menjadi: Qnew [c, j ] = Q prev [c, j ] + ∆Q[c, j ]
(3)
Metode ini sangat menarik karena melakukan optimisasi tanpa model secara online dalam control
∑
Ri ∈ A ( X t )
∑
[
vRi ( X t ) maxi wtj (a)
Ri ∈A ( X t
a∈U
]
(5)
v (Xt ) ) Ri
Ini sebenarnya nilai-Q dari pasangan state-aksi yang harus diambil. Dari persamaan (5) akan dapat dihitung estimasi error TD sebagai berikut: ~ (6) = ε~t +1 rt +1 + γQt* ( X t +1 ) − Qt ( X t , U t ( X t )), 0 ≤ γ ≤ 1. dimana γ adalah faktor diskon. Aturan update pembelajaran dengan algoritma TD(λ) untuk fungsi nilai-Q adalah sebagai berikut: (7) ∀Ri . = wt +1 wt + α t ε~t +1etT , dimana et adalah matrik eligibility trace dan αt adalah vektor learning rate yang berubah untuk aturan-aturan. 2.4.2.1. Arsitektur FQL Arsitektur FQL berdasarkan pada nilai kualitas aksi dan inferensi fuzzy. Diagram skema arsitektur FQL dapat dilihat pada Gambar 7. 2.4.2.2. Proses Pembelajaran FQL Langkah-langkah proses pembelajaran FQL dapat diringkas sebagai berikut. 1. Fuzzifikasi state masukan baru yang diterima, Xt+1. 2. Evaluasi aturan dan hitung nilai kebenaran. 3. Estimasi nilai-Q optimal dari state saat ini Xt+1 berdasarkan fungsi nilai-Q yang didapat hingga saat ini, Qt* ( X t +1 ) . 4. Hitung error TD ε~t +1 . 5. Update FIS dengan mengatur kualitas aksi. 6. Lakukan update learning rate. 7. Update eligibility traces. 8. Lakukan prosedur pemilihan aksi ε-Greedy dan lakukan maksimum total aksi ε-Greedy Ut+1(Xt+1). 9. Hitung dan simpan nilai-Q dari pasangan stateaksi saat ini Xt+1 dan Ut+1(Xt+1) berdasarkan fungsi nilai-Q yang baru setelah mengatur nilai-nilai ~ . parameter bobot aksi: Q t +1 ( X t +1 , U t +1 ( X t +1 ))
Jika robot hanya menggunakan kontroler fuzzy dasar, maka robot sebenarnya hanya menghindari halangan (obstacle avoidance) sepanjang trayektori yang tidak efisien. Hal ini karena kontroler fuzzy dasar tidak mengandung pembelajaran dalam prosesnya. Robot mengalami kegagalan (failures) yang konstan sebanyak 32 kegagalan setiap episode. Karena simulasi yang dihasilkan sama tiap episode maka reward yang diterima juga sama yaitu sebanyak -45. Hasil simulasinya dapat dilihat pada gambar berikut.
Gambar 7. Arsitektur FQL [16]
2.5. Perancangan Fuzzy Behavior Seperti yang dijelaskan diatas, ada 2 macam perilaku yang akan diproses untuk menjadi fuzzy behaviors, yaitu : “obstacle avoidance” dan “seach target”. Robot menggunakan 2 sensor jarak (lihat Gambar 2). Di bawah ini nampak membership function (MF) segitiga untuk input dari masing – masing sensor. MF ini dibagi menjadi : dekat, sedang, dan jauh.
Gambar 10. Penerapan algoritma kontroler fuzzy dasar pada iSRo II
3.2 Simulasi Penerapan FQL
Gambar 8. Membership function dari sensor jarak
Gambar 11. Penerapan FQL pada iSRo II (ep40)
Gambar 9. Membership function dari sensor cahaya
3. HASIL DAN PEMBAHASAN 3.1 Simulasi Penerapan Kontroler Fuzzy Dasar Pertama-tama kontroler fuzzy dasar dari konsep TSFIS didesain. Input sensor jarak ada 2 buah sehingga ada 9 (32) aturan fuzzy. Begitu juga sensor cahaya ada 2 buah memberikan 9 aturan fuzzy.
Gambar 12. Penerapan FQL pada iSRo II (ep100)
Pada bagian ini dilakukan simulasi terhadap algoritma pembelajaran FQL. Parameter-parameter FQL yang digunakan yaitu faktor diskon γ = 0,95; learning rate α0 = 0,01; konstanta error TD λ = 0,9; dan konstanta ambang eligibility trace eth = 10-4. Penerapan algoritma FQL pada navigasi iSRo II dapat dilihat pada Gambar 11 dan 12 di atas. Perbandingan kegagalan dan reward yang didapat selama training berlangsung dapat dilihat pada Gambar 13 dan 14. 60 55 Kontroler Fuzzy Dasar FQL
50
Kegagalan
45
5. ACKNOWLEDGEMENT Penelitian ini didukung oleh Japan International Cooperation Agency (JICA) melalui Technical Cooperation Project for Research and Education Development on Information and Communication Technology di Institut Teknologi Sepuluh Nopember (PREDICT - ITS).
40 35
DAFTAR REFERENSI
30 25 20 15 10
0
20
40
60
80
100
Episode
Gambar 13. Perbandingan kegagalan kontroler fuzzy dasar dan FQL 0
-10
Kontroler Fuzzy Dasar FQL
-20
Reward
menggunakan kontroler fuzzy dasar pada robot telah berjalan dengan baik dan dapat mencapai tujuannya. Penerapan kontroler fuzzy dasar tidak menghasilkan proses pembelajaran pada robot, hanya melakukan tugas behavior based control. FQL memberikan proses pembelajaran sehingga robot dapat mendeteksi jejakjejak yang memenuhi syarat untuk trajektori yang lebih efisien.
-30
-40
-50
-60
-70
0
20
40
60
80
100
Episode
Gambar 14. Perbandingan kegagalan kontroler fuzzy dasar dan FQL
Dari grafik di atas dapat terlihat bahwa FQL memiliki performasi yang baik secara keseluruhan. Saat episode awal kegagalan tertinggi oleh FQL tercapai sebanyak 60 dan menurun hingga minimal 15. Begitu juga dengan reward atau hukuman yang didapat dengan FQL mencapai -68 saat episode awal dan meningkat hingga maksimal -4. 4. KESIMPULAN Pada penelitian ini telah diterapkan algoritma FQL pada robot multiplatform iSRo II yang dirancang berdasar arsitektur behavior based robot. Dari hasil simulasi nampak bahwa behavior coordination dengan
[1] Bekey, G. A. , Autonomous Robot : From Biological Inspiration to Implementation and Control, MIT Press, Massachusetts, 2005. [2] R. Snyder, “Robot Assist in Search and Rescue Efforts at WTC”, IEEE Robotics & Automation Magazine, vol. 8, pp. 26-28, 2001. [3] H. Cruz et.al., “Two Sustainable and Compliant Robot for Humanitarian Demining”, Proc. of the IARP Int. Workshop on Robotics and Mech. Assistance in Humanitarian Demining, 2005. [4] P.E. Rybski et.al., “Control of multiple small surveillance robots at AAAI 2000”, Proc. Of AAAI 2000 Mobile Robot Competition and Exhibition Workshop, 2000. [5] Trey Smith, Probabilistic Planning for Robotic Exploration, Ph.D. Dissertation, Carnegie Mellon University, 2007. [6] M. Seeman, M. Broxvall, R. Saffiotti, P. Wide, “An Autonomous Spherical Robot for Security Tasks”, Proc. IEEE Int. Conference on Computational Intelligence for Homeland Security and Personal Safety, 2006. [7] Howard T.M., A. Kelly, “Constrained Optimization Path Following of Wheeled Robot”, Proceeding The Tenth Int. Symp. On Experimental Robotics, 2006. [8] Buhler M. et.al., “Dynamic Locomotion with four and six-legged robots”, Proc. Int. Symp. Adaptive Motion of Animals and Machines, 2000. [9] Indra A.S., dkk., “Pengembangan Mekanisme Multiplatform Robot Pencari Korban Bencana Alam”, 1st APTECS 2009 National Seminar on Applied Technology, Science, and Arts, 2009. [10] Son K., et.al., “The Mobility Performances of New Wheeled and Legged Hybrid Mechanisms System Robot iSRo”, ICROS-SICE Intl. Joint Conference 2009, Proc. of the IEEE Society of Instrument and Control Engineers (SICE) and The Institute of Control, Robotics and Systems (ICROS) (ICCAS-SICE), pp.2949-2954, 2009.
[11] Glorennec, P. Y., “Reinforcement Learning : An Overview”, Proc. of European Symposium on Intelligent Techniques, Aachen, Germany, 2000. [12] Jouffle, L., “Fuzzy Inference System Learning by Reinforcement Methods”, IEEE Transactions on System, Man, and Cybernetics – Part C : Applications and Reviews, Vol. 28, No. 3, hal. 338 – 355, 1998. [13] Anam, K., Skema Behavior-Based Control dengan Pembelajaran Fuzzy Q-Learning untuk Sistem Navigasi Autonomous Mobile Robot, Tesis Master, Institut Teknologi Sepuluh Nopember, Surabaya, 2008. [14] Handy W., “Implementasi Compact Fuzzy Q Learning Untuk Navigasi Robot Otonom Berkaki”, Tesis Master, Institut Teknologi Sepuluh Nopember, Surabaya, 2009. [15] Glorennec, P.Y. dan Jouffe,L.. “Fuzzy QLearning”, Proceeding of the sixth IEEE International Conference on Fuzzy Sistem, Vol. 2, No. 1, hal. 659 – 662, 1997. [16] Naeeni, A.F. Advanced Multi-Agent Fuzzy Reinforcement Learning, Master Thesis Computer Engineering, Computer Science Department, Dalarna University, Sweden, 2004.