Benchmarking branch and bound strategies for mixed integer programming

Study level


Topic status

We're looking for students to study this topic.


Associate Professor Paul Corry
Acting Head of School
Division / Faculty
Science and Engineering Faculty


Branch and bound is the cornerstone of mixed-integer programming solvers. These days, most practitioners and researchers rely on commercial solvers which allow them to focus on modeling rather than programming.

A general branch-and-bound algorithm will be coded from scratch as part of this project, including the underlying simplex method for solving LP sub-problems.

The project will aim to investigate different branching strategies and contrast them on different problem sets, in terms of CPU time and memory requirements. It will also aim to identify the research opportunities for continued improvement of general purpose integer programming solvers.

Research activities

Throughout the research project, you will be involved in:

  • literature review
  • programming
  • computational analyses
  • scientific writing.


We expect an honours thesis to be produced as part of the research project.

Skills and experience

We expect you to have an undergraduate degree in operations research as well as good programming skills in C#, C++, Java or Python



Contact the supervisor for more information.