As part of my master thesis I'm trying to find an approach to optimize CNN architectures. To be more accurate a architecture which is not too complex and able to run in real time on embedded devices. I've found the paper A Genetic Programming Approach to Designing Convolutional Neural Network Architectures and this repository is my implementation. In this approach it uses a special form of Genetic Programming, it is called Cartesian Genetic Programming.
A simple example what happens when the CGP algorithm is used. Each frame is a mutation of a gene and the corresponding CNN.