CN113344303B - 一种三维地形下多移动机器人能耗优化的时间窗动态避障方法 - Google Patents
一种三维地形下多移动机器人能耗优化的时间窗动态避障方法 Download PDFInfo
- Publication number
- CN113344303B CN113344303B CN202110812199.8A CN202110812199A CN113344303B CN 113344303 B CN113344303 B CN 113344303B CN 202110812199 A CN202110812199 A CN 202110812199A CN 113344303 B CN113344303 B CN 113344303B
- Authority
- CN
- China
- Prior art keywords
- mobile robot
- obstacle avoidance
- time window
- energy consumption
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/14—Force analysis or force optimisation, e.g. static or dynamic forces
Abstract
一种三维地形下多移动机器人能耗优化的时间窗动态避障方法,包括Lr表示为移动机器人r在第w个时间窗序列Tw时刻的具体位置信息(X(r,Tw),Y(r,Tw),Z(r,Tw))和速度信息V(r,Tw));二叉树的左和右子树分别表示多移动机器人序号靠前和后的移动机器人在时间窗中的时间变量C‑1停止完成动态避障;加载三维地形地图,经能耗约束下的A星算法模块,输出所有移动机器人规划初始路径时间窗Tw时刻的具体位置和速度信息,经动态时间窗二叉树先序遍历避障优化模块,获得多移动机器人避障优化最终路径时间窗TC时刻的具体位置和速度信息,以及动态能耗值。它概念简单,实现方便,鲁棒性高,满足三维地形下多移动机器人能耗优化的现实需求。
Description
技术领域
本发明涉及移动机器人路径规划方法技术领域,尤其涉及一种三维地形下多移动机器人能耗优化的时间窗动态避障方法。
背景技术
因移动机器人蓄电池储存能量有限,开展移动机器人在作业过程实现能耗最优下路径规划平滑方法研究,其已成为机器人制造业和学术研究的公同关注课题。
目前,研究移动机器人作业路径优化方法有很多种,如蚁群算法、A星算法等,这些方法具有不同的适用范围和求解特性。但存在没有考虑三维实地形,或没有考虑多移动机器人协同避障作业,或没有考虑避障而停机能耗,致使移动机器人作业路径优化结果偏离实际情况,使得优化结果的参考价值降低。
发明内容
为了克服现有研究移动机器人作业路径优化方法问题时,存在没有考虑三维实地形,或没有考虑多移动机器人协同避障作业,或没有考虑避障而停机能耗,致使移动机器人作业路径优化结果偏离实际情况,使得优化结果的参考价值降低等缺陷,本发明提供一种三维地形下多移动机器人能耗优化的时间窗动态避障方法。
本发明具体解决其技术问题所采用的技术解决方案是:一种三维地形下多移动机器人能耗优化的时间窗动态避障方法,包括三维地形地图,能耗约束下的A星算法模块,动态时间窗二叉树先序遍历避障优化模块,二叉树先序遍历子模块,在加载三维地形地图中,通过能耗约束下的A星算法模块求得所有移动机器人的初始路径,通过动态时间窗二叉树先序遍历避障优化模块求得避障停机总能耗最小的多移动机器人避障优化最终路径结果,输出多移动机器人能耗优化的时间窗动态避障最优策略最终路径以及动态能耗值,具体流程如下:
步骤一:开始;
步骤二:加载移动机器人工作的三维地形地图;
步骤三:定义地图中的障碍以及所有移动机器人的起点和终点;
步骤四:所有移动机器人同时出发,运行能耗约束下的A星算法模块求得所有移动机器人的初始路径;
步骤五:动态时间窗二叉树先序遍历避障优化模块求得避障停机总能耗最小的多移动机器人避障优化最终路径结果;
步骤六:输出多移动机器人能耗优化的时间窗动态避障最优策略最终路径以及动态能耗值,完成三维地形下优化多移动机器人作业路径优化;
在能耗约束下的A星算法模块中,每个移动机器人采用项目团队所申报的发明专利2020109336028“一种能耗约束下在具有凹凸地形中移动机器人避障方法”,一种能耗约束下在具有凹凸地形中移动机器人避障方法包括电机功率运行能耗,高度差造成的能耗,摩擦阻力造成的能耗,速度变化造成的能耗,转弯造成的能耗,加载移动机器人工作地的地图,定义移动机器人工作地的地图中障碍,绘出地图,遍历出A*星算法总代价值最小点设为下一个点的子模块,计算起点到当前点的新实际代价值G,子模块,终止条件判断。一种能耗约束下在具有凹凸地形中移动机器人避障方法,构建能耗实际代价值模型,基于A*星算法总代价值F =G+H进行每个移动方向进行枚举,其中能耗实际代价值为G,从当前点到终点的预估代价值为H,最终获得能耗约束下在具有凹凸地形中移动机器人避障作业路线和显示总能耗。
能耗实际代价值模型如下:
其中,Ep=p*(Scn/(vn-vc)),记Ep表示电机功率运行能耗,p为电机功率, Scn为当前点到下个点行走的距离,vn为更新相应的下一个点速度,vc为当前点速度;
Ev =m*g*∆h,记Ev表示高度差造成的能耗,∆h根据根据构图工作地的地图构图情况分别取Hv、Hv1 、Hv2,Hv为计算当前点到下个点的高度差,Hv1为当前点的高度和前点与下个点中间的高度之间高度差,Hv2为前点与下个点中间的高度和下个点的高度之间高度差,在构图工作地的地图构图无分割线情况时取∆h=Hv;在构图工作地的地图构图有分割线情况时,分割线前半段取∆h=Hv1,分割线后半段取∆h=Hv2;
Ef = u*m*g*cos(slope)* Scn,记Ef表示摩擦阻力造成的能耗,其中slope为凹凸坡度角;u为地形中地面摩擦系数,m为移动机器人质量,g为重力加速度;
Ek1=0.5*m*(vn2-vc2),记Ek1表示速度变化造成的能耗;
Ek2=0.5*I*(wn2-wc2),记Ek2表示转弯造成的能耗,I为转动惯量,wn为更新相应的下一个点角速度,vc为当前点角速度。
能耗约束下在具有凹凸地形中移动机器人避障方法流程如下:
步骤01:开始;
步骤02:读入所加载移动机器人工作地的地图和所定义移动机器人工作地的地图中障碍;
步骤03:设定基本参数地面摩擦系数、移动机器人电机功率、openlist开放表、closelist禁忌表;
步骤04:Num为当前搜索值,初始化无穷大inf,设置Num=inf;
步骤05:遍历出A*星算法总代价值最小点设为下一个点的子模块;
步骤06:标记为已访问,即openlist(Nextpoint(1),Nextpoint(2))=1;
步骤07:能耗约束下在具有凹凸地形中移动机器人避障方法终止条件判断,当下一点坐标(Nextpoint(1),Nextpoint(2))和终点坐标(Spoint(1),Spoint(2))重合,即Nextpoint(1)==Spoint(1)且Nextpoint(2)==Spoint(2),或者无法抵达终点,即Num=inf,则能耗约束下在具有凹凸地形中移动机器人避障方法终止,绘出约束条件的移动路线,程序终止;否则继续往下执行;
步骤08:计算一个点移动的实际代价值,下一个点移动,对横坐标Nextpoint(1)有-1,0,1三种情况,对纵坐标Nextpoint(2) 有-1,0,1三种情况,横坐标和纵坐标的变化构成双重循环,取i=1至3,j=1至3,在每个移动方向进行枚举,设过渡参数dk,其值等于对应i和j下的起点到当前点的实际代价值,记为dk = G(Nextpoint(1)-2+i,Nextpoint(2)-2+j);
步骤09:下一个点移动状态判断,如果下一个点移动是原来点,即i==2且j==2,或者下一个点移动是障碍点,即closelist(Nextpoint(1)-2+i,Nextpoint(2)-2+j)==1,则不更新起点到当前点的实际代价值,继续下一个点移动的每个移动方向进行枚举,否则继续往下执行;
步骤10:计算起点到当前点的新实际代价值G,子模块;
步骤11:对比原来的实际代价值dk和起点到当前点的新实际代价值G,,如果G,<dk,则更新实际代价值dk,即实际代价值dk= G,,更新A*星算法总代价值F,即F=dk+H,其中从当前点到终点的预估代价值为H,继续往下执行;否则继续下一个点移动的每个移动方向进行枚举;
步骤12:更新前继点的横坐标和纵坐标,即
parentx(Nextpoint(1)-2+i,Nextpoint(2)-2+j)=Nextpoint(1)
parenty(Nextpoint(1)-2+i,Nextpoint(2)-2+j)=Nextpoint(2);
步骤13:判断下一个点移动的每个移动方向进行枚举是否完成,枚举完成结束条件是j>3且i>3,如果不满足枚举完成结束条件,则继续下一个点移动的每个移动方向进行枚举,直至满足枚举完成结束条件,然后直接跳转至步骤05,最后直至满足能耗约束下在具有凹凸地形中移动机器人避障方法的终止条件判断,绘出约束条件的移动全部路线,程序结束。
其中,遍历A*星算法总代价值最小点设为下一个点的子模块流程如下:
步骤051:移动机器人开始从起点遍历在openlist开放表中,且不在clostlist禁忌表中每一个点;
步骤052:搜索当前点[p,q],进行判断,当点[p,q]满足是openlist开放表中,即openlist(p,q)==0,且点[p,q]满足不是clostlist禁忌表中,即closelist(p,q)~=1时,则点[p,q]符合条件输出点不是障碍点,即Outpoint=[p,q];否则直接跳转至步骤054;
步骤053:设F为A*星算法总代价值,是起点到当前点的实际代价值和从当前点到终点的的预估代价值之和,令起点到当前点的实际代价值为G,从当前点到终点的预估代价值为H,即F=G+H, 点[p,q]的总代价值记为F(p,q),当总代价值大于或等于0,即F(p,q)>=0,且总代价值小于当前搜索值Num,即Num>F(p,q),则令当前阈值为总代价值,即Num=F(p,q),设下一点为当前点,即Nextpoint=[p,q],继续往下执行;否则直接执行步骤054;
步骤054:判断是否遍历所有点,如果已遍历所有点,则本子模块结束;否则返回至步骤051。
其中,计算起点到当前点的新实际代价值G,子模块流程如下:
步骤1001:判断移动机器人是否转弯,如果转弯角度theta=0,则不转弯,继续往下执行;如果转弯角度theta>0,则转弯,跳转至步骤1009;
步骤1002:根据构图工作地的地图构图原理,判断是否穿过三维构图的分割线,如果左上或右下,即i=1&&j=1或i=3&&j=3,则表示穿过三维构图的分割线,则继续往下执行,否则跳转至步骤1007;
步骤1003:计算当前点到下个点的高度差Hv,当前点的高度和前点与下个点中间的高度之间高度差Hv1,前点与下个点中间的高度和下个点的高度之间高度差Hv2,当前点到下个点行走的距离Scn;
步骤1004:判断分割线前半段是否爬坡,如果满足Hv1>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv1>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1005:判断分割线后半段是否爬坡,如果满足Hv2>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv2>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1006:计算高度差造成的能耗Ev,摩擦阻力造成的能耗Ef,跳转至步骤1016;
步骤1007:计算当前点到下个点的高度差Hv,当前点到下个点行走的距离Scn;
步骤1008:判断是否爬坡,如果满足Hv>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev,跳转至步骤1016;如果不满足Hv>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev,跳转至步骤1016;
步骤1009:根据构图工作地的地图构图原理,判断是否穿过三维构图的分割线,如果左上或右下,即i=1&&j=1或i=3&&j=3,则表示穿过三维构图的分割线,则继续往下执行,否则跳转至步骤1014;
步骤1010:计算当前点到下个点的高度差Hv,当前点的高度和前点与下个点中间的高度之间高度差Hv1,前点与下个点中间的高度和下个点的高度之间高度差Hv2,当前点到下个点行走的距离Scn,转弯角度theta;
步骤1011:判断分割线前半段是否爬坡,如果满足Hv1>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv1>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1012:判断分割线后半段是否爬坡,如果满足Hv2>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv2>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1013:计算高度差造成的能耗Ev,摩擦阻力造成的能耗Ef,跳转至步骤1016;
步骤1014:计算当前点到下个点的高度差Hv,当前点到下个点行走的距离Scn,转弯角度theta;
步骤1015:判断是否爬坡,如果满足Hv>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,转弯造成的能耗Ek2,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev,跳转至步骤1016;如果不满足Hv>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,转弯造成的能耗Ek2,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev;
步骤1016:计算起点到当前点的新实际代价值G,;则G’=Ep+Ek1+Ek2+Ef+Ev。
令Lr表示为移动机器人r在第w个时间窗序列Tw时刻的具体位置和速度信息矩阵,X(r,Tw)为第r个移动机器人在Tw时刻横坐标位置值,Y(r,Tw)为第r个移动机器人在Tw时刻纵坐标位置值,Z(r,Tw)为第r个移动机器人在Tw时刻高度位置值,V(r,Tw)为第r个移动机器人在Tw时刻速度值,记Lr=(X(r,Tw),Y(r,Tw),Z(r,Tw),Tw,V(r,Tw)),能耗约束下的A星算法模块中通过对每个移动机器人重复使用一种能耗约束下在具有凹凸地形中移动机器人避障方法,能耗约束下的A星算法模块输出所有移动机器人规划初始路径时间窗Tw时刻的具体位置和速度信息矩阵,其中r=1移动机器人的L1=(X(1,Tw),Y(1,Tw),Z(1,Tw),Tw,V(1,Tw)),r=2移动机器人的L2=(X(2,Tw),Y(2,Tw),Z(2,Tw),Tw,V(2,Tw)),以此类推。
动态时间窗二叉树先序遍历避障优化模块具体流程如下:
步骤五一:建立4个A*B的数据存储空矩阵,分别为Z1、N1、Z2、N2,令A =t+5,其中t为能耗约束下的A星算法模块中计算所得的所有移动机器人同时出发后最后一个停止运行的移动机器人的总运行时间,即t=max{Tw},t+5表示在总运行时间基础上预留5个时间单位,防止存储数据溢出;令B=10,表示设置10个移动机器人进行验证本发明方法,每个移动机器人标序号,分别为移动机器人1, 即r=1;移动机器人2, 即r=2;移动机器人3,即r=3;一直至移动机器人10即r=10;Z1数据存储矩阵表示储存遍历时的避障决策情况,N1数据存储矩阵表示储存遍历时避障决策对应的消耗能量,Z2数据存储矩阵表示储存遍历完成后的最优避障决策,N2数据存储矩阵表示储存最优避障决策对应的消耗能量;
步骤五二:初始化遍历时避障决策对应的总消耗能量和时间窗中的时间变量,e表示遍历时避障决策对应的总消耗能量,C表示时间窗中的时间变量,对应时间窗为TC;令遍历时决策对应的总消耗能量e=inf,即无穷大,时间窗中的时间变量C=1,对应时间窗为T1;
步骤五三:时间窗TC时,以时间变量C的值为根节点开始遍历;
步骤五四:二叉树先序遍历子模块;
步骤五五:判断该节点是否为二叉树的叶子节点,如果是二叉树的叶子节点,则继续往下执行,否则跳转执行步骤五三;
步骤五六:累加遍历时各个避障决策对应的消耗能量,记为sum(N1);
步骤五七:判断sum(N1)是否小于或等于e,如果是,则继续往下执行,否则跳转执行步骤五九;
步骤五八:令e=sum(N1),Z2=Z1,N2=N1;
步骤五九:判断所有时间窗中的时间变量节点是否遍历完成,如果遍历完成,继续往下执行;如果遍历未完成,以未完成的时间窗中的时间变量C为当前节点,跳转至步骤五三;
步骤五十:获得多移动机器人避障优化最终路径时间窗TC时刻的具体位置和速度信息矩阵,其中r=1移动机器人的L1=(X(1,TC),Y(1,TC),Z(1,TC),TC,V(1,TC)),r=2移动机器人的L2=(X(2,TC),Y(2,TC),Z(2,TC),TC,V(2,TC)),以此类推。
其中,二叉树先序遍历子模块流程如下:
步骤五五一:判断时间窗中的当前时间节点是否有某两个移动机器人会在发生碰撞,如果两个移动机器人产生碰撞,继续往下执行步;如果两个移动机器人没有产生碰撞,C=C+1,二叉树先序遍历子模块结束;
步骤五五二:令二叉树的左子树表示多移动机器人序号靠前的移动机器人在时间窗中的时间变量C-1停止完成动态避障, 二叉树的右子树表示多移动机器人序号靠后的移动机器人在时间窗中的时间变量C-1停止完成动态避障;按照二叉树先序遍历机理,当前节点指向左子树,更新Z1,N1,如r=3移动机器人和r=6移动机器人在C=20的时间窗T20发生碰撞,r=3移动机器人在C=20速度表示为V(3,T20),m为移动机器人质量,令储存遍历时的避障决策情况Z1表示为Z1 (T20,3)=1,储存遍历时避障决策对应的消耗能量N1表示为N1 (T20,3)=m*(V(3,T20))2,去C=C+1,左子树遍历完后二叉树先序遍历子模块结束;
步骤五五三:当前节点指向右子树,更新Z1,N1,如r=3移动机器人和r=6移动机器人在C=20的时间窗T20发生碰撞,r=6移动机器人在C=20速度表示为V(6,T20),令储存遍历时的避障决策情况Z1表示为Z1 (T20,6)=1,储存遍历时避障决策对应的消耗能量N1表示为N1 (T20,6)=m*(V(6,T20))2,去C=C+1,右子树遍历完后二叉树先序遍历子模块结束。
本发明的有益效果是,采用一种三维地形下多移动机器人能耗优化的时间窗动态避障方法,解决了现有研究移动机器人作业路径优化方法问题时,存在没有考虑三维实地形,或没有考虑多移动机器人协同避障作业,或没有考虑避障而停机能耗,致使移动机器人作业路径优化结果偏离实际情况,使得优化结果的参考价值降低等等问题。它概念简单,实现方便,鲁棒性高,适应于三维地形下多移动机器人能耗优化的现实需求。
附图说明
图1为本发明一种三维地形下多移动机器人能耗优化的时间窗动态避障方法的流程图;
图2为本发明一种三维地形下多移动机器人能耗优化的时间窗动态避障方法中动态时间窗二叉树先序遍历避障优化模块的流程图;
图3为本发明一种三维地形下多移动机器人能耗优化的时间窗动态避障方法中动态时间窗二叉树先序遍历避障优化模块的二叉树先序遍历子模块的流程图;
图4为本发明一种三维地形下多移动机器人能耗优化的时间窗动态避障方法中动态时间窗二叉树先序遍历避障优化模块的二叉树遍历枝示意图;
图5为本发明一种三维地形下多移动机器人能耗优化的时间窗动态避障方法的仿真结果图。
图中标记○表示移动机器人作业路径起点,×表示移动机器人作业路径终点,白色轨迹线条表示轮式机器人作业路径,竖直方向表示移动机器人作业在水平面有高度差三维地形,白色方框□表示移动机器人所在作业地图内障碍物。
实施方式
下面结合附图和实施例对本发明专利作进一步地说明:
本发明所提供的一种三维地形下多移动机器人能耗优化的时间窗动态避障方法,包括三维地形地图,能耗约束下的A星算法模块,动态时间窗二叉树先序遍历避障优化模块,二叉树先序遍历子模块,在加载三维地形地图中,通过能耗约束下的A星算法模块求得所有移动机器人的初始路径,通过动态时间窗二叉树先序遍历避障优化模块求得避障停机最小的多移动机器人避障优化最终路径结果,输出多移动机器人能耗优化的时间窗动态避障最优策略最终路径以及动态能耗值,具体流程如下:
步骤一:开始;
步骤二:加载移动机器人工作的三维地形地图;
步骤三:定义地图中的障碍以及所有移动机器人的起点和终点;
步骤四:所有移动机器人同时出发,运行能耗约束下的A星算法模块求得所有移动机器人的初始路径;
步骤五:动态时间窗二叉树先序遍历避障优化模块求得避障停机总能耗最小的多移动机器人避障优化最终路径结果;
步骤六:输出多移动机器人能耗优化的时间窗动态避障最优策略最终路径以及动态能耗值,完成三维地形下优化多移动机器人作业路径优化;
在能耗约束下的A星算法模块中,每个移动机器人采用项目团队所申报的发明专利2020109336028“一种能耗约束下在具有凹凸地形中移动机器人避障方法”,一种能耗约束下在具有凹凸地形中移动机器人避障方法包括电机功率运行能耗,高度差造成的能耗,摩擦阻力造成的能耗,速度变化造成的能耗,转弯造成的能耗,加载移动机器人工作地的地图,定义移动机器人工作地的地图中障碍,绘出地图,遍历出A*星算法总代价值最小点设为下一个点的子模块,计算起点到当前点的新实际代价值G,子模块,终止条件判断。一种能耗约束下在具有凹凸地形中移动机器人避障方法,构建能耗实际代价值模型,基于A*星算法总代价值F =G+H进行每个移动方向进行枚举,其中能耗实际代价值为G,从当前点到终点的预估代价值为H,最终获得能耗约束下在具有凹凸地形中移动机器人避障作业路线和显示总能耗。
能耗实际代价值模型如下:
其中,Ep=p*(Scn/(vn-vc)),记Ep表示电机功率运行能耗,p为电机功率, Scn为当前点到下个点行走的距离,vn为更新相应的下一个点速度,vc为当前点速度;
Ev =m*g*∆h,记Ev表示高度差造成的能耗,∆h根据根据构图工作地的地图构图情况分别取Hv、Hv1 、Hv2,Hv为计算当前点到下个点的高度差,Hv1为当前点的高度和前点与下个点中间的高度之间高度差,Hv2为前点与下个点中间的高度和下个点的高度之间高度差,在构图工作地的地图构图无分割线情况时取∆h=Hv;在构图工作地的地图构图有分割线情况时,分割线前半段取∆h=Hv1,分割线后半段取∆h=Hv2;
Ef = u*m*g*cos(slope)* Scn,记Ef表示摩擦阻力造成的能耗,其中slope为凹凸坡度角;u为地形中地面摩擦系数,m为移动机器人质量,g为重力加速度;
Ek1=0.5*m*(vn2-vc2),记Ek1表示速度变化造成的能耗;
Ek2=0.5*I*(wn2-wc2),记Ek2表示转弯造成的能耗,I为转动惯量,wn为更新相应的下一个点角速度,vc为当前点角速度。
能耗约束下在具有凹凸地形中移动机器人避障方法流程如下:
步骤01:开始;
步骤02:读入所加载移动机器人工作地的地图和所定义移动机器人工作地的地图中障碍;
步骤03:设定基本参数地面摩擦系数、移动机器人电机功率、openlist开放表、closelist禁忌表;
步骤04:Num为当前搜索值,初始化无穷大inf,设置Num=inf;
步骤05:遍历出A*星算法总代价值最小点设为下一个点的子模块;
步骤06:标记为已访问,即openlist(Nextpoint(1),Nextpoint(2))=1;
步骤07:能耗约束下在具有凹凸地形中移动机器人避障方法终止条件判断,当下一点坐标(Nextpoint(1),Nextpoint(2))和终点坐标(Spoint(1),Spoint(2))重合,即Nextpoint(1)==Spoint(1)且Nextpoint(2)==Spoint(2),或者无法抵达终点,即Num=inf,则能耗约束下在具有凹凸地形中移动机器人避障方法终止,绘出约束条件的移动路线,程序终止;否则继续往下执行;
步骤08:计算一个点移动的实际代价值,下一个点移动,对横坐标Nextpoint(1)有-1,0,1三种情况,对纵坐标Nextpoint(2) 有-1,0,1三种情况,横坐标和纵坐标的变化构成双重循环,取i=1至3,j=1至3,在每个移动方向进行枚举,设过渡参数dk,其值等于对应i和j下的起点到当前点的实际代价值,记为dk = G(Nextpoint(1)-2+i,Nextpoint(2)-2+j);
步骤09:下一个点移动状态判断,如果下一个点移动是原来点,即i==2且j==2,或者下一个点移动是障碍点,即closelist(Nextpoint(1)-2+i,Nextpoint(2)-2+j)==1,则不更新起点到当前点的实际代价值,继续下一个点移动的每个移动方向进行枚举,否则继续往下执行;
步骤10:计算起点到当前点的新实际代价值G,子模块;
步骤11:对比原来的实际代价值dk和起点到当前点的新实际代价值G,,如果G,<dk,则更新实际代价值dk,即实际代价值dk= G,,更新A*星算法总代价值F,即F=dk+H,其中从当前点到终点的预估代价值为H,继续往下执行;否则继续下一个点移动的每个移动方向进行枚举;
步骤12:更新前继点的横坐标和纵坐标,即
parentx(Nextpoint(1)-2+i,Nextpoint(2)-2+j)=Nextpoint(1)
parenty(Nextpoint(1)-2+i,Nextpoint(2)-2+j)=Nextpoint(2);
步骤13:判断下一个点移动的每个移动方向进行枚举是否完成,枚举完成结束条件是j>3且i>3,如果不满足枚举完成结束条件,则继续下一个点移动的每个移动方向进行枚举,直至满足枚举完成结束条件,然后直接跳转至步骤05,最后直至满足能耗约束下在具有凹凸地形中移动机器人避障方法的终止条件判断,绘出约束条件的移动全部路线,程序结束。
其中,遍历A*星算法总代价值最小点设为下一个点的子模块流程如下:
步骤051:移动机器人开始从起点遍历在openlist开放表中,且不在clostlist禁忌表中每一个点;
步骤052:搜索当前点[p,q],进行判断,当点[p,q]满足是openlist开放表中,即openlist(p,q)==0,且点[p,q]满足不是clostlist禁忌表中,即closelist(p,q)~=1时,则点[p,q]符合条件输出点不是障碍点,即Outpoint=[p,q];否则直接跳转至步骤054;
步骤053:设F为A*星算法总代价值,是起点到当前点的实际代价值和从当前点到终点的的预估代价值之和,令起点到当前点的实际代价值为G,从当前点到终点的预估代价值为H,即F=G+H, 点[p,q]的总代价值记为F(p,q),当总代价值大于或等于0,即F(p,q)>=0,且总代价值小于当前搜索值Num,即Num>F(p,q),则令当前阈值为总代价值,即Num=F(p,q),设下一点为当前点,即Nextpoint=[p,q],继续往下执行;否则直接执行步骤054;
步骤054:判断是否遍历所有点,如果已遍历所有点,则本子模块结束;否则返回至步骤051。
其中,计算起点到当前点的新实际代价值G,子模块流程如下:
步骤1001:判断移动机器人是否转弯,如果转弯角度theta=0,则不转弯,继续往下执行;如果转弯角度theta>0,则转弯,跳转至步骤1009;
步骤1002:根据构图工作地的地图构图原理,判断是否穿过三维构图的分割线,如果左上或右下,即i=1&&j=1或i=3&&j=3,则表示穿过三维构图的分割线,则继续往下执行,否则跳转至步骤1007;
步骤1003:计算当前点到下个点的高度差Hv,当前点的高度和前点与下个点中间的高度之间高度差Hv1,前点与下个点中间的高度和下个点的高度之间高度差Hv2,当前点到下个点行走的距离Scn;
步骤1004:判断分割线前半段是否爬坡,如果满足Hv1>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv1>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1005:判断分割线后半段是否爬坡,如果满足Hv2>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv2>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1006:计算高度差造成的能耗Ev,摩擦阻力造成的能耗Ef,跳转至步骤1016;
步骤1007:计算当前点到下个点的高度差Hv,当前点到下个点行走的距离Scn;
步骤1008:判断是否爬坡,如果满足Hv>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev,跳转至步骤1016;如果不满足Hv>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev,跳转至步骤1016;
步骤1009:根据构图工作地的地图构图原理,判断是否穿过三维构图的分割线,如果左上或右下,即i=1&&j=1或i=3&&j=3,则表示穿过三维构图的分割线,则继续往下执行,否则跳转至步骤1014;
步骤1010:计算当前点到下个点的高度差Hv,当前点的高度和前点与下个点中间的高度之间高度差Hv1,前点与下个点中间的高度和下个点的高度之间高度差Hv2,当前点到下个点行走的距离Scn,转弯角度theta;
步骤1011:判断分割线前半段是否爬坡,如果满足Hv1>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv1>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1012:判断分割线后半段是否爬坡,如果满足Hv2>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;如果不满足Hv2>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1;
步骤1013:计算高度差造成的能耗Ev,摩擦阻力造成的能耗Ef,跳转至步骤1016;
步骤1014:计算当前点到下个点的高度差Hv,当前点到下个点行走的距离Scn,转弯角度theta;
步骤1015:判断是否爬坡,如果满足Hv>0,则爬坡,更新相应的下一个点速度vn,当前点速度vc,计算电机功率p, 及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,转弯造成的能耗Ek2,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev,跳转至步骤1016;如果不满足Hv>0,则非爬坡,更新相应的下一个点速度vn,当前点速度vc,及相应电机恒功率或恒转矩运行消耗的能量Ep,速度变化造成的能耗Ek1,转弯造成的能耗Ek2,摩擦阻力造成的能耗Ef,高度差造成的能耗Ev;
步骤1016:计算起点到当前点的新实际代价值G,;则G’=Ep+Ek1+Ek2+Ef+Ev。
令Lr表示为移动机器人r在第w个时间窗序列Tw时刻的具体位置和速度信息矩阵,X(r,Tw)为第r个移动机器人在Tw时刻横坐标位置值,Y(r,Tw)为第r个移动机器人在Tw时刻纵坐标位置值,Z(r,Tw)为第r个移动机器人在Tw时刻高度位置值,V(r,Tw)为第r个移动机器人在Tw时刻速度值,记Lr=(X(r,Tw),Y(r,Tw),Z(r,Tw),Tw,V(r,Tw)),能耗约束下的A星算法模块中通过对每个移动机器人重复使用一种能耗约束下在具有凹凸地形中移动机器人避障方法,能耗约束下的A星算法模块输出所有移动机器人规划初始路径时间窗Tw时刻的具体位置和速度信息矩阵,其中r=1移动机器人的L1=(X(1,Tw),Y(1,Tw),Z(1,Tw),Tw,V(1,Tw)),r=2移动机器人的L2=(X(2,Tw),Y(2,Tw),Z(2,Tw),Tw,V(2,Tw)),以此类推。
动态时间窗二叉树先序遍历避障优化模块具体流程如下:
步骤五一:建立4个A*B的数据存储空矩阵,分别为Z1、N1、Z2、N2,令A =t+5,其中t为能耗约束下的A星算法模块中计算所得的所有移动机器人同时出发后最后一个停止运行的移动机器人的总运行时间,即t=max{Tw},t+5表示在总运行时间基础上预留5个时间单位,防止存储数据溢出;令B=10,表示设置10个移动机器人进行验证本发明方法,每个移动机器人标序号,分别为移动机器人1, 即r=1;移动机器人2, 即r=2;移动机器人3,即r=3;一直至移动机器人10即r=10;Z1数据存储矩阵表示储存遍历时的避障决策情况,N1数据存储矩阵表示储存遍历时避障决策对应的消耗能量,Z2数据存储矩阵表示储存遍历完成后的最优避障决策,N2数据存储矩阵表示储存最优避障决策对应的消耗能量;
步骤五二:初始化遍历时避障决策对应的总消耗能量和时间窗中的时间变量,e表示遍历时避障决策对应的总消耗能量,C表示时间窗中的时间变量,对应时间窗为TC;令遍历时决策对应的总消耗能量e=inf,即无穷大,时间窗中的时间变量C=1,对应时间窗为T1;
步骤五三:时间窗TC时,以时间变量C的值为根节点开始遍历;
步骤五四:二叉树先序遍历子模块;
步骤五五:判断该节点是否为二叉树的叶子节点,如果是二叉树的叶子节点,则继续往下执行,否则跳转执行步骤五三;
步骤五六:累加遍历时各个避障决策对应的消耗能量,记为sum(N1);
步骤五七:判断sum(N1)是否小于或等于e,如果是,则继续往下执行,否则跳转执行步骤五九;
步骤五八:令e=sum(N1),Z2=Z1,N2=N1;
步骤五九:判断所有时间窗中的时间变量节点是否遍历完成,如果遍历完成,继续往下执行;如果遍历未完成,以未完成的时间窗中的时间变量C为当前节点,跳转至步骤五三;
步骤五十:获得多移动机器人避障优化最终路径时间窗TC时刻的具体位置和速度信息矩阵,其中r=1移动机器人的L1=(X(1,TC),Y(1,TC),Z(1,TC),TC,V(1,TC)),r=2移动机器人的L2=(X(2,TC),Y(2,TC),Z(2,TC),TC,V(2,TC)),以此类推。
其中,二叉树先序遍历子模块流程如下:
步骤五五一:判断时间窗中的当前时间节点是否有某两个移动机器人会在发生碰撞,如果两个移动机器人产生碰撞,继续往下执行步;如果两个移动机器人没有产生碰撞,C=C+1,二叉树先序遍历子模块结束;
步骤五五二:令二叉树的左子树表示多移动机器人序号靠前的移动机器人在时间窗中的时间变量C-1停止完成动态避障, 二叉树的右子树表示多移动机器人序号靠后的移动机器人在时间窗中的时间变量C-1停止完成动态避障;按照二叉树先序遍历机理,当前节点指向左子树,更新Z1,N1,如r=3移动机器人和r=6移动机器人在C=20的时间窗T20发生碰撞,r=3移动机器人在C=20速度表示为V(3,T20),m为移动机器人质量,令储存遍历时的避障决策情况Z1表示为Z1 (T20,3)=1,储存遍历时避障决策对应的消耗能量N1表示为N1 (T20,3)=m*(V(3,T20))2,去C=C+1,左子树遍历完后二叉树先序遍历子模块结束;
步骤五五三:当前节点指向右子树,更新Z1,N1,如r=3移动机器人和r=6移动机器人在C=20的时间窗T20发生碰撞,r=6移动机器人在C=20速度表示为V(6,T20),令储存遍历时的避障决策情况Z1表示为Z1 (T20,6)=1,储存遍历时避障决策对应的消耗能量N1表示为N1 (T20,6)=m*(V(6,T20))2,去C=C+1,右子树遍历完后二叉树先序遍历子模块结束。
当需要仿真运行三维地形下多移动机器人能耗优化的时间窗动态避障方法时,先设置水平面内移动机器人作业区域在竖直方向有高度差的三维地形,然后启用三维地形下仿真移动机器人能耗优化的时间窗动态避障方法,获得三维地形下所设置的10台移动机器人能耗优化的时间窗动态避障方法的仿真结果。
Claims (1)
1.一种三维地形下多移动机器人能耗优化的时间窗动态避障方法,其特征在于,包括:三维地形地图,能耗约束下的A星算法模块,动态时间窗二叉树先序遍历避障优化模块,二叉树先序遍历子模块;
在加载三维地形地图中,通过能耗约束下的A星算法模块求得所有移动机器人的初始路径,通过动态时间窗二叉树先序遍历避障优化模块求得避障停机总能耗最小的多移动机器人避障优化最终路径结果,输出多移动机器人能耗优化的时间窗动态避障最优策略最终路径以及动态能耗值;
Lr表示为移动机器人r在第w个时间窗序列Tw时刻的具体位置和速度信息矩阵,X(r,Tw)表示为第r个移动机器人在Tw时刻横坐标位置值,Y(r,Tw)表示为第r个移动机器人在Tw时刻纵坐标位置值,Z(r,Tw)表示为第r个移动机器人在Tw时刻高度位置值,V(r,Tw)表示为第r个移动机器人在Tw时刻速度值,记Lr=(X(r,Tw),Y(r,Tw),Z(r,Tw),Tw,V(r,Tw)),具体流程如下:
步骤一:开始;
步骤二:加载移动机器人工作的三维地形地图;
步骤三:定义地图中的障碍以及所有移动机器人的起点和终点;
步骤四:所有移动机器人同时出发,运行能耗约束下的A星算法模块求得所有移动机器人的初始路径;
步骤五:动态时间窗二叉树先序遍历避障优化模块求得避障停机总能耗最小的多移动机器人避障优化最终路径结果;
步骤六:输出多移动机器人能耗优化的时间窗动态避障最优策略最终路径以及动态能耗值,完成三维地形下优化多移动机器人作业路径优化;
所述动态时间窗二叉树先序遍历避障优化模块具体流程如下:
步骤五一:建立4个A*B的数据存储空矩阵,分别为Z1、N1、Z2、N2,令A=t+5,其中t为能耗约束下的A星算法模块中计算所得的所有移动机器人同时出发后最后一个停止运行的移动机器人的总运行时间,即t=max{Tw},t+5表示在总运行时间基础上预留5个时间单位,防止存储数据溢出,令B=10;Z1数据存储矩阵表示储存遍历时的避障决策情况,N1数据存储矩阵表示储存遍历时避障决策对应的消耗能量,Z2数据存储矩阵表示储存遍历完成后的最优避障决策,N2数据存储矩阵表示储存最优避障决策对应的消耗能量;
步骤五二:初始化遍历时避障决策对应的总消耗能量和时间窗中的时间变量,e表示遍历时避障决策对应的总消耗能量,C表示时间窗中的时间变量,对应时间窗为TC;令遍历时决策对应的总消耗能量e=inf,即无穷大,时间窗中的时间变量C=1,对应时间窗为T1;
步骤五三:以时间变量C的值为根节点开始遍历;
步骤五四:二叉树先序遍历子模块;
步骤五五:判断该节点是否为二叉树的叶子节点,如果是二叉树的叶子节点,则继续往下执行,否则跳转执行步骤五三;
步骤五六:累加遍历时各个避障决策对应的消耗能量,记为sum(N1);
步骤五七:判断sum(N1)是否小于或等于e,如果是,则继续往下执行,否则跳转执行步骤五九;
步骤五八:令e=sum(N1),Z2=Z1,N2=N1;
步骤五九:判断所有时间窗中的时间变量节点是否遍历完成,如果遍历完成,继续往下执行;如果遍历未完成,以未完成的时间窗中的时间变量C为当前节点,跳转至步骤五三;
步骤五十:获得多移动机器人避障优化最终路径时间窗TC时刻的具体位置和速度信息矩阵;
所述二叉树先序遍历子模块流程如下:
步骤五五一:判断时间窗中的当前时间节点是否有某两个移动机器人会在发生碰撞,如果两个移动机器人产生碰撞,继续往下执行步骤五五二;如果两个移动机器人没有产生碰撞,C=C+1,二叉树先序遍历子模块结束;
步骤五五二:令二叉树的左子树表示多移动机器人序号靠前的移动机器人在时间窗中的时间变量C-1停止完成动态避障,二叉树的右子树表示多移动机器人序号靠后的移动机器人在时间窗中的时间变量C-1停止完成动态避障;按照二叉树先序遍历机理,当前节点指向左子树,更新Z1,N1,C=C+1,左子树遍历完后二叉树先序遍历子模块结束;
步骤五五三:当前节点指向右子树,更新Z1,N1,C=C+1,右子树遍历完后二叉树先序遍历子模块结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110812199.8A CN113344303B (zh) | 2021-07-19 | 2021-07-19 | 一种三维地形下多移动机器人能耗优化的时间窗动态避障方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110812199.8A CN113344303B (zh) | 2021-07-19 | 2021-07-19 | 一种三维地形下多移动机器人能耗优化的时间窗动态避障方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113344303A CN113344303A (zh) | 2021-09-03 |
CN113344303B true CN113344303B (zh) | 2023-05-23 |
Family
ID=77480005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110812199.8A Active CN113344303B (zh) | 2021-07-19 | 2021-07-19 | 一种三维地形下多移动机器人能耗优化的时间窗动态避障方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113344303B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113848904B (zh) * | 2021-09-24 | 2023-05-16 | 安徽工程大学 | 一种基于惩罚能耗优化多移动机器人任务分配的方法 |
CN114489146B (zh) * | 2022-04-14 | 2022-06-28 | 成都慧简联信息科技有限公司 | 一种多无人机数据收集系统的调度与轨迹规划方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105867381A (zh) * | 2016-04-25 | 2016-08-17 | 广西大学 | 一种基于概率地图的工业机器人路径搜索优化算法 |
CN107643752A (zh) * | 2017-05-09 | 2018-01-30 | 清研华宇智能机器人(天津)有限责任公司 | 基于行人轨迹预测的全向移动机器人路径规划算法 |
CN111060103A (zh) * | 2019-12-11 | 2020-04-24 | 安徽工程大学 | 一种局部动态寻优避障的路径规划方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103329182B (zh) * | 2010-11-08 | 2015-12-16 | 易斯麦私人有限公司 | 用于人工指令系统的碰撞避免系统和方法 |
JP6069923B2 (ja) * | 2012-07-20 | 2017-02-01 | セイコーエプソン株式会社 | ロボットシステム、ロボット、ロボット制御装置 |
-
2021
- 2021-07-19 CN CN202110812199.8A patent/CN113344303B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105867381A (zh) * | 2016-04-25 | 2016-08-17 | 广西大学 | 一种基于概率地图的工业机器人路径搜索优化算法 |
CN107643752A (zh) * | 2017-05-09 | 2018-01-30 | 清研华宇智能机器人(天津)有限责任公司 | 基于行人轨迹预测的全向移动机器人路径规划算法 |
CN111060103A (zh) * | 2019-12-11 | 2020-04-24 | 安徽工程大学 | 一种局部动态寻优避障的路径规划方法 |
Non-Patent Citations (2)
Title |
---|
双层优化A*算法与动态窗口法的动态路径规划;赵伟 等;《计算机工程与应用》;第57卷(第22期);295-303 * |
能耗优化下的多移动机器人动态避撞机制;魏文涛 等;《信息与控制》;第51卷(第6期);662-670 * |
Also Published As
Publication number | Publication date |
---|---|
CN113344303A (zh) | 2021-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113344303B (zh) | 一种三维地形下多移动机器人能耗优化的时间窗动态避障方法 | |
CN112325884B (zh) | 一种基于dwa的ros机器人局部路径规划方法 | |
CN102778229B (zh) | 未知环境下基于改进蚁群算法的移动Agent路径规划方法 | |
CN113084811B (zh) | 一种机械臂路径规划方法 | |
CN109947120B (zh) | 仓储系统中的路径规划方法 | |
CN112650229B (zh) | 一种基于改进蚁群算法的移动机器人路径规划方法 | |
CN112015183B (zh) | 一种能耗约束下在具有凹凸地形中移动机器人避障方法 | |
CN110220521A (zh) | 一种高精地图的生成方法和装置 | |
CN114089760A (zh) | 一种基于混合蚁群算法的agv路径规划方法 | |
CN115237135A (zh) | 一种基于冲突的移动机器人路径规划方法及系统 | |
CN113219981B (zh) | 一种基于蚁群算法的移动机器人路径规划方法 | |
CN115373384A (zh) | 一种基于改进rrt的车辆动态路径规划方法及系统 | |
CN112327890A (zh) | 一种基于whca*算法的水下多机器人路径规划 | |
CN116203965A (zh) | 一种基于agv的改进蚁群算法的路径规划算法 | |
CN112180934A (zh) | 装车机器人的控制方法、系统、装置及可读存储介质 | |
Gillani et al. | Physics-based motion planning: Evaluation criteria and benchmarking | |
CN116673968B (zh) | 基于强化学习的机械臂轨迹规划要素选择方法及系统 | |
CN115454070B (zh) | 一种K-Means蚁群算法多机器人路径规划方法 | |
CN116764225A (zh) | 一种高效寻路的处理方法、装置、设备及介质 | |
CN117109574A (zh) | 一种农用运输机械覆盖路径规划方法 | |
CN113885567B (zh) | 一种基于冲突搜索的多无人机的协同路径规划方法 | |
CN114117944A (zh) | 一种模型更新方法、装置、设备及可读存储介质 | |
CN113419532A (zh) | 一种基于均匀设计的路径规划蚁群算法参数选取方法 | |
CN112917476B (zh) | 一种三维地形下轮式机器人作业路径平滑的改进lazy theta方法 | |
CN113836607B (zh) | 一种立体仓库的参数化仿真设计方法及其仿真设计系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |