Creating a Rail network dataset?

3275
14
11-12-2012 08:35 AM
Highlighted
New Contributor II
Has anyone created a Network Dataset for rail? I am trying to create one from http://cta.ornl.gov/transnet/RailRoads.html which has a lot of good data but unfortunately I am new to Network Analyst. The Paris example makes it seem straight forward, but unfortunately it is not with this rail dataset. Any words of wisdom would be greatly appreciated. I just dont want to have problems with turns and hierarchy which is very restrictive for rail cars.


Thanks
Ben
Tags (2)
Reply
0 Kudos
14 Replies
Highlighted
Occasional Contributor II
Hallo,

Please explain what is your objective after creating the network ?

regards,
Reply
0 Kudos
Highlighted
New Contributor II
I work for an asset management firm and we want to be able to analyze routes based on our historical data of how long our assets sit in facilities and how long they typically take during their travel between them. We want to be able to give accurate information of ETA's to our customers. Obviously we understand that it will not be 100% accurate but some estimations are better than nothing. This  dataset has a lot of useful information, but the description of the attributes is out of date and it does not build very well. I am trying to incorporate some restrictions for turns mostly some simple ones such as acute angles, and hierarchy since there is an attribute for main lines and etc., but I cannot seem to figure it out. Obviously a train should not be able to make this turn, and the node incorporated with that intersection does not label it as a switch and has nothing in the turn attribute column. The turn attributes consist of A,E,U,M,S,T,X,Y, Z, and blank. Without a correct description I am not sure what I can actually do with this dataset. Maybe you know a more reliable dataset? Any help would be great!

Thanks
Ben
Reply
0 Kudos
Highlighted
Occasional Contributor II
Hi,

Thanks. I do deal with asset management but is not bread and butter 🙂

option1: Suggestions based on the example picture that you attached, do not make the intersection break at that point. So in edit mode, you select the two line segments that form a feasible rail route and select the merge option from the edit menu. Ofcourse, this will work if you have not a lot of such intersections.

option2: Other than the image, i suggest that you first make a route layer, that is the entire path a train would take from its origin to destination and this should be done for each possible route. Then, split your each route at vertices. After you do this, use the Linear Directional Mean tool with ID as a case. This will give you angle(bearing) of each line segment. For rail, the difference in bearing of successive line segments should not be huge, as you already pointed out.

The above helps you to identify points of wrong turns and you can manually correct them as in option 1

option3: after doing the above, if you find out that there are exception routes that do have a sharp turn while other trains at the same intersection do not and if it is not possible to generalize. Then add and extra line segment with different elevation field for that line. see picture.

yes, it is manual work !

My english is not the best, so please ask again if not clear.
Reply
0 Kudos
Highlighted
New Contributor II
Thanks a lot for your help! I will look into that, and see what I can do. The problem may be that I have an entire rail network of North America that I am working with. A full manual work around for it could be a bit time consuming.
Reply
0 Kudos
Highlighted
Occasional Contributor II
Yes, I suggest that atleast that the routes be made. It will help your cause a lot. And routes with combination of elevation fields will take your project a long way and bring clarity to your model. Not sure if you already have it as such (one line feature for one rail route).

regards,
Reply
0 Kudos
Highlighted
New Contributor II
Another question, if I wanted to make sure that routes are only taken on the same rail by ownership (not specifically one owner) but a function that would limit a route to stay on that same owner rail based on where I start the route. How would I write that function?
Reply
0 Kudos
Highlighted
Occasional Contributor II
Hi,

you can make use of elevations. each owner can have own elevation. shortest path does not criss-cross across different elevations. It can be imagined as something like the mobile phone spectrum allocation.

See step 20 here   "There are two ways to model elevations: using true elevation values from  geometry or using logical elevation values from elevation fields. "

regards,
Reply
0 Kudos
Highlighted
New Contributor II
I don't have an elevation field and my Owner field is a text field not an integer.
Reply
0 Kudos
Highlighted
New Contributor III
Are you able to add fields, or is the data a read only?
Reply
0 Kudos