概述#
dfrouter ("检测器流量路由生成器") 使用感应线圈数据计算车辆路径,这些路径可被 sumo 使用。
- 目的: 基于感应线圈计数构建车辆路径
- 系统: 可移植(已在 Linux/Windows 上测试);在命令行运行
-
输入(必需):
A) 通过 netconvert 或 netgenerate 生成的道路网络,参见 构建网络
B) 感应线圈定义
C) 感应线圈测量数据
- 输出: 可被 sumo 使用的 车辆、车辆类型和路径定义
- 编程语言: C++
使用说明#
高层次描述可在 需求/从观测点生成路径 中找到。完整选项列表如下。
选项#
您可以使用 XML 模式定义文件来设置 dfrouter 配置: dfrouterConfiguration.xsd。
配置#
SUMO 套件的所有应用程序都以相同方式处理配置选项。这些选项在 基础/使用命令行应用程序#配置文件 中讨论。
| 选项 | 描述 |
|---|---|
| -c <FILE> --configuration-file <FILE> |
启动时加载指定的配置文件 |
| -C <FILE> --save-configuration <FILE> |
将当前配置保存到文件 |
| --save-configuration.relative <BOOL> | 保存配置时强制使用相对路径;默认值: false |
| --save-template <FILE> | 将配置模板(空)保存到文件 |
| --save-schema <FILE> | 将配置模式保存到文件 |
| --save-commented <BOOL> | 向保存的模板、配置或模式添加注释;默认值: false |
输入#
| 选项 | 描述 |
|---|---|
| -n <FILE> --net-file <FILE> |
加载 SUMO 网络文件 |
| -d <FILE> --detector-files <FILE> |
从文件加载检测器描述 |
| -f <FILE> --measure-files <FILE> |
从文件加载检测器流量 |
输出#
| 选项 | 描述 |
|---|---|
| --write-license <BOOL> | 将许可证信息包含到每个输出文件中;默认值: false |
| --write-metadata <BOOL> | 写入可解析的元数据(配置等)而不是注释;默认值: false |
| --output-prefix <STRING> | 应用于所有输出文件的前缀。特殊字符串 'TIME' 将被当前时间替换。 |
| --precision <INT> | 定义浮点数输出的小数点后位数;默认值: 2 |
| --precision.geo <INT> | 定义经度、纬度输出的小数点后位数;默认值: 6 |
| --output.compression <STRING> | 定义标准压缩算法(目前仅适用于 parquet 输出) |
| --output.format <STRING> | 定义标准输出格式(如果无法从文件名推导)('xml', 'csv', 'parquet');默认值: xml |
| --output.column-header <STRING> | 如何根据属性名推导列头('none', 'tag', 'auto', 'plain');默认值: tag |
| --output.column-separator <STRING> | CSV 输出中的分隔符;默认值: ; |
| -H <BOOL> --human-readable-time <BOOL> |
将时间值写为 小时:分钟:秒 或 天:小时:分钟:秒,而不是秒数;默认值: false |
| -o <FILE> --routes-output <FILE> |
将计算出的路径保存到文件 |
| --routes-for-all <BOOL> | 强制 dfrouter 为中间检测器计算路径;默认值: false |
| --detector-output <FILE> | 将类型化检测器保存到文件 |
| --detectors-poi-output <FILE> | 将检测器位置作为兴趣点 (poi) 保存到文件 |
| --emitters-output <FILE> | 将源检测器的发射器定义保存到文件 |
| --vtype <BOOL> | 向发射器文件添加车辆类型 (PKW, LKW);默认值: false |
| --vtype-output <FILE> | 将生成的车辆类型写入单独的文件,而不是包含在发射器输出中 |
| --emitters-poi-output <FILE> | 将发射器位置作为兴趣点 (poi) 保存到文件 |
| --variable-speed-sign-output <FILE> | 将汇检测器的可变限速标志定义保存到文件 |
| --end-reroute-output <FILE> | 将汇检测器的重路由器定义保存到文件 |
| --validation-output <FILE> | 将给定检测器位置的感应线圈定义写入文件 |
| --validation-output.add-sources <BOOL> | 向验证输出添加源检测器;默认值: false |
处理#
| 选项 | 描述 |
|---|---|
| --guess-empty-flows <BOOL> | 从上游或下游推导缺失的流量值(不工作!);默认值: false |
| -h <BOOL> --highway-mode <BOOL> |
切换到高速公路模式;默认值: false |
| --ignore-invalid-detectors <BOOL> | 仅警告无法解析的检测器;默认值: false |
| --revalidate-detectors <BOOL> | 即使已指定,也重新计算检测器类型;默认值: false |
| --revalidate-routes <BOOL> | 即使已指定,也重新计算路径;默认值: false |
| --keep-unfinished-routes <BOOL> | 保留路径,即使它们已耗尽最大搜索深度;默认值: false |
| --keep-longer-routes <BOOL> | 保留路径,即使存在更短的路径;默认值: false |
| --max-search-depth <INT> | 在不经过检测器的情况下跟随路径的边数;默认值: 30 |
| --emissions-only <BOOL> | 仅写入发射时间;默认值: false |
| --disallowed-edges <STRING[ ]> | 不在这些边上进行路径规划 |
| --vclass <STRING> | 仅在允许给定车辆类别的边上进行路径规划;默认值: ignoring |
| --keep-turnarounds <BOOL> | 允许掉头作为路径延续;默认值: false |
| --min-route-length <FLOAT> | 每条路径的起点和终点节点之间的最小距离(米);默认值: -1 |
| --randomize-flows <BOOL> | 为发射的车辆生成随机出发时间;默认值: false |
| --time-factor <TIME> | 将流量时间乘以 TIME 以获取秒数;默认值: 60 |
| --time-offset <TIME> | 从(缩放后的)流量时间中减去 TIME 秒;默认值: 0 |
| --time-step <TIME> | 两个连续数据集之间的预期距离;默认值: 60 |
| --calibrator-output <BOOL> | 将校准器写入文件;默认值: false |
| --include-unused-routes <BOOL> | 在输出中包含没有车辆的路径;默认值: false |
| --revalidate-flows <BOOL> | 检查计算流量为 0 的检测器是否可以吸引额外的交通;默认值: false |
| --remove-empty-detectors <BOOL> | 从列表中移除空检测器;默认值: false |
| --strict-sources <BOOL> | 状态未知的边是否可以阻止某条边成为源;默认值: false |
| --respect-concurrent-inflows <BOOL> | 在计算拆分概率时,尝试确定中间检测器的其他流入;默认值: false |
| --scale <FLOAT> | 流量的比例因子;默认值: 1 |
默认值#
| 选项 | 描述 |
|---|---|
| --departlane <STRING> | 指定默认出发车道 |
| --departpos <STRING> | 指定默认出发位置 |
| --departspeed <STRING> | 指定默认出发速度 |
| --arrivallane <STRING> | 指定默认到达车道 |
| --arrivalpos <STRING> | 指定默认到达位置 |
| --arrivalspeed <STRING> | 指定默认到达速度 |
| --speeddev <FLOAT> | 车辆的默认速度偏差;默认值: 0.1 |
时间#
| 选项 | 描述 |
|---|---|
| -b <TIME> --begin <TIME> |
定义开始时间;之前的定义将被丢弃;默认值: 0 |
| -e <TIME> --end <TIME> |
定义结束时间;之后的定义将被丢弃;默认为一天;默认值: 86400 |
报告#
SUMO 套件的所有应用程序都以相同方式处理大多数报告选项。这些选项在 基础/使用命令行应用程序#报告选项 中讨论。
| 选项 | 描述 |
|---|---|
| -v <BOOL> --verbose <BOOL> |
切换到详细输出;默认值: false |
| --print-options <BOOL> | 在处理前打印选项值;默认值: false |
| -? <BOOL> --help <BOOL> |
打印此屏幕或选定主题;默认值: false |
| -V <BOOL> --version <BOOL> |
打印当前版本;默认值: false |
| -X <STRING> --xml-validation <STRING> |
设置 XML 输入的模式验证方案("never", "local", "auto" 或 "always");默认值: local |
| --xml-validation.net <STRING> | 设置 SUMO 网络输入的模式验证方案("never", "local", "auto" 或 "always");默认值: never |
| -W <BOOL> --no-warnings <BOOL> |
禁用警告输出;默认值: false |
| --aggregate-warnings <INT> | 当同一类型的警告超过 INT 时进行聚合;默认值: -1 |
| -l <FILE> --log <FILE> |
将所有消息写入文件(隐含 verbose) |
| --message-log <FILE> | 将所有非错误消息写入文件(隐含 verbose) |
| --error-log <FILE> | 将所有警告和错误写入文件 |
| --log.timestamps <BOOL> | 在所有消息前写入时间戳;默认值: false |
| --log.processid <BOOL> | 在所有消息前写入进程 ID;默认值: false |
| --language <STRING> | 消息中使用的语言;默认值: C |
| --report-empty-detectors <BOOL> | 列出没有流量的检测器(启用 -v);默认值: false |
| --print-absolute-flows <BOOL> | 打印聚合的检测器流量;默认值: false |
| --no-step-log <BOOL> | 禁用路径解析步骤的控制台输出;默认值: false |
随机数#
SUMO 套件的所有应用程序都以相同方式处理随机化选项。这些选项在 基础/使用命令行应用程序#随机数选项 中讨论。
| 选项 | 描述 |
|---|---|
| --random <BOOL> | 使用当前系统时间初始化随机数生成器;默认值: false |
| --seed <INT> | 使用给定值初始化随机数生成器;默认值: 23423 |
