Joining junctions and traffic lights [message #1860149] |
Wed, 19 July 2023 15:23 |
Mehdi Inane Messages: 1 Registered: July 2023 |
Junior Member |
|
|
Hi,
I am working on a project which involves importing a real world map from OSM to SUMO. I have imported it using the following command line options, using netconvert : --osm-files map_drone1.osm -o SUMO.net.xml --geometry.remove --ramps.guess --junctions.join --tls.guess-signals --tls.discard-simple --tls.join --tls.default-type actuated
I used the junctions.join and tls.join arguments to have a single traffic light ID for all signalized intersections in the network, as I'm considering the phases of the intersection as actions in a traffic signal control problem. However, some junctions/traffic lights are not merged. This creates problems especially when I have a merged traffic light, represented for instance by :
<tlLogic id="joinedS_95663375_95663493_95663504" type="actuated" programID="0" offset="0">
<phase duration="12" state="GGGGrrrrrrrrrrrrrGG" minDur="13" maxDur="50"/>
<phase duration="6" state="yyyyrrrrrrrrrrrrryy"/>
<phase duration="12" state="rrrrrrrGGGGrrrrrrGG" minDur="13" maxDur="50"/>
<phase duration="6" state="rrrrrrryyyyrrrrrryy"/>
<phase duration="12" state="rrrrGGGrrrrGGrrrrGG" minDur="5" maxDur="50"/>
<phase duration="6" state="rrrryyyrrrryyrrrryy"/>
<phase duration="12" state="rrrrGGGrrrrrrGGrrGG" minDur="5" maxDur="50"/>
<phase duration="6" state="rrrryyyrrrrrryyrryy"/>
<phase duration="12" state="rrrrrrrrrrrrrrrGGrr" minDur="10" maxDur="50"/>
<phase duration="6" state="rrrrrrrrrrrrrrryyrr"/>
</tlLogic>
and three other junctions in my network, each one coded as the following :
<junction id="95663504" type="traffic_light" x="996.40" y="1113.56" incLanes="261671452#0_0 10741726#0_0" intLanes=":95663504_0_0 :95663504_1_0 :95663504_2_0 :95663504_3_0" shape="996.96,1118.95 999.90,1117.70 999.55,1116.01 999.74,1115.38 1000.18,1114.89 1000.85,1114.54 1001.77,1114.33 1001.26,1111.17 998.97,1111.07 998.04,1110.69 997.25,1110.09 996.61,1109.27 996.10,1108.23 993.11,1109.36 993.38,1111.05 993.16,1111.69 992.72,1112.19 992.03,1112.56 991.12,1112.80 991.64,1115.96 993.91,1116.02 994.86,1116.40 995.69,1117.01 996.39,1117.86">
<request index="0" response="0000" foes="0100" cont="0"/>
<request index="1" response="0000" foes="1100" cont="0"/>
<request index="2" response="0011" foes="0011" cont="0"/>
<request index="3" response="0010" foes="0010" cont="0"/>
</junction>
Is there a way to have junctions and traffic lights representing a single node ? I need this for my project as I need to get the incoming lanes of each traffic light given its ID, and if it's different than the one the traffic light has I can't seem to access this information. I have tried to write a Python code to automate this by splitting ID of the traffic light into junction IDs but not all conflicts follow this same logic, and I would like to generalize this for more networks.
Thank you very much
|
|
|
Powered by
FUDForum. Page generated in 0.02866 seconds