SlideShare a Scribd company logo
1 of 94
Download to read offline
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PRACTICAL AI
IN GAMES
Renaldas Zioma
Unity Technologies
(INTRO LEVEL)
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
INTRO
• Why graphics programmer is talking about AI?
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NO AI IN GAMES!
• No “intelligence”
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NO AI IN GAMES!
• No “intelligence”
• This statement is 99% true
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NO AI IN GAMES!
• No “intelligence”
• This statement is 99% true
• Behaviors are predefined - game does not learn!
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NO AI IN GAMES!
• No “intelligence”
• This statement is 99% true
• Behaviors are predefined - game does not learn!
• … but going to change soon-ish
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
WHY?
• Hard!
 
Chess
• Average branching factor = 35
• Average depth = 80
• Search space = 1080.
Go
• Branching factor = 250
• Average depth = 150
• Search space = 10360
• Branching factor = 3050 to 30200 !!!
• Average Depth = ???
• Search space =
Starcraft
💣 💣 💣
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
AND NOT REALLY THE POINT!
• AI is not to “solve” your game
• Entertain player
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
DESIGN PRINCIPLES
• Fun - instead of “just hard”
• Competence
• Autonomy
• Relatedness
• Immersion
• Presence
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
• Responsive - because slow feels “stupid”
DESIGN PRINCIPLES
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
DESIGN PRINCIPLES
• Relatable - if player does not understand that NPC is “smart”, you just
wasted your time
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
DESIGN PRINCIPLES
• Fun - instead of “just hard”
• Responsive - slow feels “stupid”
• Relatable - if player does not understand that NPC is “smart”, you just
wasted your time
• Player should feel “smart” - not AI or you!
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
DESIGN PRINCIPLES
• Fun, Responsive, Relatable
• Player should feel “smart”
• AI is a tool for game designer!
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PERFORMANCE
• You have 3 ms for AI !!!
• Graphics, physics, audio - first, because crucial for immersion
• GPU does NOT do all graphics work!
• AI usually is time sliced - executed over several frames
1 second = 1000 ms
30 FPS = 1000 / 30 = ~33 ms
60 FPS = 1000 / 60 = ~16 ms
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
AI “STACK”
• Example from Robotics
• Autonomous Car Architecture
Navigation
Behavior Planner
Driver
Motion Planner
Trajectory Planner
2Hz
60Hz
10Hz
5Hz
1Hz
FinerscaleCoarserscale
Nicolas Meuleau
Unity Technologies
exApple, exNASA
Director of AI Research
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
AI “STACK”
• Games
Navigation
Animation controller
Trajectory, Steering
Behavior
2Hz
60Hz
10Hz
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NAVIGATION = PATHFINDING
• Grid
• Navigation Mesh (“NavMesh”)
• Waypoint Graph
Navigation
Animation controller
Trajectory
Behavior
2Hz
60Hz
10Hz
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
GRID
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NAVMESH
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
WAYPOINT GRAPH
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
GRID
• Pros
• easy
• strategy games
• Cons
• flat
• dense, takes memory
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NAVMESH
• Pros
• 3D
• average memory footprint
• many genres
• Cons
• hard to construct
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
WAYPOINT GRAPH
• Pros
• designer control
• low memory footprint
• Cons
• manual work
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COMMON PROBLEMS
• Static world
• dynamic obstacles are easier

to support with grid
• Actor size is predefined
• Fast moving actors with steering constraints
• wheeled vehicles
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COMMON SOLUTIONS
• Delegate solution to lower-level systems
• steering for dynamic obstacle avoidance
• Several data structures
• different data structures can co-exist
• several copies with different parameters
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
STEERING
Navigation
Animation controller
Trajectory, Steering
Behavior
2Hz
60Hz
10Hz
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
STEERING
• Path simplification
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
STEERING
• Path simplification
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
• Path simplification
• Dynamic object avoidance
STEERING
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
STEERING
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
BEHAVIOR
Navigation
Animation controller
Trajectory
Behavior
2Hz
60Hz
10Hz
• State Machine
• Behavior Tree
• Utility AI
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FINITE STATE MACHINE = FSM
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FINITE STATE MACHINE
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FINITE STATE MACHINE
public class AttackBehaviour : StateMachineBehaviour
{
public float power = 1.0f;
public GameObject particle;
private GameObject newParticle;
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
{
newParticle = Instantiate(particle, …
Rigidbody particlePhysicalBody = newParticle.GetComponent<Rigidbody>();
particlePhysicalBody.AddExplosionForce(power, animator.rootPosition, …
}
override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
{
Destroy(newParticle);
}
override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
{
Debug.Log(“Attacking every frame!!!");
}
// . . .
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FINITE STATE MACHINE
• Pros
• easy
• visual
• Cons
• complex behavior gets messy!
• Hierarchical FSM helps
• hardcoded decisions
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PACMAN
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PACMAN
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PACMAN
Navigation
Animation
Steering
Behavior
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PACMAN
• I felt it would be too stressful for a human […] to be continually surrounded and
hunted down. So I created the monsters’ invasions to come in waves. They’d attack
and then they’d retreat. As time went by they would regroup, attack, and disperse
again. It seemed more natural than having constant attack.
- Toru Iwatani, Pac-Man creator
• Just before ghosts turn a corner, their eyes move to point in the new direction of
movement
- Ghost Pshychology, www.webpacman.com
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PACMAN
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
• 追いかけ, oikake - “chaser”
• 待ち伏せ, machibuse -“ambusher”
• 気紛れ, kimagure - “moody”
• お惚け, otoboke - “feigning ignorance”
PACMAN
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
GHOST STATEMACHINE
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PACMAN
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
BEHAVIOR TREE = BT
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
BEHAVIOR TREE
• Selector
• Sequence
• Action
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
BEHAVIOR TREE
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
BEHAVIOR TREE
• Pros
• better at complexity than FSM
• used in many games: Halo, Bioshock, Crysis, Spore
• Cons
• large BT can get slow
• hardcoded decisions
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
UTILITY AI
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
UTILITY AI
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
UTILITY AI
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
UTILITY AI
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
UTILITY AI
• Pros
• can achieve “smarter” behavior than BT
• Killzone, Sims, Civilization
• Cons
• can be hard to design scorers and debug
• some loss of designer control
• still pretty hardcoded logic
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FSM / BT / UTILITY
HOW TO CHOOSE?
• Pick approach you are most comfortable with
• Pick the simplest tool that will make job done
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PLAN AHEAD
• FSM, BT, Utility AI - reactive
• only reacts to current situation
• no planning
• Deliberate AI
• plans ahead
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
INFLUENCE MAPS
• Add Behavior related
information to path planning
• Simple way to plan for
actions ahead
• piggy-back pathfinding code
• Better decisions
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
INFLUENCE MAPS
• Types of data:
• covers
• distance to enemies
• distance to power-ups
• heatmaps
• etc…
COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2016 @ UNITY TECHNOLOGIES
FUTURE
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FUTURE
• Intelligence in AI
• Bluffing
• Learning
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FUTURE
• More Planning ahead
• Machine Learning
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
PLANNING IN GAME AI
• Goal Oriented Action Planning
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
GOAP
• Games: F.E.A.R, S.T.A.L.K.E.R, Fallout 3, Just Cause 2
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
GOAP
• Pros
• better decisions
• emergent gameplay
• Cons
• performance! worse than NP-hard!
• loss of designer control
• so far didn’t became common approach
• maybe needs better tools
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
BIOLOGICAL BRAIN
• Consists of Neurons
• Ultra low power consumption
• Both DIGITAL and ANALOG!
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NEURON
• Can compute
• Can learn
• Can generate patterns
• Form networks - highly interconnected
• Very parallel - but single one is relatively slow
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NEURON
• Both digital and analog!
• Working principle includes 3 things at once:
• Electrical
• Bio-mechanical
• Chemical
• IMHO in the 21st century you must study some neuroscience!
DO IT!
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NEURON, APPROXIMATELY
• Sums up weighted inputs
• Makes binary decision
• Sends to connected neurons
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
HARDWARE
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
TPU
• Tensor Processing Unit
• Google
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
TPU
• Server running AlphaGO
• Won against Lee Sedol
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
FPGA
• Field Programmable Gate Array
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
DATA FLOW PROCESSORS
• Some prototypes - neuFlow
• Used for Convolutional Networks for vision
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NEUROMORPHIC CHIPS
• IBM TrueNorth
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
NEUROMORPHIC CHIPS
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
TRUE NORTH
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
CEREBRAL ORGANOIDS
• Madeline Lancaster, Cambridge MRC Lab
• since 2014
• Small artificially grown biological brains!
• ~4 million neurons
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
CEREBRAL ORGANOIDS
• Easier way to study and learn from real “intelligence”
• Eventually will be connected to computers
• biological AI co-processor
The Summer of Deep Learning
COPYRIGHT 2016 @ UNITY TECHNOLOGIES
BACK TO GAME AI
• Machine Learning is more like Intuition
• Planning is more like Reason
• Need both

More Related Content

What's hot

Game Design Fundamentals
Game Design FundamentalsGame Design Fundamentals
Game Design FundamentalsIntelligent_ly
 
A sample Lab report on a game.
A sample Lab report on a game. A sample Lab report on a game.
A sample Lab report on a game. Junayed Ahmed
 
The Lens of Intrinsic Skill Atoms: A Method for Gameful Design
The Lens of Intrinsic Skill Atoms: A Method for Gameful DesignThe Lens of Intrinsic Skill Atoms: A Method for Gameful Design
The Lens of Intrinsic Skill Atoms: A Method for Gameful DesignSebastian Deterding
 
Deep Learning A-Z™: Artificial Neural Networks (ANN) - The Neuron
Deep Learning A-Z™: Artificial Neural Networks (ANN) - The NeuronDeep Learning A-Z™: Artificial Neural Networks (ANN) - The Neuron
Deep Learning A-Z™: Artificial Neural Networks (ANN) - The NeuronKirill Eremenko
 
Artificial Intelligence PowerPoint Presentation Slide Template Complete Deck
Artificial Intelligence PowerPoint Presentation Slide Template Complete DeckArtificial Intelligence PowerPoint Presentation Slide Template Complete Deck
Artificial Intelligence PowerPoint Presentation Slide Template Complete DeckSlideTeam
 
AI Introduction for high school students
AI Introduction for high school studentsAI Introduction for high school students
AI Introduction for high school studentsMireaCartabbia
 
Adversarial search
Adversarial searchAdversarial search
Adversarial searchDheerendra k
 
Game Analytics & Machine Learning
Game Analytics & Machine LearningGame Analytics & Machine Learning
Game Analytics & Machine LearningBen Weber
 
Tic tac toe c++ project presentation
Tic tac toe c++ project presentationTic tac toe c++ project presentation
Tic tac toe c++ project presentationSaad Symbian
 
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...Edureka!
 
20 Game Ideas You Should Steal
20 Game Ideas You Should Steal20 Game Ideas You Should Steal
20 Game Ideas You Should StealStuart Dredge
 
Idle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing GamesIdle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing GamesKongregate
 
Using Large Language Models in 10 Lines of Code
Using Large Language Models in 10 Lines of CodeUsing Large Language Models in 10 Lines of Code
Using Large Language Models in 10 Lines of CodeGautier Marti
 
Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...
Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...
Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...SlideTeam
 
Game playing in artificial intelligent technique
Game playing in artificial intelligent technique Game playing in artificial intelligent technique
Game playing in artificial intelligent technique syeda zoya mehdi
 
Generative Adversarial Network (GAN)
Generative Adversarial Network (GAN)Generative Adversarial Network (GAN)
Generative Adversarial Network (GAN)Prakhar Rastogi
 
ppt on machine learning to deep learning (1).pptx
ppt on machine learning to deep learning (1).pptxppt on machine learning to deep learning (1).pptx
ppt on machine learning to deep learning (1).pptxAnweshaGarima
 

What's hot (20)

Game Design Fundamentals
Game Design FundamentalsGame Design Fundamentals
Game Design Fundamentals
 
A sample Lab report on a game.
A sample Lab report on a game. A sample Lab report on a game.
A sample Lab report on a game.
 
The Lens of Intrinsic Skill Atoms: A Method for Gameful Design
The Lens of Intrinsic Skill Atoms: A Method for Gameful DesignThe Lens of Intrinsic Skill Atoms: A Method for Gameful Design
The Lens of Intrinsic Skill Atoms: A Method for Gameful Design
 
Tic tac toe simple ai game
Tic tac toe simple ai gameTic tac toe simple ai game
Tic tac toe simple ai game
 
Deep Learning A-Z™: Artificial Neural Networks (ANN) - The Neuron
Deep Learning A-Z™: Artificial Neural Networks (ANN) - The NeuronDeep Learning A-Z™: Artificial Neural Networks (ANN) - The Neuron
Deep Learning A-Z™: Artificial Neural Networks (ANN) - The Neuron
 
Artificial Intelligence PowerPoint Presentation Slide Template Complete Deck
Artificial Intelligence PowerPoint Presentation Slide Template Complete DeckArtificial Intelligence PowerPoint Presentation Slide Template Complete Deck
Artificial Intelligence PowerPoint Presentation Slide Template Complete Deck
 
AI Introduction for high school students
AI Introduction for high school studentsAI Introduction for high school students
AI Introduction for high school students
 
Adversarial search
Adversarial searchAdversarial search
Adversarial search
 
Game Analytics & Machine Learning
Game Analytics & Machine LearningGame Analytics & Machine Learning
Game Analytics & Machine Learning
 
Tic tac toe c++ project presentation
Tic tac toe c++ project presentationTic tac toe c++ project presentation
Tic tac toe c++ project presentation
 
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
What is Artificial Intelligence | Artificial Intelligence Tutorial For Beginn...
 
AlphaGo and AlphaGo Zero
AlphaGo and AlphaGo ZeroAlphaGo and AlphaGo Zero
AlphaGo and AlphaGo Zero
 
20 Game Ideas You Should Steal
20 Game Ideas You Should Steal20 Game Ideas You Should Steal
20 Game Ideas You Should Steal
 
Unity 3D, A game engine
Unity 3D, A game engineUnity 3D, A game engine
Unity 3D, A game engine
 
Idle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing GamesIdle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing Games
 
Using Large Language Models in 10 Lines of Code
Using Large Language Models in 10 Lines of CodeUsing Large Language Models in 10 Lines of Code
Using Large Language Models in 10 Lines of Code
 
Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...
Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...
Reinforcement Learning In AI Powerpoint Presentation Slide Templates Complete...
 
Game playing in artificial intelligent technique
Game playing in artificial intelligent technique Game playing in artificial intelligent technique
Game playing in artificial intelligent technique
 
Generative Adversarial Network (GAN)
Generative Adversarial Network (GAN)Generative Adversarial Network (GAN)
Generative Adversarial Network (GAN)
 
ppt on machine learning to deep learning (1).pptx
ppt on machine learning to deep learning (1).pptxppt on machine learning to deep learning (1).pptx
ppt on machine learning to deep learning (1).pptx
 

Viewers also liked

Approaches to game AI overview
Approaches to game AI overviewApproaches to game AI overview
Approaches to game AI overviewIvan Dolgushin
 
Artificially Intelligent Design(er). The End of User Experience as we know it?
Artificially Intelligent Design(er). The End of User Experience as we know it?Artificially Intelligent Design(er). The End of User Experience as we know it?
Artificially Intelligent Design(er). The End of User Experience as we know it?Agnieszka Maria Walorska
 
Artificial Intelligence in games
Artificial Intelligence in gamesArtificial Intelligence in games
Artificial Intelligence in gamesDevGAMM Conference
 
Asynchronous Multiplayer on Mobile Network
Asynchronous Multiplayer on Mobile NetworkAsynchronous Multiplayer on Mobile Network
Asynchronous Multiplayer on Mobile NetworkIvan Dolgushin
 
Introduction to AI - Seventh Lecture
Introduction to AI - Seventh LectureIntroduction to AI - Seventh Lecture
Introduction to AI - Seventh LectureWouter Beek
 
Game design document template for serious games
Game design document template for serious gamesGame design document template for serious games
Game design document template for serious gamesAntoine Taly
 
Game Playing in Artificial Intelligence
Game Playing in Artificial IntelligenceGame Playing in Artificial Intelligence
Game Playing in Artificial Intelligencelordmwesh
 

Viewers also liked (8)

Approaches to game AI overview
Approaches to game AI overviewApproaches to game AI overview
Approaches to game AI overview
 
Artificially Intelligent Design(er). The End of User Experience as we know it?
Artificially Intelligent Design(er). The End of User Experience as we know it?Artificially Intelligent Design(er). The End of User Experience as we know it?
Artificially Intelligent Design(er). The End of User Experience as we know it?
 
Artificial Intelligence in games
Artificial Intelligence in gamesArtificial Intelligence in games
Artificial Intelligence in games
 
Asynchronous Multiplayer on Mobile Network
Asynchronous Multiplayer on Mobile NetworkAsynchronous Multiplayer on Mobile Network
Asynchronous Multiplayer on Mobile Network
 
Game Design Dokumentation und Projekt Management
Game Design Dokumentation und Projekt Management Game Design Dokumentation und Projekt Management
Game Design Dokumentation und Projekt Management
 
Introduction to AI - Seventh Lecture
Introduction to AI - Seventh LectureIntroduction to AI - Seventh Lecture
Introduction to AI - Seventh Lecture
 
Game design document template for serious games
Game design document template for serious gamesGame design document template for serious games
Game design document template for serious games
 
Game Playing in Artificial Intelligence
Game Playing in Artificial IntelligenceGame Playing in Artificial Intelligence
Game Playing in Artificial Intelligence
 

Similar to Practical AI in Games

Use of Artificial intelligence for chip design.pptx
Use of Artificial intelligence for chip design.pptxUse of Artificial intelligence for chip design.pptx
Use of Artificial intelligence for chip design.pptxowaisnaik2015
 
Practical Guide for Optimizing Unity on Mobiles
Practical Guide for Optimizing Unity on MobilesPractical Guide for Optimizing Unity on Mobiles
Practical Guide for Optimizing Unity on MobilesValentin Simonov
 
Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...
Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...
Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...Codemotion
 
Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...
Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...
Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...Codemotion
 
人類史上の変曲点
人類史上の変曲点人類史上の変曲点
人類史上の変曲点義高 福井
 
[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...
[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...
[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...CODE BLUE
 
Travel Hacking 101: The ROI of Hackathons
Travel Hacking 101: The ROI of HackathonsTravel Hacking 101: The ROI of Hackathons
Travel Hacking 101: The ROI of HackathonsClickslide
 
So You Want to Build a Snowman…But it is Summer
So You Want to Build a Snowman…But it is SummerSo You Want to Build a Snowman…But it is Summer
So You Want to Build a Snowman…But it is SummerIntel® Software
 
AT&T IoT Hackathon - Seattle
AT&T IoT Hackathon - SeattleAT&T IoT Hackathon - Seattle
AT&T IoT Hackathon - SeattleEd Donahue
 
Session 13-newsbyte
Session 13-newsbyteSession 13-newsbyte
Session 13-newsbyteTechnocratz
 
Microsoft IoT & Data OpenHack Zürich
Microsoft IoT & Data OpenHack ZürichMicrosoft IoT & Data OpenHack Zürich
Microsoft IoT & Data OpenHack ZürichSascha Corti
 
La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17
La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17
La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17Jorge Hidalgo
 
Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...
Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...
Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...Almog Koren
 
Use open source and rapid prototyping to put magic in magical products in IoT
Use open source and rapid prototyping to put magic in magical products in IoTUse open source and rapid prototyping to put magic in magical products in IoT
Use open source and rapid prototyping to put magic in magical products in IoTMoe Tanabian
 
Sense and Sensors - From Perception to Personality
Sense and Sensors - From Perception to PersonalitySense and Sensors - From Perception to Personality
Sense and Sensors - From Perception to PersonalityDATAVERSITY
 
Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019
Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019
Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019Patrizio Pelliccione
 
Accenture Greenlight Insights Conference November 1st 2016
Accenture Greenlight Insights Conference November 1st 2016Accenture Greenlight Insights Conference November 1st 2016
Accenture Greenlight Insights Conference November 1st 2016Sunny Webb
 
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)PivotalOpenSourceHub
 

Similar to Practical AI in Games (20)

Use of Artificial intelligence for chip design.pptx
Use of Artificial intelligence for chip design.pptxUse of Artificial intelligence for chip design.pptx
Use of Artificial intelligence for chip design.pptx
 
Practical Guide for Optimizing Unity on Mobiles
Practical Guide for Optimizing Unity on MobilesPractical Guide for Optimizing Unity on Mobiles
Practical Guide for Optimizing Unity on Mobiles
 
Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...
Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...
Adam Streck - Reinforcement Learning in Unity. Teach Your Monsters - Codemoti...
 
Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...
Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...
Adam Streck - Reinforcement Learning in Unity - Teach Your Monsters - Codemot...
 
人類史上の変曲点
人類史上の変曲点人類史上の変曲点
人類史上の変曲点
 
[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...
[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...
[CB21] MUSHIKAGO: IT and OT Automation Penetration testing Tool Using Game AI...
 
Travel Hacking 101: The ROI of Hackathons
Travel Hacking 101: The ROI of HackathonsTravel Hacking 101: The ROI of Hackathons
Travel Hacking 101: The ROI of Hackathons
 
So You Want to Build a Snowman…But it is Summer
So You Want to Build a Snowman…But it is SummerSo You Want to Build a Snowman…But it is Summer
So You Want to Build a Snowman…But it is Summer
 
AT&T IoT Hackathon - Seattle
AT&T IoT Hackathon - SeattleAT&T IoT Hackathon - Seattle
AT&T IoT Hackathon - Seattle
 
Session 13-newsbyte
Session 13-newsbyteSession 13-newsbyte
Session 13-newsbyte
 
Microsoft IoT & Data OpenHack Zürich
Microsoft IoT & Data OpenHack ZürichMicrosoft IoT & Data OpenHack Zürich
Microsoft IoT & Data OpenHack Zürich
 
La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17
La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17
La JVM y el Internet de las Cosas @ MálagaJUG 2016-11-17
 
Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...
Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...
Israel Mobile Summit 2012 - Going above and beyond the standards how to engag...
 
Use open source and rapid prototyping to put magic in magical products in IoT
Use open source and rapid prototyping to put magic in magical products in IoTUse open source and rapid prototyping to put magic in magical products in IoT
Use open source and rapid prototyping to put magic in magical products in IoT
 
Sense and Sensors - From Perception to Personality
Sense and Sensors - From Perception to PersonalitySense and Sensors - From Perception to Personality
Sense and Sensors - From Perception to Personality
 
Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019
Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019
Software Engineering for ML/AI, keynote at FAS*/ICAC/SASO 2019
 
Introduction to AI
Introduction to AIIntroduction to AI
Introduction to AI
 
Engineering Apps
Engineering AppsEngineering Apps
Engineering Apps
 
Accenture Greenlight Insights Conference November 1st 2016
Accenture Greenlight Insights Conference November 1st 2016Accenture Greenlight Insights Conference November 1st 2016
Accenture Greenlight Insights Conference November 1st 2016
 
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)
 

More from Renaldas Zioma

Overview of AI Startups in Lithuania
Overview of AI Startups in LithuaniaOverview of AI Startups in Lithuania
Overview of AI Startups in LithuaniaRenaldas Zioma
 
Trip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningTrip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningRenaldas Zioma
 
New Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine LearningNew Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine LearningRenaldas Zioma
 
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CGTHE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CGRenaldas Zioma
 
Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5Renaldas Zioma
 
FMX2013: Butterfly Effect
FMX2013: Butterfly EffectFMX2013: Butterfly Effect
FMX2013: Butterfly EffectRenaldas Zioma
 

More from Renaldas Zioma (7)

Overview of AI Startups in Lithuania
Overview of AI Startups in LithuaniaOverview of AI Startups in Lithuania
Overview of AI Startups in Lithuania
 
Trip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningTrip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine Learning
 
New Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine LearningNew Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine Learning
 
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CGTHE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
 
Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5
 
FMX2013: Butterfly Effect
FMX2013: Butterfly EffectFMX2013: Butterfly Effect
FMX2013: Butterfly Effect
 
Buttefly
ButteflyButtefly
Buttefly
 

Recently uploaded

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Practical AI in Games

  • 1. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PRACTICAL AI IN GAMES Renaldas Zioma Unity Technologies (INTRO LEVEL)
  • 2. COPYRIGHT 2016 @ UNITY TECHNOLOGIES INTRO • Why graphics programmer is talking about AI?
  • 3. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NO AI IN GAMES! • No “intelligence”
  • 4. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NO AI IN GAMES! • No “intelligence” • This statement is 99% true
  • 5. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NO AI IN GAMES! • No “intelligence” • This statement is 99% true • Behaviors are predefined - game does not learn!
  • 6. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NO AI IN GAMES! • No “intelligence” • This statement is 99% true • Behaviors are predefined - game does not learn! • … but going to change soon-ish
  • 7. COPYRIGHT 2016 @ UNITY TECHNOLOGIES WHY? • Hard!   Chess • Average branching factor = 35 • Average depth = 80 • Search space = 1080. Go • Branching factor = 250 • Average depth = 150 • Search space = 10360 • Branching factor = 3050 to 30200 !!! • Average Depth = ??? • Search space = Starcraft 💣 💣 💣
  • 8. COPYRIGHT 2016 @ UNITY TECHNOLOGIES AND NOT REALLY THE POINT! • AI is not to “solve” your game • Entertain player
  • 9. COPYRIGHT 2016 @ UNITY TECHNOLOGIES DESIGN PRINCIPLES • Fun - instead of “just hard” • Competence • Autonomy • Relatedness • Immersion • Presence
  • 10. COPYRIGHT 2016 @ UNITY TECHNOLOGIES • Responsive - because slow feels “stupid” DESIGN PRINCIPLES
  • 11. COPYRIGHT 2016 @ UNITY TECHNOLOGIES DESIGN PRINCIPLES • Relatable - if player does not understand that NPC is “smart”, you just wasted your time
  • 12. COPYRIGHT 2016 @ UNITY TECHNOLOGIES DESIGN PRINCIPLES • Fun - instead of “just hard” • Responsive - slow feels “stupid” • Relatable - if player does not understand that NPC is “smart”, you just wasted your time • Player should feel “smart” - not AI or you!
  • 13. COPYRIGHT 2016 @ UNITY TECHNOLOGIES DESIGN PRINCIPLES • Fun, Responsive, Relatable • Player should feel “smart” • AI is a tool for game designer!
  • 14. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PERFORMANCE • You have 3 ms for AI !!! • Graphics, physics, audio - first, because crucial for immersion • GPU does NOT do all graphics work! • AI usually is time sliced - executed over several frames 1 second = 1000 ms 30 FPS = 1000 / 30 = ~33 ms 60 FPS = 1000 / 60 = ~16 ms
  • 15. COPYRIGHT 2016 @ UNITY TECHNOLOGIES AI “STACK” • Example from Robotics • Autonomous Car Architecture Navigation Behavior Planner Driver Motion Planner Trajectory Planner 2Hz 60Hz 10Hz 5Hz 1Hz FinerscaleCoarserscale Nicolas Meuleau Unity Technologies exApple, exNASA Director of AI Research
  • 16. COPYRIGHT 2016 @ UNITY TECHNOLOGIES AI “STACK” • Games Navigation Animation controller Trajectory, Steering Behavior 2Hz 60Hz 10Hz
  • 17. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NAVIGATION = PATHFINDING • Grid • Navigation Mesh (“NavMesh”) • Waypoint Graph Navigation Animation controller Trajectory Behavior 2Hz 60Hz 10Hz
  • 18. COPYRIGHT 2016 @ UNITY TECHNOLOGIES GRID
  • 19. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NAVMESH
  • 20. COPYRIGHT 2016 @ UNITY TECHNOLOGIES WAYPOINT GRAPH
  • 21. COPYRIGHT 2016 @ UNITY TECHNOLOGIES GRID • Pros • easy • strategy games • Cons • flat • dense, takes memory
  • 22. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NAVMESH • Pros • 3D • average memory footprint • many genres • Cons • hard to construct
  • 23. COPYRIGHT 2016 @ UNITY TECHNOLOGIES WAYPOINT GRAPH • Pros • designer control • low memory footprint • Cons • manual work
  • 24. COPYRIGHT 2016 @ UNITY TECHNOLOGIES COMMON PROBLEMS • Static world • dynamic obstacles are easier
 to support with grid • Actor size is predefined • Fast moving actors with steering constraints • wheeled vehicles
  • 25. COPYRIGHT 2016 @ UNITY TECHNOLOGIES COMMON SOLUTIONS • Delegate solution to lower-level systems • steering for dynamic obstacle avoidance • Several data structures • different data structures can co-exist • several copies with different parameters
  • 26. COPYRIGHT 2016 @ UNITY TECHNOLOGIES STEERING Navigation Animation controller Trajectory, Steering Behavior 2Hz 60Hz 10Hz
  • 27. COPYRIGHT 2016 @ UNITY TECHNOLOGIES STEERING • Path simplification
  • 28. COPYRIGHT 2016 @ UNITY TECHNOLOGIES STEERING • Path simplification
  • 29. COPYRIGHT 2016 @ UNITY TECHNOLOGIES • Path simplification • Dynamic object avoidance STEERING
  • 30. COPYRIGHT 2016 @ UNITY TECHNOLOGIES STEERING
  • 31. COPYRIGHT 2016 @ UNITY TECHNOLOGIES BEHAVIOR Navigation Animation controller Trajectory Behavior 2Hz 60Hz 10Hz • State Machine • Behavior Tree • Utility AI
  • 32. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FINITE STATE MACHINE = FSM
  • 33. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FINITE STATE MACHINE
  • 34. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FINITE STATE MACHINE public class AttackBehaviour : StateMachineBehaviour { public float power = 1.0f; public GameObject particle; private GameObject newParticle; override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { newParticle = Instantiate(particle, … Rigidbody particlePhysicalBody = newParticle.GetComponent<Rigidbody>(); particlePhysicalBody.AddExplosionForce(power, animator.rootPosition, … } override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { Destroy(newParticle); } override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { Debug.Log(“Attacking every frame!!!"); } // . . .
  • 35. COPYRIGHT 2016 @ UNITY TECHNOLOGIES
  • 36. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FINITE STATE MACHINE • Pros • easy • visual • Cons • complex behavior gets messy! • Hierarchical FSM helps • hardcoded decisions
  • 37. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PACMAN
  • 38. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PACMAN
  • 39. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PACMAN Navigation Animation Steering Behavior
  • 40. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PACMAN • I felt it would be too stressful for a human […] to be continually surrounded and hunted down. So I created the monsters’ invasions to come in waves. They’d attack and then they’d retreat. As time went by they would regroup, attack, and disperse again. It seemed more natural than having constant attack. - Toru Iwatani, Pac-Man creator • Just before ghosts turn a corner, their eyes move to point in the new direction of movement - Ghost Pshychology, www.webpacman.com
  • 41. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PACMAN
  • 42. COPYRIGHT 2016 @ UNITY TECHNOLOGIES • 追いかけ, oikake - “chaser” • 待ち伏せ, machibuse -“ambusher” • 気紛れ, kimagure - “moody” • お惚け, otoboke - “feigning ignorance” PACMAN
  • 43. COPYRIGHT 2016 @ UNITY TECHNOLOGIES GHOST STATEMACHINE
  • 44. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PACMAN
  • 45. COPYRIGHT 2016 @ UNITY TECHNOLOGIES BEHAVIOR TREE = BT
  • 46. COPYRIGHT 2016 @ UNITY TECHNOLOGIES BEHAVIOR TREE • Selector • Sequence • Action
  • 47. COPYRIGHT 2016 @ UNITY TECHNOLOGIES BEHAVIOR TREE
  • 48. COPYRIGHT 2016 @ UNITY TECHNOLOGIES BEHAVIOR TREE • Pros • better at complexity than FSM • used in many games: Halo, Bioshock, Crysis, Spore • Cons • large BT can get slow • hardcoded decisions
  • 49. COPYRIGHT 2016 @ UNITY TECHNOLOGIES UTILITY AI
  • 50. COPYRIGHT 2016 @ UNITY TECHNOLOGIES UTILITY AI
  • 51. COPYRIGHT 2016 @ UNITY TECHNOLOGIES UTILITY AI
  • 52. COPYRIGHT 2016 @ UNITY TECHNOLOGIES UTILITY AI
  • 53. COPYRIGHT 2016 @ UNITY TECHNOLOGIES UTILITY AI • Pros • can achieve “smarter” behavior than BT • Killzone, Sims, Civilization • Cons • can be hard to design scorers and debug • some loss of designer control • still pretty hardcoded logic
  • 54. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FSM / BT / UTILITY HOW TO CHOOSE? • Pick approach you are most comfortable with • Pick the simplest tool that will make job done
  • 55. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PLAN AHEAD • FSM, BT, Utility AI - reactive • only reacts to current situation • no planning • Deliberate AI • plans ahead
  • 56. COPYRIGHT 2016 @ UNITY TECHNOLOGIES INFLUENCE MAPS • Add Behavior related information to path planning • Simple way to plan for actions ahead • piggy-back pathfinding code • Better decisions
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67. COPYRIGHT 2016 @ UNITY TECHNOLOGIES INFLUENCE MAPS • Types of data: • covers • distance to enemies • distance to power-ups • heatmaps • etc…
  • 68. COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2016 @ UNITY TECHNOLOGIES FUTURE
  • 69. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FUTURE • Intelligence in AI • Bluffing • Learning
  • 70. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FUTURE • More Planning ahead • Machine Learning
  • 71. COPYRIGHT 2016 @ UNITY TECHNOLOGIES PLANNING IN GAME AI • Goal Oriented Action Planning
  • 72. COPYRIGHT 2016 @ UNITY TECHNOLOGIES GOAP • Games: F.E.A.R, S.T.A.L.K.E.R, Fallout 3, Just Cause 2
  • 73. COPYRIGHT 2016 @ UNITY TECHNOLOGIES GOAP • Pros • better decisions • emergent gameplay • Cons • performance! worse than NP-hard! • loss of designer control • so far didn’t became common approach • maybe needs better tools
  • 74. COPYRIGHT 2016 @ UNITY TECHNOLOGIES BIOLOGICAL BRAIN • Consists of Neurons • Ultra low power consumption • Both DIGITAL and ANALOG!
  • 75. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NEURON • Can compute • Can learn • Can generate patterns • Form networks - highly interconnected • Very parallel - but single one is relatively slow
  • 76. COPYRIGHT 2016 @ UNITY TECHNOLOGIES
  • 77. COPYRIGHT 2016 @ UNITY TECHNOLOGIES
  • 78. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NEURON • Both digital and analog! • Working principle includes 3 things at once: • Electrical • Bio-mechanical • Chemical • IMHO in the 21st century you must study some neuroscience! DO IT!
  • 79. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NEURON, APPROXIMATELY • Sums up weighted inputs • Makes binary decision • Sends to connected neurons
  • 80. COPYRIGHT 2016 @ UNITY TECHNOLOGIES HARDWARE
  • 81. COPYRIGHT 2016 @ UNITY TECHNOLOGIES TPU • Tensor Processing Unit • Google
  • 82. COPYRIGHT 2016 @ UNITY TECHNOLOGIES TPU • Server running AlphaGO • Won against Lee Sedol
  • 83. COPYRIGHT 2016 @ UNITY TECHNOLOGIES FPGA • Field Programmable Gate Array
  • 84. COPYRIGHT 2016 @ UNITY TECHNOLOGIES DATA FLOW PROCESSORS • Some prototypes - neuFlow • Used for Convolutional Networks for vision
  • 85. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NEUROMORPHIC CHIPS • IBM TrueNorth
  • 86. COPYRIGHT 2016 @ UNITY TECHNOLOGIES NEUROMORPHIC CHIPS
  • 87. COPYRIGHT 2016 @ UNITY TECHNOLOGIES TRUE NORTH
  • 88. COPYRIGHT 2016 @ UNITY TECHNOLOGIES CEREBRAL ORGANOIDS • Madeline Lancaster, Cambridge MRC Lab • since 2014 • Small artificially grown biological brains! • ~4 million neurons
  • 89. COPYRIGHT 2016 @ UNITY TECHNOLOGIES
  • 90. COPYRIGHT 2016 @ UNITY TECHNOLOGIES
  • 91. COPYRIGHT 2016 @ UNITY TECHNOLOGIES
  • 92. COPYRIGHT 2016 @ UNITY TECHNOLOGIES CEREBRAL ORGANOIDS • Easier way to study and learn from real “intelligence” • Eventually will be connected to computers • biological AI co-processor
  • 93. The Summer of Deep Learning
  • 94. COPYRIGHT 2016 @ UNITY TECHNOLOGIES BACK TO GAME AI • Machine Learning is more like Intuition • Planning is more like Reason • Need both

Editor's Notes

  1. “Practical AI in Games” talk is an introductory material for students and programmers aspiring for developing AI for games. Talk is split into 2 parts - first part provides an overview on popular AI approaches in games and second part gives an outlook on technology that might be relevant for games AI in the future. I gave this talk at Vilnius University as a guest speaker in the late October 2016. Thanks Žilvinas Ledas for invitation. Lingo: NPC is a Non-Player Character. Synonymous to Actor.
  2. Of course it is a controversial statement and does not apply to all games. It is here to grab your attention…
  3. … and to draw line between “scientific AI”, human intelligence and what we actually use in games.
  4. This talk is split into 2 parts. First part is more practical and covers set of approaches that are most used in today games.
  5. Second part aims to give an outlook about future of AI and what young professionals should keep an eye.
  6. Traditional games like Chess and Go have well defined discreet states. In theory computer AI could beat the game by looking through all possible states and finding the best solution. In practice however it is extremely computationally expensive and memory hungry task. Search space is number of all possible moves (actions) in such game. However state in most modern games is far from discreet (unit can move just “a little bit”) and have complex rules - dramatically increasing search space.
  7. Although task at hand is extremely complex - complete and optimal “solutions” belong more to the domain of “scientific AI”. Instead as game developers we need to entertain the player!
  8. “Glued to Games: How Video Games Draw Us In and Hold Us Spellbound” is a great book disassembling what does fun actually mean. https://www.amazon.com/Glued-Games-Video-Spellbound-Directions/dp/0313362246
  9. Take a look at the image - the player have thrown grenade just a couple of frames before, however NPC (Non-Player Characters) are reacting already - jumping aside or hiding! This is a good example of responsive NPC behavior. Rather simple, but well timed behavior is better than smart, but late one.
  10. Players must relate to and understand behavior of NPCs to fully appreciate it. Animations, audio and visual clues are at least as important as AI code behind NPC decisions.
  11. In the end it is all about making good game. If your game designer (1) does not understand what AI code can achieve, (2) thinks AI is not predictable enough, (3) has insufficient tools or (4) code is not solving tasks at hand - he will not be able to tap into the full potential of AI. You wasted your time!
  12. ms - millisecond, is one thousandth of a second. You can realistically expect to spend on AI somewhere between 1 and 5 milliseconds during a single frame. Not more than that! In other words, if you would turn off everything and just keep AI code running - your game should be running between 1000 and 200 frames per second. Unless you are making turn-based strategy game of course :) Why? Keeping constant framerate is very important for player immersion, reaction time and for perceived quality of the game. And it is even worse with VR - people will literally puke when framerate drops. Therefore tasks that are necessary to run and complete during each frame are of highest priority, such are - graphics, physics, animations, audio, input processing, network, etc. Note that in order to keep Graphics Processors (GPU) busy lots of work needs to be executed on the main CPU first (even with modern graphics APIs like DirectX12, Vulkan or Metal). Modern engines will strive to distribute the work across all cores too. In other words CPU with all its cores is quite busy in games. Good news for AI some decisions can be spread over several frames to execute. Slow human brains often won’t notice.
  13. For the sake of broadening our horizon - let’s look at AI “stack” in real-life scenarios from Robitics and self-driving Cars. Different layers are executed at different frequencies (for performance reasons). Lower layers that require immediate reaction and are critical for survival are executed more often. Higher layers are responsible for long term planning. If condition changes - elk jumps in front of the car - lower layers will react immediately and might trigger higher layers to re-evaluate situation / re-plan further actions. Navigation - responsible for finding efficient route to the gaol - decides on which road intersection to turn. Does not concern itself with details like driving on a straight road however. Behavior - responsible for optimizing driving style like gas consumption vs speed. Driver - execute physical actions. Motion Planner - plans ahead how to drive in the next intersection, when to change lanes, etc. Trajectory Planner - calculates actual trajectory given car speed, physical parameters. Reacts to sudden changes like appearance of unpredicted obstacles.
  14. AI “stack” in games is somewhat similar. Behavior - gameplay level decisions: attack, seek cover, reload, etc. Navigation - finds route to the next location as commanded by Behavior. Animation - play animations accordingly to NPC actions and intentions. Trajectory - moves NPC from frame to frame as commanded by Navigation and in accordance with Animations layer. Reacts to dynamic obstacles. Next we are going to look at each layer separately.
  15. Navigation aka Pathfinding - finds route between two locations. There are different ways how to subdivide world into set of discrete interconnected locations. Read more: https://en.wikipedia.org/wiki/Pathfinding
  16. Grid is a 2D array covering the world. Grid locations can be blocked or open for navigation.
  17. NavMesh or Navigation Mesh is a simplified geometrical representation of the world. Polygons represent locations accessible for navigation. Actor can move on top of NavMesh polygon freely without encountering any obstacles. Read more: https://en.wikipedia.org/wiki/Navigation_mesh
  18. Waypoint graph - nodes represent locations accessible for navigation. Edges connecting nodes represent paths between locations that are obstacle free. Read more: https://en.wikipedia.org/wiki/Waypoint
  19. Grid naturally suit 2D or 2.5D worlds. Dynamic obstacles can be represented relatively easy by changing state of grid elements as occupied by NPC (Non-Player Character). Bigger NPC units usually will cover several elements of the grid.
  20. NavMesh naturally suit 3D worlds. Notice on the image that NavMesh (blue color) is narrower than the actual passages - size of the actor has to be implicitly “baked” into the NavMesh, otherwise actor would stick through the walls while walking. Producing NavMesh from dense world geometry can be a complex task, luckily there are robust libraries like: http://masagroup.github.io/recastdetour/
  21. Waypoints naturally suit 3D worlds. Waypoints provide easy control for designers to define accessible areas for NPC, but that of course means more manual work to setup. Nowadays waypoints are falling out of favor and are usually replaced with NavMesh due to automated process.
  22. All described approaches work best for (1) static world, (2) where all NPCs are roughly the same size and (3) can turn on a spot easily.
  23. It is quite common to combine several data structures in one game. For instance in RPG game NavMesh approach can be used for navigation inside the houses, but Waypoints could be used to represent the outside world. For Strategy game multiple grids of different resolution can overlap in order to handle dynamic obstacles where it matters more, etc.
  24. Read more: http://www.red3d.com/cwr/steer/gdc99/
  25. Navigation layer alone provides us with very rough path (red line). If actor would follow it blindly it would look very unnatural and “robotic”.
  26. One task for Steering layer is to take information from Navigation and create more believable path (green line).
  27. Another task is to avoid dynamic obstacles that Navigation does not want to deal with. It is important to remember that while steering can avoid dynamic obstacles it can lead NPC far away from the path planned by Navigation. When that happens Steering will usually trigger Navigation to reevaluate the path starting from the current location. For both Path simplification and Dynamic obstacle avoidance engine will fire additional (short) ray-queries to check, if path is blocked.
  28. Example of Steering for NPC character following the player (“Buddy follow”) while staying behind him, but visible through the camera. Yellow spheres depict possible locations, red arrows point to locations that are blocked by the rock. Worth reading: http://allenchou.net/2016/05/a-brain-dump-of-what-i-worked-on-for-uncharted-4/
  29. Read: https://en.wikipedia.org/wiki/Finite-state_machine FSM is a graph where: nodes are states of NPC “brain” edges are conditions that will make “brain” jump (transition) from one state to another NPC actions are associated with both states and transitions FSM is a simple “map of the brain”. What makes NPC act - actions assigned to every state or transition. As AI designer you would layout FSM, implement various actions with script and assign those actions to FSM states and transitions.
  30. Example of script code that is attached to FSM and drives actual behavior - in this case spawning new particle and pushing it away with force. OnStateEnter, OnStateExit - functions that execute once when FSM enters/exits particular state OnStateUpdate - function is executed every frame while FSM is in a particular state.
  31. Example of FSM from a real game.
  32. FSM are great as a starting point in games AI. Hierarchical FSM: http://aigamedev.com/open/article/hfsm-gist/
  33. Lets take classic Pacman game as an example and see how AI is implemented there. Watch Pacman gameplay: https://www.youtube.com/watch?v=uswzriFIf_k
  34. More about Pacman gamedesign, ghost behavior, etc: http://gameinternals.com/post/2072558330/understanding-pac-man-ghost-behavior http://www.gamasutra.com/view/feature/3938/the_pacman_dossier.php https://www.khanacademy.org/computer-programming/pac-man-ghost-ai-visualisation/6163767378051072
  35. Although Pacman is small and old game - it is a great example of the good design principles for AI. Keep close attention to ghosts in Pacman: just couple of frames before making turn, they will turn their eyes towards intended direction - that gives a glimpse of intent ghosts reverse direction when important state of the “brain” changes - that gives opportunity for player to know of change in behavior they change speed of movement and color when they become “eatable” - player knows whenever ghosts are dangerous or not
  36. Ghosts in Pacman have 4 states of the “brain”. In “Scatter” state they go towards predefined corners and stay there for a short period of time.
  37. In “Attack” state every ghost has slightly different behavior that affects Navigation. Navigation in Pacman is extremely simple, just a single goal that ghost is trying to reach. In case of a red ghost Navigation goal is player itself. In case of a pink ghost - goal is always slightly ahead of the player, etc. Steering in Pacman is extremely simple too - at every intersection ghosts turn in the direction that would bring them closer to the goal commanded by Navigation. Read: http://gameinternals.com/post/2072558330/understanding-pac-man-ghost-behavior
  38. Visualization of FSM behind ghost “brain”.
  39. Read: https://en.wikipedia.org/wiki/Behavior_tree BT is a tree where: branches are conditions leaves are actions. With BT we no longer operate with predefined “brain” states like we did with FSM. Instead BT “brain” will pick the best possible action to execute based on the hierarchy of conditions. This hierarchy of conditions are parent nodes of any particular action.
  40. BT execution is started from the root node and descends down the tree. Depending on the type of the node - either (Selector) only one of its children or (Sequence) all children will be executed. Leaf nodes (Action) will make NPC act. In the image below grey nodes are conditions that were false, therefore actions (“Seek” action in this case) will not be executed. Green nodes are under conditions that are true during this frame, therefore actions below them will be executed. NPC is going to “Flee”.
  41. This example will execute sequence of actions starting with selecting random point to travel and then wait until the movement succeeds.
  42. BT is a very common approach in games today.
  43. Read: http://www.gameaipro.com/GameAIPro/GameAIPro_Chapter09_An_Introduction_to_Utility_Theory.pdf Utility is a list of actions and associated utility scores. Utility scorer simply tells us how useful particular action is at the given moment. “Brain” will pick and execute the best possible action with highest utility score.
  44. To simplify Utility AI is a more generic and flexible representation than BT. BT can be transformed into Utility AI representation. This example shows how leafs of BT become list of actions in Utility AI representation…
  45. … and conditions become utility scorers. Scorers are implemented as small code snippets than evaluate state of our NPC and world around and return single value - score. Read more: http://www.gamasutra.com/blogs/JakobRasmussen/20160427/271188/Are_Behavior_Trees_a_Thing_of_the_Past.php
  46. Example: http://apexgametools.com/learn/apex-utility-ai-documentation/apex-utility-ai-unity-survival-shooter/
  47. Utility AI are gaining popularity in the game development. Utility AI allows to create more modular and emergent behavior than FSM or BT.
  48. For more detail comparison: http://intrinsicalgorithm.com/IAonAI/2012/11/ai-architectures-a-culinary-guide-gdmag-article/
  49. All discussed approaches purely react to current situation. Can we make AI to anticipate future and plan for it? It is called “deliberate” approach. More on planning: http://aigamedev.com/open/review/planning-in-games/
  50. Influence Maps can be seen as a simple way to add some planning ahead into otherwise reactive AI. Influence Maps modifies how Navigation is searching for the best path. The best path becomes not the shortest path, but path which satisfies specific NPC goal better.
  51. Excerpt from the great presentation about Killzone AI: https://www.guerrilla-games.com/read/killzones-ai-dynamic-procedural-tactics Killzone talk perfectly explains the concept - I decided to “borrow” their slides instead of making poor copy of this great example.
  52. Read more: http://www.gamedev.net/page/resources/_/technical/artificial-intelligence/the-core-mechanics-of-influence-mapping-r2799
  53. Make a plan of actions towards desired goal. Execute and re-plan when necessary. Idea should remind you pathfinding, except looking for path in action space instead of geometrical space. Read more: http://alumni.media.mit.edu/~jorkin/goap.html Approach that GOAP (Goal Oriented Action Planning) is based upon is called STRIPS in scientific literature: https://en.wikipedia.org/wiki/STRIPS. Slightly more advanced version of STRIPS is called SHOP: https://www.cs.umd.edu/projects/shop/description.html
  54. It is not easy however to evaluate how particular action will affect the state of the world - search space can “explode” (see early slide on Chess/Go/Starcraft). This is somewhat less explored area in games - we need to do more work here.
  55. So far we have looked at “engineer” approaches to AI - rational, step-by-step, hardcoded. They do not learn anything or even try to analyze opponents play style. Unsurprisingly that is NOT how our brain works :) Our brains can learn, adapt to situations and find new ingenious solutions to problems. Can we learn from brain to build better machines and game AI? Read more: https://en.wikipedia.org/wiki/Cerebral_cortex
  56. Read more: https://en.wikipedia.org/wiki/Neuron
  57. Magnified and colored slice of human brain - ~2 mm deep slice. Fat dots are “bodies” of neuron cells, lines are connections between neurons.
  58. Computer generated reconstruction of connections between neurons in cerebral cortex.
  59. Why study neuroscience? It will teach you about different type of computations - highly parallel, highly scalable with emphasize on learning instead of hardcoding. Meanwhile modern day sequential code that executes just on handful of cores is going to be less and less relevant. In the future hardcoding or as we call it today “programming” for chips based on classical Von Neumann architectures will become as prized and eventful as soldiering radio sets today!
  60. Read more: https://en.wikipedia.org/wiki/Artificial_neuron
  61. Lets look at development of human built systems that take some inspiration from brains. Photo - Facebook GPU based computer purposed for Machine Learning tasks. More: https://code.facebook.com/posts/1687861518126048/facebook-to-open-source-ai-hardware-design/
  62. Google took GPU design and removed “parts” unnecessary for Machine Learning. More: https://en.wikipedia.org/wiki/Tensor_processing_unit
  63. FPGA - not new hardware design, but recently gaining more interest from Machine Learning. Hard to program though. More: https://en.wikipedia.org/wiki/Field-programmable_gate_array
  64. Currently implemented on top of FPGA. One step towards turning FPGA type of design into Machine Learning friendly. More: http://www.clement.farabet.net/research.html#neuflow
  65. Neuromorphic chips build neurons directly in hardware. Building neurons in hardware is not hard, however interconnecting lots of them is the main challenge. Sometimes called - “network on chip”. Read more: https://en.wikipedia.org/wiki/TrueNorth Neuromorphic approach in general: https://en.wikipedia.org/wiki/Neuromorphic_engineering
  66. Single chip has 4096 cores. Each core simulates one neuron, stores information about its connection and has network router to communicate with other neurons.
  67. TEDxCERN talk by Madeline Lancaster: https://www.youtube.com/watch?v=EjiWRINEatQ Cerebral Organoid is a tiny brain grown in the lab. Neurons in cerebral organoids seems to be functional, however connection and activity seems to be chaotic comparing with “real” brains. Some promising breakthroughs are happening in the last 2 years in this area!
  68. So far cerebral organoids are not fully developed brains comparing to alive organisms. Nor they are connected to any body - do not get any meaningful information and do not do any meaningful computations. I would guess that in the future (10 years?) we will learn how to augment cerebral organoids with computers - closing feedback loop and training them. Biological AI co-processor, if you wish. Most likely in the process we will discover more about how biological brain learn. And improve our Machine Learning approaches.
  69. 2016… but really shift was happening in the last 4-5 years.