0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

中国铁路网的Dijkstra算法实现案例

友晶FPGA 来源:友晶Terasic 2024-04-09 11:10 次阅读

1. 项目概述

项目说明

该项目分别在DE1-SOC开发板的FPGA和HPS上实现了Dijkstra算法,能在中国铁路网中找到两站之间的最短距离和路线。

这个项目包含304个中国主要火车站。运行程序时,首先在VGA上显示包含所有火车站及站点之间连线的完整地图:

88307104-f61d-11ee-a297-92fbcf53809c.jpg

然后用户可以通过输入两个站点的名称,或在VGA屏幕相应的站点上点击鼠标以选择任意两个站点作为起点和目的地,程序会根据Dijkstra算法很快返回它们之间的最小距离、沿路站点以及计算所耗费时长,并在VGA显示器上显示出详细的路线。

最后他们将两套方案进行了对比,结果显示Dijkstra算法在FPGA上实现比仅在HPS上实现的计算速度快10倍。所以利用FPGA并行数据处理的优势来加速Dijkstra算法是个非常不错的选择。

2. Dijkstra算法

Dijkstra算法用于计算点网络中两点之间的最小距离和路径。由计算机科学家Edsger W. Dijkstra于1956年提出。下图是这个算法的一个概念解释:

8854a902-f61d-11ee-a297-92fbcf53809c.jpg

圆圈内的数字代表火车站,连接两个圆的线代表铁路,线旁边的数字是铁路的距离。例如,从1号站到4号站有多种选择,Dijkstra算法将帮助我们找到1号站到4号站的最短距离。

表1红框中的第1行表示节点1与其他每个节点之间的最小距离。

表1

886ed94e-f61d-11ee-a297-92fbcf53809c.png

把1当作起点。为了获得 1 与其余每个站点之间的最小距离,需多次更新表1红框中的第 1 行。

首先,从点 1 到点 1 本身,距离为0,这肯定是最短,因此不会再更新这个值,这里把0设定为固定值。

然后找到表1红框第 1 行中与1连接的最小距离对应的点,即距离为7的点 2 。此时不会再更新 7这个值,因为可以确保它是从点 1 到点 2 的最短距离。这里把7设定为固定值。

接下来,点2 将被视为下一个起点。如果第 1 行 x 列的距离大于第 1 行第 2 列和第 2 行 x 列的距离之和,则将第 1 行 x 列更新为距离之和。x 可以来自{3,4,5,6}中的任意数字。这样第一行就更新如下:

表2

88e1b28e-f61d-11ee-a297-92fbcf53809c.jpg

现在,除了固定值0和 7 之外,第 1 行中的最小值是 9,对应于点 3。它是从点 1 到点 3 的最短距离,所以此处9也被设定为固定值。

接下来,第 1 行将从第 3列更新。如果第1行x列的距离大于第1行第3列和第3行x列的距离之和,则将第1行x列更新为距离之和。x 可以来自{4,5,6}中的任意数字。第 1 行更新为:

表3

88f13538-f61d-11ee-a297-92fbcf53809c.jpg

用同样的方法,分别更新第1行的4、5和6列。结果如下所示:

表4

8911f50c-f61d-11ee-a297-92fbcf53809c.jpg

这样就得到了点1与其他每个节点之间的最小距离。



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1628

    文章

    21721

    浏览量

    602859
  • VGA
    VGA
    +关注

    关注

    5

    文章

    535

    浏览量

    62889
  • HPS
    HPS
    +关注

    关注

    0

    文章

    6

    浏览量

    3224

原文标题:FPGA开源项目分享——中国铁路网的 Dijkstra 算法实现

文章出处:【微信号:友晶FPGA,微信公众号:友晶FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    使用dijkstra算法的准备工作

    使用dijkstra算法dijkstra算法是特别经典的路径分析算法,文章中的算法也确实很容易
    发表于 05-23 08:13

    基于有向非负极图数据DIJKSTRA算法

    法相结合的方法。对Dijkstra算法改进,并求解关键节点(起点,终点和必经节点)间的最短路径,进而从关键节点所构成的矩阵中采用回溯法得到目标路径。通过实际的算法实现,测试大量的有向非
    发表于 11-03 15:22 8次下载
    基于有向非负极图数据<b class='flag-5'>DIJKSTRA</b><b class='flag-5'>算法</b>

    基于Dijkstra最短路径的抽样算法

    针对社交网络中随机抽样算法抽样结果不能很好地代表原始网络的问题,设计了一种基于Dijkstra最短路径的抽样算法。首先,利用Dijkstra算法
    发表于 12-17 11:40 1次下载
    基于<b class='flag-5'>Dijkstra</b>最短路径的抽样<b class='flag-5'>算法</b>

    基于Dijkstra算法的配电网孤岛划分

    针对传统孤岛划分方法存在的没有合理利用电网拓扑结构、算法搜索性能差等问题,提出了一种基于Dijkstra算法的配电网孤岛划分方法。首先,采用Dijkstra
    发表于 03-05 11:02 1次下载

    福建铁路和福建铁塔成功实现了南龙铁路网络的全面覆盖

    经测试,三大运营商网络在高铁车厢及铁路沿线的信号质量提升了25%,4G峰值下载速率可达到150Mpbs以上,以下载一部1G大小的电影为例,仅需不到50秒。
    发表于 01-03 10:01 783次阅读

    在不同行车运行图下,如何精确预测高铁牵引变电站的能耗

    根据《中长期铁路网规划》方针,预计2020年,中国高速铁路运营总里程将达到3万km。随着运营里程的快速增长,其能耗问题日显突出。
    的头像 发表于 03-26 14:00 2137次阅读

    5G等三大技术成为加速智能高铁和智慧铁路发展的关键

    不过,虽然我国铁路网建设速度很快,但眼下仍然无法满足人们的生产、生活需求,尤其是出行需求。众所周知,我国拥有14亿的庞大人口,每年的出行需求十分旺盛。而在现有铁路条件下,遇到春运等出行高峰期,依然要承受巨大的压力。在此背景下,我国铁路网
    的头像 发表于 08-14 11:27 3284次阅读

    高效便捷的全国现代铁路网络助力开启高铁传媒时代

    2020年,高速铁路已然建成3万公里,覆盖80%以上的大城市。全国高铁四纵四横基本成型,形成了覆盖广泛、高效便捷的全国现代铁路网络。高铁传媒时代正式开启! 在这样的势态下,积极拥抱新的消费形态成为
    的头像 发表于 08-28 11:12 1847次阅读

    铁路连接器的用途

    现代铁路网络允许从一个城市到另一个城市的舒适和快速旅行,交通量不断增加。铁路连接器是用于在不同类型的机车车辆上传输数据和信号的设备,包括信号系统和列车供电系统。连接器安装在所有类型的铁路系统或设备上,可确保任何电气或电子设备的高
    的头像 发表于 07-02 18:02 3605次阅读

    3D打印助力高速铁路运输网建设

    近日,有消息称,英国对即将建成的高速2号(HS2)铁路网伦敦终点站工程中,将使用3D打印技术,在此项目中建筑商是通过使用一种被称为“Printfrastructure”的技术,实现在现场建造混凝土板,而不是像传统模式那样先把材料运到那里才开始建造。
    发表于 08-14 17:48 538次阅读

    NVIDIA助力DSD构建铁路网的数字孪生

    德国的国家基础设施管理者正在设计采用 AI 技术的数字孪生,以开发未来的铁路系统。
    的头像 发表于 09-23 11:35 1377次阅读

    Dijkstra算法和A*算法

    在本文中,我们将主要介绍Dijkstra算法和A*算法,从成本计算的角度出发,并逐步展开讨论。 我们将从广度优先搜索开始,然后引入Dijkstra
    的头像 发表于 07-07 10:56 1508次阅读
    <b class='flag-5'>Dijkstra</b><b class='flag-5'>算法</b>和A*<b class='flag-5'>算法</b>

    应用案例 Panorama SCADA:开创性的铁路电气控制系统、牵引动力集中管理系统

    基于宏集Panorama SCADA的牵引动力管理系统,帮助英国铁路网运营商Network Rail实现铁路牵引电网的高效管理与精准控制,大幅改善其监测和控制牵引电网的方式
    的头像 发表于 06-27 11:40 533次阅读
    应用案例 Panorama SCADA:开创性的<b class='flag-5'>铁路</b>电气控制系统、牵引动力集中管理系统

    华为星河AI铁路网络解决方案释放铁路新质生产力

      今日,华为星河AI铁路网络解决方案亮相第三届中国IPv6创新发展大会。会上,华为分享了关于铁路行业的IPv6+和安全创新实践,旨在筑牢下一代新质互联网基石和安全防线,释放铁路新质生
    的头像 发表于 07-09 16:32 811次阅读

    华为AI技术助力南非PRASA构筑智能铁路周界防护

    南非拥有非洲最发达的铁路网,系统里程达38,000多公里。华为携手南非唯一的客运集团南非客运铁路局(以下简称南非PRASA),通过多维感知、多技术融合、AI使能构筑智能铁路周界防护,实现
    的头像 发表于 09-02 18:03 839次阅读