人工智能:第八章 自动规划

作者:GarfieldEr007

第八章自动规划

教学内容:介绍自动规划的基本概念和各种规划系统。

教学重点:机器人规划的作用与任务、积木世界的规划系统、具有学习能力的规划系统、基于专家系统的规划机理。

教学难点:具有学习能力的规划系统。

教学方法:课堂教学为主,注意结合例子来说明抽象概念。

教学要求:本章为选修内容,掌握机器人规划的作用与任务,并一般了解有哪几种规划方法。

8.1机器人规划的作用与任务

教学内容:引入规划的概念,说明问题分解途径,然后讨论自动规划系统的任务。

教学重点:机器人规划的作用。

教学方法:课堂教学。

教学要求:掌握机器人规划的作用与任务。

8.1.1规划的作用与问题分解途径

1、规划的概念及作用

  规划的概念:规划是一种重要的问题求解技术,它从某个特定的问题状态出发,寻求一系列行为动作,并建立一个操作序列,直到求得目标状态为止。

  规划的作用:规划可用来监控问题求解过程,并能够在造成较大的危害之前发现差错。规划的好处可归纳为简化搜索、解决目标矛盾以及为差错补偿提供基础。

2、问题分解途径及方法

  把某些较复杂的问题分解为一些较小的子问题。有两条实现这种分解的重要途径。

  第一条重要途径是当从一个问题状态移动到下一个状态时,无需计算整个新的状态,而只要考虑状态中可能变化了的那些部分。

  第二条重要途径是把单一的困难问题分割为几个有希望的较为容易解决的子问题。

3、域的预测和规划的修正

举例:以工作日计划来形象地说明规划的作用。

 

8.1.2机器人规划系统的任务与方法

  在规划系统中,必须具有执行下列各项任务的方法:

  (1) 根据最有效的启发信息,选择应用于下一步的最好规则。

  (2) 应用所选取的规则来计算由于应用该规则而生成的新状态。

  (3) 对所求得的解答进行检验。

  (4) 检验空端,以便舍弃它们,使系统的求解工作向着更有效的方向进行。

  (5) 检验殆正确的解答,并应用具体的技术使之完全正确。

  下面讨论能够执行上述5项任务的方法。

1、选择和应用规则

  在选择合适的应用规则时最广泛采用的技术是:首先要查出期望目标状态与现有状态之间的差别集合,然后辨别出那些与减少这些差别有关的规则。

2、检验解答与空端

  当规划系统找到一个能够把初始问题状态变换为目标状态的操作符序列时,此系统就成功地求得问题的一个解答。

  如果搜索过程是从初始状态正向推理的,那么可以删去任何导致某种状态的路径,从这种状态出发是无法达到目标状态的。

  如果搜索过程是从目标状态逆向推理的,那么当确信无法达到初始状态,或者搜索过程进展甚微时,可以终止该路径的搜索。

3、修正殆正确解

  一个求解殆可分解问题的办法是:当执行与所提出的解答相对应的操作符序列时,检查求得的状态,并把它与期望目标加以比较。

  修正一个殆正确的解答的较好办法是注意有关出错的知识,然后加以直接修正。

 

8.2 积木世界的机器人规划

教学内容:寻求某个机器人的动作序列(可能包括路径等)

教学重点:机器人问题求解。

教学难点:F规则求解机器人规划序列。

教学方法:课堂教学。

教学要求:了解问题求解的目标与一般过程、掌握积木世界的机器人规划方法。

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.1积木世界的机器人问题应用谓词公式的合取来表示为:ON(BC)ON(AB)

 

8.2.2 F规则求解规划序列

  采用F规则表示机器人的动作,这是一个叫做STRIPS规划系统的规则,它由3部分组成。

  第一部分是先决条件。为了使F规则能够应用到状态描述中去。

  第二部分是一个叫做删除表的谓词。当一条规则被应用于某个状态描述或数据库时,就从该数据库删去删除表的内容。

  第三部分叫做添加表。当把某条规则应用于某数据库时,就把该添加表的内容添进该数据库。

 

8.3 STRIPS规划系统

教学内容:STRIPS规划系统的机理,规划的目标与实现方法。

教学重点:STRIPS系统的组成

教学难点:STRIPS规划过程的描述

教学方法:课堂教学

教学要求:掌握STRIPS机器人规划系统的组成,了解规划过程的描述

8.3.1 STRIPS系统的组成

  整个STRIPS系统的组成如下:

  (1) 世界模型。为一阶谓词演算公式。

  (2) 操作符(F规则)。包括先决条件、删除表和添加表。

  (3) 操作方法。应用状态空间表示和中间-结局分析。

  例如:状态:(MG),包括初始状态、中间状态和目标状态。

  初始状态:(M0(G0))

  目标状态:得到一个世界模型,其中不遗留任何未满足的目标。

8.3.2 STRIPS系统规划过程

  每个STRIPS问题的解答为某个实现目标的操作符序列,即达到目标的规划。下面举例说明STRIPS统规划的求解过程。

  例1 考虑STRIPS系统一个比较简单的情况,即要求机器人到邻室去取回一个箱子。机器人的初始状态和目标状态的世界模型示于图8.4。设有两个操作符,即gothrupushthru(“走过”和“推过”),分别描述于下:

  OP1gothru(d,r1,r2)

  机器人通过房间r1和房间r2之间的d,即机器人从房间r1走过门d而进入房间r2。先决条件:INROOM (ROBOTr1)CONNECTS(d,r1,r2);机器人在房间r1内,而且门d连接r1r2两个房间。

  删除表:INROOM(ROBOTS);对于任何S值。

  添加表:INROOM(ROBOTr2)

  OP2pushthru(b,d,r1,r2)

  机器人把物体b从房间r1经过门d推到房间r2

  先决条件:INROOM(b,r1)INROOM(ROBOT,r1)CONNECTS(d,r1,r2)删除表    :INROOM(ROBOTS)INROOM(bS);对于任何S

  添加表:INROOM(ROBOTr2),INROOM(b,r2)

 

8.4具有学习能力的规划系统

教学内容:介绍一个叫做PULP-(Purdue University Learning Program)的具有学习能力的机器人规划系统的结构和操作方式,了解规划系统的模型和规划方法。

教学重点:系统的结构与操作方式。

教学难点:规划系统的学习方法。

教学方法:课堂教学。

教学要求:了解具有学习能力的机器人规划系统的规划方法及其与一般规划系统的异同

8.4.1 PULP-Ⅰ系统的结构与操作方式

1PULP-Ⅰ系统的结构

  字典、模型和过程是系统的内存部分,它们集中了所有信息。“字典”是英语词汇的集合,它的每个词汇都保持在LISP的特性表上。“模型”部分包括模型世界内物体现有状态的事实。

  模型的信息不是固定不变的,它可能随着环境而改变。此外,无论什么时候应用某个操作符,此模型就被适时修正。“过程”集中了予先准备好的过程知识。这种过程知识是一个表式结构,包含一个指令序列。每个指令可能是一个任务语句,这些语句与该任务的过程、局部定义的物体或某个操作符有关。

2PULP-Ⅰ系统的操作方式

  PULP-Ⅰ系统具有两种操作方式,即学习方式和规划方式。

  在学习方式下,输入至系统的知识是由操作人员或者所谓“教师”提供的。系统首先把给出的过程知识分解为一个子过程的集合,本原过程知识被分解为几个知识块,每块为一知识包。然后,由任务分析程序进行试验,这个程序对知识包进行分析,并通过一个语义匹配程序求得其提取表示。

  当某个命令句子送入系统时,PULP-Ⅰ就进入规划方式。此规划系统的主要作用是形成一个能够把现有世界变换为满足给定命令的世界状态的规划。所生成的规划由一些本原操作符的有序排列组成。当求得一个成功的规划之后,对世界模型进行修正,而且系统输出规划时间和规划细节,以满足输入命令。

8.4.2 PULP-Ⅰ的世界模型和规划结果

提问:请同学比较具有学习能力的机器人规划系统与一般规划系统的异同,并总结前者的特点。

 

8.5 分层规划

教学内容:通过ABSTRIPS系统了解针对困难问题的分层规划方法。

教学方法:课堂教学。

教学重点:本规划机理及实例。

教学难点:规划实例分析。

教学要求:本节作为选讲内容,只要求一般了解相关内容。

8.5.1 长度优先搜索

  探索规划时首先只考虑一层的细节,然后再注意规划中比这一层低一层的细节,所以把它叫做长度优先搜索。

8.5.2 NOAH规划系统

1、应用最小约束策略

  一个寻找非线性规划而不必考虑操作符序列的所有排列的方法是把最少约束策略应用来选择操作符执行次序的问题。

  问题求解系统NOAH采用一种网络结构来记录它所选取的操作符之间所需要的排序。它也分层进行操作运算,即首先建立起规划的抽象轮廓,然后在后续的各步中,填入越来越多的细节。

2、检验准则

  准则法已被应用于各种规划生成系统。对于早期的系统,如HACKER系统,准则只用于舍弃不满足的规划。在NOAH系统中,准则被用来提出推定的方法以便修正所产生的规划。

  第一个涉及的准则是归结矛盾准则。

  第二个准则叫做消除多余先决条件准则,包括除去对子目标的多余说明。

  可以把分层规划和最少约定策略十分直接地结合起来,以求得非线性规划而不产生一个庞大的搜索树。

 

8.6基于专家系统的机器人规划

内容与作用:本节将结合作者对机器人规划专家系统的研究,介绍基于专家系统的机器人规划。

教学重点:基于专家系统的系统结构和规划机理。

教学难点:基于专家系统的规划机理。

教学方法:课堂教学。

教学要求:了解基于专家系统的机器人规划系统的结构和实现方法。

8.6.1 系统结构和规划机理

1 系统结构及规划机理

  (1) 知识库:用于存储某些特定领域的专家知识和经验,包括机器人工作环境的世界模型、状态、物体描述等事实和可行操作或规则等。

  (2) 控制策略:包含综合机理,确定系统应当应用什么规则以及采取什么方式去寻找该规则。

  (3) 推理机:用于记忆所采用的规则和控制策略及推理策略。

  (4) 知识获取:首先获取某特定域的专家知识。然后用程序设计语言把这些知识变换为计算机程序。最后把它们存入知识库待用。

  (5) 解释与说明:通过用户接口,在专家系统与用户之间进行对话,从而使用户能够输入数据、提出问题、知道推理结果以及了解推理过程等。

2 任务级机器人规划三要素

  (1) 建立模型。

  (2) 任务说明。

  (3) 程序综合。

8.6.2 ROPES机器人规划系统

作业:根据简化框图8.18,举例说明应用专家系统的机器人规划系统。

 

8.7

  本章在说明了机器人规划的作用和任务后,主要讨论了几种机器人规划的方法:

  (1) 规划演绎法。用F规则求解规划序列。

  (2) 逻辑演算和通用搜索法。STRIPSABSTRIPS系统即属此法。

  (3) 具有学习能力的规划系统。如PULP-Ⅰ系统,它采用类比技术和语义网络表示。

  (4) 分层规划方法。如NOAH规划系统,它特别适用于非线性规划。

  (5) 基于专家系统的规划。如ROPES规划系统,它具有更快的规划速度、更强的规划能力和更大的适应性

 

from: http://netclass.csu.edu.cn/jpkc2003/rengongzhineng/rengongzhineng/jiaoan/chapter8.htm

发表评论

0个评论

我要留言×

技术领域:

我要留言×

留言成功,我们将在审核后加至投票列表中!

提示x

人工智能规划与决策知识库已成功保存至我的图谱现在你可以用它来管理自己的知识内容了

删除图谱提示×

你保存在该图谱下的知识内容也会被删除,建议你先将内容移到其他图谱中。你确定要删除知识图谱及其内容吗?

删除节点提示×

无法删除该知识节点,因该节点下仍保存有相关知识内容!

删除节点提示×

你确定要删除该知识节点吗?