Well actually the network can be traversed using sumolib
<https://sumo.dlr.de/docs/Tools/Sumolib.html> (see reference
<https://sumo.dlr.de/pydoc/sumolib.net.html> too). The lane permissions can
be read from there, too. I think we just have not created a ready-to-use
function to return all reachable edges given a certain vehicle class.
Best regards
Mirko
-----Original-Nachricht-----
Betreff: Re: [sumo-user] Error in duarouter
Datum: 2023-10-17T02:48:02+0200
Von: "Manuel H. Rosales via sumo-user" <[email protected]>
An: "Yanglan Wang" <[email protected]>
Dear Yanglan Wang, Then, I think you need to use networkx from Python.
Here is a tutorial:
<https://networkx.org/documentation/stable/tutorial.html>
There is a function connected_components(G) that returns connected
components for not directional and directional graphs and you can do
lists of them list(nx.connected_components(G)) With a simple "for" you can
check if two edges are in the same connected component.
Now, you must first convert the .net.xml file to the format of networkx.
I don't know if there exists a conversor but it seems not hard to do it.
Does anybody know if it exists?
Saludos cordiales
Mat. Manuel Hernández Rosales
Secretario Técnico
Programa Universitario de Estudios sobre la Ciudad
Universidad Nacional Autónoma de México
Ciudad de México, México
Whats App: 55 45109057
El lun, 16 oct 2023 a las 18:24, Yanglan Wang (<[email protected]
<mailto:[email protected]> >) escribió:
Dear Manuel,
Sorry for confusing you.
My situation is that I use python to generate some OD edge pairs and then
use duarouter to generate routes from origin-edges to destination-edges.
But it shows no connection between some edges-A and edges-B. So I want to
change OD pairs in python to make sure all edges are reachable.
But I don't know which function I can use. And from sumo-gui, we can know
whether these edges are reachable by right clicking and "select
reachable". Is there any similar functions in python that can help me
know whether two edges are reachable?
Thanks in advance for your help!
Best,
Yanglan
On Mon, Oct 16, 2023 at 5:05 PM Manuel H. Rosales via sumo-user <
[email protected] <mailto:[email protected]> > wrote:
I don't understand very well your question....
But may be you are searching something like TRACI a lib of Python:
<https://sumo.dlr.de/pydoc/traci.html>
If you want for example to know what are edges in a intermodal route
between a initial edge and final edge you can use findIntermodalRoute
(self, fromEdge, toEdge, modes='', depart=-1.0, routingMode=0,
speed=-1.0, walkFactor=-1.0, departPos=0.0, arrivalPos=-1073741824.0,
departPosLat=0.0, pType='', vType='', destStop='') from
<https://sumo.dlr.de/pydoc/traci._simulation.html>
Now if you want to know nodes (edges) adjacency you can use networkx
from Python applied to the SUMO Networks
Regards
Mat. Manuel Hernández Rosales
Secretario Técnico
Programa Universitario de Estudios sobre la Ciudad
Universidad Nacional Autónoma de México
Ciudad de México, México
El lun, 16 oct 2023 a las 17:52, Yanglan Wang via sumo-user (<
[email protected] <mailto:[email protected]> >) escribió:
Dear Mirko,
Maybe you miss my e-mail.
Could you reply to my question: Is there any function in python or
other packages that can provide edge's reachable edges as sumo-gui
show?
Best,
Yanglan
On Fri, Sep 15, 2023 at 10:00 AM Yanglan Wang <
[email protected] <mailto:[email protected]> > wrote:
Dear Mirko,
This is very helpful! And my new question is do we have any such
function in python or other package to provide edge's reachable
edges? If we have such function, we can use it to generate valid
origin-destination pairs.
Thanks a lot!
Best,
Yanglan
On Fri, Sep 15, 2023 at 5:59 AM Mirko Barthauer <
[email protected] <mailto:[email protected]> > wrote:
Dear Yanglan,
all edges along the route have to allow the vehicle in question
to pass, not only those where it departs and arrives. You can use
a feature of sumo-gui to check where your vehicle can arrive:
* right click on the start edge to open the context menu
* choose "select reachable" ...
o .. and the vehicle class of the problematic vehicle
* the reachable lanes starting from the start edge are
highlighted
Best regards
Mirko
-----Original-Nachricht-----
Betreff: [sumo-user] Error in duarouter
Datum: 2023-09-14T08:55:14+0200
Von: "Yanglan Wang via sumo-user" <[email protected]
<mailto:[email protected]> >
An: "[email protected] <mailto:[email protected]> " <
[email protected] <mailto:[email protected]> >
Dear SUMO,
When using duarouter to generate routes from "od.odtrips.xml", it
has problem like this:
Error: No connection between edge '-12184790' and edge
'12182499#5' found.
Error: Mandatory edge '12182499#5' not reachable by vehicle
'664'.
Error: The vehicle '664' has no valid route.
Error: No connection between edge '12189756#3' and edge
'-12182716#3' found.
Error: Mandatory edge '-12182716#3' not reachable by vehicle
'692'.
Error: The vehicle '692' has no valid route.
I don't want to use "--ignore-errors" in my situation.
The network is generated by using netconvert from openstreetmap.
And I also make sure all start edges and end edges in
"od.odtrips.xml" allow for vehicle type of "passenger".
I also check some trip, for example like entry "<trip id="0"
depart="3720.0" from="12181485#0" to="59779571#4"
fromTaz="4549.0" toTaz="4599.0" departLane="free"
departSpeed="max" type="type1"/>". I check the two edges(from and
to) in sumo-gui. It seems they are connected and I can find a
route between them.
My question is:
what may cause the error like this: "No connection between edge
'12189756#3' and edge '-12182716#3' found." if two edges are
connected by some routes in sumo-gui. Can duarouter consider the
road type? like some roads allow vehicles to pass but others
don't allow vehicles to pass? If duarouter already considers
different road types, how to use it when using duarouter?
Thank you very much for your help!
Yanglan
"od.odtrips.xml" like this:
<?xml version="1.0" encoding="UTF-8"?>
<routes xmlns:xsi="<http://www.w3.org/2001/XMLSchema-instance> "
xsi:noNamespaceSchemaLocation="
<http://sumo.dlr.de/xsd/routes_file.xsd> ">
<vType id="type1" vClass="passenger"/>
<trip id="0" depart="3720.0" from="12181485#0" to="59779571#4"
fromTaz="4549.0" toTaz="4549.0" departLane="free"
departSpeed="max" type="type1"/>
<trip id="1" depart="3720.0" from="-12178844#2" to="-59779605#0"
fromTaz="4549.0" toTaz="4549.0" departLane="free"
departSpeed="max" type="type1"/>
<trip id="2" depart="3720.0" from="12180095#0" to="-506804742#1"
fromTaz="4549.0" toTaz="4549.0" departLane="free"
departSpeed="max" type="type1"/>
I want to know what
_______________________________________________
sumo-user mailing list
[email protected] <mailto:[email protected]>
To unsubscribe from this list, visit
<https://www.eclipse.org/mailman/listinfo/sumo-user>
_______________________________________________
sumo-user mailing list
[email protected] <mailto:[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