Game Development Community

Neural Nets are learning!

by Craig Fortune · 02/25/2007 (4:23 pm) · 10 comments

Neural Nets are learning!

Last night I made a rather large breakthrough with my neural net work in TGE, they started to learn and evolve :) Alas it was nothing visibly exciting unless you get excited over raw output data... I did, lol. I made the nets' fitness dependant on their output, (they only had one output, the size of this output was added to their fitness everytime I updated them) so I was in essence training them to learn how to structure themselves to produce the highest output they could.

Within very few generations a topology that could produce 0.85~ (out of 1.0, so 85% of maximum) with the data I was inputting - which was the same all the time - had evolved and largely taken over the population. Given several more generations and it likely would have evolved and/or mutated up to near maximum. Thats a good thing btw ;)

STL and Torque suck at being friends... :(

On a less happy note, I'm still having problems with trying to get STL and TGE working together. Nothing I seem to try works properly - so I'm likely falling back to just trying to replace all STL stuff which is a pain and will likely delay me lots :(

Currently I can compile and link my project and run it... however I get a lot of user breakpoints thrown back and me (which I can continue through) and ultimately it always seems to be a problem with the end(); method on tVector's iterator :( I have tried using stl_fix and it seems almost as if it needs to be updated to work with VS 2005. *grr* (it gives errors on std::allocator - isn't this one of the very things its supposed to fix?!)


PS. As per usual find my full blog here: http://craigfortune.blogspot.com

Anyone done any work on this problem recently? PLEASE let me know :)

Animation

As a brief aside I'd like to recommend to anyone interested in animation to buy a copy of "The Animator's Survival Kit" by Richard Williams. I picked up a copy recently after hearing good things about it and it is possibly one of the most well put together books in the general art area that I've ever read. Its applicable to both traditional and computer, 2d and 3d animation. Its a complete and utter treat to read.

#1
02/25/2007 (4:45 pm)
Oh man, Animators Survival Kit is THE animation resource as far as Im concerned. Really, even if you have no desire at all to learn to animate, the "stories from the trenches" and his stuff about general artistic process are super interesting.
#2
02/25/2007 (4:49 pm)
On the 26th of Feb 2007, SkyNet was born - the most directly responsible human for that advent was Craig Fortune, a Garage Game member. On the 5th of March, 2015, John Conner sent back a lone terminator to eliminate Craig Fortune. As before, another human was sent back to stop this from happening...
Quote:There is no fate, but what we make.
www.drewfx.com/Torque/terminator.JPG
#3
02/25/2007 (4:56 pm)
PS. I've done a little STL - can you send me the offending code?
#4
02/25/2007 (6:21 pm)
Animators Survival Kit is one of the few books that is constantly open on my desk. Fantastic resource.

Fredrik S
#5
02/26/2007 (12:09 am)
lol Andy I was thinking the same thing. Sounds like a very interesting project though.
#6
02/26/2007 (12:43 am)
Nice one Craig, looking forward to the final demo!
#7
02/26/2007 (1:21 am)
@Craig: very exciting.

@Andy: LOL. Absolutely right.

@Adam: couldn't you make a Terminator model so Craig can test it ingame? 8-)
#8
02/26/2007 (2:16 am)
Good stuff Craig. Hopefully they're not just learning, but also learning useful stuff! (That's what I always found to be the big challenge with ANNs- scoping the decision parameters correctly).
#9
02/26/2007 (5:51 am)
@Andy

Currently the oddity I'm noticing is that iterator::end(); in tVector.h (wish I could give line numbers etc but I'm not at my PC at the moment) is highlighting itself as a preprocessor macro (I'm using Visual Assist with VS - hence the higlighting)

I can only presume that this is STL playing about causing this- especially when at the moment I'm having to disable the memory manager in Torque... trying the stl_fix and following the instructions on its resource page here on GG only serves to cause errors in stl_fix.h talking about std::allocator...
#10
02/26/2007 (5:31 pm)
Very interesting project. What algorithms are you using for learning?