如何使用 SUMO randomTrips 脚本在 x 秒的模拟时间内获得 n 辆车辆?
How to get n number of vehicles for x sec of simulation using SUMO randomTrips script?
我正在使用 Veins 模拟器,我正在使用以下命令创建带有路径的汽车:
python c:/DLR/Sumo/tools/randomTrips.py -n test.net.xml -e 1200 -l
python c:/DLR/Sumo/tools/randomTrips.py -n test.net.xml -r test.rou.xml -e 1200 -l
此命令为 1200 秒的模拟生成了 1200 辆汽车,但我想为 100 秒的模拟生成 1200 辆汽车。我该怎么做?
只是为了回答这个问题(主要是改写 Julian Heinovski 在评论中所说的话)
randomTrips.py -n net.net.xml -o passenger.trips.xml -e 100
将生成 100 次行程。如果你想确保所有这些都是可能的(连接在网络中),你可以添加 --validate
但这将删除无效的行程(你最终可能会少于 100)。你可以简单地玩弄这个数字。
要让所有出发时间都从 0 秒开始,您可以使用正则表达式替换来编辑行程文件,将所有出发时间替换为 0。在 *nix 上可能会执行以下操作:
sed -i 's/depart="[0-9]*/depart="0/' passenger.trips.xml
现在您可以在您选择的时段开始相扑
sumo -n net.net.xml -r passenger.trips.xml -e 1200
可以使用 --begin、--end 和 --period 选项生成指定时间段内随机分布的车辆数量。
例如,要在 100 秒的模拟时间内生成 1200 辆车,可以使用以下命令:
python randomTrips.py -n net.net.xml -r net.rou.xml -o net.trip.xml --begin=0 --end=100 --period=0.083333
简而言之,
number of generated vehicles = (end - begin) / period
我正在使用 Veins 模拟器,我正在使用以下命令创建带有路径的汽车:
python c:/DLR/Sumo/tools/randomTrips.py -n test.net.xml -e 1200 -l
python c:/DLR/Sumo/tools/randomTrips.py -n test.net.xml -r test.rou.xml -e 1200 -l
此命令为 1200 秒的模拟生成了 1200 辆汽车,但我想为 100 秒的模拟生成 1200 辆汽车。我该怎么做?
只是为了回答这个问题(主要是改写 Julian Heinovski 在评论中所说的话)
randomTrips.py -n net.net.xml -o passenger.trips.xml -e 100
将生成 100 次行程。如果你想确保所有这些都是可能的(连接在网络中),你可以添加 --validate
但这将删除无效的行程(你最终可能会少于 100)。你可以简单地玩弄这个数字。
要让所有出发时间都从 0 秒开始,您可以使用正则表达式替换来编辑行程文件,将所有出发时间替换为 0。在 *nix 上可能会执行以下操作:
sed -i 's/depart="[0-9]*/depart="0/' passenger.trips.xml
现在您可以在您选择的时段开始相扑
sumo -n net.net.xml -r passenger.trips.xml -e 1200
可以使用 --begin、--end 和 --period 选项生成指定时间段内随机分布的车辆数量。
例如,要在 100 秒的模拟时间内生成 1200 辆车,可以使用以下命令:
python randomTrips.py -n net.net.xml -r net.rou.xml -o net.trip.xml --begin=0 --end=100 --period=0.083333
简而言之,
number of generated vehicles = (end - begin) / period