1. Abstract
Pada paper ini, dijelaskan alat buatan penulis yang merupakan Drums, yaitu alat baru
untuk monitoring dan debugging sistem robot terdistribusi yang dapat:
Selain itu, paper juga menunjukkan contoh utility dari Drums yang digunakan untuk
debugging masalah realistis. Utility tersebut diajukan sebagai alat untuk monitoring
quality of service dan introspection untuk robust autonomous systems.
2. Scope And Motivation
b. Architecture
Drums terdiri dari sebuah proses statistics collector dan sebuah client
library untuk agregasi. Collector process beroperasi pada setiap host dari
computation graph dan mengumpulkan statistik mengenai elemen-elemen
graph yang dapat diakses dari host. Collector process menyediakan interface
berbasis HTTP untuk konfigurasi runtime dari monitoring jobs. Selain itu,
collector juga mendorong data yang dikumpulkan ke client library untuk
agregasi melalui publish/subscribe channel. Untuk memanfaatkan Drums, perlu
dibuat suatu adaptor bagi setiap target middleware untuk menerjemahkan status
middleware ke dalam computation graph. Sebagian besar dari program Drums
dibuat dengan bahasa Python (beberapa performance critical tasks
diimplementasikan sebagai library C) dan diuji dengan Linux.
i. Drums Collector
Tiga AR-Drone terhubung melalui Wifi (802.11n) ke suatu router wireless. Dari
router ini, koneksi jaringan melewati gigabit Ethernet kepada komputer dedicated
(CPU Intel Core i7 dengan RAM 8GB) untuk setiap drone. Di setiap komputer, realtime
vision software yang men-subscribe kepada suatu high-definition video stream dari satu
drone lainnya untuk mendeteksi manusia dan gerakannya. Selain itu, software
dijalankan di setiap komputer untuk mengendalikan perilaku robot. Selama percobaan
awal penulis mengamati bahwa sistem tidak dapat di-scaling dengan baik dari dua
menjadi tiga robot. Gejalanya adalah sistem tidak responsif ketika tiga host berjalan
secara bersamaan. Diperlukan upaya debugging yang besar untuk menemukan
masalahnya. Dalam demonstrasi ini, penulis melakukan eksperimen sebelumnya
dengan perangkat keras yang sama. Selain itu, penulis juga menggunakan Drums untuk
melihat apakah anomali dapat ddeteksi dan kesalahan dapat diisolasi.
Setelah ketiga robot dinyalakan, penulis memulai software vision dan control
pada setiap host secara bergantian dengan interval 60 detik. Penulis menghentikan
software setelah 300 detik. Jumlah total performance parameters yang dimonitor
adalah 243. Dari metrik tersebut, penulis mengecualikan 102 metrik terkait host (seperti
penggunaan CPU/RAM host) karena hal ini dapat dipengaruhi oleh entities diluar
sistem monitoring dan dapat menyebabkan false positives.
Paper ini telah mengajukan suatu lightweight distributed monitoring tool untuk
robot dan mendemonstrasikan aplikasinya. Drums dapat membongkar abstraction
layer buatan middleware dan membuat grafik sesuai yang dapat dipetakan menjadi
monitorable system entities. Penulis menggunakan suatu generic data-driven anomaly
detector untuk menarik perhatian pengguna ke metrik yang lebih sedikit. Tentu saja,
perilaku anomalous dari suatu metrik belum tentu akibat suatu fault (false positives
dapat terjadi). Lebih lagi, metrik dengan anomali hanya memberikan petunjuk tentang
kemungkinan faults dalam sistem. Pekerjaan kedepannya adalah untuk
mengembangkan custom visualization dan fault detectors untuk sistem robot
terdistribusi yang memanfaatkan Drums dengan sepenuhnya. Salah satu arah penelitian
jangka panjang yang menarik adalah untuk menggunakan Drums sebagai introspection
tool di dalam pengendali robot, untuk mengadaptasikan perilaku robot dengan kondisi
sistem internal yang sebelumnya sulit untuk diamati.
7. Referensi: