Please enable JavaScript.
Coggle requires JavaScript to display documents.
Artificial Intelligence In Games (History of AI (1950s/60s - Arthur Samuel…
Artificial Intelligence In Games
Aritificial Intelligence: The theory and development of computer systems to perform tasks normally requiring human intelligence
Visual, perception, speech recognition, decision-making, translation and image processing
Game AI vs Academic AI
Game AI
Focus on creating convincing outputs
Strong reliance on heurstics "rule of thumb" - practise > theory
Cheating can be used to solve AI short-comings/ behaviour
AI ability enough for entertainment - not strong fit
Research AI
Focus on creating intelligent software
Machine learning, intelligenct actions, able to handle arbitrary data
Cheating is not possible in robotics (or isnt really needed)
Aim for strongest aI
History of AI
1950s/60s - Arthur Samuel writes a checkers AI that challenges respectable amateurs
1970s - First games with single-player mode emerge. Speed race (1974), Pursuit (1975), Pac-man (1980s) All including AI - pacman had ghosts with different AI personalities
First Queen game (1988) Blend of RPG (role playing game). Follow the AI leader
Herzog Zwei (1989) Real-time strategy genre (RTS). Involved path finding, inspired games like Warcraft, Une etc.
Doom (1993) 3D first person shooter. Real Time aI in a pixel based environment
Rise of the Robots (1994) was the groundbreaking game that adapted player styles and skill levels. 3D
Sims (2000) Agent-based simualtion, dynamically models emotional interactions and relationships
Black and white (2001) Involved decision trees and NN. Large AI creature which player need to teach by example. Rewards and punishment concepts used as well
Purpose of AI in games (NPC)
NPC = non player character
Right level of challenge - not too difficult/ easy
Right level of predictability - player will challenge NPC, too unpredictable and it may cause the damage of sense of realism
Players need variety (of AI personalities) to keep players them engaged
Player experience modeling:
Descerning the ability and emotional state of the player, tailor the game accordingly
Procedural content generation
Data mining on user behaviour
Game set-up enhanced NPC believability and exploring social rather than individual NPC behaviour
Searches
Depth-first vs Breath first
Decision trees
Circles = states arrows = choices
Can apply/ built for both player or AI
A decision can be stored/ scored by expected outcome allow algorithms to rank decision
Differences in Complexity
Noughts and crosses - simple tree
Tactical RPG game is very complex due to its variety of actio available and possible outcomes
Machine Learning
Why?
Ability to learn without being explicitly be programmed
Essential element for self-learning AI
Allows algorithms that can incorporate gameplay data - through attributes of the players
How
Collection of relevant data (Need to train the classifier). Outputs are affected by this
Reduce complexity of data - allowing analysis tractable
Cluster and categorise - find correlations between chosen moves and outcomes
Establish weighting algorithm which favours moves with a more favourable outcome
Basic machine learning techniques
K- means: k= ...., distance mean, centroids, convergance
Agent-based model: aims aims to simulate the actions and interactions of autonomous agents wit ha view to assess their effects on the system as a whole
Turn-based AI : Board based games - clash of clans, mine-..something. Involves - finding a favourable location, using best route, favourable activity
Path-finding: Generating a path form A to B, avoidng obstacles (PACMAN)
Navigation meshes: fixed meshes with straight interconnections
A* search: Exhaustive search mechanism
Real-time AI - NPC behaviour altered according to player move. May involve finding a favourable location, move using best route, favourable activity - classification, pathfinding, decision making and good performance
Cheating in AI
Why
Increase challenge level
Save development time
Player experience in diminished when cheating becomes clearly noticable
How
Connect additional data sources to AI entity- player moves, unrelated parts in the game
Make skill attributes of NPC, faster, more agile
Bypass constraints that players are subject to - resource limitations in strategy games