路径规划的主体是路径计算,即规划一条从起始地到目的地的一条合理路径,路径计算采用的算法是A*算法,实现A*算法还需要一些辅助步骤,以提高程序运行的效率。因此在内部把路径规划模块细分为路径计算模块、内存管理模块、数据缓冲模块和快速查表模块,其主体是路径计算模块,其他模块处于从属地位,也就是说,其他模块是为计算模块提供辅助支持,如图1-1所示。

路径计算模块需要实现起始点\目的地的定位、数据初始化、路径计算等功能。

在路径计算过程,需要维护一个Open表和Close表。当扩展一个节点的时候,需要把与该节点相邻接的节点放入Open表,而把该节点放入Close表,因此会频繁地从内存区域申请小块内存以存放节点信息到Open表中,如果使用默认的系统的内存管理,会造成系统性能下降。因此要实现自己的内存管理,内存管理模块主要实现一个内存池,该内存池对内存分配、释放以及回收进行管理,以提高程序运行的效率。

全国的道路网分割成相同大小的区域(块),路径规划时可以分批次加载路网数据,以避免一次性加载所有道路的网络数据,缓冲模块主要管理路径计算时对文件的I/O操作。

快速查表模块主要实现一个哈希表,以快速在Open表和Close表中进行定位。

导航路径规划之四 路径规划概述相关推荐

  1. 激光SLAM导航系列(五)局部路径规划

    局部路径规划 局部路径规划简介 机器人在获得目的地信息后,首先经过全局路径规划规划出一条大致可行的路线,然后调用局部路径规划器根据这条路线及costmap的信息规划出机器人在局部时做出具体行动策略,R ...

  2. 知乎 运动规划和路径规划_运动路径–过去,现在和未来

    知乎 运动规划和路径规划 Making animations that "feel right" can be tricky. 制作"感觉不错"的动画可能很棘手 ...

  3. python调用高德地图api获取路径规划,然后规划好点显示在地图上(农机路径转移)

    我的博客好像跳度比较大,不少内容都涉及,但我是做ros组合导航的,其他的或者是项目设计,或者是因为兴趣,或者是随笔记下来. 无聊写来玩下的小demo,本来试图在硕士期间研究下这个课题即农机从仓库到田间 ...

  4. vc 6.0 显示文件全路径_配送路径规划思考(十二)

    前面十一集的链接 配送路径规划思考(十一) 配送路径规划思考(十) 配送路径规划思考(九) 配送路径规划思考(八) 配送路径规划思考(七) 配送路径规划思考(六) 配送路径规划思考(五) 配送路径规划 ...

  5. 路径与轨迹、路径规划与轨迹规划、路径跟踪与轨迹跟踪

    对于无人车辆来说,全局路径点只要包含空间位置信息即可,也可以包含姿态信息,而不需要与时间相关,但局部规划时,则可以考虑时间信息.这里规定轨迹点也是一种路径点,即当路径点信息中加入时间约束,就可以被称为 ...

  6. 运动规划,路径规划和轨迹规划的关系(补充路径跟踪和轨迹跟踪)

    首先以一张图表明三者的关系: 即:运动规划由路径规划和轨迹规划组成.接下来分别对三者进行介绍. 运动规划(motion planning):在给定的位置A与位置B之间为机器人找到一条符合约束条件的路径 ...

  7. 路径规划与轨迹规划学习3——曲线插值法

    曲线插值的方法是按照车辆在某些特定条件(安全.快i速.高效)下,进行路径的曲线拟合,常见的有多项式曲线.双圆弧段曲线.正弦函数曲线.贝塞尔曲线.B样条曲线等. 1.算法思想: 曲线插值法的核心思想就是 ...

  8. GIS空间分析 网络分析2规划最佳路径

    实验数据:见个人资源<GIS空间分析教学数据>免费下载,仅供学习使用 一.实验名称 网络分析之规划最佳路径 二.实验目的 某公司班车需要接送员工上下班,已知停靠的站点,请使用网络分析提供一 ...

  9. 企业如何精准搭建管理体系,规划信息化路径

    只知道低头赶路,不知道目标在哪?内外部协同性处处碰壁?业务复制不力.综合管控失效?如果您的企业也面临类似的问题,那么B公司的管理提升之路非常值得借鉴. 在细分领域占据竞争优势同时也面临诸多新挑战 B公 ...

最新文章

  1. window.postMessage跨文档通信
  2. 面试官三连问:分库分表了解吧?业界有哪些常用方案?可能存在什么问题?
  3. java set 空_Java面试总结(Map和Set)
  4. DPVS_DPVS配置说明
  5. SQLSERVER自动定时(手动)备份工具
  6. android 扫描所有文件大小,Android获取指定文件大小
  7. Wireshark安装和基本使用
  8. 使用RMAN备份数据库
  9. linux学习笔记:更换国内网易163 yum 源
  10. 解决办法:std没有成员initializer_list
  11. 【数据库原理及应用教程(第4版|微课版)陈志泊】【第六章习题】
  12. 新手python的100个实战项目-实例分享 | 4个Python实战项目(一)
  13. 旋转矩阵是正交矩阵与伴随性质的证明
  14. 戴尔r720服务器装爱快路由系统,笔记本虚拟机里安装爱快软路由做单臂路由
  15. java文字水印模糊_使用Java给图片添加文字水印并消除锯齿
  16. 内容市场的2017年:五件大事,每件事都惊心动魄
  17. PyTorch-训练可视化
  18. 官宣!博通将以 4100 亿收购 VMware!
  19. imax6q项目:使用psplash制作开机动画
  20. UPX脱壳逐一跟踪分析

热门文章

  1. 802.11 WLAN/CCKM/11R Roaming
  2. 投资中最简单的事儿(量价双突破,买错也要买)
  3. 读文献——《Going deeper with convolutions》
  4. AI赋能下的声纹识别技术在公共安全领域的深度应用
  5. echarts配置项图文介绍——xAxis
  6. Windows下使用chkdsk修复移动硬盘/磁盘
  7. kaldi中文语音识别thchs30模型训练
  8. Python中的数据序列(元组、集合、字典)
  9. 小学期云效能训练营-Day01
  10. java 米转换公里_java中把米换算成公里的代码是什么?