Saturday, 24 November 2018

Lecture Notes AI in Games

AHH

Algorithms - set of code that performs a simple task - simulate real world behaviour

Heuristics - the process of learning from past experiences or mistakes to produce a solution
 Four aspects of heurisitcs
Optimility - choosing the best choice
Completeness - finding all choices
Accuracy - how good is the solution
Execution - is the heurisitcs the best for finding a solution

Hacks - events in games that can ruin immersion and are generally unexpected
E.G - AI having information they shouldnt
       - Good hacks  - Cutscene that doesnt flow with the gameplay.
       - Bad hacks - Ai knowing exactly where the player is and finding them.

Hardware constraints - A more graphically intensive game will not run on lesser hardware.
E.G - PUBG mobile. less graphially impressive than pc because smartphones are not powerful enough. Try to keep same game if possible to keep player experience the same.
Bad player experience means less returning players, therefore less money.

Ai techniques

Boids flocking - Emulation of real world behaviour of organisms in groups - emergent behaviour
Aspects of Boid flocking
Separation - each boid has personal space to avoid hitting local boids
Allignment - each boid generally faces the same way when moving
Cohesion - individual boids move towards average position of local boids
E.G zombies in games that form hordes to hunt players. - Left 4 Dead.

 Pathfinding - How an AI gets from point A to point B

Pathfinding algorithms

A* Algorithms
- most widely used
- built into most game engines
- good balance between accuracy and speed

Dijkstra Algorithm
-finds shortest path between two points
- example of Dikstra is google maps

Cost driven
-tries to find balance between shortest route and cost to get there

Decision Making - All AI entities funtion from a decision tree

Decision tree - pre programmed behaviour with preset outcomes
-E.G is player nearby - yes, attack - , no - continue patrol

State machine - seperate states that control an AI character, only one state can be active at one time
-E.G [Patrol]->[Attack]->[Defend]->[Flee]->[Return to patrol]

Fuzzy Logic - being between two states
-E.G Status bars , Health , Stamina
-Rather than being 1 or 0 can be somewhere in between eg 1-10
-Health bar - 90% health is neither perfectly healthy or completely dead.

Startegy - using above techniques alonf with other AI to complete objectives - flanking and ambushes.

Learning techniques

No comments:

Post a Comment