System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及交通模拟,尤其涉及一种基于gpu的微观交通模拟系统。
技术介绍
1、微观交通模拟是指从每个交通参与者个体出发,对交通参与者的微观行为以及多个交通参与者之间的关联影响进行建模以驱动城市交通运行情况的模拟仿真,用于还原城市尺度的亚秒级细粒度交通运行情况。微观交通模拟的典型应用包括城市车道规划、城市交通承载力测算等,具有较高的社会价值。而要完成这样城市级别的亚秒级细粒度微观交通模拟,需要消耗大量的计算资源,这就要求微观交通模拟系统应能够充分利用计算资源,完成模拟任务。
2、然而,目前的微观交通模拟系统主要采用多线程的方式进行计算,如cityflow[1]、qarsumo[2]等。多线程的微观交通模拟系统相较于单线程的微观交通模拟系统sumo[3]而言,能够更为有效地利用单台计算机的cpu计算资源,但是在城市级别的亚秒级细粒度微观交通模拟任务中,单台计算机的cpu计算资源是无法支撑对该模拟任务的快速执行,也就限制了基于模拟任务执行结果的分析、迭代、模型训练等下游工作。gpu作为一种计算加速设备,能够提供超大算力。将gpu应用到微观交通模拟系统的模拟计算中,可为城市级别的亚秒级细粒度微观交通模拟任务的快速执行提供解决途径。但是,针对目前缺乏相关研究。
3、因此针对微观交通模拟,如何合理设计基于gpu的微观交通模拟系统成为了一个亟待解决的重要问题。
技术实现思路
1、为了解决上述问题,本专利技术提供一种基于gpu的微观交通模拟系统,根据cpu与gpu的特点
2、第一方面,本专利技术提供一种基于gpu的微观交通模拟系统,所述系统包括:主机端、设备端和路径规划服务端;
3、所述主机端工作在cpu上,包括:数据载入单元和路径规划请求与响应转发单元;
4、所述设备端工作在gpu上,包括:交通运行模拟单元;
5、所述数据载入单元,用于载入微观交通模拟的初始数据,并转发给所述设备端;其中,所述初始数据包括:城市道路网数据、城市感兴趣区域数据以及每一个待模拟车辆的出行时刻表;
6、所述路径规划请求与响应转发单元,用于实现所述设备端与所述路径规划服务端之间的路径规划请求与响应的转发;
7、所述交通运行模拟单元,用于基于所述初始数据,对城市感兴趣区域中的待模拟车辆进行第一交通运行模拟仿真,对城市道路网中的待模拟车辆进行第二交通运行模拟仿真;其中,所述第一交通运行模拟仿真具体为在每一时刻检查当前全局时钟与相应车辆出发时间是否重合,并在重合时向所述主机端发送包含相应车辆出发地与目的地的路径规划请求以得到对应的路径规划响应;所述第二交通运行模拟仿真具体为根据城市道路网信息、城市感兴趣区域信息和相应车辆的路径规划,模拟相应车辆的交通运行;
8、所述路径规划服务端,用于根据所述主机端转发的路径规划请求,向所述主机端发送路径规划响应。
9、根据本专利技术提供的基于gpu的微观交通模拟系统,所述城市道路网数据,包括城市道路网中每一个车道的静态数据;
10、所述城市感兴趣区域数据包括但不限于:城市中每一个感兴趣区域的静态数据;
11、每一个所述待模拟车辆的出行时刻表包括但不限于:每一个所述待模拟车辆的出发时间、出发地和目的地;
12、其中,每一个所述车道的静态数据包括但不限于:每一个所述车道的id、地方坐标系坐标、连接的路口、下一车道、限速和通行限制和名称;
13、每一个所述感兴趣区域的静态数据包括但不限于:每一个所述感兴趣区域的id、地方坐标系坐标、与车道连接点的地方坐标系坐标、类型和名称。
14、根据本专利技术提供的基于gpu的微观交通模拟系统,所述数据载入单元,包括:
15、数据载入子单元,用于从预先配置的数据库或硬盘中读取所述初始数据;
16、数据格式转化子单元,用于将所述初始数据中以id存储的拓扑关联关系表示为程序中的变量映射关系,并在之后转化为适用于所述设备端的数据格式得到第一数据;
17、数据转发子单元,用于将所述第一数据发送至所述设备端。
18、根据本专利技术提供的基于gpu的微观交通模拟系统,所述数据载入单元还用于根据所述初始数据确定城市道路网拓扑结构;
19、所述路径规划请求与响应转发单元,包括:
20、路径规划请求转发子单元,用于解析所述设备端发送的路径规划请求,得到目标出发地和目标目的地;还用于以远程调用方式请求所述路径规划服务端进行所述目标出发地与所述目标目的地之间的路径规划;
21、路径规划响应转发子单元,用于解析所述路径规划服务端发出的路径规划响应,得到目标路径规划;还用于基于所述城市道路网拓扑结构在所述目标路径规划上标注距目的地距离,并将标注之后的目标路径规划发送至所述设备端。
22、根据本专利技术提供的基于gpu的微观交通模拟系统,所述第二交通运行模拟是采用多轮迭代模拟方式递推完成的,所述设备端还包括:索引构建单元;
23、所述索引构建单元,用于根据上一轮模拟迭代时每一个所述车道的主链、离开车辆列表和加入车辆列表,确定本轮模拟迭代每一个所述车道的主链-支链链表;还用于基于本轮模拟迭代时每一个所述车道的主链-支链链表生成本轮模拟迭代时每一个所述车道中的每一个待模拟车辆的车辆索引;
24、其中,每一个所述车道的初始主链由每一个待模拟车辆的初始位置确定;
25、所述每一个所述车道的主链-支链链表中的主链为每一个所述车道上的待模拟车辆按照位置有序排布而成的有序链表;支链以指针方式表示每一个所述车道上的每一个待模拟车辆在自身所处车道的每一个相邻车道上最靠近自身的前后车;
26、所述车辆索引,用于表征相应车辆在自身所处车道以及自身所处车道的每一个相邻车道上最靠近自身的前后车。
27、根据本专利技术提供的基于gpu的微观交通模拟系统,所述设备端还包括:存储单元;
28、所述存储单元,包括静态数据存储子单元和动态数据存储子单元;
29、所述静态数据存储子单元,用于存储第一数组、第二数组和第三数组;
30、所述动态数据存储子单元,用于存储第一链表、第二链表和第三链表;
31、其中,所述第一数组为由城市道路网中所有车道的静态数据组织成的数组;
32、所述第二数组为由城市所有感兴趣区域的静态数据组织成的数组;
33、所述第三数组为由所有待模拟车辆的静态数据组织成的数组;每一个所述待模拟车辆的静态数据包括每一个所述待模拟车辆实时的位置和速度;
34、所述第一链表为由本轮模拟迭代时所有待模拟车辆的车辆索引组织成的链表;
35、所述第二链表为由所有待模拟车辆的出行时刻表组织成的本文档来自技高网...
【技术保护点】
1.一种基于GPU的微观交通模拟系统,其特征在于,所述系统包括:主机端、设备端和路径规划服务端;
2.根据权利要求1所述的基于GPU的微观交通模拟系统,其特征在于,所述城市道路网数据,包括城市道路网中每一个车道的静态数据;
3.根据权利要求2所述的基于GPU的微观交通模拟系统,其特征在于,所述数据载入单元,包括:
4.根据权利要求3所述的基于GPU的微观交通模拟系统,其特征在于,所述数据载入单元还用于根据所述初始数据确定城市道路网拓扑结构;
5.根据权利要求2~4任一项所述的基于GPU的微观交通模拟系统,其特征在于,所述第二交通运行模拟是采用多轮迭代模拟方式递推完成的,所述设备端还包括:索引构建单元;
6.根据权利要求5所述的基于GPU的微观交通模拟系统,其特征在于,所述设备端还包括:存储单元;
7.根据权利要求6所述的基于GPU的微观交通模拟系统,其特征在于,所述根据城市道路网信息、城市感兴趣区域信息和相应车辆的路径规划,模拟相应车辆的交通运行,包括:
8.根据权利要求1所述的基于GPU的微观交
9.根据权利要求1或8所述的基于GPU的微观交通模拟系统,其特征在于,所述路径规划服务端通过分布式集群技术动态扩展本地服务器数量;
10.根据权利要求6所述的基于GPU的微观交通模拟系统,其特征在于,所述交通运行模拟单元还用于对城市道路网中的待模拟车辆进行第三交通运行模拟仿真;
...【技术特征摘要】
1.一种基于gpu的微观交通模拟系统,其特征在于,所述系统包括:主机端、设备端和路径规划服务端;
2.根据权利要求1所述的基于gpu的微观交通模拟系统,其特征在于,所述城市道路网数据,包括城市道路网中每一个车道的静态数据;
3.根据权利要求2所述的基于gpu的微观交通模拟系统,其特征在于,所述数据载入单元,包括:
4.根据权利要求3所述的基于gpu的微观交通模拟系统,其特征在于,所述数据载入单元还用于根据所述初始数据确定城市道路网拓扑结构;
5.根据权利要求2~4任一项所述的基于gpu的微观交通模拟系统,其特征在于,所述第二交通运行模拟是采用多轮迭代模拟方式递推完成的,所述设备端还包括:索引构建单元;
6.根据权利要求5所述的基于...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。