Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [sumo-user] "Error: The vehicle type 'type1' for vehicle 'veh0' is not known."

Thanks, Jakob. That makes sense.

How large was the Berlin network (# of edges and # of nodes) that you used? And in the real-time speed you had mentioned above (24 hour simulation in 24 hours), did that time include routing or no? And does the simulation do dynamic routing at all or is it static given the routes supplied? (I'd like to turn off dynamic routing, if it is something it does).

 Thanks again for the clarification.

On Mon, Apr 27, 2020 at 12:22 PM Jakob Erdmann <namdre.sumo@xxxxxxxxx> wrote:
1) The best practice is to exclude vehicles from your input if you do not have at least an origin and destination edge
2)
- runtime * stepLength ~ constant.
- number of vehicles and size of network can be multiplicative if the vehicles drive proportionally longer routes (in larger networks route lengths should level off though)

Am Mo., 27. Apr. 2020 um 20:12 Uhr schrieb Pavan Yedavalli <pavyedav@xxxxxxxxxxxx>:
Hi Jakob,

Thanks for the information! This is very helpful.

1) Re: each vehicle defining a route, so if the vehicle does not have a route (as above), is there a best practice to put a phantom route in the .csv / .xml file so that it doesn't fail?

2) I see - yes, it makes sense to switch to meso at this scale. For both micro and meso, are there curves that show performance runtime based on time step (.1 s, .5 s, 1 s, etc.), total simulation time range (6 hours, 7 hours, 24 hours, etc.), number of vehicles, and size of network, by chance? Or should we assume linearity with everything?

Thanks again.

On Mon, Apr 27, 2020 at 10:53 AM Jakob Erdmann <namdre.sumo@xxxxxxxxx> wrote:
Hello,
1) Each vehicle must define a route either using the 'route' attribute or the 'route'-Element.

2) Running time is roughly linear in the number of vehicle-seconds (multiply the number of vehicles with their average time spent in the network).
We ran a simulation of one day in Berlin with about 3M vehicles (spread over the whole day) and it was roughly real-time speed (using option --no-internal-links).
Of course, the running time goes up if you also do a lot of routing (versus using precomputed routes).
For scenarios this size we usually switch to the mesoscopic simulation (--mesosim) which is much faster. See https://sumo.dlr.de/docs/Simulation/Meso.html

regards,
Jakob

Am Mo., 27. Apr. 2020 um 19:32 Uhr schrieb Pavan Yedavalli <pavyedav@xxxxxxxxxxxx>:
Thank you, Harald. This helps, though eventually even with the `-ignore-route-errors true` flag, it still gives me an error of `Vehicle 'veh2653438' has no route`. The .xml file shows that `    <vehicle depart="20785.77809238743" id="veh2653438" type="type2653438"/>`, so it doesn't contain route edges, which is expected. Any idea why this error would still happen?

In addition, I'm trying to run a very large network with very large demand (550K edges/220K nodes and 3.1M vehicles). Is this possible in SUMO? If it were at all linear, my initial run shows that it would take 82 days to complete. Is this accurate? I tried looking for papers about SUMO benchmarks with large networks and/or large demand, but could not find any. Do you have good references or runtime benchmarks?

Thank you again for your time and help.

On Mon, Apr 27, 2020 at 7:44 AM Harald Schaefer <fechsaer@xxxxxxxxx> wrote:

Hi Pavan,

see https://sumo.dlr.de/docs/SUMO.html.

There is an option --ignore-route-errors, you can set this to true

Regards, Harald

Am 27.04.20 um 15:51 schrieb Pavan Yedavalli:
Hi Harald,

Thanks so much! This makes a lot of sense. 

I had a side question: I was able to do it with a manual change to the routes xml file, but I noticed that the simulator quits when it finds a vehicle whose route doesn't exist (basically an empty vehicle). Is there a flag to have the simulator just continue past the ones with no routes (basically don't simulate them) or do I have to change the file to remove all of the vehicles that don't have routes? Thanks again for the help.

On Mon, Apr 27, 2020 at 1:05 AM Harald Schaefer <fechsaer@xxxxxxxxx> wrote:

Hi Pavan,

the original routes.xml has some problems as pointed out by Mirko:

In addition I would add a vClass to your vType definitions (e.g. vClass="passenger")

Also the attribute route="routeX" is not necessary, because you are providing an embedded route.

A corrected file should look like

<routes>
    <vType accel="1.7804136126769894" decel="3.7319337562137807" id="type1" length="5.0" maxSpeed="90.0" minGap="2.669391744332565" vClass="passenger"/>
    <vehicle depart="35570.49681280952" id="veh0" type="type1">
        <route edges="544181 383216 132131 542737 542660 542696 542743 542729 542733 542675 166354 156690 "/>
    </vehicle>
    <vType accel="5.540229367023352" decel="8.508616732823317" id="type2" length="5.0" maxSpeed="90.0" minGap="1.7544886405804303"  vClass="passenger"/>
    <vehicle depart="28728.02537423077" id="veh1" type="type2">
        <route edges="154680 159143 165544 "/>
    </vehicle>
    <vType accel="6.370903650236724" decel="8.866453309975734" id="type3" length="5.0" maxSpeed="90.0" minGap="3.340891225830463"  vClass="passenger"/>
    <vehicle depart="28983.794438073826" id="veh2" type="type3">
        <route edges="167450 123294 542659 165542 167847 "/>
    </vehicle>

</routes>

You can convert this file to csv

vType_accel;vType_decel;vType_id;vType_length;vType_maxSpeed;vType_minGap;vType_vClass;vehicle_depart;vehicle_id;vehicle_type;route_edges
1.7804136126769894;3.7319337562137807;type1;5.0;90.0;2.669391744332565;passenger;;;;
;;;;;;;35570.49681280952;veh0;type1;544181 383216 132131 542737 542660 542696 542743 542729 542733 542675 166354 156690
5.540229367023352;8.508616732823317;type2;5.0;90.0;1.7544886405804303;passenger;;;;
;;;;;;;28728.02537423077;veh1;type2;154680 159143 165544
6.370903650236724;8.866453309975734;type3;5.0;90.0;3.340891225830463;passenger;;;;
;;;;;;;28983.794438073826;veh2;type3;167450 123294 542659 165542 167847

and back

csv2xml.py -x $SUMO_HOME/data/xsd/routes_file.xsd routes3.csv

Best regards

Harald

Am 24.04.20 um 17:38 schrieb Pavan Yedavalli:

Hi Mirko,

Thanks so much for your help. This makes sense - I will make it "type1", "type2", "type3" and so on for vType ids. However, in the end, I simply used the csv2xml() converter in tools/, based on the following .csv file (snippet).

```vType_accel;vType_decel;vType_id;vType_length;vType_maxSpeed;vType_minGap;vType_sigma;route_edges;route_id;vehicle_depart;vehicle_id;vehicle_route;vehicle_type
1.7804136126769894;3.7319337562137807;'type1';5.0;90.0;2.669391744332565;;544181 383216 132131 542737 542660 542696 542743 542729 542733 542675 166354 156690 ;;35570.49681280952;veh0;route0;'type1'
5.540229367023352;8.508616732823317;0;5.'type1';90.0;1.7544886405804303;;154680 159143 165544 ;;28728.02537423077;veh1;route1;'type1'
6.370903650236724;8.866453309975734;'type1;5.0;90.0;3.340891225830463;;167450 123294 542659 165542 167847 ;;28983.794438073826;veh2;route2;'type1'```

And the rou.xml file snippet above is what the csv2xml() conversion produced. Why is the converter doing this incorrectly then? And how would I go about doing this following part using csv2xml()? `Please define vTypes without enclosed vehicles, like you have done afterwards. Also enclose route elements in vehicle elements or define them on the same level as vtypes and give them IDs` I'll change vType_id to type1, type2, type3, etc., but is there another part of the .csv that I need to be changing for csv2xml() to work? 

Thank you again!

On Fri, Apr 24, 2020 at 8:24 AM Mirko Barthauer <m.barthauer@xxxxxxxxxxx> wrote:

Hi Pavan,

there are two problems with your route file:

  • The first definition of your vType "type1" encloses a vehicle definition which references it. However it cannot find type1 as the closing tag of vtype has not been reached yet. Please define vTypes without enclosed vehicles, like you have done afterwards. Also enclose route elements in vehicle elements or define them on the same level as vtypes and give them IDs.
  • Do use unique IDs (strings) for vTypes. Do not define "type1" a second time.

Maybe you have a look at the relevant documentation page.

Regards
Mirko

Am 24.04.2020 um 16:14 schrieb Pavan Yedavalli:
Hi,

I'm a new user to SUMO, and I was wondering about the following (very basic) error:

"Error: The vehicle type 'type1' for vehicle 'veh0' is not known." from my rou.xml file. I generated that using csv2xml in tools/, just FYI.

Here is a snippet of the first few vehicles in rou.xml file:

```
<routes>
    <vType accel="1.7804136126769894" decel="3.7319337562137807" id="type1" length="5.0" maxSpeed="90.0" minGap="2.669391744332565">
    <vehicle depart="35570.49681280952" id="veh0" route="route0" type="type1"/>
        <route edges="544181 383216 132131 542737 542660 542696 542743 542729 542733 542675 166354 156690 "/>
    </vType>
    <vType accel="5.540229367023352" decel="8.508616732823317" id="type1" length="5.0" maxSpeed="90.0" minGap="1.7544886405804303"/>
    <vehicle depart="28728.02537423077" id="veh1" route="route1" type="type1">
        <route edges="154680 159143 165544 "/>
    </vehicle>
    <vType accel="6.370903650236724" decel="8.866453309975734" id="type1" length="5.0" maxSpeed="90.0" minGap="3.340891225830463"/>
    <vehicle depart="28983.794438073826" id="veh2" route="route2" type="type1">
        <route edges="167450 123294 542659 165542 167847 "/>
    </vehicle>
```

I'm not sure what I'm doing incorrectly, but it does not like "type1" for the vType id or for <vehicle> type, it seems - it looks like it's the latter given the error message. Any help would be appreciated. Thank you.

--
Pavan

_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user


--
Pavan

_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user


--
Pavan

_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user


--
Pavan
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user


--
Pavan
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user


--
Pavan

Back to the top