*智能体和环境
理性智能的概念是研究人工智能方法的核心。智能体的行为取决于环境的性质。任何通过传感器感知环境并通过执行器作用于环境的事物都可以被视作智能体。
从数学上讲,智能体的行为由智能体函数描述,该函数将任意给定的感知序列映射到一个动作。原则上我们可以通过尝试所有可能的感知序列并记录智能体响应的动作来制定描述任何智能体的智能体函数表格。但表只是智能体的外部特征。在内部,人工智能体的智能体函数将由智能体程序实现。智能体函数是一种抽象的数学描述任何,而智能体程序是一个具体的实现。
*良好行为:理性的概念
理性智能体是做正确事情的事物。结果主义通过结果来评估智能体的行为。性能度量描述评估任何给定环境状态的序列。
机器不同于人,没有自己的欲望和偏好。我们必须接受这样一种可能:因为无法预测每个用户的确切偏好而将错误的目的施加给机器。因此,可能需要构建相应的智能体,它能够反映真实性度量的初始不确定性,并随着时间的推移对其了解更多。
在任何时候,理性取决于四方面:
1.定义成功标准的性能度量
2.智能体对环境的先验知识
3.智能体可以执行的动作
4.智能体到目前为止的感知序列
理性智能体的定义即对于每个可能的感知序列,给定感知序列提供的证据和智能体所拥有的任何先验知识,理性智能体应该选择一个期望最大化其性能度量的动作。
我们需要区分理性和全知,全知的智能体能预知其行动的实际,但在现实中,全知是不可能的。理性不等同于完美,理性使得期望性能最大化而完美使实际性能最大化。因为观察有助于最大化期望性能,理性的重要组成部分为信息收集。我们要求理性智能不仅要收集信息还要尽可能多地从它所感知到的东西中学习。
如果智能体依赖于其设计者的先验知识,而不是其自身的感知和学习的过程,我们就说该智能体缺乏自主性。
*环境的本质
在设计智能体时,第一步是尽可能完整地指定任务环境。PEAS包括性能度量、环境、执行器、传感器。
人工智能中可能出现的任务环境范围非常广泛。任务环境的属性主要有七种分法:
1.完全可观测与部分可观测
2.单智能体的与多智能体的
3.确定性的与非确定性的
4.回合式的与序贯的
5.静态的与动态的
6.离散的与连续的
7.已知的与未知的
*智能体的结构
智能体=架构+程序
智能体的程序(将当前感知作为输入)和智能体函数(可能依赖整个感知历史)有区别。4种基本的智能体程序体现了几乎所有智能系统的基本原理。
1.简单反射性智能体
根据当前感知选择动作,忽略感知历史的部分。但它们的智能有限,只有在环境完全可预测的情况下才能做出正确的决策。
2.基于模型的反射型智能体
处理部分可预测性的最有效的方法是让智能体追踪它现在观测不到的部分世界智能体应该维护某种依赖于感知历史的内部状态。
转移模型和传感器模型结合在一起让智能体能够在传感器受限的情况下尽可能地追踪世界的状态。
3.基于目标的智能体
除了当前状态的描述之外,智能体还需要某种描述理想情况的目标信息。搜索和规划是人工智能的子领域,专门用于实现智能体目标的动作序列。
尽管基于目标的智能体看起来效率较低,但他更灵活。
4.基于效用的智能体
从技术上讲,基于效用的理性智能体会选择能够最大化其动作结果期望效用的动作。
任何理性智能体的行为都必须表现得好像拥有一个效用函数,并试图最大化其期望值。具有显式效用的智能体可以使用通用算法做出理性决策,该算法不依赖于特定效用函数的最大化。通过这种方式,理性的“全局”定义变成了对理性智能体设计的“局部”约束,并可以通过一个简单的程序来表示。
5.学习型智能体
任何类型的智能体都可以构建成学习型智能体。学习型智能体能够在最初未知的环境中运作,并变得比最初的知识可能允许的能力更强。
学习型智能体分为4个概念组件,最重要的区别在于负责提升的学习元素,负责选择外部行动的性能元素,评估者对智能体表现的反馈并以此确定应该如何修改性能元素以在未开做得更好。问题生成器负责建议动作,这些动作将获得全新和信息丰富的经验。
*智能体程序的组件如何工作
出于目的,将世界理解为存在着相互关联的事物,而不仅仅是具有值的变量。
原子表示,因子化表示和结构化表示所在的轴是表达式增强的轴,即可以通过简洁的描述捕捉到更具表达性的表示。为了避免缺点的同时获得表达性表示的好处,真实世界中的智能系统可能需要轴上所有的点同时运行。
轴涉及从概念到物理记忆中位置的映射,包括计算机的内存和大脑的记忆,如果概念和记忆位置之间存在一对一的映射,称之为局部表示,如果一个概念的表示分布在多个记忆位置,每个记忆位置被用作多个不同概念表示的一部分,我们称之为分布式表示。在分布式表示中,可以把每个概念想象成多维空间中的一个点,可以从一定程度上降低对乱码的影响。