- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《人工智能》-第八章 机器人规划
中南大学 智能系统与智能软件研究所 第八章 机器人规划 8.1 机器人规划的作用与任务8.1.1 规划的作用与问题分解途径 规划的概念及作用 规划的概念 规划是一种重要的问题求解技术,它从某个特定的问题状态出发,寻求一系列行为动作,并建立一个操作序列,直到求得目标状态为止。 图8.1 子规划的分层结构例子 规划的作用 规划可用来监控问题求解过程,并能够在造成较大的危害之前发现差错。规划的好处可归纳为简化搜索、解决目标矛盾以及为差错补偿提供基础。 问题分解途径及方法 把某些比较复杂的问题分解为一些比较小的子问题。有两条能够实现这种分解的重要途径。 第一条重要途径是当从一个问题状态移动到下一个状态时,无需计算整个新的状态,而只要考虑状态中可能变化了的那些部分。 第二条重要途径是把单一的困难问题分割为几个有希望的较为容易解决的子问题。 8.1.2 机器人规划系统的任务与方法 在规划系统中,必须具有执行下列各项任务的方法: 根据最有效的启发信息,选择应用于下一步的最好规则。 应用所选取的规则来计算由于应用该规则而生成的新状态。 对所求得的解答进行检验。 检验空端,以便舍弃它们,使系统的求解工作向着更有效的方向进行。 检验殆正确的解答,并应用具体的技术使之完全正确。 8.2 积木世界的机器人规划 8.2.1 积木世界的机器人问题 积木世界由一些有标记的立方形积木,互相堆迭在一起构成;机器人有个可移动的机械手,它可以抓起积木块并移动积木从一处至另一处。 在这个例子中机器人能够执行的动作举例如下: unstack(a,b):把堆放在积木b上的积木a拾起。在进行这个动作之前,要求机器人的手为空手,而且积木a的顶上是空的。 stack(a,b):把积木a堆放在积木b上。动作之前要求机械手必须已抓住积木a,而且积木b顶上必须是空的。 pickup(a):从桌面上拾起积木a,并抓住它不放。在动作之前要求机械手为空手,而且积木a顶上没有任何东西。 putdown(a):把积木a放置到桌面上。要求动作之前机械手已抓住积木a。 研究内容是综合机器人的动作序列,即在某个给定初始情况下,经过某个动作序列而达到指定的目标。 机器人问题的状态描述和目标描述均可用谓词逻辑公式构成: ON(a,b):积木a在积木b之上。 ONTABLE(a):积木a在桌面上。 CLEAR(a):积木a顶上没有任何东西。 HOLDING(a):机械手正抓住积木a。 HANDEMPTY:机械手为空手。 图8.4(a)所示为初始布局的机器人问题。 目标在于建立一个积木堆,其中,积木B堆在积木C上面,积木 A又堆在积木B上面,如图8.4(b)所示。 初始布局可由下列谓词公式的合取来表示: CLEAR(B):积木B顶部为空 CLEAR(C):积木C顶部为空 ON(C,A):积木C堆在积木A上 ONTABLE(A):积木A置于桌面上 ONTABLE(B):积木B置于桌面上 HANDEMPTY:机械手为空手 8.2.2 用F规则求解规划序列 STRIPS规划系统的规则由3部分组成: 第一部分是先决条件。 第二部分是一个叫做删除表的谓词。 第三部分叫做添加表。 例:表示堆积木的例子中move这个动作,如下所示: move(x,y,z):把物体x从物体y上面移到物体z上面。 先决条件:CLEAR(x), CLEAR(z),ON(x,y) 删除表: ON(x,z), CLEAR(z) 添加表: ON(x,z), CLEAR(y) 如果move为此机器人仅有的操作符或适用动作,那么,可以生成如图8.5所示的搜索图或搜索树。 机器人的4个动作(或操作符)可用STRIPS形式表示如下: stack(X,Y) 先决条件和删除表: HOLDING(X)∧CLEAR(Y) 添加表: HANDEMPTY,ON(X,Y) unstack(X,Y) 先决条件: HANDEMPTY∧ON(X,Y)∧CLEAR(X) 删除表: ON(X,Y),HANDEMPTY 添加表: HOLDING(X),CLEAR(Y) pickup(X) 先决条件:ONTABLE(X)∧CLEAR(X)∧HANDEMPTY
文档评论(0)