This project builds on the preliminary Neurocars research. In Neurocars we showed that we can get real time online learning for a feed forward multi-layer perceptron using a genetic algorithm and written in fairly naive C#. This project is to create a highly optimized and scalable population of networks of the same basic structure in C++ leveraging the symmetrical processing multiple data (SIMD) instructions available in a modern processor (x64). We will expose this high-performance AI engine to Unreal by way of a static blueprint library. we will test it be reimplementing the same car AI test we used in Unity3D.
Project Status
An initial implementation of the C++ code using NumCpp is complete. Initial measurements of execution time have shown it can process on input to output pass on a neural network with 10 input nodes, 3 layers of hidden nodes with 25 nodes per layer, and 10 output nodes in one-quarter of a millisecond with a variation of about one one-hundredth of a millisecond.
The UE static blueprint library for genetic evolution of parameters is up and running in an initial form. The Blueprint library for Feed Foward Multilayer Perceptrons is currently in development.