首页 理论教育 规划不确定的运动

规划不确定的运动

时间:2022-02-11 理论教育 版权反馈
【摘要】:例如,如果它不能确定一个重要的状态变量,它就会理智地采取一次信息收集行动。不幸的是,精确求解POMDP的技术对于机器人学是不实用的——没有已知的技术能够应用于连续空间。FMP问题的解典型情况下是条件规划或策略,利用了执行过程中的传感器反馈,确保能够在符合有界不确定性假设的所有情况下工作。一个精细运动规划由一系列受监视的运动组成。图25.17 一个二维环境,速度不确定性圆锥,以及机器人可能运动的包络。

25.5 规划不确定的运动

到目前为止所讨论的机器人运动规划算法都没有强调过机器人学问题中的一个关键特征:不确定性。在机器人学中,不确定性是由环境的部分可观察性以及机器人行动的随机(或未建立模型的)效应引起的。误差还有可能是由于使用了诸如粒子滤波这样的近似算法造成的,即使对环境的随机特性建立了完美的模型,近似算法也不能给机器人提供一个准确的信度状态。

大多数现在的机器人制定决策时使用了确定性的算法,例如前面已经讨论过的各种路径规划算法。要如此做,通常的经验是从由定位算法产生的状态分布中抽取最可能的状态。这种方法的优点完全是计算上的。通过构型空间规划路径已经是一个具有挑战性的问题,如果我们还不得不在处理中考虑状态的全概率分布,它将会变得更糟。当不确定性很小的时候,只要将它忽略掉就行了。

不幸的是,不确定性并不总是可以忽略不计的。在某些问题中机器人的不确定性实在太大了。例如,我们如何用一个确定性的路径规划来控制一个没有任何线索得知自己所处位置的移动机器人?一般而言,如果机器人的真实状态与利用最大似然法则辨识出的不一样,所产生的控制就不是最优的。取决于误差的量级,这可能导致各种不希望的效应,比如与障碍物发生碰撞。

机器人学领域已经采取了一系列的技术以包容不确定性。其中有一些源自第十七章给出的在不确定条件下进行决策的算法。如果机器人只在它的状态转移过程中面对不确定性,而它的状态是完全可观察的,那么这个问题最好使用马尔可夫决策过程(或缩写为MDP)建立模型。MDP的解是一种最优策略,它告诉机器人在每一个可能的状态中应该做什么。这样,它就能够对付所有种类的运动误差,而来自确定性规划器的一个单路径解的鲁棒性则要差得多。在机器人学中,策略通常被称为导航函数。图25.14(a)中所示的价值函数可以简单地通过跟随梯度方向来转换成这样的导航函数。

就像在第十七章中一样,部分可观察性使问题变得更困难。这样产生的机器人控制问题是一个部分可观察的MDP,或缩写为POMDP。在这种情况中,机器人通常保持一个内部信度状态,类似于在第25.3节中所讨论的那些机器人。一个POMDP的解是定义在所有机器人信度状态上的一个策略。换个角度考虑,策略的输入是整个概率分布。这使机器人能够把它的决策不仅建立在它所知的事物基础上,还建立在它所未知的事物之上。例如,如果它不能确定一个重要的状态变量,它就会理智地采取一次信息收集行动。这在MDP的框架内是不可能的,因为MDP假设了完全可观察性。不幸的是,精确求解POMDP的技术对于机器人学是不实用的——没有已知的技术能够应用于连续空间。离散化技术通常产生太庞大的 POMDP,无法用已知技术处理。目前我们所有能做的是努力保持姿态不确定性的最小化,例如,海岸导航的启发式要求机器人呆在接近已知地界标的地方以减小其姿态的不确定性。反过来,这也逐渐减小了对附近新地界标的地图进行绘制的不确定性,因此使得机器人能够对更大的范围进行探测。

鲁棒性方法

除了概率方法,还可以用所谓的鲁棒性方法来处理不确定性。鲁棒性方法是一种假设问题每个方面的不确定性都是一个有界量,但不给处于容许的区间内的取值分配概率的方法。鲁棒解是指不论出现什么样的实际值都可行的解,倘若这些值处于假设区间内的话。鲁棒性方法的一种极端形式是第十二章所给出的一致性规划(conformant planning)方法——它在没有任何状态信息的情况下产生可行的规划。

这里,我们来看一种应用于机器人装配任务中的精细运动规划(fine-motion planning,或缩写为FMP)中的鲁棒性方法。精细运动规划涉及将一个机械手移动到非常接近于一个静态环境物体的位置。精细运动规划的主要困难是所需的运动和相关的环境特征都非常微小。在这样的小尺度下,机器人无法准确地测量和控制它的位置,而且还可能无法靠自己确定环境的形状;我们将假设这些不确定性都是有界的。FMP问题的解典型情况下是条件规划或策略,利用了执行过程中的传感器反馈,确保能够在符合有界不确定性假设的所有情况下工作。

一个精细运动规划由一系列受监视的运动组成。每个受监视的运动由(1)一条运动命令和(2)一个终止条件组成。其中终止条件是机器人传感器值上的一个谓词,返回值为真表示受监视运动的结束。典型的运动命令是适应性运动,允许机器人在运动命令将要导致与障碍物发生碰撞时溜开。例如,图 25.17 显示了一个带有一条狭窄竖直孔洞的二维构型空间。这有可能是用来将一个矩形木栓插入一个稍微大些的孔中的构型空间。运动命令为保持恒定的速度。终止条件为接触到一个表面。为了对控制中的不确定性建立模型,我们假设机器人的实际运动位于它周围的圆锥形Cv内,而不是按命令的方向移动。该图显示了如果我们的命令是以一个从出发区域s一直向下的速度运动的话,将会发生什么。由于速度的不确定性,机器人可以移动到锥形包络中的任何地方,有可能进入孔中,但是更有可能落在孔边上。因为这时机器人无法知道它在孔的哪一侧,因此也无法知道该往哪里移动。


图25.17 一个二维环境,速度不确定性圆锥,以及机器人可能运动的包络。期望速度为v,但是由于不确定性,实际的速度可能是Cv中的任何一个,因此产生的最终构型将处于运动包络中某个位置上,这意味着我们将无法知道我们是否命中了这个洞

一个更加明智的策略如图25.18和图25.19所示。在图25.18中,机器人故意移动到了孔的一侧。运动命令如图所示,终止测试为与任何表面接触。在图 25.19 中,给出了一条运动命令,它造成机器人沿着表面滑动,并进入洞中。这假定我们使用了一条适应性运动的命令。因为运动包络内所有可能的速度都是朝着右侧的,因此只要机器人接触到一个水平表面,它就会向右滑动。当它接触到孔洞右侧的竖直边缘时就会沿其下滑,因为相对于竖直表面的所有可能的速度都是向下的。它将不停地移动,直到接触到洞的底部,因为那是它的终止条件。尽管在控制上具有不确定性,机器人所有可能的轨迹均终止于和孔底部的接触——也就是说,除非表面上的不规则将机器人卡在某个地方。


图25.18 第1条运动命令和所导致的机器人可能运动的包络。无论误差有多大,我们都知道最终的构型将处于洞的左边


图25.19 第2条运动命令和可能运动的包络。即使存在误差,我们最终也能得到落入洞中的结果

可以想象,构造精细运动规划的问题是不平凡的。实际上,它比对严格运动的规划要难得多。可以为每个运动选择固定数目的离散值,或者利用环境几何关系来选择能够给出不同性质行为的方向。一个精细运动规划器的输入包括构型空间描述、速度不确定性圆锥的角度和对哪些感觉可能表示终止的详细描述(在这个例子中是接触到表面)。它应该产生一个多步骤的条件规划或策略来确保成功,如果这样的规划存在的话。

我们的例子假设规划器具有精确的环境模型,但是也可能要如下所述,顾及该模型中的有界误差。如果误差能够用参数形式来描述,就可以将那些参数作为自由度添加到构型空间。在最后一个例子中,如果孔洞的深度和宽度不确定,我们可以将它们作为两个自由度加入到构型空间中。让机器人在这些方向上移动,或者直接感觉它的位置是不可能的。但是在通过对控制及传感器的不确定性加以适当的详细说明,而将该问题描述成一个 FMP 问题的时候,这些限制都能够被结合起来一并考虑。这给出了一个复杂的四维规划问题,但是能够使用完全相同的规划技术。注意到与第十七章中的决策理论方法不同,这种鲁棒性方法能够产生适应最坏情况结果的规划,而不是使得规划的期望质量最大化。在决策理论中,最坏情况规划只有在执行过程中发生失败的代价比其它有关代价大得多的时候,才是最优的。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈