I think your video was running with an older version of sumo. The likely reason for this is that our night-build failed for several days in a row. Running your setup with laneChangeMode=0 now runs to completion without blockage.
Am Mo., 21. Feb. 2022 um 16:11 Uhr schrieb Hriday Sanghvi via sumo-user < [email protected]>: > I am attaching the other relevant files associated with the above Python > code! > > Thank you. > > Sincerely, > Hriday > > > On Mon, 21 Feb 2022 at 12:26, Jakob Erdmann <[email protected]> wrote: > >> Looks buggy. Please provide all relevant files for reproducing your >> scenario. >> >> Am Fr., 18. Feb. 2022 um 14:31 Uhr schrieb Hriday Sanghvi via sumo-user < >> [email protected]>: >> >>> Hello, >>> >>> As per my understanding, the "duration" argument in the change lane >>> command would keep attempting to change lane to the target lane until the >>> end of that duration or if another TraCI change lane command overrides it. >>> If I set my Lane change mode to 0 (all safety checks and any control by >>> SUMO is gone), then I would expect the below code to get all the vehicles >>> to the end (with collisions). >>> >>> I have *attached a short video* to show the behaviour that is observed. >>> Not sure why the vehicles closest to the blockage do not turn to the free >>> lane? (even though their indicator is yellow and shows that they want to >>> change lane?) >>> >>> My TraCI code: >>> >>>> >>>> step = 0 >>>> GHOST_POS = 750.0 >>>> >>>> *END = 86400.0*BLOCK_LENGTH = 300 >>>> >>>> traci.vehicle.add(vehID='ghost', routeID='r0', typeID='veh', depart=0, >>>> departLane=0, departPos=GHOST_POS, departSpeed='random', >>>> arrivalLane='current', arrivalPos=GHOST_POS) >>>> traci.vehicle.setColor(vehID='ghost',color=(255,0,0)) >>>> traci.vehicle.setLength(vehID='ghost',length=BLOCK_LENGTH) >>>> >>>> traci.vehicle.setStop(vehID='ghost', edgeID='1f2', pos=GHOST_POS, >>>> duration=10, until=END)# flags=0, startPos=0, until=120) >>>> >>>> # duration - min duration for stopping >>>> # until - timestep at which the route continues >>>> >>>> lane_ids = list(traci.lane.getIDList()) >>>> >>>> BLOCKED_LANE = 0 >>>> FREE_LANE = 1 >>>> LC_MODE = 0 # 512 # 1621 # 0 # 512 # 256 # 1109 # >>>> S_MODE = 0 >>>> NUMBER_OF_VEH = 100 >>>> >>>> *LC_MAX_DURATION = END* >>>> def take_step(step=1): >>>> >>>> lane_info = dict() >>>> for li in lane_ids: >>>> >>>> lane_info[li] = { >>>> 'mean_speed' : traci.lane.getLastStepMeanSpeed(laneID=li), >>>> 'vehicle_ids' : traci.lane.getLastStepVehicleIDs(laneID=li), >>>> } >>>> >>>> for vh in lane_info['1f2_1']['vehicle_ids']: # *free lane* >>>> if vh == 'ghost': >>>> continue >>>> traci.vehicle.setLaneChangeMode(vehID=vh, lcm=LC_MODE) >>>> >>>> * traci.vehicle.changeLane(vehID=vh, laneIndex=BLOCKED_LANE, >>>> duration=LC_MAX_DURATION)* >>> >>> print('Vehicle {} will try to move to BLOCKED lane'.format(vh)) >>> >>> >>>> >>>> for vh in lane_info['1f2_0']['vehicle_ids']: # *blocked lane* >>>> if vh == 'ghost': >>>> continue >>>> >>>> traci.vehicle.setLaneChangeMode(vehID=vh, lcm=LC_MODE) >>>> >>>> * traci.vehicle.changeLane(vehID=vh, laneIndex=FREE_LANE, >>>> duration=LC_MAX_DURATION)* print('Vehicle {} will try to move >>>> to FREE lane'.format(vh)) >>>> >>>> >>>> arrived = 0 >>>> while arrived < NUMBER_OF_VEH: >>>> >>>> print('################ SIM TIME: {} >>>> ##################'.format(traci.simulation.getTime())) >>>> print('################ SIM STEP COUNT: {} >>>> ################'.format(step)) >>>> step+=1 >>>> print('\n') >>>> >>>> take_step(step) >>>> >>>> print('Arrived: {}'.format(arrived)) >>>> traci.simulationStep() >>>> >>>> traci.close() >>>> >>> >>> Thank you. >>> >>> Sincerely, >>> Hriday >>> _______________________________________________ >>> sumo-user mailing list >>> [email protected] >>> To unsubscribe from this list, visit >>> https://www.eclipse.org/mailman/listinfo/sumo-user >>> >> _______________________________________________ >> sumo-user mailing list >> [email protected] >> To unsubscribe from this list, visit >> https://www.eclipse.org/mailman/listinfo/sumo-user >> > _______________________________________________ > sumo-user mailing list > [email protected] > To unsubscribe from this list, visit > https://www.eclipse.org/mailman/listinfo/sumo-user >
_______________________________________________ sumo-user mailing list [email protected] To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
