Artificial Intelligence for Games

  1. Decision-Making Architectures
    1. Reactive Architectures
      1. Simple Trigger Systems
        1. Event-Driven Responses
          1. Trigger Conditions
            1. Use Cases and Limitations
            2. Rule-Based Systems
              1. Rule Definition and Evaluation
                1. Conflict Resolution
                  1. Rule Priorities
                    1. Forward and Backward Chaining
                  2. Finite State Machines (FSMs)
                    1. States
                      1. Defining States
                        1. State Data
                          1. State Responsibilities
                          2. Transitions
                            1. Transition Conditions
                              1. Transition Actions
                                1. Guard Conditions
                                2. Actions
                                  1. Entry Actions
                                    1. Exit Actions
                                      1. Update Actions
                                      2. Implementation Techniques
                                        1. Switch-Based FSMs
                                          1. Object-Oriented FSMs
                                            1. Table-Driven FSMs
                                            2. Limitations of FSMs
                                              1. State Explosion
                                                1. Lack of Flexibility
                                                  1. Maintenance Challenges
                                                2. Hierarchical Finite State Machines (HFSMs)
                                                  1. Sub-states and Super-states
                                                    1. State Hierarchies
                                                      1. Managing Complexity
                                                        1. Reusability of States
                                                          1. History States
                                                            1. Concurrent States
                                                            2. Behavior Trees (BTs)
                                                              1. Core Concepts
                                                                1. The Tick
                                                                  1. Node Status
                                                                    1. Running
                                                                      1. Success
                                                                        1. Failure
                                                                        2. Tree Traversal
                                                                        3. Composite Nodes
                                                                          1. Selectors (Fallbacks)
                                                                            1. Sequences
                                                                              1. Parallels
                                                                                1. Random Selectors
                                                                                  1. Weighted Random
                                                                                  2. Decorator Nodes
                                                                                    1. Inverters
                                                                                      1. Repeaters
                                                                                        1. Conditionals
                                                                                          1. Cooldowns
                                                                                            1. Timers
                                                                                            2. Leaf Nodes
                                                                                              1. Actions
                                                                                                1. Conditions
                                                                                                  1. Custom Leaf Types
                                                                                                  2. The Blackboard (Data Sharing)
                                                                                                    1. Data Storage and Access
                                                                                                      1. Communication Between Nodes
                                                                                                        1. Scoped Data
                                                                                                          1. Data Types
                                                                                                          2. Advanced BT Concepts
                                                                                                            1. Subtrees and Modularity
                                                                                                              1. Dynamic Tree Modification
                                                                                                                1. Tree Serialization
                                                                                                                2. Debugging and Visualizing Behavior Trees
                                                                                                                  1. Runtime Visualization
                                                                                                                    1. Execution Traces
                                                                                                                      1. Performance Profiling
                                                                                                                    2. Utility-Based AI
                                                                                                                      1. Utility Theory Fundamentals
                                                                                                                        1. Decision Theory Basics
                                                                                                                          1. Rational Choice
                                                                                                                          2. Scoring and Ranking Behaviors
                                                                                                                            1. Utility Functions
                                                                                                                              1. Weighting Factors
                                                                                                                                1. Normalization Techniques
                                                                                                                                2. Response Curves
                                                                                                                                  1. Linear Curves
                                                                                                                                    1. Exponential Curves
                                                                                                                                      1. Sigmoid Curves
                                                                                                                                        1. Custom Curve Types
                                                                                                                                        2. Considerations and Inputs
                                                                                                                                          1. Input Parameters
                                                                                                                                            1. Consideration Composition
                                                                                                                                            2. Use Cases
                                                                                                                                              1. Dynamic Decision-Making
                                                                                                                                                1. Balancing Multiple Goals
                                                                                                                                                  1. Action Selection
                                                                                                                                                  2. Implementation Strategies
                                                                                                                                                    1. Performance Optimization
                                                                                                                                                      1. Caching and Updates
                                                                                                                                                    2. Goal-Oriented Action Planning (GOAP)
                                                                                                                                                      1. Actions with Preconditions and Effects
                                                                                                                                                        1. Action Definition
                                                                                                                                                          1. Precondition Checking
                                                                                                                                                            1. Effect Application
                                                                                                                                                            2. World State Representation
                                                                                                                                                              1. State Variables
                                                                                                                                                                1. Boolean States
                                                                                                                                                                  1. Numeric States
                                                                                                                                                                  2. Plan Generation
                                                                                                                                                                    1. Planning Algorithms
                                                                                                                                                                      1. A* for Planning
                                                                                                                                                                        1. Plan Execution
                                                                                                                                                                          1. Plan Validation
                                                                                                                                                                          2. Regoaling and Replanning
                                                                                                                                                                            1. Handling Failed Plans
                                                                                                                                                                              1. Dynamic Goal Selection
                                                                                                                                                                                1. Plan Repair
                                                                                                                                                                                2. Advanced GOAP Concepts
                                                                                                                                                                                  1. Hierarchical Planning
                                                                                                                                                                                    1. Partial Order Planning
                                                                                                                                                                                      1. Multi-Agent Planning