Software Tools for Discrete Optimisation Modelling, 4.0 credits

Verktyg för implementering av diskreta optimeringsmodeller, 4.0 hp

MAI0139

Course level

Third-cycle Education

Description

Contact the examiner if interested.

Contact

Entry requirements

Basic discrete optimisation modelling knowledge and basic programming experience. The implementation assignments during the course will be adapted to suit different backgrounds and interests.

Learning outcomes

The aim is to gain knowledge about software tools that can be of use in the students’ own research implementations and therefore the content can be somewhat adapted to different needs and interests.

Contents

The course contains two blocks. The purpose of the first block is to get an overview of different tools for discrete optimisation modelling and to gain an understanding of when different tools are suitable to use.

The second block focuses on Python and the students will make implementations both by using APIs for commercial solvers, such as Gurobi and CPLEX, and by using open source tools such as PySCIPOpt, PyOMO, PuLP and PyMathProg.

Educational methods

The course will be of a problem-based learning type where the students search for the information they need to solve the implementation assignments. We will meet regularly during the course to discuss the assignments and share experiences. Students are encouraged to work in pairs with the implementation assignments.

Examination

During the course, implementation assignments: Model and solve discrete optimisation problems and present the implementations to the group. Active participation in discussions about implementations presented by the other students.

By the end of the course: Together, the students prepare and give at least one seminar to the Optimization group about what they have discovered during the course. This seminar shall contain the presentation of “easy-to get-started”-templates for modelling of discrete optimization problems.

Grading

One-grade scale