The existence of this article in MIT Technology Review is interesting to me because I am very interested in this topic. The title of the article is "Even Robots Have Their Own Virtual World". On my C.A.R. project page I list the following as one of the project’s goals.
To create a real world testing ground that can then be simulated. The purpose of this would be to compare whether simulated versions of the environment behave similarly to real ones. The point is that if you have an AI driver and it performs well in computer simulations, is there a context where that can be proven to translate correctly to a real world setting. This has big implications for autonomous car development.
The article itself is not so interesting because it doesn’t tell me anything I didn’t already know. I already know about ROS (Robot Operating System) and its affiliated project Gazebo whose web site provides this sensible justification for the idea.
Robot simulation is an essential tool in every roboticist’s toolbox. A well-designed simulator makes it possible to rapidly test algorithms, design robots, and perform regression testing using realistic scenarios. Gazebo offers the ability to accurately and efficiently simulate populations of robots in complex indoor and outdoor environments.
I was disappointed that the article did not mention anything about autonomous cars. I’m not sure that Gazebo is the ideal platform for testing autonomous vehicles, but it might work. But if there was ever a robotic technology that could benefit from heavy off-line testing in a simulated environment, it’s robotic cars.
Even if the simulated environment is very low fidelity, it would still be quite useful for catching major errors. For example, I had a painfully awful bug in my AI agent that showed up in about 20% of tracks. Here and also here are examples of what that looks like. Can you imagine that problem needing to be discovered and debugged on actual streets with expensive hardware? This bug was elusive enough even being able to slow time down and know the complete state of the universe.
At some point we’ll start to realize that these models we’ve been building into game engines can be quite useful. Just exactly how useful is the very good question I’m trying to work on. Hopefully when the importance of this kind of technology is better understood, I’ll have better opportunities to work with it.