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: [email protected] [mailto:[email protected]] On 
Behalf Of Jakob Erdmann
Sent: Friday, December 08, 2017 12:19 PM
To: Sumo project User discussions <[email protected]>
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. 
<[email protected]<mailto:[email protected]>>:
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: [email protected]<mailto:[email protected]> 
[mailto:[email protected]<mailto:[email protected]>] On 
Behalf Of Jakob Erdmann
Sent: Friday, December 08, 2017 1:36 AM
To: Sumo project User discussions 
<[email protected]<mailto:[email protected]>>
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. 
<[email protected]<mailto:[email protected]>>:
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
[email protected]<mailto:[email protected]>
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
[email protected]<mailto:[email protected]>
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
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/sumo-user

Reply via email to