Computational Management Science 1 and 2

The preliminary grading can be found on

Course dates, important information and homework assignments are available in my calendar. An outline of the topics is available as spreadsheet.


IPython Notebooks

Make sure jupyter-notebook is installed (sudo -H apt install jupyter-notebook). After downloading a notebook, use it via

jupyter-notebook ${notebookname}


There are essentially three options for obtaining all the software for this course. Be aware that students taking this class in the past had considerable trouble installing the required tools in alternative operating systems. Hence you are encouraged to either use a Debian-based Linux distribution natively or in a virtual machine.

  1. If you prefer not to install Linux natively, the recommended way is to use virtual machine software. VirtualBox is an excellent open source choice.
    In this case you can download a virtual machine image with all the required software (~2.5 GB; you can obtain username and password from your lecturers). Once the virtual machine works on your computer, the user name is student and the password is changeme.
  2. The most straightforward way is to natively install any Debian-based Linux distribution (eg. KDE Neon). This allows you to simply use the package manager to install anything that's required:
    sudo apt install git git-gui \
                     kate \
                     kdiff3 \
                     ipython3 \
                     jupyter-notebook \
                     python3-matplotlib \
                     python3-numpy \
                     python3-pandas \
                     python3-pip \
                     python3-pulp \
                     python3-pyqt5 \
                     python3-pytest \
                     python3-scipy \
  3. You can use any other operating system as well - however, you will not receive any support. The tools and programs you have to install and configure include
    • Python 3
    • a good programmer's text editor (like the award winning Kate)
    • ipython3
    • pytest
    • the Python 3 versions of numpy, pandas, pip, pulp, scipy, matplotlib, pyqt5, flask and virtualenv
    • git
    • openssh-client
    • a three-way diff program
    Note that students picking this option usually lose an unreasonable amount of time installing the above unless they are extremely skilled in their OS. You have been warned ;)
    On the plus side there exist scientific Python distributions (like WinPython or Anaconda) for some operating systems. These facilitate the installation and cover most of our needs.

In case you have trouble with your software setup and need to continue with your homework, try which is enough for many of the tasks.

Homework Assignments

CMS 1 Term Project

CMS 1 project proposals

Prior Final Exams




Further Reading

Online Video Resources