AI Tutorial to Come!

Whether you're a newbie or an experienced programmer, any questions, help, or just talk of any language will be welcomed here.

Moderator: Coders of Rage

Post Reply
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

AI Tutorial to Come!

Post by avansc »

INDEX

Chapter 1: Fundamental AI Technologies

1 Context

1.1 Structure of an AI System
  • 1.1.1 Sensing the World
    1.1.2 Memory
    1.1.3 Analysis/Reasoning Core
    1.1.4 Action/Output System
1.2 Specific Technologies
  • 1.2.1 Finite State Machines
    1.2.2 Rule Systems
    1.2.3 Planning and Problem Solving
    1.2.4 Biology-Inspired AI
1.3 In Closing

Chapter 2 : Action-Oriented AI

2.1 Object Tracking
  • 2.1.1 Eye Contact : 2D Hemiplane Test
    2.1.2 3D Version : Semispaces
2.2 Chasing
  • 2.2.1 Chase 2D : Constant Speed
    2.2.2 Predictive Chasing
2.3 Evasion
2.4 Patrolling
2.5 Hiding and Taking cover
2.6 Real-World Targeting
2.7 Putting It All Together
  • 2.7.1 Parallel Automata
    2.7.2 AI Synchronization
2.8 In Closing
  • 2.8.1 Platform Games
    2.8.2 Shooters
    2.8.3 Fighting Games
    2.8.4 Racing Games
Chapter 3 : Tactical AI

3.1 Tactical Thinking Explained
  • 3.1.1 Path Finding
    3.1.2 Group Dynamics
3.2 Military Analysis : Influence Maps
  • 3.2.1 Data Structure
    3.2.2 Some Useful Tests
3.3 Representing Tactics
3.4 In Closing

... to be continued ...
Last edited by avansc on Sat Nov 08, 2008 9:23 pm, edited 1 time in total.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
StealthAsimov
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 35
Joined: Sun Nov 02, 2008 10:07 am

Re: AI Tutorial to Come!

Post by StealthAsimov »

Cool beans, I will look forward to it :)
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Chapter 1: Fundamental AI Technologies [1. Context]

Post by avansc »

Chapter 1: Fundamental AI Technologies : 1 Context

"I not only use all the brains that i have, but all that i can borrow."
- Woodrow Wilson

An interesting artificial intelligence system is a major component of any successful game.
AI makes games challenging and addictive, and thus generates a large portion of the gameplay value.
AI is a science with more that 50 years of history, this means that there are very well known methods
that cover a wide range of scenarios and goals. in this chapter we will examine some of these methods
and see how we can apply them to accomplish our goals and needs.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Chapter 1: Fundamental AI Technologies [1.1.1 Sensing the Wo

Post by avansc »

Chapter 1: Fundamental AI Technologies [1.1.1 Sensing the World]

All AI systems need to be aware of their surroundings so they can use that information in the reasoning/analysis phase.
What they sense and how much depends on the type of game you are making.

lets look at one example, lets say quake. any individual enemy needs to know:
  • - where the player is and where he is looking
    - what the geometry of the surroundings are
    - and sometimes what weapon its using and what weapon the player is using.
lets look at another example, lets say age of empires or generally any RTS
  • - what is the balance of power in each sub area of the map.
    - how much of each resources do i have
    - what is the breakdown of unit types : infantry. cavalry, and so on/
    - what is my status in terms of the technology tree.
    - what is the geometry of the game world.
note : a major part of ai consist of path finding, thats why we always have to be aware of the world geometry.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
trufun202
Game Developer
Game Developer
Posts: 1105
Joined: Sun Sep 21, 2008 12:27 am
Location: Dallas, TX
Contact:

Re: AI Tutorial to Come!

Post by trufun202 »

Schweet. AI is one of many things I haven't implemented in Golvellius yet. I look forward to this thread being completed.
-Chris

YouTube | Twitter | Rad Raygun

“REAL ARTISTS SHIP” - Steve Jobs
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
Posts: 10294
Joined: Thu May 20, 2004 2:04 pm
Current Project: Elysian Shadows
Favorite Gaming Platforms: Dreamcast, SNES, NES
Programming Language of Choice: C/++
Location: Studio Vorbis, AL
Contact:

Re: AI Tutorial to Come!

Post by Falco Girgis »

Ditto.
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Chapter 1: Fundamental AI Technologies [1.1.2 Memory]

Post by avansc »

sorting AI data is often complex because the concepts beign stored are not staight forward.
in an individual level AI, this weill be less of a problem. we can store pointes and orientations and use numeric values to depict the state the Ai is in. if the character is walking; the state equals one; if he is tunning, the state equals 2, and so on.
now, how do we store abstract information.

to be continued... gotta run.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
M_D_K
Chaos Rift Demigod
Chaos Rift Demigod
Posts: 1087
Joined: Tue Oct 28, 2008 10:33 am
Favorite Gaming Platforms: PC
Programming Language of Choice: C/++
Location: UK

Re: AI Tutorial to Come!

Post by M_D_K »

trufun202 wrote:Schweet. AI is one of many things I haven't implemented in Golvellius yet. I look forward to this thread being completed.
Same here.
Gyro Sheen wrote:you pour their inventory onto my life
IRC wrote: <sparda> The routine had a stack overflow, sorry.
<sparda> Apparently the stack was full of shit.
User avatar
ismetteren
Chaos Rift Junior
Chaos Rift Junior
Posts: 276
Joined: Mon Jul 21, 2008 4:13 pm

Re: AI Tutorial to Come!

Post by ismetteren »

This is awsome :D
Image ImageImage Image
User avatar
Trask
ES Beta Backer
ES Beta Backer
Posts: 738
Joined: Wed Oct 29, 2008 8:17 pm
Current Project: Building a 2D Engine
Favorite Gaming Platforms: Sega Genesis and Xbox 360
Programming Language of Choice: C/C++
Location: Pittsburgh, PA
Contact:

Re: AI Tutorial to Come!

Post by Trask »

Awesome, I haven't had much time to dig into A.I., I can't wait to read this. Thanks for sharing the knowledge.
MarauderIIC wrote:You know those people that are like "CHECK IT OUT I just made Linux run on this piece of celery [or other random object]!!"? Yeah, that's Falco, but with ES.
Dear god, they actually ported ES to a piece of celery!
Martin Golding wrote: "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
User avatar
MarauderIIC
Respected Programmer
Respected Programmer
Posts: 3406
Joined: Sat Jul 10, 2004 3:05 pm
Location: Maryland, USA

Re: AI Tutorial to Come!

Post by MarauderIIC »

http://books.google.com/books?id=1hwR5g ... &ct=result

if you don't want to wait for the rest of his post. Google book probably not complete though since it's copyrighted.

You might also try some general searches on
Neural networks
Uninformed seaches
- Randomized search
- Hill-climbing
Heuristic searches
- 15-puzzle problem // Manhattan distance
- A* [A-star]
Adversarial search
- Minimax
- Alpha-beta pruning
Last edited by MarauderIIC on Tue Nov 11, 2008 2:02 pm, edited 4 times in total.
Reason: see sig
I realized the moment I fell into the fissure that the book would not be destroyed as I had planned.
Post Reply