当前位置:   article > 正文

《人工智能:一种现代的方法》读书笔记之 智能Agent_人工智能:一种现代的方法读后感

人工智能:一种现代的方法读后感

本书链接:人工智能:一种现代的方法(第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函数

输入:整个感知历史

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/608783
推荐阅读
相关标签
  

闽ICP备14008679号