Jump to content

  • Log In with Google      Sign In   
  • Create Account


AI Creation


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
22 replies to this topic

#1 Xanather   Members   -  Reputation: 703

Like
0Likes
Like

Posted 25 September 2012 - 05:16 AM

Just a quick question, Ive never really looked at the AI subject in depth. But say I wish to develop a NPC (AI) in a game. All I need to do it program the AI to just react to the changing world right?

i.e.

at x time of day walk faster
jump up nearby cliff, but only allowed to jump every x seconds...

etc...

There really is nothing else behind AI I'm assuming? I'm just making sure xD

All replies are appreciated, thanks :)

Sponsor:

#2 SimonForsman   Crossbones+   -  Reputation: 5770

Like
2Likes
Like

Posted 25 September 2012 - 05:39 AM

There can be alot more behind it if you want. (It all depends on how complex you need/want the decisionmaking and behaviours to be)
I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

#3 Xanather   Members   -  Reputation: 703

Like
0Likes
Like

Posted 25 September 2012 - 07:49 AM

OK, I don't know why I thought there would be anything else behind this. Thanks :D

#4 Álvaro   Crossbones+   -  Reputation: 11881

Like
3Likes
Like

Posted 25 September 2012 - 09:54 AM

Just search the web for `game AI' and you'll find entire books, conferences and websites dedicated to the subject.

#5 IADaveMark   Moderators   -  Reputation: 2309

Like
3Likes
Like

Posted 25 September 2012 - 06:33 PM

To quote Brian Reynolds (GDC 2004), "rand(1..3) is a perfectly valid starting AI". Obviously it can get tons more complicated than that. Theoretically, however, all AI tends to boil down to looking at the world state and applying rules to it. Most of the differences in AI architectures is the organization of how you process those rules.
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!"

#6 Xanather   Members   -  Reputation: 703

Like
0Likes
Like

Posted 25 September 2012 - 10:29 PM

yeah, ok, thats what I thought : D. Thanks :)

To quote Brian Reynolds (GDC 2004), "rand(1..3) is a perfectly valid starting AI". Obviously it can get tons more complicated than that. Theoretically, however, all AI tends to boil down to looking at the world state and applying rules to it. Most of the differences in AI architectures is the organization of how you process those rules.


Makes perfect sense, that's what I thought as well. Thanks :)

#7 wodinoneeye   Members   -  Reputation: 666

Like
1Likes
Like

Posted 02 October 2012 - 08:30 AM

To quote Brian Reynolds (GDC 2004), "rand(1..3) is a perfectly valid starting AI". Obviously it can get tons more complicated than that. Theoretically, however, all AI tends to boil down to looking at the world state and applying rules to it. Most of the differences in AI architectures is the organization of how you process those rules.


I would hope the description of (real) AI would include having the program do observations and write its own rules (adapt/learn).

Temporlal and Uncertainty aspects could come under 'looking at the world' -- as would cognizance (interpretting the world).

But I dont think 'applying rules to it' really covers that important AI feature of learning (building the logic the decisions are based on).

Even if its forced to build rules offline (because of the cost of doing that process) and even being guided significantly by a human-being at points.

Few of the things we see are really AI (in games) - mostly its just hand crafted rote logic and AI-useful tools.

Edited by wodinoneeye, 02 October 2012 - 08:35 AM.

--------------------------------------------Ratings are Opinion, not Fact

#8 IADaveMark   Moderators   -  Reputation: 2309

Like
3Likes
Like

Posted 02 October 2012 - 05:12 PM

But "learning" is not what game AI does. And it REALLY gets you in trouble from a design standpoint when it is attempted.

(Do I really need to keep typing "game AI" every time instead of "AI" on a message board devoted, by its very nature, to "games"?)

Edited by IADaveMark, 02 October 2012 - 05:12 PM.

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!"

#9 Telcontar   Members   -  Reputation: 864

Like
0Likes
Like

Posted 03 October 2012 - 01:05 PM

But "learning" is not what game AI does. And it REALLY gets you in trouble from a design standpoint when it is attempted.

(Do I really need to keep typing "game AI" every time instead of "AI" on a message board devoted, by its very nature, to "games"?)


No. No you do not.

Too, while I understand your point that "learning" can be troublesome - is it not at its heart simply giving the AI a different state to react to?

I Create Games to Help Tell Stories | Writing Blog


#10 wodinoneeye   Members   -  Reputation: 666

Like
0Likes
Like

Posted 03 October 2012 - 10:16 PM

"
But "learning" is not what game AI does. And it REALLY gets you in trouble from a design standpoint when it is attempted.
(Do I really need to keep typing "game AI" every time instead of "AI" on a message board devoted, by its very nature, to "games"?)
"

That is why I mentioned offline -- though we ARE getting sufficient processing resources to do some (more than a little) 'adaption' in-game.

One of the problem with AI is the the huge amount of logic it takes as it gets better (more 'intelligent') and a big part of an AI task is building that logic.

Having the system's "learning" of that logic efficient has to happen -- some by observing player behavior - mimicing, others by building the logic dircted by a human (which becomes the choke point no matter how fast the computer gets).

Even 'emergent behavior' (touted by so much AI literature) has to be applied selectively by a human (emergent behavior that is wrong is worse than none).

Ditto for NN which is still built up and culled by a human hand (training sets and controlled learning cycles and disposing of mis-grown NN)

What is the A* search without the hand tailored heuristics which can grow horrendously as the game complexity grows. The further step of a meta search to create the proper heuristics is closer to "AI" (and yes, that will probably have to happen 'out-of-game' for a long time yet)

----


You might also have to come up with a new term "Intelligence Simulation" to really express the truth about most 'Game AI'

Edited by wodinoneeye, 03 October 2012 - 10:29 PM.

--------------------------------------------Ratings are Opinion, not Fact

#11 wodinoneeye   Members   -  Reputation: 666

Like
-1Likes
Like

Posted 03 October 2012 - 10:26 PM

Too, while I understand your point that "learning" can be troublesome - is it not at its heart simply giving the AI a different state to react to?


It is actually shaping the 'reaction' to the game state (also a big area of AI is interpretting the game state first before then decide what to do about it)

Handling more recognized game states - to recognize what is important about the situation so a proper decision can be made for THAT situation...
--------------------------------------------Ratings are Opinion, not Fact

#12 Arthur Souza   Members   -  Reputation: 1416

Like
4Likes
Like

Posted 04 October 2012 - 01:55 PM

The point is simply that real Artificial Intelligence is not successful, in general, in providing a satisfying behavior for agents in games, thus what is created is usually just a simulation of intelligence. Game AI does not aim to create a real imitation of intelligence that can actually learn and take over the world, but to provide a fun and slightly challenging experience for the player.

Game AI is focused on the player experience, not on academic relevance.

Edited by Arthur Souza, 04 October 2012 - 10:28 PM.

A.

Lotus - Action RPG In development http://www.gamedev.n...die-rpg-engine/ |
Personal blog In Portuguese: lotuzgames.wordpress.com |


#13 wodinoneeye   Members   -  Reputation: 666

Like
-1Likes
Like

Posted 05 October 2012 - 07:36 PM

The point is simply that real Artificial Intelligence is not successful, in general, in providing a satisfying behavior for agents in games, thus what is created is usually just a simulation of intelligence. Game AI does not aim to create a real imitation of intelligence that can actually learn and take over the world, but to provide a fun and slightly challenging experience for the player.

Game AI is focused on the player experience, not on academic relevance.



Why even have a forum for 'AI' then if there is no need? Plenty of online scripting 'tricks' already to do everything needed, right??

'Player Experience' is obviously not what it could be/aught to be, and pushing the 'smarts' ahead is being sought (to give us decent games more complicated than the typical 'blast-fest' we have been 'in general' stuck with).

To do that we have to move closer to 'real' AI, and lately we have started to have the processing resources to do so (lack of that was the old excuse).

The new excuse - its too complicated/too difficult/too long to build the logic... (as Ive repeated - if the 'learning' isnt in-game, it can still be used for the development phase to build the volumes of static logic required for a mere increment of 'simulation of intelligence' ).

Part of 'real' AI IS using a 'learning process', which CAN be implemented by clever programming to overcome the above hurdle (sufficiently).

---

Problem - games where NPC usually stand like mannekins oblivious to actions you take or do something irrelevant because the NPCs werent programmed to handle you doing THAT (programming cost too much, proper testing is prohibitive, etc.. too much trouble to bother with more than the most expected player actions in a game situation) .

Problem - games that run EXACTLY the same way every time because they are heavily choreographed - the situations cannot be mutatable (to give additional replay value) because it breaks the specific behavior logic matching each heavily choreographed situation. Similarly, the number of 'situations' in any particular game is getting fewer because of the cost is so high for each one.


Solution - would be a tool to assist building of situation analysis logic, which would run thru real game situations to build generalized behavior logic. Presenting the user with real game situations and asking what factors were important for the decision and then what an appropriate (re)action was proper to the state of those factors. After a while, similarity of situation would have the system telling you what it estimates the important factors to be and its proposed reaction -- for the user to confirm or make corrections (to elaborate the logic for a special/additional cases). A possible extension of that is 'observing the player' and noting the actions taken in normal play (to build cases for the 'proper reactions').

That 'learning system' could speed up the logic building by many (many) times (cost $$$ effective over hand coding and testing ). That general logic would be applied to all game 'scene' situations (eliminating alot/most of scene custom logic - at some point the built-up general logic has a cross-over point of cost effeciveness over using custom built logic). Something like that is already done with common NPC scripting logic, but this goes beyond in versatility (and the scripting is expensively hand crafted).

An associated tool would be traversing the existing 'factoring/reacting' logic to see where gaps exist, to guide the 'situation selection' to have sufficent coverage of possible cases. (the system suggests combinations it needs after it has noted what 'factors' are in the game.)

Another tool helps create those in-game 'situations' - some kind of arena composer to easily/quickly drop desired game elements together to test (including avatar state). Optimizing this part of the process speeds things up (finding 'likely' situations can be thru extracting them from recordings of players playing the game).

All of these tools would be designed to take 'hints' to start off the knowledge base, with the system becoming more and more automated as the data becomes mature, to the point where the user is tweaking' the logic when needed.

The Game's development would have the NPCs logic changing and growing as the entire process moves forward (in complicated games NPCs react to each other when they react to the players actions...) you would have iterations to evolve all the NPCs game logic as each one got better. (The system also builds test cases that can short-cut rebuilding the logic when other developers suddenly decide to drasticly change the game mechanic logic)

A further complexity is NPCs 'cooperating' against the player or assisting the player (a real source of belief breaking mal-behavior in current games). It would be a real improvement to have these cases better handled (via alot of the neccessary logic...).

----

SO the 'AI' (or rather intelligence simulation) comes in as not just automating the process but 'intelligently' automating the logic building process to assist the user. Another aspect is that many games have VERY similar game mechanics so that the 'knowledge base' for subsequent games may only take 'tweaking' and thus reusing a bulk of the logic (and/or the general test cases used).

---------------------------

I looked at AI for a project years ago and came to the conclusion that creating the AI system (including planners and FSM based solvers) itself is trivial compared to the effort to build up the behavior logic for a decently complex game. The human component of the process is the choke point, and any real improvement in 'Game AI' will have to address that problem.

Edited by wodinoneeye, 05 October 2012 - 08:15 PM.

--------------------------------------------Ratings are Opinion, not Fact

#14 IADaveMark   Moderators   -  Reputation: 2309

Like
4Likes
Like

Posted 05 October 2012 - 10:21 PM

Why even have a forum for 'AI' then if there is no need? Plenty of online scripting 'tricks' already to do everything needed, right??


Because the entire game industry refers to the creation of behavior -- whatever the mechanism used -- as "artificial intelligence". Furthermore, whoever created this particular forum when GDNet was created, decided to actually USE that term in the sense that, again, the entire game industry uses -- "artificial intelligence" -- for conversations regarding the creation of behavior. I suppose they didn't think that they had to be pedantic and call it:

"artificial intelligence that is really more various ways of deciding what completely contrived and canned actions a game agent should take that is, in no way, actually artificially intelligent in the way that non-game people think of the term just in case those non-game people wander in and somehow manage to assume that this game artificial intelligence forum is not about games."

... because that's just too long of a title for a message board.
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!"

#15 IADaveMark   Moderators   -  Reputation: 2309

Like
0Likes
Like

Posted 05 October 2012 - 10:30 PM

This much is very correct.

I looked at AI for a project years ago and came to the conclusion that creating the AI system (including planners and FSM based solvers) itself is trivial compared to the effort to build up the behavior logic for a decently complex game.


However, this is not entirely so...

The human component of the process is the choke point, and any real improvement in 'Game AI' will have to address that problem.


The choke point is usually the knowledge base that is built into the world (the input side) and the asset creation pipeline (animation, voice, etc.) on the output side. THAT's where we run into a lot of our roadblocks. Speaking specifically about the human element of AI creation, however, there seems to be an inherent contradiction in something you point out. Part of that "human effort" is tuning and tweaking the behavior... not so much to make it "look right", but rather to make it match what designers want. This is often not something that can be determined ahead of time, nor is it something that is static.

The problem with automatic generation models such as learning-based AI is that, if your designer wants to change something, they can't simply do so. In any number of decision architectures, making a minor change to a behavior is as simple as a parameter tweak and a re-run. Seriously a few minutes worth of work...

The other issue is that game designers (and often players) don't WANT their AI to change, improve, etc.. They want it exactly the way they want it... and nothing more. Making a similar statement about a film, for example, would be laughable. "The characters in the film will continue to fine tune their performance, ever learning better and better ways to play their roles." -- No... I want this guy to look like a bumbling idiot here. I don't want him to improve.

Again, as has been stated earlier... player experience.
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!"

#16 wodinoneeye   Members   -  Reputation: 666

Like
-1Likes
Like

Posted 07 October 2012 - 02:32 PM

The current cost chokepoints of the ENTIRE game production may not stay the same in the future - bleak if they do as we are stuck in a Plateau of Lameness ™ or even a downward spiral as handhelds/$1.99 Apps steal more and more of the 'dumb' end games.

---

"Part of that "human effort" is tuning and tweaking the behavior... not so much to make it "look right", but rather to make it match what designers want"

Correct game mechanics (including the graphics) is a seperate problem. If its not done right, then no matter what the NPCs do it wont be right. Improving efficiency of that process is a seperate problem.

Beyond that, you still have the same problem - NPCs to act/react right, behave right (beyond glitzy special effects and the needed animations being available/applied - once the game mechanics work right then NPCs use of the available mechanics is the problem - and ought to be a bigger/more enabling part of the game). A developer has to make the NPC do the right thing (goal would be to react correctly to whatever the player can do).

Generating assets that look right is a different problem -- so much a problem (now) that there often isnt much money left over for better 'AI'. Someday the asset problem will be handled better (cheaper) and then we will be back to what I am talking about right now.

It is going to take a while for game companies to maybe take enough risk to use a system like I propose and maybe the 'asset creation' task can be significantly streamlined by better tools/process also. (They WILL sometime soon be splitting hairs to improve the graphics/sound anyway) Eventually there will be enough cost improvement so that the AI can get a bigger cut-of-the-pie -- an component which seems to be lagging so far.

---

"This is often not something that can be determined ahead of time, nor is it something that is static"

Hence the developer working WITH the AI whenever the game itself gels enough to get productive work out of creating the AI logic. You are working in generally used code here - you fix it one time and not in some multitude of places in a mass of custom scripts. Some basic stuff (logic creation) may be doable early and some may have to wait til the final tweaks (or major redo surgery) is completed. Common behaviors should be doable from the start and elaborated on later (thats actually the natuaral process with systems like this).

And that same problem exists with custom scripting - maybe moreso. Redo/Patching work done with AI assisted behavior development, may have its efficiency comparably sped up as for the task of the original creation.

---

"They want it exactly the way they want it."

A self fulfilling prophecy then for dumbed-down/stagnant games when the players never see anything better to compare with the current AI quality -- to KNOW they might want something better.

Also 'better' (as many article have said) isnt neccessarily 'smarter' but instead 'more interesting'. Actually playing a 'dumb' NPC that is believably dumb takes as much AI 'smarts' as acting in any other 'believable' fashion.

They may be making the worlds more complicated with more things for the players to do and the NPCs have to likewise manipulate those things(and/or react to them). How much more likely they will do it wrong and NOT be believable (no matter what low esteem a player has) if the AI cant match the new combinatorics of the situations complexity??? (at some point the combinatorics will exceed the "custom script it" paradigm.)

---

Or will players just always want (and pay for) the same type of simple mindless shooting gallery games (but with more glitz-tastic irrelevant effects)? We have lots of those already - why make any new ones (*sarc-on* oh but the 'new' ones have 3 ounces more glitz and make the game you bought last year look totaly lame and useless - at least thats what the trailers and sycophant critics keep saying -- and it must be true... *sarc-off*)

Im sure the game companies hope so, but that doesnt really help us players get better games....

--

Makes me wonder when the equivalent of 'computer publishing' will come about to cut the expenses for game production so that someone will risk giving the games significantly better AI logic (and need the AI assisted development and maybe drasticly increase the in-game AI too)
--------------------------------------------Ratings are Opinion, not Fact

#17 Arthur Souza   Members   -  Reputation: 1416

Like
0Likes
Like

Posted 07 October 2012 - 03:26 PM

So, your definition of better games is to have a bunch of sandboxes in which the AI is real AI, and everyone else is completely retarded and doesnt understand that this is what games lack, right?

Game AI is about providing better experience to the players, and the current shitty state of Artificial Intelligence will provide nothing but frustration to players. You're not the only person in the world that has thought about that, really, put some thought into it. There is no awesome war fighting artificial intelligence, its not just about throwing money at it, why the hell do you think wars are still fought by human beings? Its not about you being the only person in the world to have this vision, is about being a viable way of improving player experience, and its not.

Edited by Arthur Souza, 07 October 2012 - 03:41 PM.

A.

Lotus - Action RPG In development http://www.gamedev.n...die-rpg-engine/ |
Personal blog In Portuguese: lotuzgames.wordpress.com |


#18 wodinoneeye   Members   -  Reputation: 666

Like
0Likes
Like

Posted 07 October 2012 - 03:41 PM

So, your definition of better games is to have a bunch of sandboxes in which the AI is real AI, and everyone else is completely retarded and doesnt understand that this is what games lack, right?




If (with improved AI) the game plot still drives the NPCs with the same motives they 'precan' their ever move for now (current games with lots of hand made custom scripting) , and leave the player to be more creative in handling the situation (instead of being driven through it like a cow by a cattle prod, not being allowed (VERY OBVIOUSLY) to take even one step to the right or the left) --- THAT is so bad ???

Not exactly a 'sandbox' is it? (IS what YOU want a cattle-chute, right?)

You can still consult your 'strategy guide' to tell you how to get thru it - it might have a bit of trouble giving you a verbatum step-by-step in my kind of game though.

Also the 'real AI' as you refer to it isnt 'real AI' - just better logic that can handle what the player does more adaquately (might even be smart enough to steer the player back to the plotline when neccessary - just not as bluntly as a "You Cant Do That" message or an invisible wall you run into if you 'take one step to the right or to the left'.


As for "everyone else is completely... " -- maybe you dont realize that people here seek to make BETTER games (better AI techniques being one of the ways). There are lots of other ways but those arent what THIS section of the Forum is about.

Maybe you might read my description of the AI assisted development system that could make improving some game AI much easier -- to give us those better games.
--------------------------------------------Ratings are Opinion, not Fact

#19 wodinoneeye   Members   -  Reputation: 666

Like
0Likes
Like

Posted 07 October 2012 - 04:15 PM

Game AI is about providing better experience to the players, and the current shitty state of Artificial Intelligence will provide nothing but frustration to players. You're not the only person in the world that has thought about that, really, put some thought into it. There is no awesome war fighting artificial intelligence, its not just about throwing money at it, why the hell do you think wars are still fought by human beings? Its not about you being the only person in the world to have this vision, is about being a viable way of improving player experience, and its not.


Better experience is seeing something do the right thing in a game versus do something that doesnt fit the game ina any way shape of form ?? Better AI does that.

Bad state of AI - can change - thats part of what this forum is about.

"You're not the only person in the world .." Never said I was, and Ive put alot of thought into where things SHOULD be heading instead of trying to think up excuses as to why it cant.

"There is no awesome war fighting artificial intelligence..." Yes there is, but its used by the military in simulation - lots of money spent to do it. But as a long time wargamer friend of mine said -- most computer gamers dont think 'military' -- so that kind of game/logic isnt what most crack-monkey players the companies pander to even want or could appreciate -- its TOO real.

"do you think wars are still fought by human beings" -- google 'drones'


"Its not about you being... " ..... never claimed I was - and maybe you DONT realize that alot of the game improvements arent 'a brick in the face' obvious to the player. A game working realistically (as it hypothetically should with understandable/expected reactions to actions) wont be noticed, while a incomprehesible reaction is INSTANTLY noticed.
Its been so bad for so long that alot of players take the belief-breaking defects for granted as being "just the way these games are".


As Ive said before -- better AI logic can improve on that.

Ive also said elsewhere - "I am supposed to be fighting a battle in this game and I SHOULDNT be fighting the interface or the limited commands or dim NPC/opponent logic/game mechanics that is nothing like the real thing"


Im sure Im NOT the only one to ever say those things either.
--------------------------------------------Ratings are Opinion, not Fact

#20 CRYP7IK   Members   -  Reputation: 806

Like
1Likes
Like

Posted 07 October 2012 - 06:28 PM

Wod, have you ever tried to use AI that learns on it's own, even within very limited parameters they will usually fail spectacularly or in weird uncontrollable ways.

If you then add any tweaking you may as well have just done your own logic to get the behaviour you want much faster and with more control.

I have heard stories of completely learning AI in military, such as one that learnt to detect hidden tanks, they taught it using millions of pictures. Then when they took it out into the field to test it, it gave completely messed up readings: tanks were everywhere! After many programmers poured through many logs they found that the AI had actually picked up a specific shape in clouds that it thought was a tank, basically a waste of money.

You have a (completely) learning AI and vs it against my fully scripted AI and mine will beat yours the first million times while also acting more like an adult human.

Edited by CRYP7IK, 07 October 2012 - 06:30 PM.

To accomplish great things we must first dream, then visualize, then plan...believe... act! - Alfred A. Montapert
Gold Coast Studio Manager, Lead Programmer and IT Admin at Valhalla Studios Bifrost.




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