Topographic Products of Experts applied to a Motocross Simulation and Simulation Stabilisation Benoit Chaperot, Colin Fyfe School of ComputingThe University of PaisleyPaisley, PA1 2BE, SCOTLAND.email@example.com firstname.lastname@example.org
Motocross game and advanced artificial intelligence techniques • The motocross game offers a good environment to experiment with advanced artificial intelligence techniques. • The motocross game can also strongly benefit from good AI; good AI can enrich the player experience.
TOPOGRAPGHIC PRODUCTS OF EXPERTS 1/3 • A topology preserving mapping, similar to Kohonen’s Self Organizing map. Points which are mapped close to one another share some common feature while points which are mapped far from one another do not share this feature.
TOPOGRAPGHIC PRODUCTS OF EXPERTS 2/3 • K (2 dimensional) latent points, t1, t2, …, tK. • To allow local and non-linear modelling, latent points are mapped through a set of M basis functions. • The output of these functions are then mapped by a set of weights into data space. • Data Space dimension D.
TOPOGRAPGHIC PRODUCTS OF EXPERTS 3/3 • Each latent point takes responsibility: where: is the Euclidean distance between the data point and the projection of the latent point • Training achieved by modifying only the weights:
Topographic Products of Experts and the Motocross Game • Data of dimension D: • is the number of inputs; the inputs are the state or situation of the bike, i.e. position, orientation and velocity of the bike relative to the track, and information about the terrain. In previous work, these were the inputs to supervised Artificial Neural Networks. • is the number of outputs; the outputs are the decisions made according to the state or situation of the bike, i.e. accelerate or brake, turn left or right, lean forward or backward.
Comparison with Kohonen’s SOM • ToPoE AI is performing slightly better than the Kohonen AI. • Kohonen SOM is a quantisation method; it does not interpolate between projections of latent points into data space. ToPoE does interpolate. • ToPoE AI is more processing intensive than Kohonen SOM.
Comparison with Multi-Layered Perceptron ANN • ToPoE AI is not performing as well as the MLP AI. • MLP networks can make the difference between important and not so important inputs; the two topology-preserving methods cannot do. • ToPoE AI is more processing intensive than MLP AI.
Change of Development Environment • Visual Studio 6 to Visual Studio 2005. • Allows us to be easily up to date and compatible with other libraries. • Easier to share files and projects with other researchers. • Problems: • Small changes in language. • New compilers and libraries; the recompiled program crashed at first execution.
Stabilisation: Gyroscopic Forces 1/2 • Original ODE implementation: • Some torque is applied each frame, the angular energy increases, rotating objects gain angular velocity and sometimes explode.
Stabilisation: Gyroscopic Forces 2/2 • New Implementation, based on conservation of angular momentum: • Rotating objects do not explode anymore.
Stabilisation: Floating Point Numbers • Some variables become NAN (Not A Number) every now and then; game crashes. • Debugging by insertion of macros into the code: • When assertion fails, we look up the flow of execution, we add more checks and repeat the process many times to get closer and closer to the source of the problem until we can identify it. • Usually division by zero or wrong parameters passed to Math functions.
Stabilisation: Memory • Game allocates more and more memory till it finally crashes. • Use of tools such as Visual Leak Detector to identify the problem. • Problem inside Direct3D library !
Conclusion • Experiments with ToPoE proved that ToPoE performs better than the Kohonen SOM at controlling motorbikes in the motocross simulation. Both topology preserving mapping techniques are outperformed by MLP networks. • The game is a very good platform to experiment with AI and evolution techniques; however it requires a lot of human work to maintain and update in relation to other tools and libraries.
ESANN 2008 • European Symposium on Artificial Neural Networks. Advances in Computational Intelligence and Learning. Bruges (Belgium) 23 - 25 April 2008 • Special Session: Computational Intelligence in Computer Games