Archived

This topic is now archived and is closed to further replies.

Gilzu

Terms of AI

Recommended Posts

Gilzu    122
Following the debate in not a few threads here, what do you define as an AI? Recently when i finished my basic AI model for my RTS game and told collagues from here, they understood that i was meaning pathfinding and all other things. I know my post will upset some people, but Isnt AI what we call the Computer opponent? the one that has to think what move to do? so i did some digging up and tried to find an answer to the question "so what does it belong to?" so far Ive encountered the actual terms whic should be reffered to, only i'm not sure about all of them search algorithms - pathfinding (its actually A*, BFS, DFS) SI (synthetic Inteligence) - Closed Rules of behavior, Unit base logic (units that u controls, when attacked, they attack back without u telling them, also when enemy gets near) or computer personality that doest evoulve. AI - NN's, Genetic algorithems, computer actullay larns and tries new responces Gil p.s. i'm not saying by this that questions about pathfinding and SI's shouldnt find their place here, on the contrary, i believe that they SHOULD be here cause they are linked to this subject. i'm just irritated about miscatagorizing things.
Gil Zussman http://www.gilzu.com Edited by - GilZu on December 12, 2001 4:00:02 PM

Share this post


Link to post
Share on other sites
Mark_C    122
Well AI in general is something artificial that can learn. However, as a game developement term it has a different definition.

I suppose you could have an algorithms forum if you wanted AI and those type of things seperated.

Share this post


Link to post
Share on other sites
Timkin    864
Just a quick response to this:

Many people acknowledge that there is a difference between Game-AI and AI as the term is used in academia/research. In this forum we generally accept that when we say AI, we are referring to Game-AI as opposed to ''that other'' AI, simply because this is a game development forum.

How do we define Game-AI. Well, like ''real'' AI its boundaries are blurred. It basically covers all of the techniques that go into the creation of the computer opponent. Be that pathfinding or other search, planning & decision making, learning, etc. There is most definitely an overlap between this type of ''AI'' and AI as it is defined in the classic sense (which is actually not very well defined).

In academic and research fields, there are basically two camps to the ''what is AI'' debate. Camp (1): AI is about making something intelligent (comparable perhaps to a humans level of cognition). Camp (2): AI is about investigating how to (and whether it is possible to) achieve certain ''intelligent faculties'' (be they the sorts of things listed above, or other things like emotions) through the use of computational models. Hopefully camp (2) researchers can better help us understand what intelligence is so that we can better understand ourselves.

Game-AI falls in close to camp (1) with the stipulation that Game-AI designers/programmers only need to make their creation LOOK intelligent to succeed. Thankfully/unfortunately most human players can very quickly tell the difference between something that looks intelligent and something that IS intelligent!

I hope that has helped a little with your understanding of what AI is in the context of games and what real AI is!

(Yes I''m biased one way... can you pick which way?)

Timkin

Share this post


Link to post
Share on other sites
Timkin    864
It''s not that one way (Game-AI or AI) is more logical than the other. Each has it''s own application. Game-AI is specifically intended to fool a game player into thinking it is competing against, or working with, an intelligent agent. This illusion only lasts a short time in games. (There is an argument that this is a desirable effect that publishers seek so that games only have a short shelf life and the player is ready for the "next big thing" in the gaming community!)

AI for non-game applications (and here I am talking applications based research as opposed to purely investigative research) is generally about producing ''intelligent'' behaviours in agents, or cognitive outcomes that we would expect from another intelligent being; be that human, simian, cetacean, delphinidae, etc. Such agents are either required to interact with humans, other machines or simply survive in a particular environment while performing complex tasks.

My own bias is that game-AI should not really be called AI. I''m a purest, probably because my background is in academia and industry based AI research. As to what game-AI should be called? Perhaps just game programming... but I suspect that many people would consider that what they do is more than mere programming (unfortunately that is generally not the case)!

*Timkin puts on his fire resistant suit*



Cheers,

Timkin

Share this post


Link to post
Share on other sites
Kylotan    9875
Some people relatively recently have started referring to computer enemies as "the AI" or "an AI". I think this is a misleading use of the term, as such enemies may not contain anything that even comes close towards being intelligence. I think that the most accurate meaning of the term ''artificial intelligence'' would be to refer to the code that decides what these opponents does, but not to refer to the opponents themselves. Coming from the RPG side of gaming, I tend to call individual computer opponents NPCs (short for Non-Player Characters). I don''t think AI has to mean that it learns or traverses a search tree or uses predicate logic or any of the other reasonably advanced concepts to be called AI, but these are concepts that map quite closely onto representing something approximating intelligence on a computer and thus usually go hand-in-hand.

[ MSVC Fixes | STL | SDL | Game AI | Sockets | C++ Faq Lite | Boost ]

Share this post


Link to post
Share on other sites
Gaiiden    5710
I always stick to the idea that you have to make the AI "look" intelligent (like Timkin''s been saying). Like for instance, you''d be surprised the amount of complex actions you can get out of simple FSMs. In fact, game designers are only just starting to look at neural networks and genetic algorithms.

The main reason Game AI has gone down a different path than academic Ai is that in the earlier times (mainly before the GPU was introduced) there weren''t a lot of cycles available to the AI programmers to do complex stuff - in fact back then there was no such thing as an AI programmer; that in itself is a new term. So because of the limited cycles programmers had to hack together AI to make it look intelligent. Game AI is starting to become more and more mainstream as more and more resources are allocated for it.

_________________________________________________________________

Drew Sikora
A.K.A. Gaiiden

ICQ #: 70449988
AOLIM: DarkPylat

Blade Edge Software
Staff Member, GDNet
Public Relations, Game Institute

3-time Contributing author, Game Design Methods , Charles River Media (coming GDC 2002)
Online column - Design Corner at Pixelate

IGDC - the International Game Developers Chat! [irc.safemalloc.com #igdc]
NJ IGDA Chapter - NJ developers unite!! [Chapter Home | Chapter Forum]

Share this post


Link to post
Share on other sites
Ferretman    276
quote:
Original post by Gaiiden
I always stick to the idea that you have to make the AI "look" intelligent (like Timkin''s been saying). Like for instance, you''d be surprised the amount of complex actions you can get out of simple FSMs. In fact, game designers are only just starting to look at neural networks and genetic algorithms.



I agree completely, though I''m not sure that that many developers are actually looking at NNs or GAs rigt now. They''re harder to debug, not always predictable, a devil to explain to your producer, and don''t integrate all that well into any scripting engine that I know of. The FSM and FuSM will be with us for a long, long time to come. A game as seemingly complex as The Sims is proof of that.

quote:

The main reason Game AI has gone down a different path than academic Ai is that in the earlier times (mainly before the GPU was introduced) there weren''t a lot of cycles available to the AI programmers to do complex stuff - in fact back then there was no such thing as an AI programmer; that in itself is a new term. So because of the limited cycles programmers had to hack together AI to make it look intelligent. Game AI is starting to become more and more mainstream as more and more resources are allocated for it.



While I agree this has definitely been a factor, I think it more boils down to game AI simply being more results oriented than academic pursuits. Academia is interested in results, yes, but they have infinite runtime (for hte most part), can explore lots of ideas over the course of a three-year study, and can generally focus on a highly specific "piece" of the AI puzzle. Game developers get 12 months to put something together, and oh by the way the graphics engine won''t be ready until the 5th month and you only get 5% of the CPU budget. There are some big differences in what the AIs are being built to do.




Ferretman

ferretman@gameai.com
www.gameai.com

From the High Mountains of Colorado

Share this post


Link to post
Share on other sites
Gaiiden    5710
Good points Ferretman. Most of the info I had for that post was gleaned from a Gamasutra GDC 2000 report on Game AI, it said a lot of developers were start to look towards GAs and NNs now, but haven''t started really using them yet. I''m just sorta beginning to look into AI, I think that''s what i''ll be doing professionally.

_________________________________________________________________

Drew Sikora
A.K.A. Gaiiden

ICQ #: 70449988
AOLIM: DarkPylat

Blade Edge Software
Staff Member, GDNet
Public Relations, Game Institute

3-time Contributing author, Game Design Methods , Charles River Media (coming GDC 2002)
Online column - Design Corner at Pixelate

NJ IGDA Chapter - NJ developers unite!! [Chapter Home | Chapter Forum]

Share this post


Link to post
Share on other sites
Nurgle    269
quote:
Original post by Ferretman
I agree completely, though I''m not sure that that many developers are actually looking at NNs or GAs rigt now.



Except Derek Smart.... *giggle*

quote:

They''re harder to debug, not always predictable, a devil to explain to your producer, and don''t integrate all that well into any scripting engine that I know of. The FSM and FuSM will be with us for a long, long time to come. A game as seemingly complex as The Sims is proof of that.



I spoke with Chris Kinglsey about this once (He''s the guy who runs Rebellion, the people who made Alien vs Predator), and that''s the exact same reasoning he used. It''s a good one, but...

You could, in theory, why the scripting AI to pre-code certain behaviours, and the system learns when each behaviour is appropriate or A Bad Thing (tm).

For example, imagine you have some quake bots that have a number of predetermined behaviour, and a method for tracking the success of each behaviour (NN or something like it). If you debug each scriptlet indivudually, and make sure that none of them are capable of contracting each other (say, one for running around like a madman and one for staying still), it shouldn''t be that much of a problem.

Nurgle

Share this post


Link to post
Share on other sites
Argus    118
hmm it seems to me that intelligence of any sort is in the eye of the beholder.

There are a limited range of actions in most games, so a FSM could duplicate human-like play to a great extent. A human opponent would find no easy way to differentiate between the two, making it unreasonable for them to call one intelligent and the other not.

So I''d be inclined to call anything that I mentally assigned intentions to in a game an intelligent object, making AI the code directing its behaviour.

Share this post


Link to post
Share on other sites