Pemetaan Lingkungan
DECEMBER 31, 2011 1 COMMENT
I. Mobile Robot dan Kendala yang Dihadapinya
Mobile robot (robot bergerak) adalah jenis robot yang memanfaatkan
aktuator/penggerak untuk mengubah keadaan (state) dan bentuk fisiknya. Dalam
kasus wheeled mobile robot yang saya konstruksi, aktuator/penggerak tadi berupa
2 buah motor DC yang terhubung dengan dua roda dan di-integrasikan dengan
gearbox. Lantas apa yang membuat robot saya ini berbeda dengan robot-robot
yang telah dibuat oleh mahasiswa ITB (bahkan Indonesia) sebelumnya?. Yang
membuat Artoo (nama robot-red) istimewa adalah kemampuan robot ini
untuk learningbelajar dan menangani uncertainty ketidak-pastian yang
datang dari lingkungan sekitar si robot dan fisik robot itu sendiri.
Untuk memberi gambaran seperti apa proses learning dan ketidakpastian tersebut
saya akan menjelaskan terlebih dahulu robot yang selama ini dibuat oleh
mahasiswa ITB dan Indonesia pada umumnya serta kendala apa yang
mencegahnya untuk dapat dipakai di aplikasi outdoor. Robot yang selama ini kita
buat (mis. robot yang dilombakan di Kontes Robot Nasional) adalah robot yang
didesain untuk lingkungan dengan keadaan dan rintangan-rintangan yang jelas dan
dapat diketahui pasti sebelum si robot mulai dijalankan. Kalaupun ada
ketidakpastian maka jumlah kombinasi dan permutasi yang ada relatif kecil.
Sebagai contoh robot pemadam api (fire fighting) yang bertugas untuk
memadamkan lilin secepat mungkin dalam suatu maze (labirin) dan kemudian
kembali ke tempat semula adalah contoh dari environment (lingkungan) yang
sifatnya deterministik . Di sini deterministik berarti fisik labirin (jumlah ruangan ,
ukuran , warna , rintangan yang ada) sudah diketahui sebelumnya.
Namun apa yang terjadi ketika robot seperti ini dipaksa untuk menghadapi kondisi
real (mis. api sebenarnya dan lingkungan outdoor )? Jawaban yang sudah jelas :
robot ini akan gagal. Kenapa? Banyaknya noise (derau) di sensor dan lingkungan ,
fisik lingkungan yang tak tentu , kemampuan sensor dan kapasitas baterai yang
terbatas menjadi beberapa dari sekian banyak alasan. Maka diperlukan pemodelan
dan program dalam level yang benar-benar berbeda untuk membuat robot
yang robust (kokoh) dalam menangani ketidakpastian tersebut. Metode yang akan
saya ajukan untuk hal ini merupakan manifestasi dari bidang baru dalam robotika
dan dalam beberapa tahun belakangan ini menjadi topik riset yang populer di
universitas-universitas di USA dan Eropa. Metode ini dinamakan Probabilistic
Robotics dan Machine Learning.
II. Probabilistic Robotics
Dari data-data yang ada di vektor S dan prinsip probabilitas, maka kita dapat
menyelesaikan 2 permasalahan utama yang tidak dapat diselesaikan dengan
metode yang selama ini diimplementasikan di robot-robot sebelumnya.
Permasalahan tersebut adalah localization (lokalisasi) dan mapping (pemetaan).
Penjelasan tentang localization dan mapping akan saya ilustrasikan dengan gambar
. Pertama tama masalah localization . Spesifikasi masalah ini adalah kita ingin
mengetahui posisi/lokasi robot yang di lingkungan yang sudah tersedia
Gambar 4. Robot bergerak, dan titik titik yang tadinya tersebar merata
mulai memadat dan membentuk dugaan yang lebih kuat akan lokasi si
robot.
Bagaimana jika kita tidak mempunyai peta/denah lingkungan? Maka robot harus
ditambahkan dengan kemampuan mapping (pemetaan). Spesifikasi
permasalahannya, robot yang tadinya tidak punya informasi tentang bentuk fisik
lingkungan (ukuran, rintangan yang ada) harus bisa menggambarkan keadaan
lingkungannya sendiri. Proses mapping ini dapat direalisasikan dengan
algoritma occupancy grid mapping . Pseudocode dari algoritma ini adalah sebagai
berikut:
Dan contoh hasil dari occupancy grid mapping ditunjukkan dari gambar di bawah.
Pada gambar tersebut , diperlihatkan bahwa robot berhasil memetakan sekitarnya
dan hasil yang diperoleh adalah denah 2 dimensi dari lingkungan si robot.