Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [sumo-user] Jaywalking

Thanks again, Jakob!

 

I got this working a while ago now, but many other related issues have come up which I have been unable to solve, and I’m once again asking for help!

 

In particular it seems that there are many things which are not accessible via TraCI…

 

1) There does not seem to be a way to get the opposite sidewalk on a given street, if it exists. Currently I’ve just got a big lookup table I built myself, but I’d rather automate this. Most recently I’ve tried building a table at the beginning of the simulation by finding the edge which runs in the opposite direction for each road, and checking if they each have a “pedestrian” only lane. However, there seems to be no way to find the opposite direction road via TraCI! I can’t even find which junctions are connected via which edges, or which edges connect to which junctions. Am I missing something in the TraCI commands, or is there really no way to “traverse” the network graph via TraCI?

 

2) Likewise, there does not seem to be a way to get the end position of a pedestrian along its stage list – you can simply get the final edge. But as for where along that edge it is going, TraCI does not provide a way to access that. Is this correct, or is there something I’m missing?

 

3) Also, when my new vClass=”pedestrian” pedestrians cross the road, they look like cars. Is there a way to adjust this so that they look like pedestrians and use their bounding box for collisions? Currently I create these new “pedestrians” in this way:

 

traci.vehicle.add(ped_id, "JUNK_ROUTE")

traci.vehicle.setVehicleClass(ped_id, "pedestrian")

 

4) The answer to (1) above will likely also be helpful for this question. I want the pedestrians to “look both ways” before crossing the street – in other words, I want them to get access to all cars along the road they want to cross, within some certain distance, and decide whether to cross. I presume this means I will need to “traverse” the network like in (1). Is there another way of accomplishing this?

 

5) The cars on the road seem to react to my new “pedestrians” as they cross the road by slowing down, changing lanes, and even stopping for them. However, these behaviors are only triggered by “pedestrians” who are immediately in front of them. They do not begin slowing down, for example, until the person is in their lane. However, “in real life” the car would usually see them walking toward their lane, and anticipate them entering it. One way I can handle this is by having the “pedestrians” keep track of the incoming cars (as in (4)), and then I can adjust those cars’ behaviors according to the geometry. Is there a better way of accomplishing this? In other words, is there a way for each vehicle to “look around” for other incoming “traffic” instead of just directly in front of themselves?

 

Thank you!

Yokhanan

 

 

From: sumo-user-bounces@xxxxxxxxxxx [mailto:sumo-user-bounces@xxxxxxxxxxx] On Behalf Of Jakob Erdmann
Sent: Friday, December 08, 2017 12:19 PM
To: Sumo project User discussions <sumo-user@xxxxxxxxxxx>
Subject: Re: [sumo-user] Jaywalking

 

Hello,

This approach should work and you could actually re-use use the same id over and over but some outputs would still register multiple instances:

- fcd-output would sometimes identify the pedestrian as a person and sometimes as a vehicle

- tripinfo-output would generated distinct <trip> and <walk> outputs every time you switch identities

Depending on which kind of output you need you could probably fix this with a little post-processing.

regards,

Jakob

 

2017-12-08 15:37 GMT+01:00 Beck, Yokhanan Z. <Yokhanan.Beck@xxxxxxxxxxxxxxx>:

Hey Jakob, thank you! Great info!

 

Since the method I outlined won’t work at the moment, how about the following idea?

 

When a pedestrian is triggered to jaywalk, a new vClass=”pedestrian” vehicle is added to the simulation at the location of the pedestrian, and the pedestrian is removed from the simulation. The vehicle is then remotely controlled to cross the road to the other sidewalk. Upon arrival, a new pedestrian with the same route and parameters as the original pedestrian is added to the simulation at its location, and the vehicle is removed.

 

Would this be a better approach? Would it mess up simulation output and statistics, since the individual pedestrians and vehicles representing the same “pedestrian” would actually be different, with different IDs?

 

Thank you!

Yokhanan

 

 

From: sumo-user-bounces@xxxxxxxxxxx [mailto:sumo-user-bounces@xxxxxxxxxxx] On Behalf Of Jakob Erdmann
Sent: Friday, December 08, 2017 1:36 AM
To: Sumo project User discussions <sumo-user@xxxxxxxxxxx>
Subject: Re: [sumo-user] Jaywalking

 

Hello,

- pedestrians are currently unable to leave their sidewalk except at intersections

- if there is no dedicated sidewalk, pedestrians may walk on the road. Vehicles will react to them and vice versa

- there are plans to allow full remote control for pedestrians but it's not implemented yet (https://github.com/DLR-TS/sumo/issues/2872)

- to achieve the desired effect, you can configure a vehicle to look like a pedestrian (setting vClass="pedestrian" in the <vType>) and then remote control it using vehicle.moveToXY. It will interact with real pedestrians when on a sidewalk and will also take an effect on road vehicles when leaving the sidewalk. Depending on the required level of detail you may want to active the sublane model for that as well (so vehicles can circumnavigate your fake-pedestrian when the road lane is wide enough). The only downside of this approach is, that your fake-pedestrian will only walk in the forward direction of an edge unless controlled remotely.

regards,

Jakob

 

2017-12-07 18:11 GMT+01:00 Beck, Yokhanan Z. <Yokhanan.Beck@xxxxxxxxxxxxxxx>:

Hello!

 

I am interested in simulating pedestrians which cross the street at random locations, without crosswalks or lights, and without shutting down the entire street -- just getting vehicles to slow down for them as usually happens on city streets.

 

This does not appear to be possible with current features.

 

What I am thinking I would like to do is --when triggered, and while on an edge with sidewalks on both sides-- have a pedestrian's lateral in-lane position increment to move them sideways off of the sidewalk lane, and across the vehicle lanes until it is positioned on the other sidewalk, and then switch it to being on that other sidewalk, walking in the opposite direction, at that location.

 

Would this be a valid approach? Would there be problems with it?

 

Would it be enormously difficult to accomplish? Could it be done purely via the TraCI interface?

 

Would vehicles detect the pedestrian in their path while the pedestrian was crossing the road, and slow down accordingly? I would hope it would work similarly to how the other cars react to the presence of the custom car in this video: https://www.youtube.com/watch?v=2G016KvzQE4

 

Thank you for your help!

 

Yokhanan

 


_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/sumo-user

 


_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/sumo-user

 


Back to the top