Advertisement

Algorithmic Ecology: Machine Learning AI engine

Started by August 28, 2014 08:47 PM
-1 comments, last by Algorithmic Ecology 10 years, 2 months ago

Hello gamedev.net! This is my first post here, so I apologize if this is not going to the correct forum or such.

First of all, I am an Engineer by trade so my background is more in robotics and computation than games, so please forgive me for anything I say that may come off as naive.

In the past few years there has been a lot of cool work on artificial life simulators and examples of Genetic Algorithms creating interesting AI behaviors. Most of these can be found on Youtube (The "Guppies" Neural Network Project, fighting genetic algorithms, GAs used for learning locomotion, etc), which is where I originally became interested in the subject. This lead me to develop the AE "Environment" in OpenGL, which is the star of the video that I have recently released about the project.

I've named my software architecture "Algorithmic Ecology". The main idea in AE is that genetic programming can be combined with some creative Artificial Neural Network (ANN) algorithms to create an ecosystem of bots that perform functions without any explicit programming whatsoever. This means that they can search for food, reproduce, run from predators, discern between something edible and something dangerous, etc and learn how to do this completely on their own and without human intervention (at the controlling level, at least). I'm happy to say that this objective has been met, and I think these guys are a lot more fun to watch than typical AI bots because each develops their own unique personality and they can be unpredictable.

I'm adding a link for my first video on the current version of the program, which was completed earlier this week. I'm not sure if embedding works here (any help on this?).The video is located at

Anyway, while developing AE it occured to me that the training architecture could in principle be made portable and applied to game designs, in effect allowing game developers to train their own AI with little knowledge of how the algorithms work through the use of an API or external libraries. The idea here would be that games can then be developed with unique and more humanlike bots, and the only thing the developer would need to do is know the desired end behavior of the AI.

So, that being said, I am planning on packaging the engine in a portable format and proving the concept by creating something like a prototype "soccer/football" game in which the AI autonomously develops things like teamwork and planning strategies on top of just reacting to the environment. But before that, I'm here to gauge interest in the project as a utility and fish for any comments or concerns that can come from real developers. While the site and first video are public, I haven't attempted to spread it around yet mostly because I want to catch any mistakes or oversights first. So, any comments and suggestions are appreciated!

AE tentative web site/log: https://sites.google.com/site/algorithmicecology/

Thank you for reading/watching!

This topic is closed to new replies.

Advertisement