复习笔记
chapter 1
游戏人工智能是人工智能科学技术领域的一个分支
人工智能游戏的研究内容是如何将人工智能的理论、方法和技术应用于开发智能游戏、提高游戏角色的智能水平,主要包括智能游戏角色的行动、感知、反应、情绪、记忆、学习的理论方法和技术。
角色亦作角色,是指在表演艺术形式中演员根据脚本演艺虚构人物的行为,也指被扮演的虚构人物。
玩家角色(PC)控制器如同角色的大脑,输入是游戏世界的状态信息,输出是影响游戏世界并导致非玩家角色相应行为的动作选择。为由玩家通过操纵杆等输入设备控制的游戏角色。
非玩家角色(NPC):其他角色
角色行为控制:每一个角色至少有一个与他关联的控制器,控制器可以在不同的角色间共享。
控制器如同角色的大脑,输入是游戏世界的状态信息,输出是影响游戏世界并导致非玩家角色相应行为的动作选择。
玩家角色的控制器:解释玩家操纵杆各种操作的机制;玩家的大脑。
非玩家角色的控制器(NPC):多种形式,并具有不同的功能。
游戏系统结构
游戏状态:描述游戏世界中所有物体及其状态信息
仿真器:“游戏物理学”,制定游戏状态如何改变的规则
渲染器:利用游戏中物体的几何关系及纹理提供对游戏状态的描绘
控制器:负责选择角色的行动
非玩家角色具备的能力:行动,感知
非玩家角色控制器的设计方法:直接遵循一组预先编制好的行动准则,自动搜索,学习能力
人工智能:智能是一种认识客观事物和运用知识解决问题的综合能力。
智能所包含的能力:感知能力,记忆与思维能力,学习和自适应能力,行为能力
从能力角度来看:人工智能是相对于人的自然智能而言的,所谓人工智能是指用人工的方法在机器上实现的智能。
从学科的角度看,这是一门研究如何构造智能机器或智能系统,使它能模拟、延伸和扩展人类智能的学科。
至于如何衡量机器是否具有智能,图灵测试。
—-chapter 1 end————–
chapter 2

知识:知识是一切智能行为的基础,是人工智能的重要研究对象。一个智能系统的智能性很大程度上取决于知识的数量及其可利用的程度。知识也是人们在改造客观世界的实践中积累起来的认识和经验。

对客观世界的描述包括数据(符号或符号的组合)信息(不同数据组成的一种结构)知识(对信息进行智能性加工所形成的对客观世界规律性的认识)

状态空间法的知识表示:采用试探搜索方法,通过在某个可能的解空间内寻找一个解来求解问题。这是一种基于解答空间的问题表示和求解方法。并且它是以状态和算符为基础来表示和求解问题的。

状态空间法:从某个初始状态开始,每次加一个操作符,递增地建立起操作符的试验序列,直到达到目标状态为止。

状态图:初始状态可达到的各状态所对应的节点组成的图。寻找从一种状态变换为另一种状态的某个算符序列问题等价于寻找图的某一路径问题。

下面几个概念需要掌握:图,有向图,后继节点,父辈节点,路径,代价
状态:为描述某类不同事物间的差别而引入的一组最少变量的有序集合
状态变量:状态集合中的每个元素
具体状态:给定每个分量的一组值
操作符:使问题从一种状态变换到另一种状态的手段,也叫算符。算符可以是走步,过程,规则,数学算子,运算符号或逻辑符号等。
问题的状态空间:表示该问题全部可能状态及其关系的图,它包含三种说明的集合,即所有可能的问题初始状态集合S,操作符集合F以及目标状态集合G 状态空间可记为三元组(S,F,G)
————chapter 2 end——————
chapter 3
搜索:根据问题的实际情况,不断寻找可利用知识,从而构造一条代价较小的推理路线,使问题得以解决的过程。
搜索的分类:按是否使用启发式信息分为(盲目搜索和启发式搜索)
按问题的表示方式分为(状态空间搜索,与/或图搜索)
状态空间法和问题归约法是人工智能中最基本的两种问题求解方法;状态空间表示法和与/或树表示法则是人工智能中最基本的两种问题表示方法。
一般图搜索的数据结构:open表–用于存放刚生成的节点,由于这些节点还没有进行扩展,故open表也可称为未扩展节点表。
closed表–用于存放已经扩展的节点,故closed表也称为已扩展节点表。
——————-miss a lot————————————–

chapter 5
遗传算法:它是基于进化过程中的信息遗传机制和优胜劣汰的自然选择原则的搜索算法。它使用概率搜索过程在该状态空间中搜索,产生新的样本。特点是通用,鲁棒,次优解和满意解都能发现。
遗传算法与传统优化算法的主要不同:
1.遗传算法不是直接作用在参变量集上,而是利用参变量集的某种编码
2.遗传算法不是从单个点,而是在群体中从一个点开始搜索。
3.遗传算法利用适应值信息,无需导数或其他辅助信息。
3.遗传算法利用概率转移规则,而非确定性规则。
遗传算法的准备工作:
1.确定表示方案
2.确定适应值的度量
3.确定控制该算法的参数和变量
4.确定怎样指定结果及程序运行结束的标准
步骤:
编码 —初始群体生成—适应度评价—选择–交叉操作—变异—新群体的产生–重复
遗传算法的工作步骤:
(1)编码:将待解空间的解数据表示成基因型串结构数据
(2)初始群体的生成:按照设定的编码方案,随机产生N个初始串结构数据,构成一个种群作为初始点开始迭代。
(3)适应性评估检测:适应度函数对每个种子进行分值评定,表明种子的优劣性。
(4)选择:从当前群体中选出优良的种子作为父代繁殖下一代。常用轮盘赌实现。
(5)杂交:按照设定的杂交率可以得到新一代个体,新个体组合了其父辈个体的特性。
(6)变异:对于选中的个体按照变异率改变串结构数据中某个串的值。
——-chapter 5 end——————————————-

《游戏人工智能》学习笔记相关推荐

  1. 第二行代码学习笔记——第六章:数据储存全方案——详解持久化技术

    本章要点 任何一个应用程序,总是不停的和数据打交道. 瞬时数据:指储存在内存当中,有可能因为程序关闭或其他原因导致内存被回收而丢失的数据. 数据持久化技术,为了解决关键性数据的丢失. 6.1 持久化技 ...

  2. 第一行代码学习笔记第二章——探究活动

    知识点目录 2.1 活动是什么 2.2 活动的基本用法 2.2.1 手动创建活动 2.2.2 创建和加载布局 2.2.3 在AndroidManifest文件中注册 2.2.4 在活动中使用Toast ...

  3. 第一行代码学习笔记第八章——运用手机多媒体

    知识点目录 8.1 将程序运行到手机上 8.2 使用通知 * 8.2.1 通知的基本使用 * 8.2.2 通知的进阶技巧 * 8.2.3 通知的高级功能 8.3 调用摄像头和相册 * 8.3.1 调用 ...

  4. 第一行代码学习笔记第六章——详解持久化技术

    知识点目录 6.1 持久化技术简介 6.2 文件存储 * 6.2.1 将数据存储到文件中 * 6.2.2 从文件中读取数据 6.3 SharedPreferences存储 * 6.3.1 将数据存储到 ...

  5. 第一行代码学习笔记第三章——UI开发的点点滴滴

    知识点目录 3.1 如何编写程序界面 3.2 常用控件的使用方法 * 3.2.1 TextView * 3.2.2 Button * 3.2.3 EditText * 3.2.4 ImageView ...

  6. 第一行代码学习笔记第十章——探究服务

    知识点目录 10.1 服务是什么 10.2 Android多线程编程 * 10.2.1 线程的基本用法 * 10.2.2 在子线程中更新UI * 10.2.3 解析异步消息处理机制 * 10.2.4 ...

  7. 第一行代码学习笔记第七章——探究内容提供器

    知识点目录 7.1 内容提供器简介 7.2 运行权限 * 7.2.1 Android权限机制详解 * 7.2.2 在程序运行时申请权限 7.3 访问其他程序中的数据 * 7.3.1 ContentRe ...

  8. 第一行代码学习笔记第五章——详解广播机制

    知识点目录 5.1 广播机制 5.2 接收系统广播 * 5.2.1 动态注册监听网络变化 * 5.2.2 静态注册实现开机广播 5.3 发送自定义广播 * 5.3.1 发送标准广播 * 5.3.2 发 ...

  9. 第一行代码学习笔记第九章——使用网络技术

    知识点目录 9.1 WebView的用法 9.2 使用HTTP协议访问网络 * 9.2.1 使用HttpURLConnection * 9.2.2 使用OkHttp 9.3 解析XML格式数据 * 9 ...

  10. 安卓教程----第一行代码学习笔记

    安卓概述 系统架构 Linux内核层,还包括各种底层驱动,如相机驱动.电源驱动等 系统运行库层,包含一些c/c++的库,如浏览器内核webkit.SQLlite.3D绘图openGL.用于java运行 ...

最新文章

  1. 解决Picasso在Android 5.0以下版本不兼容https导致图片不显示
  2. 请求失败或服务未及时响应 有关详细信息_「干货」从零开始的微服务搭建之路...
  3. java break 在if 中使用_java中使用国密SM4算法详解
  4. 关于python中self
  5. JavaScript实现 页面滚动图片加载
  6. java验证ie版本的正则表达式_JS 浏览器类型判断,IE版本类型判断,正则表达式判断。...
  7. MySQL 多表查询(Day43)
  8. 2017-06-30
  9. mysql可重复读理解
  10. 基于STM32的高精度温度测控系统-PCB设计
  11. java pdf合并_如何实用Java实现合并、拆分PDF文档
  12. htmla标签下划线去除_html超链接去掉下划线 html去除取消超链接下划线
  13. 九段刀客 vue-router实现原理
  14. 使用photoshop将图片制作成圆形
  15. 又新又全 |制图符号库、最新市级国土空间总体规划制图规范“GIS符号库“下载
  16. 攻防世界_Crypto_sherlock
  17. 基于STM32F767通过STM32CubeMX实现ModbusTCP
  18. 华为云大数据轻量级解决方案,让数据“慧”说话
  19. Go 打开文件,写入文件。
  20. 【小学信息技术教资面试】结构化问答模板

热门文章

  1. 联想r480安全模式_联想r480【处理思路】
  2. java编程思想书籍阅读_java编程思想-读书摘要(一)
  3. 如何利用并发性加速你的python程序(二):I/O 绑定程序加速
  4. 华为很好,但我不愿再回去
  5. 永中word页码怎么从第二页开始_江苏印刷网:Word操作技巧,解决打印难题
  6. sqlserver 2008 r2 下载地址和序列号,可用迅雷下载
  7. Python学习-- 魔法⽅法
  8. window.print()的确认和取消事件
  9. 大数据分析案例-基于随机森林算法探究电商网站推销商品的影响因素
  10. 用树莓派连接有线音箱做一个蓝牙音箱