/Projects/Urbibot

Urbibot

What is Urbibot?

Jazzbot screenshot

Urbibot is the second case-study developed as a step towards applications of the Jazzyk BSM framework in the mobile robotics domain. It is a robot exploring a maze where it searches for red poles and then tries to kick them down while at the same time avoiding patrols policing the space. Urbibot is embodied as an e-Puck, a small educational mobile robot simulated in Webots, a robotics oriented physical world simulator. The robot is steered using URBI, a highly flexible and modular robotic programming platform based on eventbased programming model. The main motivation for using URBI is the direct transferability of the developed agent program from simulator to the real robot. Similarly to the Jazzbot, the overall agent design is inspired by the BDI architecture and reuses parts of the code developed for Jazzbot. In turn, except for using JzASP KR module to represent agent’s beliefs about itself, Urbibot features similar agent architecture as the one for the Jazzbot agent. Urbibot’s beliefs comprise exclusively information about the map. The interface with the simulator environment is provided by the JzUrbi KR module. As already noted above, Urbibot’s behaviour is similar to that of Jazzbot agent. However instead of controlling the agent’s body with rather discrete commands, such as move forward, or turn left, Urbibot’s URBI allows a more sophisticated control by directly accessing the robot’s actuators, which in the case of the e-Puck robot, are only it’s two wheels. The robot features a mounted camera, a directional distance sensor and an additional GPS sensor (our customization of the original e-Puck robot). In the JzRuby module, the robot analyzes the camera image stream and by joining it with the output of the distance and GPS sensors it constructs a 2D map of the environment. Upon encountering a patrol robot, Urbibot calculates an approximation of the space the patrol robot can see, and subsequently tries to navigate out of this area as quickly as possible.

Demo videos

A movie of the Urbibot was presented at the Dagstuhl seminar 08361. Find below sample video recordings of Urbibot runs.

Solo Urbibot

The following video sequence shows the Urbibot itself and the simulated 3D environment. The screen capture shows the pane with the Urbibot itself, a pane with an updated state of the robot’s belief base, i.e. it’s depiction of the map as it knows it and finally a small window showing the current camera sensor image.

Urbibot and the land of red poles

The task of the Urbibot in the following demo is to find the red poles located in the environment and fall them by bumping into them. During its lifetime, the bot tries to avoid the two patrol robots policing the maze.

The map pane shows the path to the point the robot decided to explore next and when encountering a patrol, it also shows Urbibot’s estimation of the region which is under control of the patrol and which the robot tries to avoid.