多机器人协同控制方法研究

        随着经济的快速发展,机器人在各行各业的普及度越来越高,与此同时,单一的机器已经逐渐不能满足人们的需求。在面对工农业生产、高危环境作业、水下与空间环境探测、卫星协同控制等复杂环境下,机器人协同研究成为一个亟待优化的问题。

        从整体来说机器人协同控制是一个涉及许多方面的问题,主要包括:路径规划、任务分配、协同控制、平滑处理四大问题。

        路径规划包括传统路径规划算法、基于采样路径规划算法、智能路径规划算法。

        其中传统路径规划算法包括:A*算法、D*算法、人工势场法。A*算法,是Dijkstra算法与广度优先搜索算法(BFS)的结合,属于启发式算法,针对全局做路径规划,目的是寻找代价最小的路径,优于Dijkstra;D*算法又称动态A*算法,使用反向搜索,即从目标点开始,由于储存了空间中每个点到终点的最短路径信息,故在重规划时效率大大提升,适用于动态环境的路径规划;人工势场法是将目标和障碍物视为均匀电场中的电荷,分别存在引力与斥力,属于局部路径规划,容易存在局部极小值,陷入局部最优解,但其路径较为平滑。

        基于采样路径规划算法包括随机路线图算法(PRM)、快速扩展随机树算法(RRT)。PRM是一种基于图搜索的算法,可以将连续状态空间转换成离散状态空间,在利用A*等搜索算法在路线图上寻找路径,提高搜索效率,适用于高维且约束复杂的路径规划,需要加入局部路径规划对其进行优化;RRT是一种通过随机构建空间填充树来有效搜索非凸,高维空间的算法,通过对状态空间中的采样点进行碰撞检测,避免了对空间的建模。其以初始点作为根节点,通过随机采样增加叶子节点的方式,生成一个随机扩展树,当目标点位于随机扩展树上时,能够找到一天初始点到目标点的路径。但是规划出的路径质量一般,可能存在棱角、不够光滑,不适用与动态环境。

        智能路径规划算法包括神经网络算法、遗传算法、粒子群优化算法、布谷鸟算法、蚁群算法。神经网络算法是深度强化学习的一部分,其利用了深度学习的感知能力与强化学习的决策能力,通过机器人与环境的交互过程不断试错,通过环境评价性的反馈,实现系统更加智能的决策控制,神经网络可以很好得解决维度灾难的问题,但其对硬件要求较高,调参较为困难。遗传算法是为给定的问题分配一个种群,并根据目标函数为种群的个体分配适应能力值,种群内的个体根据环境进行选择,并可通过杂交进行基因传递,它是是一种高效、并行、全局搜索的方法。粒子群优化算法源于对鸟/鱼群捕食行为的研究,模仿社会动物的行为,不要求任何领导,它是通过靠近食物的粒子对其他粒子的引导。布谷鸟算法是指每只布谷鸟在随机选择的空巢中一次只下一蛋,最好的巢将会被传到下一代,改进算法,提升了原始算法的收敛速度和效率,可用于无人机路径规划算法中的性能时间优化问题,同时需要使用差分对路径进行优化。蚁群算法是蚂蚁在寻找食物过程中发现路径的行为,它具有分布计算、信息正反馈和启发式搜索的特征,本质上是进化算法中的一种启发式全局优化算法。

        任务分配主要分为集中式控制系统、完全分布式控制系统、部分分布式控制系统、基于多智能体分布式控制系统。集中式控制系统是通过长机或地面控制中心控制全局,它的计算量大、对服务器要求高、在突发情况下不具备自治能力;完全分布式控制系统的各机器人地位平等, 以相互协商、相互协调的方式完成任务分配,但是容易陷入局部最优,产生竞争;部分分布式控制系统是长机或地面控制站将任务分解成小任务包,分配给各个机器人,机器人通过规划并相互协调最终将收益、损失数据反馈给控制中心;基于多智能体分布式控制系统是由不同的单个智能体 (Agent) 为完成某一特定任务组合而成的多智能体系统,每一部分负责各自的功能。

        协同控制是整个系统的关键,其中包括通讯与编队控制两大部分。机器人之间的通讯一方面可以通过话题通讯,基于相同的UDP广播和TCP连接,通过构建WiFi网络加入通讯;另一方面通过外部通讯装置,例如Zig Bee、无线串口,如果是集成好的机器人,在其上添加外部设备,设置连接也是一个不小的问题。

        编队控制包括基于领航-跟随的编队控制方法、基于虚拟结构的编队控制方法、基于人工势场的编队控制方法、基于行为的编队控制方法、基于路径跟随的编队控制方法。其中使用较多、操作较为简单、易于实现的还是领航-跟随法。领航机器人主要负责路径规划、动态避障与发布启动命令等,跟随机器人与其编队保持,其鲁棒性较强。

        平滑处理主要针对规划出来的路径多为折线,路径有部分缺失的情况。主要的方法有拟合、插值与优化。基于插值拟合的平滑处理包括基于图(直线、圆弧、圆)的方法、基于函数的方法,其中较为常见的是基于函数的三次样条插值、b样条插值与多项式插值。基于优化的平滑处理方法包括Hybrid A*平滑、共轭梯度非线性优化方法。

你可能感兴趣的:(机器人,开发语言)