So, what does all of this do?

All the technical stuff is all very well but what does it actually do?


There is a certain amount of data that has to be included in the package. Before the Decision Engine (DE) can do its work, the necessary parts of the model layout must be available. This data is organised into eight categories:

  1. Delivery locations (called Tracks here);
  2. Towns on the layout (which provide the base settings for “Tracks”;
  3. Routes between the  “Towns” representing the different ways that the various types of train can run;
  4. Trains are descriptions of individual scheduled runs over a route. These organised into a formal list which would represent a timetable over the railroad;
  5. A list of all the available locos;
  6. A list of all the available freight cars;
  7. A list of all available passenger coaches;
  8. A list of all available cabooses.

The Process – 1st Iteration

Once all of this data is included and stored, the DE can start to make a train. In the first iteration, the process is simple (intentionally so that we can get the software moving). The DE takes the next scheduled train. This describes the type of train (passenger, way freight, etc.) and the route that it will take. The DE will then try to make a train that fits this description. It does this by merely selecting an appropriate loco, a number of cars and, if needed, a caboose to make a train that matches the description. These can be anywhere on the layout so this train may not necessarily run in reality but it serves the first iteration purpose. You can see what trains look like HERE. You can check what the route is by checking the route entry in a train and referring to the Routes page.

In this iteration, if you request the next train, the engine will just make the next one on the list and increment the train ID. Once it reaches the maximum train (currently 20), it reverts back to the first again. This happens automatically. In the final version, the train will be displayed whilst it is run on the railroad and then the  system will be told that it has arrived at its final destination. At that point all of the locations and other data will be updated. At any one time, the engine will know where every loco and car is – or at least should be – on the layout. You can try this on the Next Train page

The Process – 2nd Iteration

Once the next assignment is complete, I will begin working on the “real” DE. This will be a complex engine that will retain a record of the location of every loco and car. Also, if cars are at locations other than in freight yards, a record will be kept of time on site. This mimics the time it takes to load or to unload a freight car.

All of this knowledge is required because the DE will now do its full job. It will get the next train and try to make it up with equipment that is in the right place. For instance, if a freight train starts at A and is on railroad B, it will require a loco and caboose that are both of railroad B and also available in location A. Once it knows that these are available, it will then assess the train demands in terms of maximum length and attempt to build one to that capacity. For some trains this is quite simple. For a passenger train, it only requires a loco and some coaches. For a through freight, all that is required is a loco, a caboose and a number of freight cars – and it is likely to have the full quantity, assuming a well stocked yard. However, for a way freight, this is quite complex because it not only has to deliver cars to a miscellany of locations on its route but it also has to pick up cars at some of those locations. This is decided by reference to the “time on site” for each car – in other words, has the industry managed to unload or load the car so that it is ready. Obviously, there has to be a balance between cars that are to be delivered and cars that have to be collected and all within the maximum weight and length of train.

Another calculation comes in if the train is under length but above weight. It could be possible to add an additional loco to the train so that the combination of front end power would now be able to handle the weight. All locos have a maximum weight that they can pull and each freight car knows its own weight.

This just an overview of the process and further and longer descriptions will be available at the appropriate time.

Tying it all together – 3rd Iteration

By the end of the second iteration, we should have a fully working system. This 3rd iteration is all about achieving the ultimate aim of giving the user a tablet front end that can manage the  timetable through all of the trains. The project has to be based on modules that the student had done so that all of the studies tie together at the end. So far, we have based everything on the programming and database modules I have completed. This part is based on the, currently ongoing, TM352 – Web, Cloud and Mobile Technologies. Thus, I am dependent upon this module to give me the skills required to build a Tablet app. This tablet app will provide control over all of the system – except for data loading, of which more later.  It seems that TM352 will give me a ground base on Android programming and will get there through demonstrating how to make Web Apps (which are different from Android apps in that they don’t require programming the tablet itself – all the user functions are download in a similar way to web pages. So, assuming all goes well, the project will have a nice front end that finally crowns the ideas be it a Web app or an Android app. If all else fails, I can create some wire frames that show the required pages and mock them up using HTML.

Right, all that is left is to provide a glossary of the terms used as many won’t be familiar to the UK reader.


Loco – Railroad engine – either steam or diesel;
Caboose – In UK parlance a “brake van”. A place for the Conductor and his crew to travel with the  freight train. Nowadays this has been superseded by a”flashing rear end device – FRED”;
Conductor – UK Guard;
Freight Car – UK – goods van or open wagon. US freight cars come in a variety of forms, the favourite of which are Box Cars (goods vans), gondolas (open wagons), flat cars, refrigerator cars (reefers);
Freight Train – UK Goods Train;
Through Freight – A goods train that goes from A to B (a Division), generally without stopping at intermediate points;
Way Freight – a goods train that drops off and collects freight cars between Division points.

This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s