[sumo-user] Traffic vehicle always stop inside intersection

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

[sumo-user] Traffic vehicle always stop inside intersection

A Raman
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

intersection.png (4K) Download Attachment
intersection_nosignal.net.xml (14K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

Jakob Erdmann
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

A Raman
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

experiment_int.rou.xml (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

Jakob Erdmann
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

A Raman
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

Jakob Erdmann
Your traci script is importing the wrong traci (from anaconda) which does not support tracing.

Am Mi., 3. März 2021 um 10:28 Uhr schrieb A Raman <[hidden email]>:
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

A Raman
Thank you for the help so far. Please find attached the traci log file from my script. The problem still exist when I run without --random and with the traffic definition file previously attached

On Wed, Mar 3, 2021 at 6:32 PM Jakob Erdmann <[hidden email]> wrote:
Your traci script is importing the wrong traci (from anaconda) which does not support tracing.

Am Mi., 3. März 2021 um 10:28 Uhr schrieb A Raman <[hidden email]>:
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

tracilog.txt (1M) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

Jakob Erdmann
In the default intersection model, a vehicle from a side road will either stop before the stop line or pass it and the continue driving across the intersection.
Consequently, vehicles from the main road will yield to the side-road vehicle if it entered the intersection first (by passing the stop line).

Currently, the best workaround for letting your ego vehicle stop at that location without impacting main road flow is by changing the junction shape to move the stop line forward. (i.e. setting it's 'radius' attribute to 2.5).

regards,
Jakob

Am Mi., 3. März 2021 um 12:54 Uhr schrieb A Raman <[hidden email]>:
Thank you for the help so far. Please find attached the traci log file from my script. The problem still exist when I run without --random and with the traffic definition file previously attached

On Wed, Mar 3, 2021 at 6:32 PM Jakob Erdmann <[hidden email]> wrote:
Your traci script is importing the wrong traci (from anaconda) which does not support tracing.

Am Mi., 3. März 2021 um 10:28 Uhr schrieb A Raman <[hidden email]>:
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

A Raman
Thank you for the response.

To give a little more context, this experiment is simply for me to understand more on how sumo's intersection model works (i.e what constitutes the intersection area and how the vehicles behave by comparing it to sumo's publication on the matter by doctoring when the ego vehicle enters). With that said, the motion and position I put the ego vehicle in is merely arbitrary because from my previous understanding I had thought that it had 'entered' the intersection area. I tried setting startPos of both vehE and vehW to 20 to try and make extra sure that the ego vehicle enters the intersection first and the same result is obtained, but according to you the main road vehicle stops pass the stop line because it has entered the intersection first and in that case I have several questions:

-Which of the vehicles in the current scenario enter the intersection first?

-If I understand you correctly, vehW from the main road entered first which means my ego vehicle has not entered the intersection and if so what specific condition needs to be satisfied for a vehicle to be considered to have entered an intersection area? For example is it sufficient for only the front bumper position to be in the junction's internal lane edge or does the whole vehicle need to be inside?

-If it was like my previous understanding where I thought my ego vehicle entered first, then is this the expected behaviour? How come vehE stops at the correct position because even with the slight deviations in speed, it seemed to have entered the intersection at around the same time as vehW?

Again thank you very much in advance

On Wed, Mar 3, 2021 at 9:58 PM Jakob Erdmann <[hidden email]> wrote:
In the default intersection model, a vehicle from a side road will either stop before the stop line or pass it and the continue driving across the intersection.
Consequently, vehicles from the main road will yield to the side-road vehicle if it entered the intersection first (by passing the stop line).

Currently, the best workaround for letting your ego vehicle stop at that location without impacting main road flow is by changing the junction shape to move the stop line forward. (i.e. setting it's 'radius' attribute to 2.5).

regards,
Jakob

Am Mi., 3. März 2021 um 12:54 Uhr schrieb A Raman <[hidden email]>:
Thank you for the help so far. Please find attached the traci log file from my script. The problem still exist when I run without --random and with the traffic definition file previously attached

On Wed, Mar 3, 2021 at 6:32 PM Jakob Erdmann <[hidden email]> wrote:
Your traci script is importing the wrong traci (from anaconda) which does not support tracing.

Am Mi., 3. März 2021 um 10:28 Uhr schrieb A Raman <[hidden email]>:
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

Jakob Erdmann
Sorry for the ambigous wording in my explanation. I hope this makes it a bit clearer:

- vehicle 'ego' entered the intersection first
- both vehicles 'vehE' and 'vehW' yield to ego because of this
- the difference between vehE and vehW is that the path of vehE merges with ego and the path of vehW crosses with ego
- vehW can drive safely up the the point where both trajectories cross and wait there. The main assumption here is that ego will keep moving so vehW doesn't have to come to a stop at the stop line and can follow ego more smoothly (rather than actually stopping in the middle of the intersection).
- since the path of ego and vehE merge, vehE has to enter a car-following relationship with ego. Thus the speed of vehE is computed as the safe car-following speed by computing a "virtual gap" as dFollower - dLeader - leaderLength where
   - dLeader is the distance from ego to the merging point (start of lane:oW_0)
   - dFollower is the distance from vehE  to the merging point
- due to the curved left-turn movement of 'ego' being longer, the virtual gap is negative and vehE stops outside the junction. Again, the assumption is that ego keeps moving after entering the intersection and vehE can follow in a smooth movement.
- with different geometries, you might also see a merging follower wait within the intersection if the leader suddenly stops.

regards,
Jakob


Am Mi., 3. März 2021 um 15:37 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response.

To give a little more context, this experiment is simply for me to understand more on how sumo's intersection model works (i.e what constitutes the intersection area and how the vehicles behave by comparing it to sumo's publication on the matter by doctoring when the ego vehicle enters). With that said, the motion and position I put the ego vehicle in is merely arbitrary because from my previous understanding I had thought that it had 'entered' the intersection area. I tried setting startPos of both vehE and vehW to 20 to try and make extra sure that the ego vehicle enters the intersection first and the same result is obtained, but according to you the main road vehicle stops pass the stop line because it has entered the intersection first and in that case I have several questions:

-Which of the vehicles in the current scenario enter the intersection first?

-If I understand you correctly, vehW from the main road entered first which means my ego vehicle has not entered the intersection and if so what specific condition needs to be satisfied for a vehicle to be considered to have entered an intersection area? For example is it sufficient for only the front bumper position to be in the junction's internal lane edge or does the whole vehicle need to be inside?

-If it was like my previous understanding where I thought my ego vehicle entered first, then is this the expected behaviour? How come vehE stops at the correct position because even with the slight deviations in speed, it seemed to have entered the intersection at around the same time as vehW?

Again thank you very much in advance

On Wed, Mar 3, 2021 at 9:58 PM Jakob Erdmann <[hidden email]> wrote:
In the default intersection model, a vehicle from a side road will either stop before the stop line or pass it and the continue driving across the intersection.
Consequently, vehicles from the main road will yield to the side-road vehicle if it entered the intersection first (by passing the stop line).

Currently, the best workaround for letting your ego vehicle stop at that location without impacting main road flow is by changing the junction shape to move the stop line forward. (i.e. setting it's 'radius' attribute to 2.5).

regards,
Jakob

Am Mi., 3. März 2021 um 12:54 Uhr schrieb A Raman <[hidden email]>:
Thank you for the help so far. Please find attached the traci log file from my script. The problem still exist when I run without --random and with the traffic definition file previously attached

On Wed, Mar 3, 2021 at 6:32 PM Jakob Erdmann <[hidden email]> wrote:
Your traci script is importing the wrong traci (from anaconda) which does not support tracing.

Am Mi., 3. März 2021 um 10:28 Uhr schrieb A Raman <[hidden email]>:
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

A Raman
Thank you for the clarification. Then as a follow up question, which parameter and conditions, if any, dictates the stopping distance of vehW in this crossing scenario?

On Thu, Mar 4, 2021 at 12:11 AM Jakob Erdmann <[hidden email]> wrote:
Sorry for the ambigous wording in my explanation. I hope this makes it a bit clearer:

- vehicle 'ego' entered the intersection first
- both vehicles 'vehE' and 'vehW' yield to ego because of this
- the difference between vehE and vehW is that the path of vehE merges with ego and the path of vehW crosses with ego
- vehW can drive safely up the the point where both trajectories cross and wait there. The main assumption here is that ego will keep moving so vehW doesn't have to come to a stop at the stop line and can follow ego more smoothly (rather than actually stopping in the middle of the intersection).
- since the path of ego and vehE merge, vehE has to enter a car-following relationship with ego. Thus the speed of vehE is computed as the safe car-following speed by computing a "virtual gap" as dFollower - dLeader - leaderLength where
   - dLeader is the distance from ego to the merging point (start of lane:oW_0)
   - dFollower is the distance from vehE  to the merging point
- due to the curved left-turn movement of 'ego' being longer, the virtual gap is negative and vehE stops outside the junction. Again, the assumption is that ego keeps moving after entering the intersection and vehE can follow in a smooth movement.
- with different geometries, you might also see a merging follower wait within the intersection if the leader suddenly stops.

regards,
Jakob


Am Mi., 3. März 2021 um 15:37 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response.

To give a little more context, this experiment is simply for me to understand more on how sumo's intersection model works (i.e what constitutes the intersection area and how the vehicles behave by comparing it to sumo's publication on the matter by doctoring when the ego vehicle enters). With that said, the motion and position I put the ego vehicle in is merely arbitrary because from my previous understanding I had thought that it had 'entered' the intersection area. I tried setting startPos of both vehE and vehW to 20 to try and make extra sure that the ego vehicle enters the intersection first and the same result is obtained, but according to you the main road vehicle stops pass the stop line because it has entered the intersection first and in that case I have several questions:

-Which of the vehicles in the current scenario enter the intersection first?

-If I understand you correctly, vehW from the main road entered first which means my ego vehicle has not entered the intersection and if so what specific condition needs to be satisfied for a vehicle to be considered to have entered an intersection area? For example is it sufficient for only the front bumper position to be in the junction's internal lane edge or does the whole vehicle need to be inside?

-If it was like my previous understanding where I thought my ego vehicle entered first, then is this the expected behaviour? How come vehE stops at the correct position because even with the slight deviations in speed, it seemed to have entered the intersection at around the same time as vehW?

Again thank you very much in advance

On Wed, Mar 3, 2021 at 9:58 PM Jakob Erdmann <[hidden email]> wrote:
In the default intersection model, a vehicle from a side road will either stop before the stop line or pass it and the continue driving across the intersection.
Consequently, vehicles from the main road will yield to the side-road vehicle if it entered the intersection first (by passing the stop line).

Currently, the best workaround for letting your ego vehicle stop at that location without impacting main road flow is by changing the junction shape to move the stop line forward. (i.e. setting it's 'radius' attribute to 2.5).

regards,
Jakob

Am Mi., 3. März 2021 um 12:54 Uhr schrieb A Raman <[hidden email]>:
Thank you for the help so far. Please find attached the traci log file from my script. The problem still exist when I run without --random and with the traffic definition file previously attached

On Wed, Mar 3, 2021 at 6:32 PM Jakob Erdmann <[hidden email]> wrote:
Your traci script is importing the wrong traci (from anaconda) which does not support tracing.

Am Mi., 3. März 2021 um 10:28 Uhr schrieb A Raman <[hidden email]>:
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
Reply | Threaded
Open this post in threaded view
|

Re: [sumo-user] Traffic vehicle always stop inside intersection

Jakob Erdmann
The main determinant is the geometry of the intersection which dictates the point where the trajectories of ego and vehW cross.
Then there is an additional piece of code that tries to smooth out velocities to prevent (if possible) a situation where the yielding vehicle (vehW) stops at that point and then accelerations again.
In your example, this has the effect of actually stopping 'vehW' 2 meters ahead of that point. Again, because 'ego' stops after entering rather than continue to pass the intersection.

Note, that you can get a lot of debug output regarding vehicle movements by enabling the lines
DEBUG_PLAN_MOVE (et.al.) at the top of the file and then rebuilding sumo. The default condition for this debug output is selecting a vehicle in sumo-gui.
(on windows you can only get console debug output by using the debug build or setting the build flag "CONSOLE_RELEASE")

Am Mi., 3. März 2021 um 16:33 Uhr schrieb A Raman <[hidden email]>:
Thank you for the clarification. Then as a follow up question, which parameter and conditions, if any, dictates the stopping distance of vehW in this crossing scenario?

On Thu, Mar 4, 2021 at 12:11 AM Jakob Erdmann <[hidden email]> wrote:
Sorry for the ambigous wording in my explanation. I hope this makes it a bit clearer:

- vehicle 'ego' entered the intersection first
- both vehicles 'vehE' and 'vehW' yield to ego because of this
- the difference between vehE and vehW is that the path of vehE merges with ego and the path of vehW crosses with ego
- vehW can drive safely up the the point where both trajectories cross and wait there. The main assumption here is that ego will keep moving so vehW doesn't have to come to a stop at the stop line and can follow ego more smoothly (rather than actually stopping in the middle of the intersection).
- since the path of ego and vehE merge, vehE has to enter a car-following relationship with ego. Thus the speed of vehE is computed as the safe car-following speed by computing a "virtual gap" as dFollower - dLeader - leaderLength where
   - dLeader is the distance from ego to the merging point (start of lane:oW_0)
   - dFollower is the distance from vehE  to the merging point
- due to the curved left-turn movement of 'ego' being longer, the virtual gap is negative and vehE stops outside the junction. Again, the assumption is that ego keeps moving after entering the intersection and vehE can follow in a smooth movement.
- with different geometries, you might also see a merging follower wait within the intersection if the leader suddenly stops.

regards,
Jakob


Am Mi., 3. März 2021 um 15:37 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response.

To give a little more context, this experiment is simply for me to understand more on how sumo's intersection model works (i.e what constitutes the intersection area and how the vehicles behave by comparing it to sumo's publication on the matter by doctoring when the ego vehicle enters). With that said, the motion and position I put the ego vehicle in is merely arbitrary because from my previous understanding I had thought that it had 'entered' the intersection area. I tried setting startPos of both vehE and vehW to 20 to try and make extra sure that the ego vehicle enters the intersection first and the same result is obtained, but according to you the main road vehicle stops pass the stop line because it has entered the intersection first and in that case I have several questions:

-Which of the vehicles in the current scenario enter the intersection first?

-If I understand you correctly, vehW from the main road entered first which means my ego vehicle has not entered the intersection and if so what specific condition needs to be satisfied for a vehicle to be considered to have entered an intersection area? For example is it sufficient for only the front bumper position to be in the junction's internal lane edge or does the whole vehicle need to be inside?

-If it was like my previous understanding where I thought my ego vehicle entered first, then is this the expected behaviour? How come vehE stops at the correct position because even with the slight deviations in speed, it seemed to have entered the intersection at around the same time as vehW?

Again thank you very much in advance

On Wed, Mar 3, 2021 at 9:58 PM Jakob Erdmann <[hidden email]> wrote:
In the default intersection model, a vehicle from a side road will either stop before the stop line or pass it and the continue driving across the intersection.
Consequently, vehicles from the main road will yield to the side-road vehicle if it entered the intersection first (by passing the stop line).

Currently, the best workaround for letting your ego vehicle stop at that location without impacting main road flow is by changing the junction shape to move the stop line forward. (i.e. setting it's 'radius' attribute to 2.5).

regards,
Jakob

Am Mi., 3. März 2021 um 12:54 Uhr schrieb A Raman <[hidden email]>:
Thank you for the help so far. Please find attached the traci log file from my script. The problem still exist when I run without --random and with the traffic definition file previously attached

On Wed, Mar 3, 2021 at 6:32 PM Jakob Erdmann <[hidden email]> wrote:
Your traci script is importing the wrong traci (from anaconda) which does not support tracing.

Am Mi., 3. März 2021 um 10:28 Uhr schrieb A Raman <[hidden email]>:
The phenomena persists even with the given route file and without the use of --random.
I tried to get the log file by adding traceFile=<filepath> argument to traci.start but I got this error when running my python script:
TypeError: start() got an unexpected keyword argument 'traceFile'

There could be issues to how I installed sumo so I check with my sumo imports in my python script which are:
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")

# sys.path.append('/home/abi/Desktop/hdd/sumo/sumo/tools')

from sumolib import checkBinary # noqa
import traci
looking at the output of print(traci.__file__) after the import leads me to my anaconda environment at /anaconda3/envs/envname/lib/python3.7/site-packages/traci/__init__.py where the definition for start is:

def start(cmd, port=None, numRetries=10, label="default"):
    """
    Start a sumo server using cmd, establish a connection to it and
    store it under the given label. This method is not thread-safe.
    """
    if port is None:
        port = sumolib.miscutils.getFreeSocketPort()
    sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
    _connections[label] = connect(port, numRetries, "localhost", sumoProcess)
    switch(label)
    return getVersion()

However digging deeper, I found a start definition in main.py at my '/usr/share/sumo/tools/traci' folder which contains the traceFile argument. So I would like to know if the correct traci is imported here
Thank you


On Wed, Mar 3, 2021 at 4:15 PM Jakob Erdmann <[hidden email]> wrote:
Unfortunately, these items are insufficient to replicate the situation from your screenshot (it shows 4 vehicles wheres the route file only defines 3 vehicles).
Also, the use of option "--random" precludes exact reproducibility.
- can you provide the complete traci script or alterantively, a log of the issued traci commands? (https://sumo.dlr.de/docs/TraCI/Interfacing_TraCI_from_Python.html#generating_a_log_of_all_traci_commands)
- can you provide a --seed value that shows the situation (or reproduce it without the use of --random)?

Am Mi., 3. März 2021 um 02:19 Uhr schrieb A Raman <[hidden email]>:
Thank you for the response,

You can find the traffic definition file attached. I did use traci for my tests and traci.start() is run with the configuration:
traci.start([
self._sumo_bin,
'-n', self._net,
'-r', self._route,
'--step-length', '0.1',
'--no-warnings', 'true',
'--collision.action', 'warn',
'--collision.check-junctions', 'true',
'--max-depart-delay', '0.2',
'--random', 'true'
])

with the attached files as self._net and self._route


On Wed, Mar 3, 2021 at 2:57 AM Jakob Erdmann <[hidden email]> wrote:
Please attach the traffic definition (.rou.xml) and post all options used to run sumo (or attach the .sumocfg).
Did you use traci in your test?

Am Di., 2. März 2021 um 13:10 Uhr schrieb A Raman <[hidden email]>:
Hello,

I found that, while testing intersection behaviours in SUMO in my network, the yellow vehicles in the west-side lane always stop in the intersection area and not at the end of the lane edge. In my attached image, the east-side lane vehicle seems to stop correctly at the edge of the lane at position (8, 2) while the west-side lane vehicles always stop at around (~-4, -2). I tested this by manually entering the blue vehicle into the intersection area and initializing the incoming yellow vehicles at different times to have ample braking distance once the blue vehicle enters.

It doesn't seem like any of the documented reasons for this to happen is the cause so I would like to know what exactly do I need to change so that the bottom lane vehicle stops at the proper position. I've tried changing the stop offset properties for the lane in the network file which does not affect things. The current vehicle type configuration is at default and you can also find my network file attached.

Thank you very much in advance
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

_______________________________________________
sumo-user mailing list
[hidden email]
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user