协同路径规划

article/2025/10/8 17:06:02

目录

      • 1. 背景介绍
      • 2. 现有的解决方案
        • 2.1. 遗传算法解决组合优化问题
        • 2.2. DARP + STC 规划多车协同路径
          • 2.2.1. DARP: Divide Areas Algorithm for Optimal Multi-Robot Coverage Path Planning
          • 2.2.2. STC : Spanning Tree Coverage (STC) Algorithm

1. 背景介绍

区别与点对点的路径规划,本文讲的协同路径规划的目标是多车协同覆盖扫描一个区域。
协同路径扫描
从图中容易知道,黑色的栅格代表障碍物,蓝色的小点代表着小车,用不同颜色的线段代表为每个小车规划的路径。
通过上述的讲解,相信已经理解到我所说的协同覆盖扫描一个区域指的是什么了。与上述的情况不一样的是,现在存在一个应用场景,小车随机分布在地图上(有的在目标区域内部,有的则在区域外部),要求给出一个最佳的扫描方案:派出哪几辆车执行扫描任务最佳,给出每个小车的路径。值得注意的是,这个有个隐藏的问题,如果区域外的小车要参与扫描任务,从目标区域的什么位置开始扫描(引申出最佳进入点的概念)。

2. 现有的解决方案

2.1. 遗传算法解决组合优化问题

遗传算法流程图
Notice:
染色体:染色体在遗传算法中表示一种具体的组合。

例如: 12号小车 从(4,9)位置开始扫描 → 可 以 表 示 为 → \to^{可以表示为}\to 110001001001 其中 1100 = 12 ; 0100 = 4 ; 1001 = 9 1100 = 12; 0100 = 4; 1001 = 9 1100=12;0100=4;1001=9

种群:染色体的集合,上述的选择与交叉操作都是针对与种群的。
适应度函数:给染色体评分,给后续的选择操作提供支持。

演化
编码
初始化种群
为种群中每个染色体规划协同路径DARP+STC
评估种群个体适应度
选择
交叉
变异

值得注意的是,这里的染色体包含的是组合信息,每个染色体代表的是一个个体,个体之间是独立的。

2.2. DARP + STC 规划多车协同路径

2.2.1. DARP: Divide Areas Algorithm for Optimal Multi-Robot Coverage Path Planning

按照小车初始位置划分区域,通过下面的图片可以粗略的认识到,DARP算法就是根据移动小车的初始位置划分区域,确保每个区域的面积近似相等,且联通。
在这里插入图片描述

在这里插入图片描述
E i ∣ x , y = d i s t ( X i ( t 0 ) , [ x , y ] τ ) , ∀ i ∈ { 1 , … , n r } (1) E_{i|x,y} = dist(\mathcal{X_i(t_0)},[x,y]^{\tau}), \forall i \in \{1, \dots, n_r\}\tag{1} Eix,y=dist(Xi(t0),[x,y]τ),i{1,,nr}(1)
E i E_i Ei是一个矩阵, E i ∣ x , y E_{i|x,y} Eix,y表示 [ x , y ] [x,y] [x,y]与移动小车初始位置的距离 X i ( t 0 ) X_i(t_0) Xi(t0)

A x , y = arg min ⁡ i ∈ { 1 , … , n r } E i ∣ x , y , ∀ ( x , y ) ∈ L (2) A_{x,y} = \argmin_{ i \in \{1, \dots, n_r\}}E_{i|x,y}, \forall (x,y) \in \mathcal{L}\tag{2} Ax,y=i{1,,nr}argminEix,y,(x,y)L(2)
A x , y A_{x,y} Ax,y表示分配矩阵, ( x , y ) (x,y) (x,y)分配给具体的哪个机器人扫描。
C i ∣ x , y = min ⁡ ∥ [ x , y ] − r ∥ − min ⁡ ∥ [ x , y ] − q ∥ , ∀ r ∈ R i , q ∈ Q i (3) C_{i|x,y} = \min{\|[x,y]-r\|}-\min{\|[x,y]-q\|}, \forall r \in \mathcal{R_i}, q \in \mathcal{Q_i} \tag{3} Cix,y=min[x,y]rmin[x,y]q,rRi,qQi(3)
C i ∣ x , y C_{i|x,y} Cix,y连通性奖惩矩阵, R i \mathcal{R_i} Ri表示包括小车 i i i 起始点的分配区域, Q i \mathcal{Q_i} Qi表示小车 i i i 除了 R i \mathcal{R_i} Ri的其余分配区域

m i , i ∈ { 1 , … , n r } m_i, i \in \{1, \dots, n_r\} mi,i{1,,nr} 表示距离缩放系数,控制每个小车分配区域大小近似相等。

2.2.2. STC : Spanning Tree Coverage (STC) Algorithm

针对单车,生成覆盖路径
(a) Initial cells’ discretiza-
tion, robot’s cell and obsta-
cles
在这里插入图片描述

(b) Subdivide the terrain
into large square cells of 4
cells and represent them as
nodes
在这里插入图片描述

© Construct a Minimum
Spanning Tree for all the
unblocked nodes
在这里插入图片描述

(d) Apply the ST to the orig-
inal terrain and circumnavi-
gate the robot around it
在这里插入图片描述
生成树: n个节点用n-1条边连通
最小生成树:在生成树的基础上,边的权值之和最小。
生成最小生成树的算法: Prim, Kruskal

参考文献:
[1] Athanasios Ch. Kapoutsis and Savvas A. Chatzichristofis and Elias B. Kosmatopoulos. DARP: Divide Areas Algorithm for Optimal Multi-Robot Coverage Path Planning[J]. Journal of Intelligent & Robotic Systems, 2017, 86(3-4) : 663-680.


http://chatgpt.dhexx.cn/article/rQ3nPjfU.shtml

相关文章

arcgis发布路网路径规划服务

1、准备路网数据 导入文件地理数据库中(个人地理数据库会出问题) 2、开启编辑后打断相交处 我的数据带高度字段,所以是分高度打断 当然再用CG工具箱的工具更完美 2.1 如果需要路径返回高程才需要这一步

路径规划(path planning)

智能车辆有了行驶任务,智能车辆的路径规划就是在进行环境信息感知并确定车辆在环境中位置的基础上,按照一定的搜索算法,找出一条可通行的路径,进而实现智能车辆的自主导航。 路径规划的方法根据智能车辆工作环境信息的完整程度&a…

路径规划(RRT)

路径规划的核心内容是:在有碰撞的环境中,规划出一条从起始点到目标点的无碰撞路径。 路径规划算法特点总结: 完备性:起始点与目标点之间有路径解存在,那么一定可以找到解,若找不到解则说明一定没有解存在…

改进的 A*算法的路径规划(路径规划+代码+毕业设计)

更多视觉和自动驾驶项目请见: 小白学视觉 自动驾驶项目 引言 近年来,随着智能时代的到来,路径规划技术飞快发展,已经形成了一套较为成熟的理论体系。其经典规划算法包括 Dijkstra 算法、A算法、D算法、Field D算法等&#xff0c…

总结 | 六大路径规划算法

点击上方“小白学视觉”,选择加"星标"或“置顶” 重磅干货,第一时间送达 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:https://zhuanlan.zhihu.com/p/51372134, 知乎ID:搬砖的旺财 1.自…

无人驾驶路径规划(一)全局路径规划 - RRT算法原理及实现

前言:由于后续可能要做一些无人驾驶相关的项目和实验,所以这段时间学习一些路径规划算法并自己编写了matlab程序进行仿真。开启这个系列是对自己学习内容的一个总结,也希望能够和优秀的前辈们多学习经验。 一、无人驾驶路径规划 众所周知&a…

数据库课程设计 ——酒店管理系统

源码地址:https://github.com/majunbo2044/Hotel-Management-System/tree/master 一、 需求分析 1.软件需求 (1)酒店管理系统用于满足酒店工作人员和管理人员的需求。 (2)酒店管理人员和工作人员可以为酒店房间加入…

医院管理数据库课程设计

文章目录 前言医院信息管理系统摘要1.概述运行环境2. 1需求分析2.1.1基本分类需求分析2.1.2 主要关系流程分析2.2可行性分析 3.1概念结构设计3.1.1 抽象出系统的实体3.2 设计分E-R图 设计分E-R图3.3.1 全局E-R图4.1逻辑结构设计5.1数据库物理设计与实施6.数据操作要…

数据库课程设计基础需求

数据库课程设计 一、数据库的连接 首先,我们使用高级语言对数据库进行操作,需要我们使用pymysql的模块来与数据库进行连接。 (这里以python语言为例) # 连接数据库 db pymysql.connect(host127.0.0.1, usermy, password123456., dbbuy) # 创建一个游…

教务管理系统数据字典mysql_数据库课程设计报告--教务管理系统设计

数据库课程设计报告--教务管理系统设计 数据库系统课程设计学生姓名: 班 学 号: 指导教师: 中国地质大学年 月 日教务管理系统1、需求分析教务管理系统该教学系统主要提供数据维护、学生选课和教师授课信息查询功能。其实现的功能(即其包含的…

大学《数据库系统》课程设计报告

二话不说,先怼源码: gitHub源码地址 题 目: 教学管理系统 专 业:计算机科学与技术 作 者: 马志成 完成时间:2019年1月3日 一.实验目的 数据库系统课程设计是为了配合数据库原理及应用开发而设置的&#…

数据库成绩管理系统课程设计mysql_数据库学生成绩管理系统课程设计报告

数据库学生成绩管理系统课程设计报告 数据库课程设计报告1.功能需求 本报告主要介绍学生成绩管理系统的数据库设计,从需求分析到数据库的运行与维护都 进行详细的叙述。该系统是利用 SQL 开发出来的。通过 SQL 建立学生成绩管理系统,大大 方便和简化了数…

数据库课程设计报告——员工工资管理系统

这个设计报告是之前在学校里上数据库课程所写的报告 但也通用适用于Java web的课程报告 写的比较早,难免有错误的地方 所用到的对应项目是SSH框架的员工管理系统 如果有不对的地方可以自己借鉴重新编辑 更多相关的资料,查看专栏介绍了解更多 源码已上传h…

数据库课程设计实验报告--图书管理系统

数据库课设图书管理系统 目录 一、系统背景 二、需求分析 (一)系统综合需求 (二)系统逻辑模型 三、系统设计 (一)概念结构设计 (二) 逻辑结构设计 (三)子…

《数据库原理》课程设计报告

《数据库原理》课程设计报告 题目:KTV管理系统 就是记录一下小组做的 以后或许有点用 文章目录 一、简要概述二、需求分析三、 概念结构设计四、逻辑结构设计五、数据库物理实现六、总结 一、简要概述 顾客来到KTV一定会开包房消费,但是包房会有大小之…

数据库课程设计报告(毕业生管理系统)

声明:本片课程设计只列举了数据库设计部分,系统实现部分省略了。如果单纯只做数据库课程设计还是有一定的参考价值的。 由于版权原因,这次源码不能提供给大家了。 报告比较简单,本博主写的比较快,所以难免会有些小问题…

什么是黑盒测试?【黑盒测试技术】的正确打开方式!

黑盒测试介绍 黑盒测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格…

黑盒测试(什么是黑盒测试 黑盒测试的优缺点 黑盒测试中的测试方法)

一、什么是黑盒测试? 黑盒测试就是测试人员把软件产品或阶段性产品看做是一个黑盒子,在测试过程中测试人员只需关心对这个软件黑盒进行操作会得到什么样的结果,而不必深入的去了解软件的内部实现 就是说呢黑盒测试只考虑系统的输入和输出&…

测试所用的技术(黑盒、白盒测试等)

目录 1. 🔍按测试对象划分测试 1.1 🎈界面测试 1.2 🎈可靠性测试 1.3 🎈容错性测试 1.4 🎈文档测试 1.5 🎈兼容性测试 1.6 🎈易用性测试 1.7 🎈安装卸载测试 1.8 &#x1f…

实验二 黑盒测试

、目的和要求 1、掌握应用黑盒测试技术进行测试用例设计。 2、掌握对测试用例进行优化设计方法。 二、实验内容 日期问题 测试以下程序:该程序有三个输入变量month、day、year(month、day和year均…