雷锋网新智制按:活动规划(Motion Planning),有别于轨迹规划(PathPlanning)。一般来说,轨迹规划用于无人车/无人机范畴,而活动规划次要用于机械臂,类人机械人范畴。关于活动规划的具体定义,雷锋网新智制本期公开课特邀请到上海交通大学机械取动力工程学院博士生邱强为我们做细致的。邱强目前研究标的目的为机械臂活动规划,除了什么是活动规划,还会引见他做的机械人规划实例。同时,他还会目前关于活动规划都有哪些前沿研究标的目的。邱强,上海交通大学机械取动力工程学院博士生,本科结业于大学机械工程系,目前研究标的目的为机械臂活动规划。运营小我微信号Nao (ID! qRobotics),以电话fly(或fly 电话)之名撰写过多篇手艺文章。以下内容拾掇自邱强正在雷锋网硬创公开课的分享,因为内容有良多针对图或视频的细节,文中做了删减,完整内容可旁不雅视频。关心雷锋网旗下微信号「新智制」,答复「PPT」可获取嘉宾完整PPT。
我们先来看这四个视频。左上角是机械人正在抓取桌上的工具,这是我们尝试室之前一个博士师兄的课题,次要就是机械臂通过轨迹规划抓取识别到的物体而不碰着妨碍物。左上角是卵白质折叠过程,利用的是我们之后会提到的算法去规划它空间变化。左下角是《帝国时代2》的场景,我们正在玩这类逛戏的时候只需要点击一个方针点,逛戏人物就会自行找到可行的径。最初一个是我们之前做过的一个机械人项目,通过激光雷达和算法机械人可正在室内找到径。从这四个视频我们能够从中给活动规划得出一个定义:正在给定中,指定机械人起点取起点,计较出毗连起点取起点,并满脚必然束缚前提(如避障)的轨迹。从数学角度上看,挪动机械人的径规划( Path Planning )也属于活动规划的范围。但因为问题的维度分歧,所以利用的算法也分歧,大师习惯大将两者区分隔。
这是世界银行发布的关于中日两国国内出产总值(P)变化曲线图,小图是中日两国的生齿布局,能够看到2000年日本和中国2015年的生齿布局曾经很接近了,所以将来中国劳动力数量会削减,我们必需提高平均劳动出产力,如许才能防止P的增速减缓。机械人是能够处理这些问题的。
保守工业机械人次要使用正在汽车行业,而这个行业的特点是一个车型能够出产良多年,同时每台车的利润也会相较较高,所以大师的关心点起头转向3C(Computer、Communication、ConsumerElectronics)行业。3C产物具备这些特点:更新周期短、单件利润低、全体市场大、劳动力成本添加、对从动化需要加大。
现正在我们工业机械人的利用方式凡是是示教,即便像左图采用拖动示教这种比力便当的体例,效率仍是很低,由于每一台机械人的示教都需要人参取进来,并且示教的径没法子应对其他一些的变化,特别正在3C行业你每次更新一次机型,我们就必需对流水线上所有的机械人从头示教,如许的效率必定是不敷高的。
当然,目前有些机械人使用是插手了机械视觉等手艺,就是正在检测之后让机械人应对一些变化环境。左边码垛机械人就是通过视觉能够抓取工具,但它的径是人工指定两头点。左边是我做过的雷同插秧机械人,道理取前面码垛机械人雷同。这类机械人想要正在3C行业被矫捷使用必定是不可的,所以若是活动规划研究成熟算法比力不变的话,就能够用高级编程言语去编程,好比我们的指令让它抓取零件A然后加工零件B的某一面,这种下达指令的体例就不需要每一步都示教了。然后,我们从最根本的问题入手,也就是2维中的点状机械人(point agent),点状机械人是没有实体的。接下来引见下点状机械人的径规划算法都有哪些。前面我们讲的都是2D点状机械人的环境,现正在我们想怎样把这些问题推广到现实机械人上。现实机械人有两个问题,一个是机械人不再是一个点,需要将机械人的体积考虑正在内,别的,机械人的度更高,本来的算法能否都还可用?大部门机构(持续扭转关节、平动关节等)构成的构形空间均是微分流形,任一点的邻域均取欧式空间同态栅格法:理论上可行;但会计较量太大;对于一个六度机械臂,我们按照6°分辩率(曾经是很低的分辩率了)划分网格,那么将会发生606 = 4。67 × 1010 个网格,单是对每个网格进行碰撞检测(若是碰撞检测速度为0。1ms),就需要1296小时。
不需要晓得 C 空间的具体环境,只对随机采样点进行碰撞检测(判断能否正在 C 空间的可行区域内)
理论现状是,从活动学规划角度,给定脚够多的时间必然可以或许最优且完整地求解到轨迹。从理论的角度而言,这个问题曾经处理了。现正在研究标的目的次要正在这两个方面,摸索新问题和做一些适用化工做。这个算是蛮适用的,由于每次规划完施行的过程中会碰到变化的问题,这就需要正在施行过程中从头规划。从头规划的线取之前的线是毗连的,而不是两头停下来从头走。是RSS正在2016年的研究,感乐趣的能够领会下。抱负形态下机械人正在活动规划下间接端一杯水到一个处所就行了,但现实环境下这个过程是有动力学正在里面,若是不做任何处置,这个杯子会掉。所以,正在考虑了动力学之后,从头进行活动规划,这时候杯子才不会掉。这个问题仍是比力简单的,由于你只需要把它变成一个束缚就好了。由于我没有做这块工具,所以不太清晰它是怎样运做的,可是这个问题是存正在的,由于正在规划的时候会跟接触,例如这个机械人攀爬杆子然后落地,涉及到整个身体动力学跟你身体活动的协调过程,这个工做是MIT计较机科学取人工智能尝试室正在2014年的尝试。接触动力学比保守的单体动力学复杂良多,由于我们不晓得它接触的碰撞摩擦力这些欠好建模。活动规划是指我给你一个大使命,你从动生成一些小使命。这是IROS正在2016年的一个工做,它的方针是让机械人达到对面这个点,而它的径被妨碍物盖住了,这个时候把活动规划加进来,从更高一个空间维度去求解这个问题。第一步,它把这个桌子往前推,发觉桌子推不动的时候对使命进行沉规划,然后规划到去推这个桌子,然后发觉施行的结果取估计的纷歧样,所以它又生成新的使命,然后它拉开桌子之后就走到了对面实现了工做。这只是一个很简单的demo,但现实上糊口中会碰到良多如许的问题,好比我想从这个房间到另一个房间,而门是关着的,这个时候就需要把门打开。所以说,不是要给机械人生成良多子使命,而是一个大使命,将来办事机械人想要做好这块是必必要做的。别的大部门时间大师都用正在了适用化上,虽然说只需有脚够时间它必然能求解出来,但现实环境下我们不成能给它无限的时间。别的RRT这些算法生成轨迹很奇异, 你能够看左边这个视频,只是让它敲这个工具它要画一大圈,所以这也是一个问题,就是怎样优化它的轨迹。所以需要将研究范畴好的算法往工业范畴推,目前两者之间是存正在很大缺口的。
这个工做是想法子把旧的轨迹给用起来,通过人工的体例指定一个活动微元,也就是原始轨迹,比及了新的后再进行改变。当然,这个爬楼梯的过程,和动做根基上都不异,所以能够正在这个微元的根本长进行改变。起首,通过变形的工做拉到现正在起始点,部门起始点会沉合,然后对这些新起始点进行反复操纵,它会构成一个好的轨迹。这个工做是Hauser et al正在2008年发布的论文。现正在存正在的问题是活动微元必需由人工来指定,所以研究标的目的是由系统从动生成活动微元。
这是之前做的一个内容,比力简单但正在相对固定的比力好用。大要道理就是按照人工示教的径,通过高斯夹杂模子(GMM)对可行C空间进行建模,之后正在这个GMM-C空间内进行规划。这个方式有点雷同Learning From Demonstration 的工做,但我只用了它们前面一半的步调,后面一半仍是采用采样的方式。
这个是我针对加工过程做的另一个工做。我们正在工业范畴用机械人往往期望的不是整个机械臂的动做,而只是结尾的动做。假设我要抛光一个面,起首我要对结尾进行规划,用CAD模子就能够计较实现;获得径后发给机械人,之后间接求逆解或者用雅克比迭代过去。当然,这种方式大部门时候够用,但有时候也会碰到奇异点或者碰着妨碍物。我就是针对这个七轴的机械臂,操纵它的一个冗余度进行规划。由于结尾是固定的轨迹,这个时候,只需找到冗余度对应的C空间流形,我们就能够正在这么一个低维(2维)流形内进行很快速的规划,实现结尾固定轨迹,且关节避障避奇异。
我小我现正在现正在最关心的一块,目前还没有本色性的工具出来,正在这里就和大师会商下,我感觉这一块将来会出来不少的研究。假设深度进修做活动规划,那么它进行一次活动规划的时间就是一次收集正向时间,这个时间很是短的,所以只需收集锻炼好后,活动规划需要花费很长时间的问题就没有了。目前这块也有一些这方面的研究,左边图是用深度进修玩逛戏,Nature上的一篇论文,结果比人还厉害;左上角是谷歌用深度进修来开门;左下角就是AlphaGo下围棋了。这个是很成心思的,它也是活动规划和节制的问题,但它是用收集来做的映照。我为什么对这方面很感乐趣呢?起首,CNN曾经具备强大的理解能力,很容易从不雅测估量形态,不雅测是图片这类,而形态,若是是物体识别,就是是什么物体,若是是定位,那就是物体正在什么处所。正在给定消息满脚系统形态可不雅性的前提下,CNN理解能力常强大的。
第二个就是RL(强化进修)能够进规划,通过 value iteration 等体例成立表格,这个表格记载的是从形态到动做的映照。不度日动规划的维度这么高不成能用表格来存,所以能够通过神经网来处理这个映照问题。
A:这几个概念正在国内的教材里确实比力紊乱,所以我按照我的理解大要说一下:①活动规划(Motion Planning)就是我此次说的次要内容;②径规划(Path Planning)跟活动规划概念是一样的,只是我们习惯上把它放正在平面机械人上;③轨迹规划(Trajectory Planning),次要是涉及速度、加快度插值,A:起首是姿势的持续变化问题:由于我们是正在C空间(也就是关节空间进行的),所以不存正在这个问题;若是是对无人机进行规划(正在SE(3)里),那么能够考虑看看四元数插值的算法。第二个是角速度、角加快度持续;这个有两种方式,一个是我只规划角度,然后用轨迹规划进行插值;另一个是我同时规划速度和加快度(如优化算法),间接获得一个轨迹。A:AGV的径规划,我这边做的不多,并且会按照你具体做的内容而分歧(如SLAM、定位、等)。就我尝试室来说的话,正在ROS下结果就不错,能够用gmapping建图、然后navigation。当然,若是ROS仍是比力适合尝试室,商用的话我就不太领会了。A:由于机械人涉及的内容实的良多,若是是做机械臂的话,我仍是把根本的工具完全弄清晰,包罗空间活动、正逆解、动力学等。由于这些根本学问里良多细节,若是间接跳过,后面会碰到良多问题。这方面打好根本,后面就会轻松良多的。A:其实我们规划的过程中需要不竭进行活动学求解等。当然,ROS里面的话,我们能够先不关怀这个。由于ROS里的KDL、ikFast等都能够帮我们做这些工做。当然了,因为MoveIt采用的是Plugin的形式,若是是你本人算的活动学,那能够做成Plugin放进去。之后MoveIt的规划就是基于你的活动学进行计较了。A:这个有两点,一个是适才提到的沉规划re-plan问题,当变化或者使命变化的时候能正在施行的过程中从头规划出一个新的轨迹;另一个则是正在规划的过程中考虑动态环境:例如我们对无人车进行规划的时候,就该当同时估量出四周人、车的速度和活动趋向,之后正在此根本长进行规划。如许能够避开活动的妨碍物等。
联系人:郭经理
手机:18132326655
电话:0310-6566620
邮箱:441520902@qq.com
地址: 河北省邯郸市大名府路京府工业城