[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[sumo-user] simpla improvement suggestion
|
Probably I should post this to the developer list, but I just have 2
minor improvements to the simpla module which I have tried and tested
under crush load at different types of junctions and roundabouts (where
vehicles get stuck under intense traffic with the current version).
So the improvements are these:
1. before a vehicle starts following a leader, it checks if at least one
of these conditions are satisfied:
- leader and ego vehicle have a certain number of edges in common on the
future route
- leader and ego vehicle do a certain distance together on a future route
2. The lane change advice is not issued to a follower if it is less than
a certain distance from the upstream intersection
The former feature reduces the number of unnecessary catchups and the
whole simulation becomes quieter and less chaotic. I have not yet
performance figure though.
The latter prevents vehicles to be pushed on a lane with dead end (or
occupied) short before the intersection. This measure prevents vehicles
getting stuck, at least for the default lanechange model. With the
sublane model it can still happen that vehicles get stuck in
roundabouts. Increasing the strategy factor and pushy factor helps to
improve this situation, but does not resolve it completely.
Here are the 3 PlatoonManager where I added stuff:
def __init__(self):
# js: these parameters should be loaded from config too:
# ego vehicle needs at least this number of future edges in
common with leader
# before agreeing to follow...
self._edgenumberLookahead = 3
# Or the ego vehicle needs at least this distance of commom
route length with leader
# before agreeing to follow.
self._distLookahead = 500.0
# no lane change advice if vehicle has less than this distance
# to the next juction
self._lanechangeMinDist = 100.0
def _updateVehicleStates(self):
def _adviseLanes(self):
Attached is the modified platoonmanager file and a demo (which gave
problems without the modifications).
Hope this is useful and make it in the code, open for any feedback on
this issue.
Best,
Joerg
Attachment:
platooningdemo.zip
Description: Zip archive