Transport optimization Assignments



Assignment 1 - Introduction to algorithms and optimization

Answer these questions

Deadline March 26



Assignment 2 - Traffic Planning

Solve the traffic equilibrium and system optimal problems for a small traffic network. Investigate their difference and generate a link toll which will enforce the system optimal solution. Which valid toll is the minimal? See if Braess' paradox occurs in the example.

Assignment information and questions

More information, including test data, can be found here.

The small test problem from the exercise, in the appropriate format, can be found here.

For some nice tutorials about Matlab, follow this link.

Deadline April 9



Assignment 3 - Route planning

This assignment is about different types of route planning problems, the column generation technique, and the applicability of our three main approaches: i) network flows, ii) heuristics, iii) column generation.

The assignment consists of four tasks. Download the assignment here (postscript).

For task 3 use the following two CPLEX files: master.lp and pricing.lp.
For task 4 use the following CPLEX file: setpar.lp.

There is also a handwritten sheet that has been handed out, that you need to do the assignment. It has the bus network on one side and a VRP problem on the other. If you didn't get it at the lecture, you will find it beside our hand-in box.

Relevant literature is:

  • Lecture notes from the Route optimization 1 lecture by Dag W (only on paper).
  • Introductory text about column generation: Discrete Optimization, Chapter 7 [postscript] [2 on one]
  • Course notes and slides from the Route optimization 2 lecture (by Tuomo T).
  • Course notes and slides from the Route optimization 3 lecture (by Curt H).
  • Material (?) from the Route optimization 4 lecture (by Michael P).

    Deadline May 7



    Assignment 4 - Airline Scheduling

    No use of computers in this assignment, only reading, thinking and writing:

    The questions

    The literature:

    Slides from each lecture is found under respective lecture in the Lecture Schedule.

    The exercise we did Friday, May 4: Umlaufspiel

    Deadline May 21



    Assignment 5 - Specialization

    Deadline June 1

    Unlike the other assignments, this one should be handed in by mailing it to ek@cs.chalmers.se.
    We will set up a web page so that everybody can read each others reports.
    Mail in your report in Postscript (.ps) or Acrobat (.pdf) format.
    Since your report will be made available for a wider audience it should be written in English.
    Include a reference list of used literature in your report.

    Assignment 5 can either be a literature study or a programming assignment:

    Literature Study

    Select a topic and a set of articles (either pick one of the prepared kits or select three articles on your own). Read the articles in order to study your selected topic in depth. Write a report on the topic based on your aquired knowledge.

    Topics and articles to choose from.

    Think of that this report will not only be read by me when grading, but also by several other people. You write for other people taking the course (or with similar background) that would like to get a quick understanding of your special topic. You also write for yourself in order to be able to easily pick this up at some later point e.g. when you will have to work with it.

    For this purpose it is useful if you not just summarize the content of the papers but also that you try to put them in a context (of your choice), including any of your own reflections, comparisons, and recommendations.

    Programming assignment

    Make a program that solves crew pairing problems.
    Rules and flight timetable can be used from the Umlaufspiel.
    Data (flights) in electronic format can be found here.

    You may work in groups. A report describing the algorithms and other implementation tricks has to be mailed in (no source code listings in the report). Also mail in the directory path (in a lab account) to a working program. The report may go further than your implementation, and describe ideas for solving pairing problems larger than (or different from) the Umlaufspiel. Not all of your ideas has to be implemented, but the program must solve the Umlaufspiel.



    Additional Assignment for GU students

    Deadline June 1

    (This assignment only has to be done by GU students. You do not have to do it though if you made a programming assignment in Assignment 5.)

    Write a summarizing report about one of the following topics:



    Optional exercise

    With the knowledge you have aquired in the course you now have the tools to solve crew pairing problems like the Umlaufspiel. Use the column generation technique that you have learned in Assignment 3 (tasks 3 and 4).

    Since the exercise means solving the subproblem by hand, we have to make the problem small enough by applying the following modifications to the Umlaufspiel:

  • Use only the following flight legs: 242, 245, 084, 085, 120, 121, 214, 217, 1606, 1609, 1746, 1749, 058, 043.
  • Restrict the length of a pairing to maximum two days.

    The subproblem is now small enough to be solved by hand. It has to be solved as a shortest path problem with resource constraints. That means that we have to keep track of used duty time, number of legs, and the required rest time length along the search. A connection in the graph is not guaranteed to be legal for all paths that lead to it.

    If you do this exercise you will get a good understanding that will be useful both in assignment 4 and 5. And you will also be well prepared for solving real world routing problems (a program can be written to handle the steps that you now do manually).



    Practical info about the assignments

    All assignments should be handed in on paper. There is a hand-in box for our course, tagged with "Transportoptimering", in the basement besides computer lab L. Put your assignment report there. Remember that you must hand it in individually and also sign it.

    To the left of this box, you will find spare copies of material that has been handed out at lectures. However, most material you will be able to download from the course web page.

    If you need to book a computer for the practical parts of the assignments, there is a booking list in the same hall as the hand-in box.

    Here is a list of currently available lab hours.

    It is part of the grading if the report is well written. We accept hand written reports, but encourage you to use a word processor. The important thing anyhow is that the report is well structured, clear and readable. Do not spend hours fighting with a word processor, to enter formulas or graphs, if you are not used to it. Consider adding hand drawings of graphs, and such, as an appendix instead, if it saves you time. Use the stapling machine in the HelpDesk before handing in (or bring paper clips to school), please...



    ek@cs.chalmers.se