文档介绍:第八章机器人规划
机器人规划的作用与任务
积木机器的机器人规划
STRIPS规划系统
具有学习能力的规划系统
基于专家系统的机器人规划
小结
2
机器人规划的作用与任务 规划的作用与问题分解途径
规划的概念及作用
规划的概念
规划是一种重要的问题求解技术,它从某个特定的问题状态出发,寻求一系列行为动作,并建立一个操作序列,直到求得目标状态为止。
子规划的分层结构例子
工作日规划
上午子规划
中午子规划
下午子规划
吃夹心面包
阅读
写作
回家
去上班
阅读文章
3
规划的作用
规划可用来监控问题求解过程,并能够在造成较大的危害之前发现差错。规划的好处可归纳为简化搜索、解决目标矛盾以及为差错补偿提供基础。
问题分解途径及方法
把某些比较复杂的问题分解为一些比较小的子问题。有两条能够实现这种分解的重要途径。
第一条重要途径是当从一个问题状态移动到下一个状态时,无需计算整个新的状态,而只要考虑状态中可能变化了的那些部分。
第二条重要途径是把单一的困难问题分割为几个有希望的较为容易解决的子问题。
4
机器人规划系统的任务与方法
在规划系统中,必须具有执行下列各项任务的方法:
根据最有效的启发信息,选择应用于下一步的最好规则。
应用所选取的规则来计算由于应用该规则而生成的新状态。
对所求得的解答进行检验。
检验空端,以便舍弃它们,使系统的求解工作向着更有效的方向进行。
检验殆正确的解答,并应用具体的技术使之完全正确。
5
积木世界的机器人规划 积木世界的机器人问题
积木世界由一些有标记的立方形积木,互相堆迭在一起构成;机器人有个可移动的机械手,它可以抓起积木块并移动积木从一处至另一处。
C
B
A
机械手
6
在这个例子中机器人能够执行的动作举例如下:
unstack(a,b):把堆放在积木b上的积木a拾起。在进行这个动作之前,要求机器人的手为空手,而且积木a的顶上是空的。
stack(a,b):把积木a堆放在积木b上。动作之前要求机械手必须已抓住积木a,而且积木b顶上必须是空的。
pickup(a):从桌面上拾起积木a,并抓住它不放。在动作之前要求机械手为空手,而且积木a顶上没有任何东西。
putdown(a):把积木a放置到桌面上。要求动作之前机械手已抓住积木a。
积木世界的机器人规划
7
研究内容是综合机器人的动作序列,即在某个给定初始情况下,经过某个动作序列而达到指定的目标。
机器人问题的状态描述和目标描述均可用谓词逻辑公式构成:
ON(a,b):积木a在积木b之上。
ONTABLE(a):积木a在桌面上。
CLEAR(a):积木a顶上没有任何东西。
HOLDING(a):机械手正抓住积木a。
HANDEMPTY:机械手为空手。
积木世界的机器人规划
8
(a)所示为初始布局的机器人问题。
目标在于建立一个积木堆,其中,积木B堆在积木C上面,积木 A又堆在积木B上面,(b)所示。
C
B
A
机械手
A
B
C
机械手
(a)初始布局(b)目标布局
积木世界的机器人问题
积木世界的机器人规划
9
初始布局可由下列谓词公式的合取来表示:
CLEAR(B):积木B顶部为空
CLEAR(C):积木C顶部为空
ON(C,A):积木C堆在积木A上
ONTABLE(A):积木A置于桌面上
ONTABLE(B):积木B置于桌面上
HANDEMPTY:机械手为空手
积木世界的机器人规划
10
用F规则求解规划序列
STRIPS规划系统的规则由3部分组成:
第一部分是先决条件。
第二部分是一个叫做删除表的谓词。
第三部分叫做添加表。
积木世界的机器人规划