detailed computer controlled agent behavoir
hey...
I'm looking to start an AI based project, i've never done any AI programming what-so-ever, as i usually just concentrate on the graphics side...but i've been reading some articles and stuff, and AI is really starting to take my fancy.
What i'd really like to work towards achieving, is developing some system where I could simulate detailed behavoirs of computer controlled agents, which seems very life like. For example, in games...instead of AI controlled characters just walking around on a set path, waiting to be interupted by a user controlled character in order to give some meaning to their existance...they could have an aim to their life, moving around the game environment(an urban city centre for example) trying to achieve tasks...react to other agents in a similar way they would user controlled players.
I've started doing a little research...Craig Reynolds work on flocking was quite interesting...i've read a little bit about neural networks, but dont fully understand their role in AI yet.
Am i on the right line in any way lol???
if anyone has any input whatsoever i would be really grateful...any links to any papers you may have found helpful when programming AI would be awsome.
What are the current technologies actually used in games today?
as i say...absolutly any help anyone could provide, i would appreciate very much.
thanks in advance
Quote: Original post by ov3r_dr1v3
hey...
I'm looking to start an AI based project, i've never done any AI programming what-so-ever, as i usually just concentrate on the graphics side...but i've been reading some articles and stuff, and AI is really starting to take my fancy.
What i'd really like to work towards achieving, is developing some system where I could simulate detailed behavoirs of computer controlled agents, which seems very life like. For example, in games...instead of AI controlled characters just walking around on a set path, waiting to be interupted by a user controlled character in order to give some meaning to their existance...they could have an aim to their life, moving around the game environment(an urban city centre for example) trying to achieve tasks...react to other agents in a similar way they would user controlled players.
I've started doing a little research...Craig Reynolds work on flocking was quite interesting...i've read a little bit about neural networks, but dont fully understand their role in AI yet.
Am i on the right line in any way lol???
if anyone has any input whatsoever i would be really grateful...any links to any papers you may have found helpful when programming AI would be awsome.
What are the current technologies actually used in games today?
as i say...absolutly any help anyone could provide, i would appreciate very much.
thanks in advance
As a friendly advice, start by the beggining. AI is not simple nor easy, and the traps are numerous. Start with things like Finite State Machines and steering behavior (of which flocking is an example). Get the book AI Game Programming by Example and read it. And please, for the sake of humanity, please forget about Neural Networks until you have more experience. The last thing the world need is *yet* another guy trying to solve every AI problem with a NN.
hey buddy thanks for the reply...didnt realise i'd touch a nerve saying the dreaded 'NN' word, lol. but thanks for the advice...i looked up that book you suggested and it seems to be well respected and reviews seems to be all good so i've actually purchased it form amazon...so i can't wait for that one to arrive.
where does everyone usually start when begining AI? I was thinking, the first project could be a simple pacman game with pathfinding...does anyone have any suggestions? then where do i go from there?
also...jsut out of interest at the moment, what type of AI is implemented in games such as GTA?
where does everyone usually start when begining AI? I was thinking, the first project could be a simple pacman game with pathfinding...does anyone have any suggestions? then where do i go from there?
also...jsut out of interest at the moment, what type of AI is implemented in games such as GTA?
Quote: Original post by ov3r_dr1v3
hey buddy thanks for the reply...didnt realise i'd touch a nerve saying the dreaded 'NN' word, lol. but thanks for the advice...i looked up that book you suggested and it seems to be well respected and reviews seems to be all good so i've actually purchased it form amazon...so i can't wait for that one to arrive.
where does everyone usually start when begining AI? I was thinking, the first project could be a simple pacman game with pathfinding...does anyone have any suggestions? then where do i go from there?
also...jsut out of interest at the moment, what type of AI is implemented in games such as GTA?
haha, yeah, to me, NN are to the AI forum what MMORPG are to the game design forum ;)
That book is the best begginner book in most people's opinion, especially if you are learning outside of college. The author is a member of these forums, by the way.
A pacman game is a great way to practice your AI skills. In fact, I have once been asked to make a Pacman ghosts AI as a test when applying for an AI post at a major studio. Try to implement the original ghost AI (google for a description), then try to add new behaviors like coordination or player path predicton.
as for GTA... no idea. For the characters or the cars?
both really...when i was reading about flokcing it said something about the possibility of the idea being implemented in traffic systems. Although, to be honest the impression i get whne playing games like that is that all the card are just on a fixed path going round and round, if their crashed into, they'd react bit just work towards getting back on that fixed path...
it seems the same for the characters...i don't know if it is, but just seems loads of if else statements...a finite state machine?
im looking forward ot getting that book, and thats ace if the author is a memebr of the forums! when i get that ill try to work through it, then hopefully be able to build a pacman game with as you say, both the classic AI and then something extra maybe, lol.
what other sort of beginner projects are there?
it seems the same for the characters...i don't know if it is, but just seems loads of if else statements...a finite state machine?
im looking forward ot getting that book, and thats ace if the author is a memebr of the forums! when i get that ill try to work through it, then hopefully be able to build a pacman game with as you say, both the classic AI and then something extra maybe, lol.
what other sort of beginner projects are there?
Quote: what other sort of beginner projects are there?
I'm not sure if this is truly beginner stuff or not, but I was inspired recently by Dwarf Fortress to make a general purpose path finding demo, using the popular A* algorithm.
I ended up with a demo I was quite proud of, where you can mark walls on a grid and a start and goal square, then hit GO and watch it generate a path. It's quite satisfying to see the results, and it's all quite natural which makes debugging easy as you step through the operation.
A* frequently comes up on this forum, so you should be able to get any help with it. There are also loads of ways to get it done, so it wouldn't have to be very efficient straight away.
I learned pretty much all I needed to know from this article, found right here on gamedev.net. Once I'd picked up the terms I needed, then google helped out with the gaps.
Anyway, I'd go for pacman first - I skipped all that and did pathfinding because I had the inspiration driving me and a clear goal. I might do flocking next, that seems like fun.
Good luck!
thanks buddy that sounds very interesting...i've been looking up a few things about A* nad had a read through the article you posted, and what ill try to do aswell is write simple progra which will show the algorithm working its way through a maze or something like that from start to goal. Thta soudns like it could be pretty kool.
I wanna wait for this book to arrive, amazon told me 2-3 weeks lol
I wanna wait for this book to arrive, amazon told me 2-3 weeks lol
Quote: Original post by ov3r_dr1v3
For example, in games...instead of AI controlled characters just walking around on a set path, waiting to be interupted by a user controlled character in order to give some meaning to their existance...
I like this idea. Imagine for instance, Governer NPCs that rule their nations. Then one of them falls in love with a neighboring realm's daughter. But he disapproves of the union. They elope, and a war is started. Motives and purpose that drive the happenings in the realm.
But I also see a hazard. The player might become perceived as pest, a bull in a china shop wrecking havoc in a delicate and intricately woven tale. Such a perspective could cause the development of methods to minimize the player's impact in the universe, making them into an audience.
Real world governments would approve of publishing that perspective (powerlessness to the people), but it's not much fun to play. So some consideration ought to be placed up front about what fun a person who plays the game will have.
Some needs:
Need to express oneself
Need to be in control
Need to belong
--"I'm not at home right now, but" = lights on, but no ones home
You want to look int task driven AI -- where a system called a Planner looks at an objects objectives/goals and selects tasks that lead to achieving those goals.
The interesting part is deciding the priority and resources to apply to competing tasks. As the situation changes due to the objects actions and external forces the goals shift in importance and tasks are reevaluated and new priorities are set and acted upon. Finite State Machines (FSM) are usually used fo action specific solutions to tasks (and usually are hierarchical with sub tasks being defined from higher level tasks) -- breaking a problem into simpler steps.
For something like simulating a human, which has complex social associations and a wide range of goals/activities, it can take quite alot of behavior scripting to simulate even a rudimentary character.
The interesting part is deciding the priority and resources to apply to competing tasks. As the situation changes due to the objects actions and external forces the goals shift in importance and tasks are reevaluated and new priorities are set and acted upon. Finite State Machines (FSM) are usually used fo action specific solutions to tasks (and usually are hierarchical with sub tasks being defined from higher level tasks) -- breaking a problem into simpler steps.
For something like simulating a human, which has complex social associations and a wide range of goals/activities, it can take quite alot of behavior scripting to simulate even a rudimentary character.
--------------------------------------------[size="1"]Ratings are Opinion, not Fact
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement