人工智能06 能计划的agent
能计划的agent
存储与计算
响应agent的动作功能几乎没有做任何计算。从本质上讲,这些agent执行的动作或者由他们的设计者、或者通过学习、或者通过演化过程、或者由以上几方面的组合来选择给他们的。
一个能在复杂环境下执行复杂任务的反应型agent需要大量的存储。而且,这样一个反应型机器的设计者需要有超人类的预见能力,要为该机器能遇到的所有可能情况预期一个合适的反应。首先,考虑反应型机器人的设计者必须做一些计算的动作函数。这些计算肯定需要时间,但是他们将减少agent的存储要求和设计者的负担。即时间换空间。
状态空间图
作为一个例子,让我们考虑一个有A、B、C三个玩具积木的网络空间,开始时,三个积木都在地板上。假设机器人的最终目标是将A放在B上面,B放在C上面,C放在地板上。
假定agent能通过一对环境模型——一个代表动作执行前的环境状态,另一个代表动作执行后的环境状态。用列表结构图标模型,可表示所有积木都在地面时能采取的所有动作模型。


在这些情况中,((A,B),(C))和((A),(B,C))在某些方面似乎比其他更接近我们的目标(A,B,C),因此仅考虑单个动作的预期结果,agent可能宁愿执行动作move(A,B)或move(B,C)。在一个模拟环境中,只向前看一步常常就能产生有用的预期效果,但是多看几步,也许直到任务完成后的所有步骤都看到后就会发现一些捷径,从而避免走弯路。
如果大量可区分的环境状态足够小,那么一个代表所有可能动作和状态的图就能被显示的表达出来。如下图所示的状态空间图。每一个动作都是可逆的。从图中可以清楚地看到,如果初始状态是((A),(B),(C)),机器人任务是((ABC))的状态,那么他应该执行{move(B,C),move(A,B)}的动作序列。


从上图可以通过视觉容易地找到路径,然而为了发现路径,计算型agent要用各种图搜索过程。
顺着路径达到目标的所有弧的算子可以组合称为一个序列的计划。
搜索这个序列的过程称为规划。
这种从一系列动作结果得到的世界状态的预测过程称为规划方案。
显示状态空间搜索


从((BAC))转移到((ABC))的标记传播过程如下图所示,这种方法和所谓的广度优先算法相一致。




基于特征的状态空间
用图标模型标识节点来解释状态空间是相当直接的——可以很容易地使状态上的动作结果形象化。可以定义一个有特征标识的节点图,但此时,我们需要一种方法来描述一个动作是如何响应特征的。
例如,我们也可以训练一个网络,从它在t-1时刻的值和该时刻采取的动作来学习预测一个特征向量在时刻t时的值。如下图所示,虽然只显示了一层网络,但也可以使用具有隐藏单元的中间层。在训练后,预测网络能被用来计算来源于各种动作的特征向量。这些向量反过来又能作为网络的新输入来预测两步以后的特征向量,等等。


图记号


人工智能06 能计划的agent的更多相关文章
- 人工智能(七)逻辑Agent
一.逻辑 逻辑是一种可以从中找出结论的形式化语言. 句法(规则)用语言定义句子. 语义定义句子的含义.定义一个句子的真假性. 二.蕴含 即一个事情逻辑上是另一个事情的必然结果:KB ╞ α 知识库KB ...
- 人工智能2:智能Agent
一.Agent基本定义 基于理性行为的Agent是本书人工智能方法的核心.Agent由传感器.执行器两个重要元件组成,具有与环境交互的能力,其能力是通过分析感知序列,经过Agent函数映射到相应的行动 ...
- 三星抛出万亿投资计划 布局四大科技创新领域(5G、人工智能、汽车半导体、生物技术四大新兴产业)
三星近日抛出震惊世人的投资计划,未来三年将在全球范围新增投资180万亿韩元(约1万亿元人民币).新增员工4万名.这是韩国单一企业集团大规模的投资计划. 笔者获悉,三星万亿投资计划主要分两大部分,一是在 ...
- 从Count看Oracle执行计划的选择
一. 前言 在调查一个性能问题的时候,一个同事问道,为什么数据库有些时候这么不聪明,明明表上有索引,但是在执行一个简单的count的时候居然全表扫描了!难道不知道走索引更快么? 试图从最简单的coun ...
- 【转】人工智能(AI)资料大全
这里收集的是关于人工智能(AI)的教程.书籍.视频演讲和论文. 欢迎提供更多的信息. 在线教程 麻省理工学院人工智能视频教程 – 麻省理工人工智能课程 人工智能入门 – 人工智能基础学习.Peter ...
- Oracle rownum影响运行计划
今天调优一条SQL语句,因为SQL比較复杂,用autotrace非常难一眼看出哪里出了问题,直接上10046. SELECT AB.* FROM (SELECT A.*, rownum RN FROM ...
- 【机器学习Machine Learning】资料大全
昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】
转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...
- devops工具-Ansible基础
一.Ansible介绍 简介 Ansible使用Python语言开发,是一个配置管理型工具,与之类似的工具还有Puppet.SaltStack.chef等,默认通过SSH协议进行远程命令执行或 ...
随机推荐
- 部署dashboard
1.获取k8s版本: 2.访问dashboard的github:https://github.com/kubernetes/dashboard/releases,然后找到对应的版本 3.然后将yaml ...
- jenkins 批量修改svn 地址
svn服务器的ip变了,jenkins里那么多任务一个个修改要疯了, 每个已经创建后的任务的svn 地址都配置在 jenkins 主目录下的jobs 里对应的任务下的config.xml 里 在job ...
- 题解 【HEOI2016】tree树
题面 解析 其实这题可以考虑离线做法,用并查集解决. 因为仔细想,添加标记并不方便, 但如果用并查集记录下祖先, 再一一删除,就会方便很多. 先把每次操作记录下来, 同时记录下每个点被标记的次数(因为 ...
- pdf缩略图上传组件
之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...
- 25.Python逻辑运算符及其用法
逻辑运算符是对真和假两种布尔值进行运算(操作 bool 类型的变量.常量或表达式),逻辑运算的返回值也是 bool 类型值. Python 中的逻辑运算符主要包括 and(逻辑与).or(逻辑或)以及 ...
- git commit -m "XX"报错 pre -commit hook failed (add --no-verify to bypass)问题
在同步本地文件到线上仓库的时候 报错 pre -commit hook failed (add --no-verify to bypass) 当你在终端输入git commit -m "xx ...
- 【黑马JavaSE】1.2.算术\赋值\比较\逻辑\三元运算符、方法入门、JShell编译器
文章目录 1_1_6_05_算术运算符_四则与取模运算 1_1_6_06_算术运算符_加号的多种 1_1_6_07_算术运算符_自增自减运算 1_1_6_08_赋值运算符 这里挺关键的,为什么一个by ...
- mysql字符串函数:FIND_IN_SET()使用方法详解
语法: FIND_IN_SET(str,strlist) 第一个参数str是要查找的字符串. 第二个参数strlist是要搜索的逗号分隔的字符串列表. 假如字符串str 在由N 子链组成的字符串列表s ...
- 文字和符号组合成图 Banner
springboot 启动 logo.... 文字符号组合成的图. <<< | /\\\ /--\\\ / \\\\ <*| /________\\\\ | ___ | | | ...
- DP&图论 DAY 4 下午图论
DP&图论 DAY 4 下午 后天考试不考二分图,双联通 考拓扑排序 图论 图的基本模型 边: 有向边构成有向图 无向边构成无向图 权值: 1.无权 2.点权 3.边权 4.负权(dij不 ...