Opposite-Direction-Driving#
本页描述了支持通过对向车道进行超车的仿真。要启用此功能,网络必须包含关于对向车道邻接关系的附加信息。
构建支持对向行驶的网络#
要启用通过对向车道超车,.net.xml 文件必须包含指定邻接关系的 <neigh> 元素。包含此信息的选项如下所述。
启发式方法#
通过设置 netconvert 选项 --opposites.guess <BOOL>,可以启发式地识别对向车道。
可视化方法#
可以在 netedit 中直接设置车道属性 'opposite'。
显式声明#
可以在 .edg.xml 文件中显式声明邻接关系,如本处所述。显式定义优先于启发式计算的邻接关系。要修改现有网络,可以加载补丁来应用 .edg.xml 文件。
模型描述#
车辆可以通过对向车道进行超车以提高行驶速度。执行此类操作的决定受以下额外检查的约束:
- 对向来车
- 超越前车所需的预估时间
- 被超越车队末端是否存在空闲空间(当前最大前瞻距离固定为 150 米,只有在该阈值之前发现空闲空间才能进行超车)。
- 超车过程中可能经过的路口的优先权(只有直行优先的链接才可用于对向超车)。
- 所需的安全缓冲区可以通过车辆类型属性 lcOpposite 进行校准。
- 前进车道的车道数量(只有紧急车辆在多车道车道上行驶时才会通过对向车道超车)。
车辆也可以通过定义 <stop> 来停靠在对向一侧,其车道索引位于最左侧前进方向车道的左侧(例如,如果前进车道的索引为 0、1、2,则索引为 3)。
限制#
- 由于道路拓扑结构和遮挡车辆,无法考虑对向车流和前车的可见性。
- 只有当两条车道长度相同时,才能设置相邻车道信息。作为变通方法,可以将车道的长度设置为自定义值(可能与几何长度不同)。可以通过设置选项 --opposites.guess.fix-lengths 来自动执行此操作。
- 在 1.9.0 版本之前,对向行驶与子车道模型不兼容。
