Advertisement

Applications for AI

Started by April 19, 2001 05:31 AM
15 comments, last by Scott 23 years, 7 months ago
I have quite a lot of experience with genetic algorithms and neural networks, but i have not yet seen them applied to games(with the exception of genteic Mastermind). Does anyone know of any software that has taken advantage of these? Or does anyone have any ideas that need developing. Scott Edited by - Scott on April 19, 2001 6:33:27 AM
quote: Original post by Scott

I have quite a lot of experience with genetic algorithms and neural networks, but i have not yet seen them applied to games(with the exception of genteic Mastermind). Does anyone know of any software that has taken advantage of these? Or does anyone have any ideas that need developing.

Scott

Edited by - Scott on April 19, 2001 6:33:27 AM


GAs have shipped with Cloak and Daggers and DNA and with the Creatures games, that I know of. I tested a GA for a vehicle routing optimization problem in Enemy Nations back in 1995, but found that my greedy algorithm did a good enough job of selecting trucks and a route sequence, at a fraction of the GA's processing time and resource (so EN shipped with the greedy algorithm and not the GA).

As to games which shipped with enabled ANNs, there have been claims ( BattleCruiser 3000 comes to mind) but nothing substantiated as far as I know. From my own use with ANNs, I found that they were really less useful (from a game's perspective) than Finite State Machines. Some voice recognition software has shipped with ANNs enabled.

Ferretman's Game AI page (www.gameai.com) has a list of current and classic games, reviewed from an AI perspective. You might want to check that out for more information.

Eric


Edited by - Geta on April 19, 2001 9:26:00 AM
Advertisement
ANNs shipped in combination with GAs in Creatures.

ld
No Excuses
quote: Original post by liquiddark

ANNs shipped in combination with GAs in Creatures.

ld


Were those ANNs in Creatures actually enabled (ie. where actuation values would be changed and connections reinforced, etc.) at shipping time? I know ANNs were used in development of the game, but everything I had read (up until now) suggested that the ANNs shipped were not enabled. If you have a pointer to a reference or inside development information that reveals this, then I would appreciate getting that from you.

Thanks,

Eric

My info comes third-hand: An issue of one of the semi-pop science mags had an article about the nets used in Creatures, and how they used the numerical equivalent of chemical agents to influence neuron learning. I''ll see if I can dig it up for you...if you want a head start, it was in either New Scientist, Sci. Am., or Discover (I love faculty reading rooms!). I''ll let you know.

ld
No Excuses
Found it:

New Scientist Story

ld
No Excuses
Advertisement
quote: Original post by liquiddark

Found it:

New Scientist Story

ld


Thanks. I had read this several years ago and forgotten it.

Unfortunately, it only proves how dismal the usage of ANNs has been in commercial games over the last decade (over 10,000 commercial computer games have been released in the last decade).

So, I guess this begs the question the original poster implied ... why have not GAs and ANNs been used much in computer game AI?

Eric



Edited by - Geta on April 20, 2001 8:46:05 PM
Because there''s a lot more experienced people that know to program FSMs than there are for GA and ANN. It''s that simple.

FSMs are a lot more manageable also. It''s very hard to feed ANN with examples that best suites a case. You have to be very experienced to build a ANN that is complex and efficient. FSM it''s very easy to know what to expect from them. You know you''ll reach the point where your FSM will be satisfying (even if it gets more complex as you add states/transitions). Moreover, you can generate your FSMs using some case tools which is a big plus.

Patrick Lafleur

System Engineer
Creation Objet Inc.
Efficiency is also a factor.

Plus, look at Galapagos. Used ANNs, but NOT to good effect, unfortunately.

On another note, I''m wondering whether it would be worthwhile to dev a JRobot using GA and/or ANN techniques, especially for speed estimation...thoughts welcome.

ld
No Excuses
quote: Original post by nosfy

Because there''s a lot more experienced people that know to program FSMs than there are for GA and ANN. It''s that simple.

FSMs are a lot more manageable also. It''s very hard to feed ANN with examples that best suites a case. You have to be very experienced to build a ANN that is complex and efficient. FSM it''s very easy to know what to expect from them. You know you''ll reach the point where your FSM will be satisfying (even if it gets more complex as you add states/transitions). Moreover, you can generate your FSMs using some case tools which is a big plus.

Patrick Lafleur

System Engineer
Creation Objet Inc.


While I agree with the points you make, I can''t help but to think that there is more to it that just a lack of experience. I know a number of VERY experienced computer game AI programers (myself included) who consistently ship games without using ANNs or GAs. It is not that these programmers don''t know about or understand how to use these techniques, (in fact most have already built ANNs and GAs in test beds and evaluated them in conjunction with the AI decision-making in games), but I think it is more a case of fitting the right tool to the job.

For instance, where is the advantage to using an ANN or GA to solve a pathfinding problem? Or other search type decisions (finding the best place to build a factory in a base, or locating the best cover spot during a firefight, or figuring out the best spell to cast during an encounter).

I could see using a GA in a "route finding" problem, and in fact I tested a GA for a RTS to solve this very problem and it worked very well, albeit incredibly slower than a greedy algorithm which did not work as well but did work well enough. Likewise, GAs and ANNs seem to find usage in "creature" software toys, and IMO rightly so.

Also, I could see applying an ANN to recogize punch/move/kick patterns in a fighting game. In fact, I''m surprised this usage has not been talked about more.

However, for most jobs, it appears to me that FSMs, rules, fuzzy logic and scripts seem to deliver more predictable performance (just ask any producer if that is important) with faster debugging and sufficient flexibility.

So in essence, my 2 cents worth is that other techniques seem to do the jobs better, for the most general part, than ANNs and GAs with respect to computer game AI needs, and that''s why we haven''t seen more usage of them.

Eric

This topic is closed to new replies.

Advertisement