Home Page Icon
Home Page
Table of Contents for
Cover
Close
Cover
by David M Bourg, Glenn Seemann
AI for Game Developers
A Note Regarding Supplemental Files
Preface
Assumptions This Book Makes
About This Book
Conventions Used in This Book
Additional Resources
Using Code Examples
How to Contact Us
Acknowledgments
1. Introduction to Game AI
Deterministic Versus Nondeterministic AI
Established Game AI
The Future of Game AI
2. Chasing and Evading
Basic Chasing and Evading
Line-of-Sight Chasing
Line-of-Sight Chasing in Tiled Environments
Line-of-Sight Chasing in Continuous Environments
Intercepting
3. Pattern Movement
Standard Algorithm
Pattern Movement in Tiled Environments
Pattern Movement in Physically Simulated Environments
Control Structures
Pattern Definition
Executing the Patterns
DoPattern Function
Results
4. Flocking
Classic Flocking
Flocking Example
Steering Model
Neighbors
Cohesion
Alignment
Separation
Obstacle Avoidance
Follow the Leader
5. Potential Function-Based Movement
How Can You Use Potential Functions for Game AI?
So, What Is a Potential Function?
Chasing/Evading
Obstacle Avoidance
Swarming
Optimization Suggestions
6. Basic Pathfinding and Waypoints
Basic Pathfinding
Random Movement Obstacle Avoidance
Tracing Around Obstacles
Breadcrumb Pathfinding
Path Following
Wall Tracing
Waypoint Navigation
7. A∗ Pathfinding
Defining the Search Area
Starting the Search
Scoring
Finding a Dead End
Terrain Cost
Influence Mapping
Further Information
8. Scripted AI and Scripting Engines
Scripting Techniques
Scripting Opponent Attributes
Basic Script Parsing
Scripting Opponent Behavior
Scripting Verbal Interaction
Scripting Events
Further Information
9. Finite State Machines
Basic State Machine Model
Finite State Machine Design
Finite State Machine Structures and Classes
Finite State Machine Behavior and Transition Functions
Ant Example
Finite State Machine Classes and Structures
Defining the Simulation World
Populating the World
Updating the World
Forage
GoHome
Thirsty
The Results
Further Information
10. Fuzzy Logic
How Can You Use Fuzzy Logic in Games?
Control
Threat Assessment
Classification
Fuzzy Logic Basics
Overview
Fuzzification
Membership Functions
Hedges
Fuzzy Rules
Fuzzy Axioms
Rule Evaluation
Defuzzification
Control Example
Threat Assessment Example
11. Rule-Based AI
Rule-Based System Basics
Inference in Rule-Based Systems
Forward Chaining
Backward Chaining
Fighting Game Strike Prediction
Working Memory
Rules
Initialization
Strike Prediction
Part 1
Part 2
Part 3
Further Information
12. Basic Probability
How Do You Use Probability in Games?
Randomness
Hit Probabilities
Character Abilities
State Transitions
Adaptability
What is Probability?
Classical Probability
Frequency Interpretation
Subjective Interpretation
Odds
Expectation
Techniques for Assigning Subjective Probability
Probability Rules
Rule 1
Rule 2
Rule 3
Rule 4
Rule 5
Rule 6
Conditional Probability
13. Decisions Under Uncertainty—Bayesian Techniques
What is a Bayesian Network?
Structure
Inference
Trapped?
Tree Diagram
Determining Probabilities
Making Inferences
Using Fuzzy Logic
Treasure?
Alternative Model
Making Inferences
Numerical Example
By Air or Land
The Model
Calculating Probabilities
Numerical Example
Kung Fu Fighting
The Model
Calculating Probabilities
Strike Prediction
Bookkeeping
Making the Prediction
Further Information
14. Neural Networks
Control
Threat Assessment
Attack or Flee
Dissecting Neural Networks
Structure
Input
Input: What and How Many?
Input: What Form?
Weights
Activation Functions
Bias
Output
The Hidden Layer
Training
Back-Propagation Training
Computing Error
Adjusting Weights
Momentum
Neural Network Source Code
The Layer Class
The Neural Network Class
Chasing and Evading with Brains
Initialization and Training
Learning
Further Information
15. Genetic Algorithms
Evolutionary Process
First Generation
Ranking Fitness
Selection
Evolution
Evolving Plant Life
Encoding the Flower Data
First Flower Generation
Ranking Flower Fitness
Evolving the Flowers
Genetics in Game Development
Role-Playing Example
Encoding the Data
The First Generation
Ranking Fitness
Selection
Evolution
Further Information
A. Vector Operations
Vector Class
Magnitude
Normalize
Reverse
Vector Addition: The += Operator
Vector Subtraction: The −= Operator
Scalar Multiplication: The ∗= Operator
Scalar Division: The /= Operator
Conjugate: The − Operator
Vector Functions and Operators
Vector Addition: The + Operator
Vector Subtraction: The − Operator
Vector Cross Product: The ⁁Operator
Vector Dot Product: The * Operator
Scalar Multiplication: The * Operator
Scalar Division: The / Operator
Triple Scalar Product
About the Authors
Colophon
Copyright
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Next
Next Chapter
AI for Game Developers
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset