Jump to content

  • Log In with Google      Sign In   
  • Create Account


Finding RtNEAT tutorial/example code


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
12 replies to this topic

#1 Blessman11   Members   -  Reputation: 110

Like
0Likes
Like

Posted 30 April 2012 - 05:49 AM

Real time Neuroevolution of augmenting topologies (RtNEAT)

Where can I find a simple example of RtNEAT algorithms being applied?


Additional Information:
I'm interested in researching real time genetic algorithms and RtNeat has seemed to be the best one out there (at least the most promising) since its has been applied to a real game. Anyways so far, I've been doing some research merely looking at research papers, which has been all and good but understanding exactly how the algorithm is applied has proved to be a challenge.

Once I practically understand it, looking at its advantages and disadvantages, I was going to create to create a version of my own and then use it for my dissertation. Anyway from my final year research I wanted to find out why it had been so difficult/slow to get real time genetic algorithms working in games.

Sponsor:

#2 IADaveMark   Moderators   -  Reputation: 2401

Like
0Likes
Like

Posted 30 April 2012 - 06:56 AM

Here... About as much as I can help.

My question to you, however, is... what benefit do you see in using a GA in game?
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC

Professional consultant on game AI, mathematical modeling, simulation modeling
Co-advisor of the GDC AI Summit
Co-founder of the AI Game Programmers Guild
Author of the book, Behavioral Mathematics for Game AI

Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

#3 Blessman11   Members   -  Reputation: 110

Like
0Likes
Like

Posted 01 May 2012 - 05:04 AM

Here... About as much as I can help.

My question to you, however, is... what benefit do you see in using a GA in game?


Preventing further repetition since it has started to make the shooters particularly boring for me. I've learnt how to play against most shooter AI and it iritates me now. I've been wondering why AI characters aren't able to learnt like somebody you get to play online. Its just started to irritate me.

#4 IADaveMark   Moderators   -  Reputation: 2401

Like
0Likes
Like

Posted 01 May 2012 - 09:27 AM

There are actually lot of reasons why bots in shooters don't play like humans... but that is done for design reasons rather than technical ones. Additionally, using a GA or NN isn't going to get you better results... but rather more vanilla ones. The thing that makes human play more interesting is the unpredictability. All of that unpredictability gets washed out in a derived solution such as a GA or NN. What you have in the end is simply a single algorithm no different that some sort of rule-based system like a behavior tree, expert system, utility-based system, planner, etc. The only difference was how you arrived at that single solution. (And the major weakness being that you might not be able to meaningfully tweak it later since you might not really know what any of the results "mean".) Really, all you are doing is "hoping for the best".
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC

Professional consultant on game AI, mathematical modeling, simulation modeling
Co-advisor of the GDC AI Summit
Co-founder of the AI Game Programmers Guild
Author of the book, Behavioral Mathematics for Game AI

Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

#5 leopardpm   Members   -  Reputation: 148

Like
0Likes
Like

Posted 01 May 2012 - 08:04 PM

What you have in the end is simply a single algorithm no different that some sort of rule-based system like a behavior tree, expert system, utility-based system, planner, etc. The only difference was how you arrived at that single solution. (And the major weakness being that you might not be able to meaningfully tweak it later since you might not really know what any of the results "mean".) Really, all you are doing is "hoping for the best".


I understand your thoughts here, but isn't your book suggestive in its attempt to generate a variety of 'correct' (human-like) responses, with the variability (on the fringes) of some unpredictability mixed in (some controlled 'noise')?

Also... is there any way I can read/hear the interview with Dwarf Fortress guy without paying $57/quarter at AIgameDev.com- is there a 'per article' fee possibly?

Edited by leopardpm, 01 May 2012 - 09:11 PM.


#6 IADaveMark   Moderators   -  Reputation: 2401

Like
-1Likes
Like

Posted 01 May 2012 - 09:09 PM


What you have in the end is simply a single algorithm no different that some sort of rule-based system like a behavior tree, expert system, utility-based system, planner, etc. The only difference was how you arrived at that single solution. (And the major weakness being that you might not be able to meaningfully tweak it later since you might not really know what any of the results "mean".) Really, all you are doing is "hoping for the best".


I understand your thoughts here, but isn't your book suggestive in its attempt to generate a variety of 'correct' (human-like) responses, with the variability (on the fringes) of some unpredictability mixed in (some controlled 'noise')?


There's a difference between authoring a decision model and deriving one. While utility-based methods use math and formulas to craft decision models, each number and formula has a very specific role to play. If you want something to happen more or less often, you can change specific coefficients and weights in order to boost or cut its importance. Even the randomness factor in a utility-based model can be tweaked by changing the parameterized noise that you apply.

With a NN or GA, you certainly have a ton of numbers in the end, but they are all pretty vague -- especially in the NN field. If you want to tweak a behavior, you don't know which number will do what.
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC

Professional consultant on game AI, mathematical modeling, simulation modeling
Co-advisor of the GDC AI Summit
Co-founder of the AI Game Programmers Guild
Author of the book, Behavioral Mathematics for Game AI

Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

#7 EJH   Members   -  Reputation: 314

Like
2Likes
Like

Posted 02 May 2012 - 12:44 PM

Real time Neuroevolution of augmenting topologies (RtNEAT)

Where can I find a simple example of RtNEAT algorithms being applied?


Additional Information:
I'm interested in researching real time genetic algorithms and RtNeat has seemed to be the best one out there (at least the most promising) since its has been applied to a real game. Anyways so far, I've been doing some research merely looking at research papers, which has been all and good but understanding exactly how the algorithm is applied has proved to be a challenge.

Once I practically understand it, looking at its advantages and disadvantages, I was going to create to create a version of my own and then use it for my dissertation. Anyway from my final year research I wanted to find out why it had been so difficult/slow to get real time genetic algorithms working in games.


Have you already seen Ken Stanley's NEAT users page? It has a bunch of implementations in various languages and lots of applications:

http://www.cs.ucf.edu/~kstanley/neat.html

For game applications there are at least two that I know of that use rtNEAT or a variant:

Neuro Evolving Robotic Operatives (free game): http://nerogame.org/

Galactic Arms Race (will be on Steam soon): http://gar.eecs.ucf.edu/

If you have any questions that aren't answered on there, you can email Ken and he will most likely try to help you out.

#8 Blessman11   Members   -  Reputation: 110

Like
1Likes
Like

Posted 15 May 2012 - 06:55 AM

There are actually lot of reasons why bots in shooters don't play like humans... but that is done for design reasons rather than technical ones. Additionally, using a GA or NN isn't going to get you better results... but rather more vanilla ones. The thing that makes human play more interesting is the unpredictability. All of that unpredictability gets washed out in a derived solution such as a GA or NN. What you have in the end is simply a single algorithm no different that some sort of rule-based system like a behavior tree, expert system, utility-based system, planner, etc. The only difference was how you arrived at that single solution. (And the major weakness being that you might not be able to meaningfully tweak it later since you might not really know what any of the results "mean".) Really, all you are doing is "hoping for the best".


IADaveMark have got any research papers or books you written on the whole arguement of "rule based" vs NN/GA. It has just made my research proposal more interesting since I nolonger have to assume that GA or NN are the magic solution for everything.

#9 IADaveMark   Moderators   -  Reputation: 2401

Like
-1Likes
Like

Posted 15 May 2012 - 07:01 AM

I'm not sure why you would need a book or paper to analyze the fact that you can't easily tweak a "learned" algorithm without going back and retraining it. There are no well-labeled knobs to turn, no branch points to edit, no triggers to massage... it's a black box. You have to hope for the best.
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC

Professional consultant on game AI, mathematical modeling, simulation modeling
Co-advisor of the GDC AI Summit
Co-founder of the AI Game Programmers Guild
Author of the book, Behavioral Mathematics for Game AI

Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

#10 Blessman11   Members   -  Reputation: 110

Like
0Likes
Like

Posted 16 May 2012 - 08:23 AM

I'm not sure why you would need a book or paper to analyze the fact that you can't easily tweak a "learned" algorithm without going back and retraining it. There are no well-labeled knobs to turn, no branch points to edit, no triggers to massage... it's a black box. You have to hope for the best.


Its an academic thing, the marking scheme's tick boxes must be filled, else the lecturers give a lower mark.

Edited by Blessman11, 16 May 2012 - 08:24 AM.


#11 IADaveMark   Moderators   -  Reputation: 2401

Like
-1Likes
Like

Posted 16 May 2012 - 08:36 PM


I'm not sure why you would need a book or paper to analyze the fact that you can't easily tweak a "learned" algorithm without going back and retraining it. There are no well-labeled knobs to turn, no branch points to edit, no triggers to massage... it's a black box. You have to hope for the best.


Its an academic thing, the marking scheme's tick boxes must be filled, else the lecturers give a lower mark.

That's like needing to cite a book or paper to verify that your car will not run when it is out of gas.
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC

Professional consultant on game AI, mathematical modeling, simulation modeling
Co-advisor of the GDC AI Summit
Co-founder of the AI Game Programmers Guild
Author of the book, Behavioral Mathematics for Game AI

Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

#12 willh   Members   -  Reputation: 160

Like
1Likes
Like

Posted 18 May 2012 - 07:40 AM

"that's like needing to cite a paper to verify that your cr will not run when it's out of gas". LOL. Mind if I borrow that?

Dave, he wants an online learning algorithm. NNs are well suited to the task. It takes a trivial amount of time to train/retrain an ANN and the whole thing can be automated. You're always complaining that NNs have no use in games, and now this gentleman has a plan to use one with legitimate reasons.

Blessman: you can cite this website and the post. It is peer reviewed, as everything gets reviewed and commented on by people who have some experience working within the field. There is a video on YouTube of reinforcement learning being used to teach an opponent to play the game "golden spaceships". If you look you can find it-- it's not an ANN, but the idea is the same.

Dave makes a good point about the use of ML techniques in general. For video games they are almost never the right choice. Hand coded rules are easier to adjust to produce the desired behavior and most games require simple agents.





#13 IADaveMark   Moderators   -  Reputation: 2401

Like
-1Likes
Like

Posted 18 May 2012 - 06:50 PM

I wasn't saying don't use one. I was just pointing out the caveats.

What I was fascinated with is that he wanted a paper or source to support the notion that you can't edit them after the fact. If one doesn't know that, then one has no idea how they work in the first place. *shrug*
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC

Professional consultant on game AI, mathematical modeling, simulation modeling
Co-advisor of the GDC AI Summit
Co-founder of the AI Game Programmers Guild
Author of the book, Behavioral Mathematics for Game AI

Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS