Diversify was an EU FP7 project (2013-2016), that aimed at leveraging diversity, to improve software systems. An inter-disciplinary effort, one of our partners was the ECOBIO group from the Université de Rennes 1. The intent is that knowledge, concepts, and techniques flow in a two-way stream, between ecology and computer science. The full list of partners is as follows:
TCD worked, along with INRIA and SINTEF, to automatically insert diversity into software. There are several levels at which a software system can be characterized:
- Source code level
- Algorithm Diversity 1
- Architectural level
- Ecosystem level (one piece of software in relation to others)
At each of these levels, our perspectives and concerns are different, and so are the basic units that can be manipulated. At TCD, we were focussed on the change in system, induced due to algorithmic diversity1. That is, can we predict the effect on a system, produced solely due to the presence of a diversity of algorithms? What does it mean to have a “diversity of algorithms” anyway? If diversity is better (or worse), can we increase (or decrease) this diversity, in an automated manner? These are the questions that we seek to answer, in this project.
SmartHopper
The Diversify project also uses a smart-mobility test-bed to experiment with, for all of the diversification techniques mentioned above, i.e., SmartHopper. SmartHopper is derived from the open-source routing project, GraphHopper Library, by the lovely folk at GraphHopper
We’ve made a fair few modifications to it, to enable both, experimentation with diversification techniques, as well as allow sensor information to be utilized on top of OpenStreetMaps plus routing. For more details, look at the SmartHopper Least Noise Routing page