News:

Simutrans Wiki Manual
The official on-line manual for Simutrans. Read and contribute.

Timetabling in Simutrans

Started by 1993matias, January 24, 2011, 05:27:49 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

1993matias

The ability to specify a specific departure time to a vehicle (e.g. 8:45 every day) or a waiting time/travelling time to a vehicle (e.g. travel for 35 min to A, then wait 5 min).

This could help out congestion at some point - e.g. a local train feeding an express wont come five minutes late, or a whole day early; it would come at a fixed time the user has specified. That way, the passengers/cargo won't have to wait for hours, and congesting the station.

A timetable would also help congestions by letting fast trains depart just before stopping trains, reducing the need of high-speed rails when there's still capacity left.

This would also help make the game more realistic; letting people set up real timetables.

Of course, vehicles should be able to run without a timetable.

In the end, passenger travel could change by time of day, and maybe at some point night trains would come into consideration?

I'm basing this suggestion on OpenTTD, which has a timetable function - have a look at it, it's free ;)

I hope you'll consider this suggestion!

An_dz

This was already discussed and some problems exists, like every pakset have a different time. I also would like to have it, but someone more informed can tell you the problems.

But new nightlies you can set how much time the vehicle stays at the station.

1993matias

If every week is set to be 24 hours, it could be possible to make a working timetable?

That would force every pakset to have the same daylength, but that isn't so hard, right?

Otherwise, is it possible to timetable by dates instead of hours?

mobo

Quote from: 1993matias on January 27, 2011, 02:27:09 PM

That would force every pakset to have the same daylength, but that isn't so hard, right?


It is, time affects the whole economy, if you change it you have to rebalance the whole set (assuming it had a balance before). And balancing is one of the most time consumig /boring/un-creative parts when making a set so nobody wants to do it twice.

Also time affects how fast a certain speed looks in game, so if all sets had the same time, 100km/h would look a lot faster in 192 than in 32, and when you play the game you want to see some reasonable movement, too fast looks bad/is hard to handle and too slow makes you fall asleep while playing.

prissi

You can change day length (or rather month length) without any rebalancing, as all the maintenance costs will be adjusted accordingly.

You can also play without any time shown; time display is a rather recent addition.

And finally, with timetabling for days, you will need very long month. Rather timetabling for month (=24h) make more sense imho. However, you would will have to program that for yourself, as it has been suggest before but never somebody really made an effort to implement it.

1993matias

Hmm... Sounds like it wont be done, as I don't know programming.

But I still hope that some day it will be done.

paco_m

There are actually two versions of times used by paksets, what in one are days is in the other not exactly but nearly a day.
In the last discussion about timetables I made the suggestion to interpret it in that way (days or hours depending on the simuconf.tab time setting).

IgorEliezer

Quote from: mobo on January 27, 2011, 02:54:20 PM
And balancing is one of the most time consumig /boring/un-creative parts when making a set so nobody wants to do it twice.

Why not to create an editor that loads the dat files, edits the proper fields and saves all? :-/

paco_m

dat-files are plain text files, everybody can apply simultaneous modifications for all dat-files using the standard OS-tools

1993matias

Isn't it then possible to make a "relative time", only for the timetabling?

ӔO

there is actually something very similar to this implemented in experimental.

implemented as spacing convoy/month.
My Sketchup open project sources
various projects rolled up: http://dl.dropbox.com/u/17111233/Roll_up.rar

Colour safe chart:

paco_m

Well, there are at least 3 issues adressed by this frecuent timetable requests ;)

1) management of lines with mixed (slow and rapid) vehicles, for railways it is normally easier and often cheaper to build two completeley independent lines than trying to solve this with the tools simutrans provides (extra slopes to overtake slower trains basically) - in other words you can't simulate a real classic railway behaviour in Simutrans as classic rails are based on timetables (e.g. express train departing before the slow one and not the other way round).
For this you don't need a fully implemented timetable function but at least a possibility to define an order of departure when several trains are waiting to get the track free.

2) Full timetable support to coordinate incoming and leaving trains at line crossings - this is imho to most advanced and complex thing to implement and here you have to deal with uncalculable things like traffic jams, blocked tracks, the timing system etc.


3) The spacing issue; this can be solved also by signal setting/signal spacing so I think that the spacing topic is not really addressing the timetable question.

isidoro

Quote from: paco_m on January 27, 2011, 07:56:14 PM
[...]
For this you don't need a fully implemented timetable function but at least a possibility to define an order of departure when several trains are waiting to get the track free.
[...]

That seems like a priority setting.  The problem with such a setting is that it may produce "starving".  If you have a constant flux of high priority vehicles, the low priority ones won't ever get the track.  The classical solution to that is "aging".  An algorithm with aging may be:

1) Each vehicle, when waiting, is given some points.  The vehicles with higher priority get more points per tick waiting
2) When several vehicles compete to get a resource (i.e. a track), it is given to the vehicle with more points


paco_m

Quote from: isidoro on January 27, 2011, 11:33:36 PM
That seems like a priority setting.  The problem with such a setting is that it may produce "starving".  If you have a constant flux of high priority vehicles, the low priority ones won't ever get the track.  The classical solution to that is "aging".

The "classic solution" for that in public transport is a timetable and not a math procedure with points ;)
Any kind of priority leads to more departures of fast trains while I was thinking about an equal number of slow and fast trains like it is usual in many main railway lines in Europe. The problem with the current behaviour of the game is that you get normally 5 slow trains after each other followed by 5 express trains and that's why overtaking slopes won't work.
This could be solved with a departure timetable assigning departure slots to the lines, e.g.
slot 1: express line
slot 2: slow regional train
slot 3: empty (spacing of vehicles) or serving other lines
slot 4 = slot 1

This would not allow any kind of "starving", actually starving already exists in the game - just build a station with many platforms and one exit/railroad connection; usually the train that has the longest way to the exit will get starved and soon shows the orange "blocked" sign ;)

isidoro

One question I always have with timetables is what happens when a vehicle is delayed and other vehicles depend on it.  I know that in serious countries like Japan and Germany, it won't happen, but in Simutrans...

paco_m

Quote from: isidoro on January 29, 2011, 12:23:03 AM
I know that in serious countries like Japan and Germany, it won't happen

This happens quite frequently here, normally a slower train will wait for the delayed faster train but not the other way round. Personally I don't think that a full timetable support with arriving and departure times for each vehicle makes any sense in Simutrans as you can't calculate the exact travel time (this would require signal settings according to the timetable, imho too complex).

jamespetts

I'd dread to think just how unimaginably difficult that it would be actually setting up a timetable for an enormously complicated Simutrans network on a big map. In reality, they have people with degrees in mathematics taking months to produce railway timetables (or, in modern times, highly sophisticated and expensive computer programmes - operated by the same people with the degrees in mathematics). That would make Simutrans rather more hard work than fun, I think.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

1993matias

But it should not be obligatory to make a timetable - just an option to add realism.

I, for one, like to do timetabling, and I would not have anything against big maps with timetabling :P

But I can see your point, and of course, it should not be obligatory to do a timetable every time you make a new route.

@Paco:
Although it is not possible to calculate exact travel time, it is possible to calculate 'expected' travel time; or maybe get Simutrans to calculate it for you (like OpenTT)?

paco_m

Quote from: jamespetts on January 29, 2011, 12:14:51 PM
In reality, they have people with degrees in mathematics taking months to produce railway timetables
The classic way of doing this at least here in Germany and Austria was and still is drawing it in a diagram,
one axis is the distance (in km usually marking the positions of the stations with thick lines)
and on the other axis you put the time (full day/24hrs normally).
The max. speed for each part of track defines the inclination and the acceleration is a special curve for each class of train, normally taken from drawing templates.

The great benefit of this is that it does not require any special skills, it is just a lot of work, and you can show the trains for both directions (one going up in the graph and the other direction going down/mathematically negative distance) in one sheet. This is very useful for singletrack railways to ensure that crossings take place only in stations with two or more tracks.

you can check the wikipedia article for more details on that:
http://de.wikipedia.org/wiki/Bildfahrplan

skreyola

Quote from: paco_m on January 29, 2011, 01:27:02 PM
The classic way of doing this at least here in Germany and Austria was and still is drawing it in a diagram,
...
http://de.wikipedia.org/wiki/Bildfahrplan
That's really neat!
--Skreyola
You can also help translate for your language with SimuTranslator.