Agent

首先,何为Agent?通过传感器感知环境,并通过执行器对所处环境产生影响。

Agent的感知序列:是该Agent存储的所有输入历史的完整数据。

Agent函数

Agent函数是抽象的数学描述,Agent程序是具体实现。

两者区别:

  1. 每个Agent函数都可以由机器/程序组合呈现。False。受机器的运算能力和存储能力限制。
  2. 一个Agent函数可能对应多个Agent程序。True。Agent程序与运行平台关联。

例题:

  1. 实现给定Agent函数的Agent程序是否可以有多个?True。比如添加一些代理程序,只输入不会影响输出的空值。
  2. 有些Agent函数不能被任何agent程序构成?True。比如图灵机。
  3. 给定一个固定的机器结构,任意agent程序都会精确执行一个agent函数吗?True。agent的行为被结构和程序固定。
  4. 给一个能存储n位的机器,问有多少不同的agent程序在那?有2**n个不同的程序,但是大部分都不会执行。因为每个程序占用n个内存明显机器内存不足。
  5. 设想我们现在保持agent程序固定,但是我们加快机器运行速度为两倍,会影响agent函数吗?这取决于程序和环境。 如果环境是动态的,则加快机器速度可能意味着选择不同(也许更好)的动作。 如果环境是静态的,并且程序不在意运行时间,agent函数保持不变。

理性Agent

定义:基于已知信息追求最大化目标收益。

  1. 一个理性的打牌Agent不可能输。False。应该是在已知牌面的情况下输的最少。
  2. 一个Agent只能感知状态的部分信息,呢么不可能是理性的。False。理性不等于全知。

理性与全知的区别:

  • 一个全知的Agent能明确的知道他的行动带来的实际后果。全知在现实中不存在。
  • 理性是使期望的性能最大化,而完美是使实际最大化,对Agent而言,完美是不太合理的要求。
  • 理性并不要求全知。理性的选择只依赖于到当前为止的感知序列。

任务环境(PEAS)

  • Performance 性能
  • Environment 环境
  • Actutor 执行器
  • Sensor 感知器

自动驾驶出租车的PEAS:
Performance measure: 遵守交通规则,安全驾驶
Environment:有车的公路
Actuator: 停车、加速、减速、转弯
Sensors: 摄像头、红外、车轮解码器等

      任务环境的性质:

1、fully observable vs. partially observable

如果Agent传感器在每个时间点上都可以获取环境的完整状态,这个任务环境就是完全可观察的。否则,是部分可观察的。

如果传感器能够检测所有与行动决策有关的信息,该任务环境就是完全有效可观察的。

如果Agent压根没有传感器,环境是无法观察的。

2、singel agent vs. multiagent

区分两者的关键在于Agent B 行为的性能度量最大化是否需要依赖于Agent A的行为。
竞争性的多Agent环境:
Agent B想要最大化自己的性能度量,就需要最小化Agent A的性能度量。(国际象棋)
合作性的多Agent环境:
Agent B想要最大化自己的性能度量,就需要最大化Agent A的性能度量。(车辆驾驶)
部分合作部分竞争的多Agent环境 (随机行为是理性的,这样可以避免预测中的缺陷)

3、deterministic vs. stotastic

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

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

4、episodic(片段) vs. sequential(延续)

在sequential中,当前动作会对未来产生深远影响,比如国际象棋和自动驾驶。episodic要比sequential简单的多,因为它不需要提前考虑什么东西。

5、static vs. dynamic

如果环境在Agent计算的时候会变化,该环境是动态的,否则是静态的。

如果环境本身不随时间变化而变化,但Agent的性能评价随时间变化,则环境是半动态的。

6、discreate vs. continuous

国际象棋是离散的,因为它有有限个离散的状态。自动驾驶室连续的,它包括不间断的摄像头和语音输入。

7、known vs. unknown

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

最难处理的情况

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

例题:

体操艺术表演:Partially observable, stochastic, sequential, dynamic, continuous, multi-agent.

探索太平洋海底:Partially observable, stochastic, sequential, dynamic, continuous, single agent (unless

there are alien life forms that are usefully modeled as agents).

玩橄榄球:Partially observable, stochastic, sequential, dynamic, continuous, multi-agent.

购买用于AI的书籍:Partially observable, deterministic, sequential, static, discrete, single agent. This can be

multi-agent and dynamic if we buy books via auction, or dynamic if we purchase on a
long enough scale that book offers change.

A simple Reflex agnet:

它的行为只取决于当前状态和感知。

  • 基于当前的感知选择行动,不关注感知历史。 针对完全可观察的环境。
  • 无法处理动态的、随机的、延续的、部分可观察的任务环境

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

简单反射Agent中的问题

规则构建与存储困难
规则冲突
不能存储历史信息(无限循环)
不能处理世界的随机性、变化性
缺点 :在部分可观察环境中运转的简单反射Agent经常不可避免地陷入无限循环中。
解决办法:行动随机化

Model-based reflex agents:

它的行为由内部模型状态决定。

Agent应该根据感知历史维持内部状态,从而至少反映出当前状态看不到的信息。部分可观察、动态的、片段式的。

随时更新内部状态信息要求在Agent程序中加入两种类型的知识:
知识一:世界是如何独立于Agent而发展的信息
知识二:Agent自身的行动如何影响世界

缺点 :部分可观察环境中的Agent不能精准确定当前状态

Goal-based Agent:

根据目标最大化做出相应行动。

既跟踪记录世界的状态,也记录它要达到的目标集合,并选择能(最终)导致目标达成的行动

特点 :

主要用在搜索和规划问题中:Agent 需要一个目标来了解期望达到什么状况
随着达到目标所需要的动作数目的增多,问题越来越难求解

虽然显得效率较低,但更灵活。因为支持它决策的知识被显示表现出来,且可以修改。

部分可观察、动态的、连续式的

不适用的情况:
多个目标互相冲突
有几个目标,但没有一个有把握达到
这两种情况,通过效用Agent可以解决

Utility-based agents:

基于预期实用性最大化。

  • 理性的基于效用的Agent:选择期望效用最大化的行动,Agent在给定每个结果的概率和效用下,期望得到的平均效用。

  • Agent的效用函数是性能度量的内在化。实际实现时因为计算复杂性而不可能完美达成。

  • 方法
    Step 1:使用关于世界的模型,以及对各个世界状态的偏好程度进行度量的效用函数。
    Step 2:选择可以取得最佳期望效用的行动。
    Step 3:通过结果的概率来确定权值,最佳期望效用是通过计算所有可能结果状态的加权平均值得到的。

    适用情况
    1、当多个目标互相冲突时,只有其中一些目标可以达到时,效用函数可以在它们之间适当的折中。
    2、当Agent有几个目标,但没有一个有把握达到时,效用函数可以在它们之间适当的折中。

NO.73——《人工智能·一种现代方法》Agent学习笔记相关推荐

  1. ListView的两种使用方法--Android学习笔记

    1. 继承ListActivity ,使用listActivity中的  setListActivity()方法,注意在xml中listView的id一定要设置为android:id="@+ ...

  2. 人工智能 一种现代方法 第10章 经典的规划问题(classical planning)

    文章目录 规划问题定义(PDDL)为一个搜索问题 状态空间搜索规划算法 前向状态空间搜索 后向相关状态搜索 规划的启发式 资源分享 本文旨在讲明: 1)规划问题定义(PDDL)为一个搜索问题 2)前向 ...

  3. 人工智能 一种现代方法 第11章 现实世界的规划与行动

    文章目录 时间.调度和资源 车间调度问题 忽略资源约束的时间调度问题:关键路径方法 有资源约束的时间调度问题 分层规划 搜索原语解 搜索抽象解 非确定性问题的规划 无传感器规划 应急规划 资源分享 本 ...

  4. 人工智能 一种现代方法 第5章 对抗搜索

    文章目录 博弈 博弈中的优化决策 Minmax算法(极小极大算法) 多人博弈时的最优决策 α-β剪枝(重点) 不完美的实时决策 评估函数 截断搜索 向前剪枝 资源分享 博弈 对抗搜索:竞争环境中每个A ...

  5. 人工智能 一种现代方法 第14章 概论推理

    文章目录 贝叶斯网络 贝叶斯网络是什么 一种构造贝叶斯网络的方法 条件分布的有效表示 贝叶斯网络的精确推理 推理任务 通过枚举进行推理 变量消元算法(避免重复计算) 贝叶斯网络的近似推理 直接采样 似 ...

  6. SVO中 Inverse Compositional Image Alignment方法的学习笔记

    SVO中 Inverse Compositional Image Alignment方法的学习笔记 这篇文章 光流法简介 逆向光流法 结尾 这篇文章  在SVO系统中的"Relaxation ...

  7. 7 种 Javascript 常用设计模式学习笔记

    7 种 Javascript 常用设计模式学习笔记 由于 JS 或者前端的场景限制,并不是 23 种设计模式都常用. 有的是没有使用场景,有的模式使用场景非常少,所以只是列举 7 个常见的模式 本文的 ...

  8. 基于迁移学习的旋转机械故障诊断方法研究学习笔记

    基于迁移学习的旋转机械故障诊断方法研究学习笔记 现在大一点的神经网络模型也要求数据量的足够大,但是对于小样本的数据,有一些神经网络模型也能够处理的很好 2. 这是现在神经网络也要求的数据最好能够独立同 ...

  9. python面向对象编程中方法和属性_Python面向对象编程中关于类和方法的学习笔记...

    Python面向对象编程中关于类和方法的学习笔记 类与类方法是面向对象的编程语言中必不可少的特性,本文总结了Python面向对象编程中关于类和方法的学习笔记,需要的朋友可以参考下 类和实例 pytho ...

  10. 人工智能全栈学习路线之人工智能概览(百度云智学院学习笔记)

    最近参加了百度云智学院的AI学习课程,下面是课程链接: 人工智能全栈学习路线 课程内容通俗易懂,下面是我在学习的过程中整理的笔记 AI趣味课堂 人工智能基础知识 计算机视觉 自然语言处理 语音任务 人 ...

最新文章

  1. 机电传动控制第二周学习笔记
  2. Java初学者必看2
  3. oracle误删表空间 无法关闭,oracle 误删表空间文件启动不了数据库的解决办法
  4. 哈尔滨工业大学计算机学院官网,哈尔滨工业大学计算机学院 唐好选 tanghx@hope.hit...
  5. SAP成都研究院小伙伴们开发的一个SAP C4C POC - 通过名片扫描的方式录入联系人数据到系统
  6. CF2B The least round way(贪心+动规)
  7. websocket阮一峰博客地址教学
  8. python从小白到大牛pdf 下载 资源共享_Kotlin从小白到大牛 (关东升著) 中文pdf高清版[12MB]...
  9. 一行指令造成 60 亿美元蒸发,更让 Facebook 遭遇史诗级故障!
  10. PHP如何读取excel文,PHP-php如何读取excel?
  11. matlab 线性规划求最大值,MATLAB求解线性规划(含整数规划和01规划)问题.pdf
  12. 安装ubuntu18.04报:failed to load ldlinux.c32
  13. JS实现网页二维码扫描功能
  14. 什么是网络,网络类型,网络结构
  15. 编程入门先学什么 c语言软件,编程入门先学什么软件
  16. 一场分销裂变活动,不止是发发朋友圈这么简单
  17. 移动应用的引导模式设计
  18. 【记录】一次项目架构的设计
  19. Fail-Fast和Fail-Safe的解释
  20. php-cs-fixer实践

热门文章

  1. 引入隔离率与潜伏人员的SIR模型附matlab代码
  2. js总结(11) 语法字典 各种小应用
  3. 判断是否为数组的函数: isArray()
  4. C语言设计模式(继承、封装、多态)
  5. 案例3-1-1 构建旁挂二层组网隧道转发WLAN
  6. 个人帐簿管理系统设计c语言,个人账簿管理系统设计.doc
  7. 操作系统_进程管理系统设计_课程设计报告
  8. 计算机的收获初一作文,写收获的初一作文五篇
  9. ios开发防止App被抓包
  10. PMP证书续证详细流程!!