Home

Awesome

sbb-train-schedule-optimisation-challenge-starter-kit

CrowdAI-Logo

This is a starter-kit Repo for the SBB Train Schedule Optimisation Challenge on crowdAI.

In this repo you will find background material, sample files and support scripts that help you to get started with the challenge.

How to get started?

This challenge requires a bit of explanation before you can get started. While the general idea is quite simple, and there are only a grand total of twelve rules that need to be taken into account when producing a timetable, the data models used require an introduction.

We recommend that you proceed through the documentation in the following order:

  1. Quick Introduction to the Timetabling Problem First, read the Quick Introduction to the Timetabling Problem. After this, you should be able to relate to the problem and start to get a feeling for the algorithmic difficulties involved.

  2. Worked Example Second, it is probably a good idea to go through the Worked Example. In that document, we take a very simple sample problem, produce a solution from the ground up (in the required solution data format) and then verify that we indeed satisfy all twelve timetabling rules.

  3. General Outline After the first two, you may proceed with the further documentation (see below), and maybe start to solve the simple instances in parallel with learning the fine details of the data models and the timetabling rules.

  4. Instance Description Once you really want to start solving the instances, you should also check out the description of the instances which gives you an idea about the size (and difficulty) of the problem instances. You should start solving the simple instances first. More information on that in the description of the instances.

  5. How to Submit ? The what to submit guide walks you through a sample submission.

What do I have to do?

You must try to generate solutions to the nine problem instances in this folder.

Once you have solutions, you can submit them through the Challenge page on crowdAI.

In order to submit, it is not necessary to solve all nine problem instances. You can also submit an arbitrary subset of them. However, each missing solution will incur a penalty of 10'000 points. As soon as you manage to find a solution with an objective value better (i.e. lower) than 10'000, you should therefore include that solution in the submission.

By the way, we provide sample solutions to seven of the nine problem instances. These seven solutions are also available as a sample submission. You may use these solutions to test the submission workflow and verify the data models. You must not use them as a basis for your solver, however, see the according challenge rules.

The goal is to create a submission with as small a score as possible.

What can I find in this Repo?

Author