The Zoo Project is a new project begun at the Autonomy Laboratory at Simon Fraser University, but intended to become a global OSS collaborative project.
The Zoo will consist of two components:
(i) A public code base (HOSTED AT SOURCEFORGE) where users can develop control code for autonomous robots. We expect the code will mostly target the Player robot server allowing code to control many different types of physical robot. We also welcome code for other robot targets. The idea is that there be a repository for robotic control algorithms, so that researchers and hobbyists can share code. They can re-use chunks of code in their own projects, or test their own creations against reference controllers in the repository.
To illustrate, a user may submit a robot controller that builds maps of the environment using range and odometry data. Another user can either extend that controller for their own purposes, or they can compare its performance with their own novel controller. This way we hope to reduce development time and/or allow scientific evaluation of control code in a way that is currently very difficult.
We will encourage submission of new controllers and patches for existing controllers. All code will be GPL licensed.
Also in this repository will be configuration files for the Player server and Stage simulator. The submitted controllers should run in the simulation as well as on real robots. This way, students and researchers can download the simulator, interface AND control code to provide some standard test environments. This is currently almost never done in robotics research and will be an important contribution. We will design a set of basic environments and controllers to populate the Zoo from day one.
(ii) A live simulation server (NOT HOSTED AT SOURCEFORGE). We will run several simulations live on our servers at the Autonomy Lab using code and config files that are in the repository. We are investigating techniques for long term autonomy in robots, particularly looking at power management behaviour. So we need robot simulations that run for days or weeks to test the longevity and efficiency of our robot controllers. We will run multiple simulated environments simultaneously, with a web interface so people can see what is going on in the robot "zoo" or "safari park". All the code used to run the Zoo is available, so anyone can download and run the entire Zoo or parts of it themselves. We hope that by experimenting in the Zoo, people will develop more capable autonomous robot controllers. We will add contributed controllers, from anyone in the world, to the live Zoo so that the author can see how their robot gets on in a world full of other robots, energy sources, etc.