SUMO基础知识

1、节点Node

定义:<node id="<STRING>" x="<FLOAT>" y="<FLOAT>" [type="<TYPE>"]/>
即,节点id、横坐标、纵坐标和节点类型,其中“[]”说明可选。
(1)图
在这里插入图片描述

(2)代码
在这里插入图片描述

type=’traffic_light’的node是红绿灯,type=’priority’的node为优先放行节点

2、边Edge

定义:<edge id="<STRING>" from="<NODE_ID>" to="<NODE_ID>" [type="<STRING>"] [numLanes="<INT>"] [speed="<FLOAT>"] [priority="<UINT>"] />
Type:类型
numLanes:边的车道数
speed:边允许的最大速度
Priority:优先级
在这里插入图片描述

每一个 edge 包含多个 lane (车道,通过参数「numLanes」进行设置)。
在这里插入图片描述

以上面的 node 0, node m4, node 4 这三个 node 之间的 edge 作为例子来进行简单的说明. 他们整体的车道关系如下所示:
在这里插入图片描述
参考:https://mathpretty.com/12797.html

3、边的类型type

Edge type:用于简化边的定义。类型的属性与边的属性完全相同。边的开始node和结束node只能定义在edge属性中。
下面是边的定义中引用类型的示例:
类型type:
在这里插入图片描述

边edge:
在这里插入图片描述

参考:https://sumo.dlr.de/docs/Networks/PlainXML.html#type_descriptions

4、连接connection

“连接”描述了节点的传入边和传出边是如何连接的(例如,禁止在某些连接处左转)。
明确设置连接到哪个边/车道:
简单的边连接:<connection from="<FROM_EDGE_ID>" to="<T0_EDGE_ID>"/>
在这里插入图片描述

边的车道的连接:<connection from="<FROM_EDGE_ID>" to="<T0_EDGE_ID>" fromLane="<INT_1>" toLane="<INT_2>"/>
表示:这里,从边的“<from_edge_ID>”的<INT_1>车道建立到边“<to_edge_ID>的<INT_2>车道的连接。其中,fromLane和toLane分别代表输入和输出车道索引数(索引从0开始,从右往左数)。
在这里插入图片描述

删除连接:<delete from="<FROM_EDGE_ID>" to="<T0_EDGE_ID>"/>
注意:在基本格式中(即,没有fromLane和toLane属性),该定义删除从给定传入边到给定传出边的所有连接。当提供fromLane和toLane属性时,仅删除从给定车道到给定车道的连接。

参考:https://sumo.dlr.de/docs/Networks/PlainXML.html#connection_descriptions

5、交通信号配时方案tlLogic

红绿灯定义作为附加文件(additional-file)的一部分加载。
信号灯定义:

<tlLogic id="0" programID="my_program" offset="0" type="static">

Id:信号灯id;programID:信号灯程序id;offset:程序的初始时间偏移;type:信号灯类型(static固定时间, actuated基于车辆之间时间间隔的相位延长, delay_based排队车辆的累积时间损失)
相位定义:

<phase duration="31" state="GGggrrrrGGggrrrr"/>

duration:相位持续时间;state:此阶段信号状态列表
在这里插入图片描述

在设置state时,是按照【北进口-东进口-南进口-西进口】的顺序设置的,每个进口按照【右转-直行-左转】顺序排序,同一个进口同一个转向的按照【从右到左的车道】排序。例如下图,顺序为北进口直行-东进口直行-南进口直行-西进口直行,state=“GrGr”。
在这里插入图片描述

参考:https://sumo.dlr.de/docs/Simulation/Traffic_Lights.html#defining_new_tls-programs

6、路线定义

(1)车辆路线不与其他车辆共享【即具有所属路线的车辆】:
在这里插入图片描述

(2)车辆共享路线:
在这里插入图片描述

路线在车辆引用前定义,车辆通过route属性引用路线。

7、车辆类型的定义

类型的定义:
在这里插入图片描述

accel表示加速度,decel表示制动加速度,length表示车长
类型在车辆中的应用:
在这里插入图片描述

8、车流定义

车流的定义:<flow id="<ID>" from="<ORIGIN_EDGE_ID>" to="<DESTINATION_EDGE_ID>" begin="<INTERVAL_BEGIN>" end="<INTERVAL_END>" number="<VEHICLES_TO_INSERT>" [type="<VEHICLE_TYPE>"] [color="<COLOR>"]/>
from:起点edge的id; to:终点edge的id;begin:车流开始时间,即时间间隔开始时间;end:车流结束时间,即时间间隔结束时间;number:车流的车辆数;type:车辆类型。
其中,number描述了一组车辆,所以,车辆不需要发车时间。出发时间在<interval_BEGIN>和<interval_END>所述的时间间隔内均匀分布。Number、interval_BEGIN、interval_END都必须是整数值。
如:
在这里插入图片描述

定义车流的两种方法:
(1)Repeated vehicles (Flows)重复车流
指除了出发时间(departure time)不同外,车辆和行程的定义都一样的多车辆(车流)。车流在给定间隔内按照均匀或随机分布
在这里插入图片描述

(2)Incomplete Routes (trips and flows)不完整的路线(行程和车流)
可以只指定车流经过的起始和目的edge,而不需要确定整条路径。
在这里插入图片描述

9、路线和车辆类型分布Route and vehicle type distributions

Sumo可以从分布中选择route和vTypes
代码表示如下:
在这里插入图片描述

Route分布:
Route分布只有id一个属性,每个子元素都需要一个概率属性,其和不是1。并且子元素的id是强制。
在这里插入图片描述

Route分布可以像单个route和Type一样使用:
在这里插入图片描述

6-9参考:
https://sumo.dlr.de/docs/Definition_of_Vehicles%2C_Vehicle_Types%2C_and_Routes.html#vehicles_and_routes

10、设置转弯Routing by Turn Probabilities

参考:https://sumo.dlr.de/docs/Demand/Routing_by_Turn_Probabilities.html#turn_definitions

(1)Turn Definitions
From:记录流入edge;to:记录流出edge;probability代表流量流向分配概率(from_edge到某个to_edge的概率)。
在这里插入图片描述

描述:在0s和3600s之间的时间间隔内,到达edge “myEdge0”末端的车辆将以20%的概率选择edge “myEdge 1”、以70%的概率选择edge “myEdge2”和以10%的概率选择edge “my Edge3”。另一种节省准备描述时间的方法是使用默认值。
(2)Sinks Definitions
Sinks用于记录流出网络的edge;声明sinks edge列表
在这里插入图片描述

(3)Flow Definitions
流量的定义与双路由的定义相同,只有一个区别:由于不知道车辆将在何处离开网络,因为它使用的路线是随机计算的,因此必须使用属性from和属性to来指定路线。必须省略属性to:
在这里插入图片描述

11、设置检测器lanAreaDetector

参考:https://sumo.dlr.de/docs/sumo.html#format_of_additional_files
使用选项加载的文件-附加文件<FILE>可能包括各种网络元素,如红绿灯程序、检测器定义、变速标志和公交车站。这些文件还用于配置模拟输出,例如基于边缘的交通测量或红绿灯切换信息。此外,可以添加路线文件中允许的任何元素,如vTypes、路线和车辆。所有元素都可以被放入同一个附加文件中,或者可以方便地将它们分组到多个文件中。
附加文件总是需要一个具有任意名称的顶级标记。下面给出了一个示例文件:
在这里插入图片描述

如:用additional-file设置了lanAreaDetector,是用于捕获车道沿线区域的交通的检测器。定义ild = ' <laneAreaDetector file="ild.out" freq="1" id="%s_%d" lane="%s_%d" pos="-50" endPos="-1"/>\n'。其中,file代表输出文件的路径(路径可是相对的),freq代表汇总收集数据的周期,id代表检测器id,lane代表检测器应铺设的车道id,pos代表检测器覆盖的第一条车道上的位置,endPos代表检测器覆盖的最后一条车道上的终点位置。
在这里插入图片描述

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值