Researchers at the UCL’s Centre for Research on Evolution, Search and Testing (CREST) are using Darwinian evolution to ensure that the software which controls much of our driving is tested as rigorously as possible.
Today’s cars contain many more silicon chips than your typical computer. When you drive your car to the shops, you are sitting inside one of the world's most sophisticated computer-based systems. Computers control everything from the climate inside your car to its engine performance and safety features.
There's much more software in your car than was used to put a man on the moon. As you would hope, the testing requirements are no less stringent either. Just as the Apollo 11 astronauts depended on their software to get them home safely, so do you as you pull out of the supermarket car park.
A typical modern car can contain as many as 10 million lines of software code. If you printed this out on A4 paper, it would stretch about 30 kilometres; much further than your journey to the shops. Imagine the task of reading through all that program code to check that everything works correctly.
Researchers at UCL’s CREST have been working with colleagues in Germany, at Berner & Mattner in Berlin, to use Darwinian evolution to test automotive software by breeding testing scenarios. The breeder uses evolution to select the strongest and most demanding testing scenarios, ensuring that the car is thoroughly put through its paces in the design labs before being released onto the road.
Professor Harman, Director of the UCL CREST, said: "Using Darwin's theory of evolution, we can breed exceptionally demanding test cases. We create a virtual world in which car testing scenarios have to compete with each other. In this world of test scenarios, test case has to be demanding in order to survive. This survival of the fittest has the effect of breeding especially interesting test cases to use in testing the automotive software."
Professor Harman's team at UCL have been working with Dr. Joachim Wegener of Berner and Mattner, Berlin, to perfect these evolutionary testing techniques, funded by the Engineering and Physical Sciences Research Council (EPSRC) in the UK and the European Union.
Dr. Wegener said: "Testing is one of the most costly activities within the development of embedded systems. Search-based testing techniques have the potential to fully automate testing of embedded systems. This will allow significant cost savings and increased product quality. Our cooperation with UCL is aimed at further developing these technologies for a regular usage in industrial practice."