We are always looking for ways to accelerate innovation. To that end Tawn Kramer has created a donkeycar simulator to help generate datasets, test autopilots, experiment with reinforcement learning techniques and potentially train a Depthnet.
The simulator download links and instructions are now posted in the docs.donkeycar.com.
Most donkey cars currently use the end to end neural network autopilots. If you train these types of pilots on data that contain crashes, they won't perform well. So we need an easy way to remove the data we don't want to train on. Thanks to Kenneth Jiang, donkey now has a simple web app to remove bad data.
Simply run "donkey tub <path to your tubs>" and you can pick the tub(dataset) to clean. Watch the recorded data as a video and splice and select the parts that you want to delete. Easy.
We are working on refactoring the Donkey code to support a more modular architecture so that people can contribute code rather than rewriting the library. All the hardware of the Donkey2 standard build will remain the same but it will be easier to add sensors(lidar, odometry, ... ) or change controllers (bluetooth, webserver, adhoc wifi, ...).
It borrows concepts from Keras and ROS to make creating and experimenting with your car easy. Everything is still all python.
Here are some goals to improve the Donkey V2 car. Completing these by the July 17th DIY Robocars Race will give us competitive race times and would prepare us begin doing object detection and avoidance.
* 3 & 4: The goal is to capture enough data from the cars with expensive/difficult sensors so that a neural net or visual heuristic can be trained to predict the output of these sensors using just the camera. This will enable other cars to install software versions of these sensors on their existing cars without the hardware.
There are also improvements to the web interface that would help speed up training and testing. Currently there is a lot of command line steps people have to remember to build a working model.
If you'd like to contribute, please join our slack channel, create a github branch, make your improvements, and submit a pull request. These will goals will be made into issues on github as well.
The Donkey V2 design docs standardized the the camera height and angle as well as the type of car. This is important so that we can not only share code but also training data and autopilots.
The standard design will let someone who just built their car use the best autopilots created by the most experienced donkey trainer. Anyone with a donkey will be able to compete in the DIYRobocar races without collecting their own training data ever race. This will leave us more time to focus on improving the autopilot or Donkey software.
For now we've set up a spreadsheet for you to find autopilots and a form for you to submit data and trained autopilots. Before anything is published to the spreadsheet it will be reviewed for quality so that other people don't waste time trying to use bad data or a tweaker autopilot.