文章目录
继续努力!
一、交通信号灯的引入
1.tlsCoordinator.py
This script modifies the traffic-light offsets to coordinate them for a given traffic demand. Example call:
python tools/tlsCoordinator.py -n net.net.xml -r routes.rou.xml -o tlsOffsets.add.xml
此脚本修改了交通灯偏移以协调给定的流量需求。
不知道是啥意思,反正就是用路网文件和route文件得出一个交通信号灯文件
最好是在所有交通灯循环时间都一致的路网文件下使用,感觉这个用处更大一点(可能)
2.tlsCycleAdaptation.py
This script modifies the duration of green phases according to Websters formula to best accomodate a given traffic demand. Example call:
python tools/tlsCycleAdaptation.py -n net.net.xml -r routes.rou.xml -o newTLS.add.xml
此脚本根据WebSters公式修改绿色阶段的持续时间,以最佳地满足给定的流量需求。
尚不明确与上一个py文件的区别,不过应该对流量有更好的掌握
其余几个py文件看不懂…
二、创建自定义的车辆类型
网站
如果想要自定义创建出来的车辆,那么需要准备一个additional-file
这是我写的,直到11.10日下午5:30还不知道能不能用,可以了我会修改此处
<additional>
<vType id="myType" accel="2.6" decel="4.5" sigma="0.1" length="5" maxSpeed="50" speedFactor="normc(1,0.1,0.5,1.5)"/>
</additional>
然后运行下列语句
py randomTrips.py -n chaoyang.net.xml --trip-attributes="type=\"myType\"" --additional-file cardefine.add.xml -o chaoyang_definedcar.rou.xml
生成了一个chaoyang_definedcar.rou.xml文件,截图如下
对比之前的,从route变成了trip,不知道为什么。不过确实将每辆车后面都增加了对应的类型。这个additional-file中储存的类型可以在执行sumo任务的时候被加载
不过这样子又多了一个问题:对交通灯的py工具需要车辆下面是route子元素而不是trip或flow。所以现在又不知道怎么添加交通信号灯了
The route input must contain s with -child-elements. Flows and trips are not supported.
增加addition文件来运行sumo仿真
<configuration>
<input>
<net-file value="chaoyang.net.xml"/>
<route-files value="chaoyang.rou.xml"/>
<additional-files value="cardefine.add.xml"/>
</input>
<time>
<begin value="0"/>
</time>
</configuration>
Trips转routes
duarouter -n newyorknew.net.xml --route-files newyorknew.trips.xml -o newyorknew.rou.xml --ignore-errors
错误无伤大雅
总结
现在要做:
- 对net进行修改,让其正确位置出现交通灯
- 想办法增加路侧单元,找到一个实现V2I的介绍,明天看看
- 看看可视化,做一些有趣的效果好展示