导航软件是怎么工作的?你知道吗?

发布时间:2016/10/5 14:12:48

不管你是开车还是步行,现如今导航是越来越重要了。那么,导航软件到底是如何工作的?来看看中国科技网的解析吧。


路径规划无论在民用还是军用领域都应用广泛,汽车行驶需要路径规划,导弹、无人机等飞行器也需要进行航路(或航迹)规划,它们的底层算法是相通的,只不过汽车路径规划相对简单只需要在二维平面进行,而且对规划环境以及反应速度等方面的要求没有飞行器那么高。本质上说,底层算法包括两大类。



第一种是数值优化算法。它在起点和终点之间布设一系列路径点,使用坐标值表述路径点位置,让汽车沿着这些点行驶。在选择路径点时,就需要定义目标函数,例如路径长度最短。规划过程中还需考虑一些约束条件,比如对咱们日常驾驶的汽车来说,必须要求路径点都位于已有道路上。然后,借鉴一些现代数值优化算法(比如粒子群算法,它是模拟鸟群、鱼群捕食过程的全局搜索算法),不断地对可能布设路径点的区域进行探索,最终确定使得目标函数最优(如路径长度最低)的路径点。


但总体来说,如果路径点规模较大时,使用数值优化算法求解路径规划时,问题的维度将急剧增加,导致规划过程所需时间较长,难以满足导航软件的时效性要求。如今非常具有实用性的是第二种算法——启发式算法。


第二种是启发式算法,以我们导航上常用的“A*算法”“Dijikstra算法”等为代表,它从起始点开始,以一定的步长为单位,进行节点扩展。选取代价值(如路径长度)最小的节点作为扩展节点,扩展过程中需要考虑一些约束,比如转弯半径的限制以及对风险障碍的规避等等,这就使扩展角度不可能总是全方位的。如此一步步扩展,直到当某个扩展节点到达目标终点时,再从终点倒过来回溯到起点,这样,把过程中的各个节点串起来,就成为了一条规划的路径。

本文整理于互联网,如有侵权,请联系email:kf@53shop.com 进行删除处理。

上一篇:谷歌开发聊天机器人,以后生活将更便捷

下一篇:什么时候该给你的智能手机充电,你清楚吗?

推荐货源
选择分类:
阅读推荐
最新资讯
分类栏目
新手开店 开店经验 淘宝推广
进货技巧 淘宝故事 网店装修
图片处理 网购技巧 行业新闻
创业项目 淘宝考试 品牌排行
微信开店 品牌百科 微商货源