Unity 2018 Artificial Intelligence Cookbook Second Edition (Jorge Palacios 著)
https://github.com/PacktPublishing/Unity-2018-Artificial-Intelligence-Cookbook-Second-Edition
1 Behaviors - Intelligent Movement
Behaviors – Intelligent Movement, explores some of the most interesting movement algorithms based on the steering behavior principles developed by Craig Reynolds and work from Ian Millington.
They act as a foundation for most of the AI used in advanced games and other algorithms that rely on movement, such as the family of path-finding algorithms.
Navigation, covers path-finding algorithms for navigating complex scenarios.
It will include some ways of representing the world using different kinds of graph structure, and several algorithms for finding a path, each aimed to different situations.
Decision Making, explains different decision-making techniques that are flexible enough to adapt to different types of games, and robust enough to let us build modular decision-making systems.
The New NavMesh API, shows the inner workings of the NavMesh API introduced in Unity 5.6, and explains how it enables us to grasp the power of the NavMesh engine and tune it in real time.
Coordination and Tactics, deals with a number of different recipes for coordinating different agents as a whole organism, such as formations and techniques that allow us make tactical decisions based on graphs, such as waypoints and influence maps.
Agent Awareness, explores different ways to simulate sense stimuli on an agent.
We will learn how to use tools we already know to create these simulations: colliders and graphs.
7 Board Games and Applied Search AI
Board Games and Applied Search AI, covers a family of algorithms for developing board games, as well as turn-based-game techniques for creating AI.
Learning Techniques, explores the field of machine learning. It will give us a great head-start in our endeavor to learn and apply machine learning techniques into our games.
9 Procedural Content Generation
Procedural Content Generation, explores different techniques for enabling replayability in our games by creating content procedurally.
It will give us some pointers in the right direction for different types of content.
Miscellaneous, introduces new techniques and uses algorithms that we will have learned in previous chapters to create new behaviors that don't quite fit in a definite category.
1 Behaviors - Intelligent Movement
In this chapter, we will develop AI algorithms for movement by covering the following recipes:
- Creating the behaviors template
- Pursuing and evading
- Adjusting the agent for physics
- Arriving and leaving
- Facing objects
- Wandering around
- Following a path
- Avoiding agents
- Avoiding walls
- Blending behaviors by weight
- Blending behaviors by priority
- Shooting a projectile
- Predicting a projectile's landing spot
- Targeting a projectile
- Creating a jump system
Introduction
Creating the behaviors template
Pursuing and evading
Adjusting the agent for physics
Arriving and leaving
Facing objects
Wandering around
Following a path
Avoiding agents
Avoiding walls
Blending behaviors by weight
Blending behaviors by priority
Shooting a projectile
Predicting a projectile's landing spot
Targeting a projectile
Creating a jump system
2 Navigation
In this chapter, we will cover the following recipes:
- Representing the world with grids
- Representing the world with points of visibility
- Representing the world with a self-made navigation mesh
- Finding your way out of a maze with DFS
- Finding the shortest path in a grid with BFS
- Finding the shortest path with Dijkstra
- Finding the best-promising path with A*
- Improving A* for memory: IDA*
- Planning navigation in several frames: time-sliced search
- Smoothing a path
Introduction
Representing the world with grids
Representing the world with points of visibility
Representing the world with a self-made navigation mesh
Finding your way out of a maze with DFS
Finding the shortest path in a grid with BFS
Finding the shortest path with Dijkstra
Finding the best-promising path with A*
Improving A* for memory – IDA*
Planning navigation in several frames – time-sliced search
Smoothing a path
3 Decision Making
In this chapter, we will cover the following recipes:
- Choosing through a decision tree
- Implementing a finite-state machine
- Improving FSMs: hierarchical finite-state machines
- Implementing behavior trees
- Working with fuzzy logic
- Making decisions with goal-oriented behaviors
- Implementing a blackboard architecture
- Experimenting with Unity's animation state machine
Introduction
Choosing through a decision tree
Implementing a finite-state machine
Improving FSMs: hierarchical finite-state machines
Implementing behavior trees
Working with fuzzy logic
Making decisions with goal-oriented behaviors
Implementing a blackboard architecture
Experimenting with Unity's animation state machine
4 The New NavMesh API
In this chapter, we will learn how to make use of the new NavMesh API,through the following recipes:
- Setting up the NavMesh building components
- Creating and managing NavMesh for multiple types of agents
- Creating and updating NavMesh data at runtime
- Controlling the lifetime of the NavMesh instance
- Connecting multiple instances of NavMesh
- Creating dynamic NavMeshes with obstacles
- Implementing some behaviors using the NavMesh API
Introduction
Setting up the NavMesh building components
Creating and managing NavMesh for multiple types of agents
Creating and updating NavMesh data at runtime
Controlling the lifetime of the NavMesh instance
Connecting multiple instances of NavMesh
Creating dynamic NavMeshes with obstacles
Implementing some behaviors using the NavMesh API
5 Coordination and Tactics
In this chapter, we will learn techniques for coordination and devising tactics:
- Handling formations
- Extending A* for coordination: A*mbush
- Introducing waypoints by making a manual selector
- Analyzing waypoints by height
- Analyzing waypoints by cover and visibility
- Creating waypoints automatically
- Exemplifying waypoints for decision making
- Implementing influence maps
- Improving influence with map flooding
- Improving influence with convolution filters
- Building a fighting circle
Introduction
Handling formations
Extending A* for coordination – A*mbush
Analyzing waypoints by height
Analyzing waypoints by cover and visibility
Creating waypoints automatically
Exemplifying waypoints for decision making
Implementing influence maps
Improving influence with map flooding
Improving influence with convolution filters
Building a fighting circle
6 Agent Awareness
In this chapter, we will learn some algorithm recipes for simulating senses and agent awareness:
- The seeing function using a collider-based system
- The hearing function using a collider-based system
- The smelling function using a collider-based system
- The seeing function using a graph-based system
- The hearing function using a graph-based system
- The smelling function using a graph-based system
- Creating awareness in a stealth game
Introduction
The seeing function using a collider-based system
The hearing function using a collider-based system
The smelling function using a collider-based system
The seeing function using a graph-based system
The hearing function using a graph-based system
The smelling function using a graph-based system
Creating awareness in a stealth game
7 Board Games and Applied Search AI
In this chapter, you will learn a family of algorithms for developing board game AI:
- Working with the game-tree class
- Implementing Minimax
- Implementing Negamax
- Implementing AB Negamax
- Implementing NegaScout
- Implementing a Tic-Tac-Toe rival
- Implementing a Checkers rival
- Implementing Rock-Paper-Scissors AI with UCB1
- Implementing Regret Matching
Introduction
Working with the game-tree class
Implementing Minimax
Implementing Negamax
Implementing AB Negamax
Implementing NegaScout
Implementing a Tic-Tac-Toe rival
Implementing a Checkers rival
Implementing Rock-Paper-Scissors AI with UCB1
Implementing regret matching
8 Learning Techniques
In this chapter, we will explore the world of machine learning through the following topics:
- Predicting actions with an N-Gram predictor
- Improving the predictor – Hierarchical N-Gram
- Learning to use a Naïve Bayes classifier
- Implementing reinforcement learning
- Implementing artificial neural networks
Introduction
Predicting actions with an N-Gram predictor
Improving the predictor – Hierarchical N-Gram
Learning to use Naïve Bayes classifier
Implementing reinforcement learning
Implementing artificial neural networks
9 Procedural Content Generation
In this chapter, we will learn different techniques for procedural content generation with the following recipes:
- Creating mazes with Depth-First Search
- Implementing the constructive algorithm for dungeons and islands
- Generating landscapes
- Using N-Grams for content generation
- Generating enemies with the evolutionary algorithm
Introduction
Creating mazes with Depth-First Search
Implementing the constructive algorithm for dungeons and islands
Generating landscapes
Using N-Grams for content generation
Generating enemies with the evolutionary algorithm
10 Miscellaneous
In this chapter, you will learn different techniques for:
- Creating and managing Scriptable Objects
- Handling random numbers better
- Building an air-hockey rival
- Implementing an architecture for racing games
- Managing race difficulty using a rubber-band system
Introduction
Creating and managing Scriptable Objects
Handling random numbers better
Building an air-hockey rival
Implementing an architecture for racing games
Managing race difficulty using a rubber-band system
Unity 2018 Artificial Intelligence Cookbook Second Edition (Jorge Palacios 著)的更多相关文章
- Getting.Started.with.Unity.2018.3rd.Edition
Getting Started with Unity 2018 - Third Edition: A Beginner's Guide to 2D and 3D game development wi ...
- Artificial Intelligence Research Methodologies 人工智能研究方法
Computer Science An Overview _J. Glenn Brookshear _11th Edition To appreciate the field of artificia ...
- (转)A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers
A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers. Updated 20 ...
- AI AND THE BOTTOM LINE: 15 EXAMPLES OF ARTIFICIAL INTELLIGENCE IN FINANCE
https://builtin.com/artificial-intelligence/ai-finance-banking-applications-companies f there's one ...
- Artificial intelligence(AI)
ORM: https://github.com/sunkaixuan/SqlSugar 微软DEMO: https://github.com/Microsoft/BotBuilder 注册KEY:ht ...
- (转) Artificial intelligence, revealed
Artificial intelligence, revealed Yann LeCunJoaquin Quiñonero Candela It's 8:00 am on a Tuesday morn ...
- Unity Shaders and Effets Cookbook
Unity Shaders and Effects Cookbook 最近在读 <Unity Shaders and Effects Cookbook> 中文名称:<Unity 着色 ...
- Artificial Intelligence Language
Artificial Intelligence Language Objective We know, a true AI program should have ability to underst ...
- 拼写纠正 Artificial Intelligence: A Modern Approach
Artificial Intelligence: A Modern Approach http://mindhacks.cn/2008/09/21/the-magical-bayesian-metho ...
随机推荐
- C# List<T> 转 DataTable
C# List<T>转DataTable 学习自:博客园 Overview 数据!!个人认为程序就是将数据变着花样的显示它.那么这个时候我们的数据处理和获取就时我们的关键一步,如果你数据都 ...
- bootstrap去除自带15px内边距,去除container 15px padding
壹 ❀ 问题 在使用bootstrap时,由于bootstrap槽宽特性,我们在布局时会发现container以及col-**-**左右都会自带15px的padding,有时候空间不足就想着怎么把b ...
- 【raid级别】RAID级别工作模式
友情链接 磁盘分区,格式化,挂载,创建交换分区:https://www.cnblogs.com/HeiDi-BoKe/p/11936998.html RAID工作级别:https://www.cnbl ...
- swoole中使用task进程异步的处理耗时任务
我们知道,swoole中有两大进程,分别是 master 主进程和 manager 管理进程. 其中 master 主进程中会有一个主 reactor 线程和多个 reactor 线程,主要的作用就是 ...
- MYSQL 高级语法
1.高级建表和插入 使用creat 和select 进行建表操作,中间采用AS 标识符: CREATE TABLE new_table AS SELECT * FROM exist_table LIM ...
- CSAPP lab3 bufbomb-缓冲区溢出攻击实验(上)smoke fizz
前言 完成这个实验大概花费一天半的时间,看了很多大佬的博客,也踩了很多的坑,于是打算写一篇博客重新梳理一下思路和过程,大概会有两篇博客吧. CSAPP lab3 bufbomb-缓冲区溢出攻击实验(上 ...
- _NtCreateDebugObject(ntoskrnl.exe)函数逆向分析
该函数由 DbgUiConnectToDbg(ntdll.dll)函数 调用. 其调用时传入的参数如下: 函数作用:初始化被调试的内核对象,将被调试对象句柄放入调试对象的 [fs:f24]处. 1.现 ...
- 杂牌机搞机之旅最终章————刷入Xposed框架
杂牌机搞机之旅最终章----刷入Xposed框架 recovery移植不成功,没办法,挂载分区好像挂载不上,所以,刷入magisk如果卡在开机屏,只能线刷解决..心累.. 所以,折腾完XPosed框架 ...
- python中time、datetime模块的使用
目录 python中time.datetime模块的使用 1.前言 2.time模块 1.时间格式转换图 2.常用方法 3.datetime模块 python中time.datetime模块的使用 1 ...
- DQL---连接查询(内连接、外连接)、子查询、分页查询
一.连接查询 1.连接查询建立在有相互关系的两个表间,进行两个及两个以上的表或视图的查询. 2.对n张表进行查询,至少需要n-1个连接表的条件. 二.笛卡尔积(容易造成数据库宕机) 1.指表中每行元素 ...