本发明提出一种基于改进a*算法的无人机航迹规划算法研究,在保证无人机飞行中安全避障的前提下,提出将路径轨迹在允许范围内用弧段代替,从而进一步缩短实际运动路径长度目的。
背景技术:
随着现代技术的发展,飞行器的种类不断变多,其在应用中也日趋专一化,完善化,如专门用作植保的大疆ps-x625无人机,用作街景拍摄与监控巡察用的宝鸡行翼航空科技的x8无人机,以及用作水下救援的白鲨mix水下无人机等,决定飞行器性能的主要是内部的飞控系统和外部的路径规划问题。就路径问题而言,在具体实施任务时仅仅靠操作员手中的遥控器来控制无人飞行器执行相应的工作,可能会对操作员心理以及技术提出极高的要求,为了避免个人操作失误,进而造成飞行器损坏的危险。因此,一种解决问题的方法就是对飞行器进行航迹规划。
飞行器的测量精度,航迹路径的合理规划,飞行器工作时的稳定性,安全性等这些变化使得对飞行器的的综合控制系统要求越来越高。无人机航路规划是为了保证无人机完成特定的飞行任务,并且能够在完成任务的过程中躲避各种障碍、威胁区域而设计出最优航迹路线的问题。常见的航迹规划算法包括两类:基于控制论的优化算法、基于几何学的搜索算法。其中在几何学中又分为两大类,随机型搜索和确定型搜索,随机型搜索有遗传算法、神经网络算法、粒子算法、模拟退火算法等,确定型算法有动态规划算法,迪杰斯特拉算法,a*算法,d*算法等,其中a*算法是一种静态路网中求解路径最有效的直接搜索方法,也是许多其他问题的常用启发式算法。
技术实现要素:
本发明的目的是为了解决无人机在路径规划过程中使用a*算法不能找到最优路径的问题,提出使用基于改进a*算法的无人机路径规划算法对运动路径进行优化,通过对路径轨迹进行放大,细化等操作来减少实际运动路径轨迹长度,为了实现上述目的,本发明的步骤如下:
步骤一:生成模拟环境地图,根据无人机运动场景的信息进行建模,生成模拟环境地图;
步骤二:确定路径轨迹,建立无人机活动的起始点与目标点,将无人机走过的路线连接起来,确定路径轨迹;
步骤三:特征选择,将确定的路径轨迹,在变换方向时将存在一定角度的两段轨迹夹角周围进行弧线代替;
步骤四:连接新生成的路径,将部分替换路径与原始未变路径连接,得到改进后的新路径。
所述步骤一中的具体情况如下:
根据无人机的活动场地建立合适的位置参考系,将模拟的地图在二维平面内满足无人机能够到达的最远位置,以及对无人机在运动中的障碍物进行规则化的处理,在二维平面内用坐标
所述步骤二中的具体情况如下:
(1)确定无人机的运动起点与终点:在模拟的环境地图中要尽可能的将运动目标的起点
(2)在a*算法中通过定义代价函数来确定路径,其中是初始状态
其中寻找下一状态的的过程为:
①以当前状态点为中心,寻找下一状态点为当前状态点的八个方向,其中创建开始节点start,目标节点target,open列表,close列表初始为空;
②将start加入到open列表中;
③检查open列表中的节点,若列表为空,则无可行路径;若不为空,选择
④将节点k从open中去除,并将其添加到close中,并判断节点k是否是目标节点target,若是则说明找到路径;若不是,则继续扩展节点k,生成k节点的子节点集,设q为k的子节点集,对所有节点q计算相应的
⑤跳到③,直到算法获得可行路径或无解退出;
(3)连接各状态点,组成无人机的规划路径轨迹。
所述步骤三中的具体情况如下:
(1)确定改进航段,在组成的航迹段中,找到存在方向变化时存在一定夹角的两段航迹,此时用航迹的内切弧代替初始航迹;
(2)确定弧段圆心,将规划的路径按一定的比例放大,在实际允许的情况下,路径细化后存在一定的夹角,在两段航迹交点处,以及距离a最近的左右两侧各一个航迹点
(3)找到圆心角,确定弧段长度。在p,q,c三点确定的圆,用内切劣弧pq代替pa与qa,此时找出圆心角α的大小,以及劣弧所对应的半径r大小,此时计算劣弧pq的长度
其中
所述步骤四中的具体情况如下:
(1)检查区域改进轨迹,在存在变向的两段航迹段之间找到新生成的规划航迹段,确定更新的航迹段
(2)将存在的航迹段与改进更新后的航迹段连接,得到满足要求的新的规划航迹,此时得到新的规划航迹线路。
本发明还包括这样一些特征:
相比较传统的启发式a*算法在考虑代价函数时未能将实际情况存在的障碍物的特征,以及在运动目标通过障碍物时的运动取向等情况考虑在内,本发明针对上述存在的问题进行了算法上的改进,改进后的路径长度相比较传统的路径长度减少,从而间接的减少的运动目标的运动时间。
相比较其它的关于改进a*算法上,本发明所提出的基于改进a*算法的无人机航路规划方法上,将几何学知识应用到算法中,得出的路径长度相对于传统路径长度更短,更易于理解,计算更加方便简单。
附图说明
图1为本发明的方法流程图;
图2为航迹段相交夹角图。
具体实施方式
对于本领域技术人员来说,附图说明中某些公知结构及其说明可能省略是可以理解的。下面结合附图和实现步骤对本发明作进一步的描述。
本发明提出使用基于改进a*算法的无人机路径规划算法对运动路径进行优化,通过对路径轨迹进行放大,细化等操作来减少实际运动路径轨迹长度,达到减少路径长度的目的。
图1为本发明的方法流程图,首先是生成模拟环境地图,根据无人机运动场景的信息进行建模,生成所要执行的模拟环境地图;然后是确定路径轨迹,建立无人机活动的起始点与目标点,将无人机走过的路线连接起来,确定路径轨迹;接下来进行特征选择,将确定的路径轨迹,在变换方向时将存在一定角度的两段轨迹夹角周围进行弧线代替;最后是连接新生成的路径,将部分替换路径与原始未变路径连接,得到改进后的新路径。
具体的实现步骤为:
step1根据无人机的活动场地建立合适的位置参考系,将模拟的地图在二维平面内满足无人机能够到达的最远位置,以及对无人机在运动中的障碍物进行规则化的处理,在二维平面内用坐标
step2.1确定无人机的运动起点与终点:在模拟的环境地图中要尽可能的将运动目标的起点
step2.2在a*算法中通过定义代价函数来确定路径,其中
其中寻找下一状态的的过程为:
step2.2.1以当前状态点为中心,寻找下一状态点为当前状态点的八个方向,其中创建开始节点start,目标节点target,open列表,close列表初始为空;
step2.2.2将start加入到open列表中;
step2.2.3检查open列表中的节点,若列表为空,则无可行路径;若不为空,选择
step2.2.4将节点k从open中去除,并将其添加到close中,并判断节点k是否是目标节点target,若是则说明找到路径;若不是,则继续扩展节点k,生成k节点的子节点集,设q为k的子节点集,对所有节点q计算相应的
step2.2.5跳到step2.2.3,直到算法获得可行路径或无解退出;
step2.3连接各状态点,组成无人机的规划路径轨迹。
step3.1确定改进航段,在组成的航迹段中,找到存在方向变化时存在一定夹角的两段航迹,此时用航迹的内切弧代替初始航迹;
step3.2确定弧段圆心,将规划的路径按一定的比例放大,在实际允许的情况下,路径细化后存在一定的夹角,在两段航迹交点处
近的左右两侧各一个航迹点
step3.3找到圆心角,确定弧段长度。在p,q,c三点确定的圆,用内切劣弧pq代替pa与qa,此时找出圆心角α的大小,以及劣弧所对应的半径r大小,此时计算劣弧pq的长度
其中
step4.1检查区域改进轨迹,在存在变向的两段航迹段之间找到新生成的规划航迹段,确定更新的航迹段
step4.2将存在的航迹段与改进更新后的航迹段连接,得到满足要求的新的规划航迹,此时得到新的规划航迹线路。
图2为为航迹段相交夹角图。a*算法确定的航迹点通常是通过栅格之间的交点组成的,在无人机通过障碍物的时候,会为了缩短路径长度而行走直线(几何知识点两点之间线段最短),在将规划的路径按一定的比例放大,在实际允许的情况下,路径细化后存在一定的夹角,在此两段航迹之间用内切弧段的长度代替,所得路径长度明显减小。