本书链接:人工智能:一种现代的方法(第3版)

本人人工智能小白,为了恶补知识,所以买了一本综述型的入门教材。终于看完了第一部分,人工智能概述~~做一下笔记,便于后续记忆。

一、前提

AI的任务是设计Agent程序,实现的是把感知信息映射到行动的Agent函数。

二、什么是Agent

Agent就是能够行动的某种东西,具备自主的操作、感知环境、长期持续、适应变化并能创建与追求目标。

三、什么是合理Agent

合理Agent是一个为了实现最佳结果,或者,当存在不确定性时,为了实现最佳期望结果而行动的Agent。

  • 正确的推理
    合理行动的一种方法是逻辑地推理出给定行动将实现其目标的结论,然后遵照那个结论行动,但是正确的推理并不是合理性的全部。
  • 有限合理性
    当没有足够的时间来完成所有你想要做的计算时仍能恰当的行动。

四、什么是智能Agent

智能Agent要采取一个环境中最好的可能行为。
智能主要与理性行为相关。

五、Agent和环境的关系

Agent通过传感器感知环境并通过执行器对所处环境产生影响。

  • 感知是用来表示任何给定时刻Agent的感知输入。
  • Agent的感知序列是该Agent所受到的所有输入数据的完整历史。Agent在任何给定时刻的行动选择依赖于到那个时刻为止该Agent的整个感知序列。
  • Agent函数描述了Agent的行动,它将任意给定感知序列映射为行动。
    • Agent函数是抽象的数学描述
    • Agent程序是具体实现

六、理性-好的行为

6.1 什么是理性Agent

理性Agent是做事正确的Agent。

6.2 理性的判断依赖

  • 定义成功标准的性能度量
  • Agent对环境的先验知识
  • Agent可以完成的行动
  • Agent截止到此时的感知序列

6.3 理性Agent的定义

对每一个可能的感知序列,根据已知的感知序列提供的证据和Agent具有的先验知识,理性Agent应该选择能使其性能度量最大化的行动。

6.4 理性与全知的区别

  • 一个全知的Agent明确的知道它的行动产生的实际结果并且做出相应的动作。全知者在现实中是不可能的。
  • 理性是使期望的性能最大化,而完美是使实际的性能最大化。对Agent而言,完美是不太合理的要求。
  • 理性并不要求全知。理性的选择只依赖于到当时为止的感知序列。

6.5 理性Agent的两大特点

  1. 信息收集
    观察有助于期望性能的最大化。
  2. 自主学习
    从所感知的信息中尽可能多的学习,以弥补不完整的或者不正确的先验知识。

七、任务环境

7.1 定义:PEAS描述

  • Performance性能
  • Environment环境
  • Actuators执行器
  • Sensors传感器

7.2 设计Agent的第一步

尽可能完整地详细说明任务环境。

7.3 性质

7.3.1 完全可观察的vs部分可观察的

  • 如果Agent的传感器在每个时间节点上都能获取环境的完整状态,这个任务环境就是完全可观察的。否则,则是部分可观察的。
  • 如果传感器能够检测所有与行动决策相关的信息,该任务环境就是有效完全可观察的。
  • 如果Agent根本没有传感器,环境则是无法观察的。

7.3.2 单Agent vs 多Agent

区分两者的关键在于Agent B 行为的性能度量最大化是否需要依赖于Agent A的行为。

  • 竞争性的多Agent环境
    Agent B想要最大化自己的性能度量,就需要最小化Agent A的性能度量。

  • 合作性的多Agent环境
    Agent B想要最大化自己的性能度量,就需要最大化Agent A的性能度量。

  • 部分合作部分竞争的多Agent环境
    上述两种情况都会发生。

7.3.3 确定的 vs 随机的

如果环境的下一个状态完全取决于当前状态和Agent执行的动作,则该环境是确定的;否则,是随机的。

  • 不确定与随机的区别

    • 环境不确定是指 环境不是完全可观察的或不确定的,行动后果可能有多种,但与概率无关。
    • 环境随机是指后果是不确定的并且可以用概率来量化。

7.3.4 片段式 vs 延续式

片段式是指 当前决策不会影响到未来的决策。
延续式是指 当前决策会影响到所有未来的决策。

7.3.5 静态 vs 动态

如果环境在Agent计算的时候会变化,该环境是动态的,否则是静态的。
如果环境本身不随时间变化而变化,但Agent的性能评价随时间变化,则环境是半动态的。

7.3.6 离线 vs 连续

离线和连续的使用场景有:

  • 环境的状态
  • 时间的处理方式
  • Agent的感知信息和行动

7.3.7 已知 vs 未知

Agent的知识状态。
如果环境是未知的,Agent需要学习环境是如何工作的,以便做出好的决策。

7.4 最难处理的情况

部分可观察的、多Agent的、随机的、延续的、动态的、连续的和未知的环境。

8 Agent的结构

Agent = 体系结构 + 程序。

8.1 体系结构

体系结构:某个具备物理传感器和执行器的计算装置。

体系结构为程序提供来自传感器的感知信息,运行程序,并把程序计算出的行动决策送达执行器。

8.2 Agent程序的框架

8.2.1 输入

从传感器得到的当前感知信息

8.2.2 输出

执行器的行动抉择

8.2.3 基本的Agent程序

8.2.3.1 简单反射Agent
  • 定义
    基于当前的感知选择行动,不关注感知历史。
    最简单的Agent类型。
    针对完全可观察的环境。

  • 方法
    Step 1:首先构建一个通用的条件-行为规则解释器。
    Step 2:根据特定任务环境创建相应的规则集合。

  • 缺点
    在部分可观察环境中运转的简单反射Agent经常不可避免地陷入无限循环中。

  • 示意图和伪代码见书P44

8.2.3.2 基于模型的反射Agent
  • 定义

    • 世界模型:

      • 知识一:世界是如何独立于Agent而发展的信息
      • 知识二:Agent自身的行动如何影响世界
    • 使用世界模型的Agent称为基于模型的Agent

    • 通过将当前的感知信息与过去的内部状态结合来更新当前状态
    • 针对部分可观测环境
  • 缺点
    部分可观察环境中的Agent不能精准确定当前状态

  • 示意图和伪代码见书P46

8.2.3.3 基于目标的Agent
  • 定义
    既跟踪记录世界的状态,也记录它要达到的目标集合,并选择能(最终)导致目标达成的行动
  • 特点
    效率低、灵活、可学习。
  • 不适用的情况
    1. 多个目标互相冲突
    2. 有几个目标,但没有一个有把握达到

这两种情况,通过效用Agent可以解决

  • 示意图见P47
8.2.3.4 基于效用的Agent
  • 定义
    理性的基于效用的Agent 选择 期望效用最大化的行动,Agent在给定每个结果的概率和效用下,期望得到的平均效用。
  • 方法
    Step 1:使用关于世界的模型,以及对各个世界状态的偏好程度进行度量的效用函数。
    Step 2:选择可以取得最佳期望效用的行动。
    Step 3:通过结果的概率来确定权值,最佳期望效用是通过计算所有可能结果状态的加权平均值得到的。
  • 适用情况
    1、当多个目标互相冲突时,只有其中一些目标可以达到时,效用函数可以在它们之间适当的折中。
    2、当Agent有几个目标,但没有一个有把握达到时,效用函数可以在它们之间适当的折中。
  • 示意图见书P48

8.2.4 学习Agent的通用模型

8.2.4.1 学习元件

负责改进提高

8.2.4.2 性能元件

负责选择外部行动,接受感知信息并决策

8.2.4.3 评判元件

根据固定的性能指标告诉学习元件Agent的运转情况

8.2.4.4 问题产生器

负责可以得到新的和有信息的经验的行动提议,建议探索性行动

8.2.5 Agent程序的组件表示形式

8.2.5.1 原子表示

每个状态是不可见的,没有内部结构

8.2.5.2 要素化表示

将状态表示为变量或者特征的集合,每个变量或特征都可能有值。
两个不同的要素化表示可以共享一些特征。

8.2.5.3 结构化表示

描述对象之间的关系

8.3 Agent函数

输入:整个感知历史

《人工智能:一种现代的方法》读书笔记之 智能Agent相关推荐

  1. [麦肯锡三部曲] 麦肯锡三部曲(1) - 麦肯锡方法读书笔记

    朋友推荐读读麦肯锡方法对了解咨询方法,有利于提升自己的"发现问题","分析问题"和"解决问题"的方法及能力. 咨询也是一直我比较期望的技能, ...

  2. 《电路分析基础》第2章 电阻电路的基本分析方法 读书笔记

    <电路分析基础>第2章 电阻电路的基本分析方法 读书笔记 2-1图论的初步知识 图论的起源 一些基本概念 2-2基本电流法 2-3完备的独立电路变量 2-4节点电压法 2-5网孔电流法(删 ...

  3. 人工智能-一种现代的方法-chapter3-通过搜索进行问题求解

    人工智能-一种现代的方法(第3版)--Chapter 3-通过搜索进行问题求解 受到一名大佬的启发,向大佬学习使用写博客的方式进行人工智能原理的学习,这是第一篇,希望能坚持下去,最后,向大佬致敬@da ...

  4. 人工智能提纲式汇总+简要分析 可用于复习《人工智能——一种现代的方法》

    文章目录 人工智能 第一章 什么是AI 第二章 智能Agent 理性AI的任务环境的规范描述 第三章 通过搜索进行问题求解 1.搜索树 BFS 宽度优先搜索 UCS 一致代价搜索 DFS 深度优先算法 ...

  5. 计算机网络:自顶向下方法读书笔记(四)

    2.3 因特网中的电子邮件 电子邮件系统主要由3个内容组成:用户代理(useragent).邮件服务器(mail server).简单邮件传输协议(Simple Mail Transfer Proto ...

  6. 人工智能-一种现代的方法 全文总览

    一  总览全文 这本书分为八部分. 第一部分,人工智能,提供AI企业的看法 基于智能代理的思想 - 系统可以决定要做什么,然后再做. 第二部分 问题解决,集中于决定在需要考虑前进步骤时要做什么的方法 ...

  7. POD方法读书笔记(二)

    本文整理 (目前实际上就是先读一遍) 模型约化文献集第一部分第一章1的POD (Proper Orthogonal Decomposition) 方法和一些应用分析. POD for linear Q ...

  8. 《清醒思考的艺术:你最好让别人去犯的52种思维错误》读书笔记

    文章目录 自序 1 幸存偏误 2 游泳选手身材错觉 3 过度自信效应 4 从众心理 5 纠缅于沉没成本 6 互惠偏差 7 确认偏差之一 8 确认偏差之二 9 权威偏误 10 对比效应 11 现成偏差 ...

  9. 几种优化算法的读书笔记——梯度下降、牛顿法、拟牛顿法、随机梯度下降、AdaGrad、RMSProp、Adam及选择优化算法的建议

    文章目录 1 梯度下降 1.1 特点 1.2 思想 1.3 数学基础 1.4 具体算法 2 牛顿法和拟牛顿法 2.1 特点 2.2 牛顿法 2.2.1 数学基础 2.2.2 思想 2.2.3 具体算法 ...

  10. 《一本书读懂24种互联网思维》---- 读书笔记

    虽然书中很多内容,在IT 老司机来看都是老生常谈,但对于我们每个有互联网思维的小伙伴来说还是常读常新的. 很多我摘抄的内容,没有上下文语境不是很好理解,推荐花5个小时左右时间把书读一遍,算是温习一遍互 ...

最新文章

  1. 【青少年编程(第32周)】李老师太给力了!
  2. Coursera吴恩达《序列模型》课程笔记(1)-- 循环神经网络(RNN)
  3. ionic 之 获取验证码
  4. 《挑战程序设计竞赛》阅读笔记
  5. 怎么将CAD图纸快速导入转换成常见的黑白JPG格式?
  6. 信息安全和网络空间安全
  7. c++中文件打开失败
  8. 代挂php源码,[PHP源码]开心QQ等级代挂源码,无后门任意搭建分站
  9. 关于QQ截图中马赛克处理的想法
  10. ansible 以及填坑
  11. steam同乐无法连接远程计算机,Steam远程同乐功能怎么使用_Steam远程同乐功能使用方法_3DM单机...
  12. 软件性能测试场景设计,性能测试场景设计杂谈
  13. 如何用海思HI3516DV300/3518EV200推流H.264
  14. SQL Server高级教程
  15. 机器学习-57-Unsupervised Learning-09-More about Auto-Encoder(无监督学习之更多有关自编码器的介绍)
  16. 关于测试的一篇论文, 基于web端selenium的自动化测试设计与实现(有需要的联系我 此论文内容缺失,不要直接用 一经发现,后果自负)
  17. 【包管理器】vcpkg
  18. Mysql系列之六(视图,事务,触发器等)
  19. 基于COMSOL的固体力学或压力声学模块仿真声子晶体
  20. 无80和443端口下申请域名SSL证书(适用于 acme.sh 和 certbot)

热门文章

  1. MySQL之可视化软件
  2. Android 9.0的One UI系统,三星S9/S9+更新One UI 安卓9.0已正式推送
  3. 华为认证 HCNA­Cloud 云计算题库
  4. Pycharm安装包(类库)的方法总结及解决包下载慢的问题
  5. 暴雪:星际2仍在审批 筹划中国电竞联赛
  6. java学生管理系统代码
  7. HackerRank - Stock Maximize
  8. matlab之数据拟合
  9. android系统计步修改,安卓手机计步软件怎么修改步数 无需root轻松修改步数
  10. MATLAB拟合算法