|
写今年B题的时候自己写了一个库(交通仿真的,自己觉得应该比网上流传的那个matlab版本适用面更广,效率也更高)
例子:
定义两条道路:
入口道路rd
- 长度为1000m
- 车道数量为2
- 最大限速60km/h
- 初始时均匀放置100辆初速度为30km/h的小型汽车(每条车道都是100)
- 边界条件为每离开一辆车就自动添加一辆新的相同初始条件的车
出口道路rd2:
- 长度为500m
- 车道数量为2
- 最大限速为60km/h
- 初始时道路是空的
运行时截图:
( 车的颜色代表的是运行状态,红色代表车速很慢,黄色代表车速较慢,绿色代表畅通)
可以得到各种数据:
- 车辆大小
- 车辆上司机的视野距离
- 车辆当前速度
- 车辆行驶道路的速度限制
- 车辆的加速度
- 车辆的减速度
- 道路的车道数
- 道路的长度
etc
ps.每一辆运行的车、每一条道路的参数都可以独立定制
整个比赛期间零零散散写了上千行吧(当时写的比较急,不是OOP的) 后面觉得丢掉挺可惜的,就把它重构了好几次
现在放在github上面,等到项目真正成形了我会放到 PyPi上面的
github项目地址:
https://github.com/xiongbeer/Imp ... -Traffic-Simulation
使用的话,需要会Python和有一定的面向对象编程的知识
现在能稳定使用的库是basicroad,另外的库都是不完善的(正在努力开发)
欢迎大家使用,更欢迎Pull Request 一起开发~~~
|
|