Monday, 25 May 2015

Fractal AI at full power

This weekend I was fixing the fractal version of the AI to avoid those "silly decisions" that the first, alpha version, was clearly doing now and then.

The exponential growth of the fractals was badly defined, so after some days of thinking about it, I changed it and... voila! I was right this time!

Now the fractal version of the emotional AI really shines, making the linear one to pale in comparation.

Have a look at some fractal rockects dealing with 30 falling asteroids, all having uncertaintly on theirs positions, so the scenario is comparable to the one used in the last post.

Have a look at the third one for instance: It avoids the first falling rocks, then take land in an aparently risky place and, before being destroyed by the next rocks, it jumps away safely... the funny part is that it really knew in advance that it was going to have time to fill up the fuel tank and fly away before being hitted! With 20 seconds to think ahead, the AI can take such decisions seamlesly... and 20 seconds is only a chosen number, there is no problem with thinking 5 or 20 minutes ahead.

Well, to be honest, there is a small problem about thinking 5 minutes ahead: actual version is quite ineficient (this video took more than 24 hours to geenrate in a very modest PC, using a single CPU thread btw) so before I delve into those interesting possibilities, I will need to slim down the proccess a little bit.

The good news is that, once the fractal algortihm is as reliable as it is now, I can move into presenting more complex scenarios to the AI, and watch it solve them. My next milestone will be about new goals to build a really complex behaviour, in particular, I plan to simulate a honey bees hive with bugs that try to stole the honey.

Bees are supposed to work together in keeping the hive healty, so they will react as a group to avoid the bugs from getting honey... commiting suicide if it helps in this "transcendental" goal.

No comments:

Post a Comment