About this Course
5.0
4 ratings
1 reviews
Discrete Optimization aims to make good decisions when we have many possibilities to choose from. Its applications are ubiquitous throughout our society. Its applications range from solving Sudoku puzzles to arranging seating in a wedding banquet. The same technology can schedule planes and their crews, coordinate the production of steel, and organize the transportation of iron ore from the mines to the ports. Good decisions on the use of scarce or expensive resources such as staffing and material resources also allow corporations to improve their profit by millions of dollars. Similar problems also underpin much of our daily lives and are part of determining daily delivery routes for packages, making school timetables, and delivering power to our homes. Despite their fundamental importance, these problems are a nightmare to solve using traditional undergraduate computer science methods. This course is intended for students who have completed Advanced Modelling for Discrete Optimization. In this course, you will extend your understanding of how to solve challenging discrete optimization problems by learning more about the solving technologies that are used to solve them, and how a high-level model (written in MiniZinc) is transformed into a form that is executable by these underlying solvers. By better understanding the actual solving technology, you will both improve your modeling capabilities, and be able to choose the most appropriate solving technology to use. Watch the course promotional video here: https://www.youtube.com/watch?v=-EiRsK-Rm08...
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 4 weeks of study, 6-12 hours/week

Approx. 13 hours to complete
Comment Dots

English

Subtitles: English
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 4 weeks of study, 6-12 hours/week

Approx. 13 hours to complete
Comment Dots

English

Subtitles: English

Syllabus - What you will learn from this course

1

Section
Clock
6 hours to complete

Basic Constraint Programming

This module starts by using an example to illustrate the basic machinery of Constraint Programming solvers, namely constraint propagation and search. While domains represent possibilities for variables, constraints are actively used to reason about domains and can be encoded as domain propagators and bounds propagators. You will learn how a propagation engine handles a set of propagators and coordinates the propagation of constraint information via variable domains. You will also learn basic search, variable and value choices, and how propagation and search can be combined in a seamless and efficient manner. Last but not least, this module describes how to program search in MiniZinc....
Reading
8 videos (Total 128 min), 3 readings, 1 quiz
Video8 videos
3.1.1 Constraint Programming Solvers13m
3.1.2 Domains + Propagators18m
3.1.3 Bounds Propagation21m
3.1.4 Propagation Engine21m
3.1.5 Search25m
3.1.6 Module 1 Summary4m
Workshop 919m
Reading3 readings
Course Overview10m
Start of Course Survey10m
Workshop 9: CP Basic Search Strategies10m

2

Section
Clock
6 hours to complete

Advanced Constraint Programming

In this module, you will see how Branch and Bound search can solve optimization problems and how search strategies become even more important in such situations. You will be exposed to advanced search strategies, including restart search and impact-based search. The module also uncovers the inner workings of such global constraints as alldifferent and cumulative....
Reading
7 videos (Total 143 min), 1 reading, 1 quiz
Video7 videos
3.2.2 Restart and Advanced Search20m
3.2.3 Inside Alldifferent14m
3.2.4 Inside Cumulative14m
3.2.5 Flattening39m
3.2.6 Module 2 Summary6m
Workshop 1030m
Reading1 reading
Workshop 10: CP Advanced Search Strategies10m

3

Section
Clock
5 hours to complete

Mixed Integer Programming

This module starts by introducing linear programming and the Simplex algorithm for solving continuous linear optimization problems, before showing how the method can be incorporated into Branch and Bound search for solving Mixed Integer Programs. Learn Gomory Cuts and the Branch and Cut method to see how they can speed up solving....
Reading
6 videos (Total 102 min), 1 reading, 1 quiz
Video6 videos
3.3.2 Mixed Integer Programming17m
3.3.3 Cutting Planes14m
3.3.4 MiniZinc to MIP13m
3.3.5 Module 3 Summary4m
Workshop 1126m
Reading1 reading
Workshop 11: MIP Modelling10m

4

Section
Clock
6 hours to complete

Local Search

This module takes you into the exciting realm of local search methods, which allow for efficient exploration of some otherwise large and complex search space. You will learn the notion of states, moves and neighbourhoods, and how they are utilized in basic greedy search and steepest descent search in constrained search space. Learn various methods of escaping from and avoiding local minima, including restarts, simulated annealing, tabu lists and discrete Lagrange Multipliers. Last but not least, you will see how Large Neighbourhood Search treats finding the best neighbour in a large neighbourhood as a discrete optimization problem, which allows us to explore farther and search more efficiently....
Reading
10 videos (Total 160 min), 2 readings, 1 quiz
Video10 videos
3.4.2 Constraints and Local Search12m
3.4.3 Escaping Local Minima- Restart6m
3.4.4 Simulated Annealing7m
3.4.5 Tabu List9m
3.4.6 Discrete Langrange Multiplier Methods28m
3.4.7 Large Neighbourhood Search24m
3.4.8 MiniZinc to Local Search16m
3.4.9 Module 4 Summary8m
Workshop 1230m
Reading2 readings
Workshop 12: Local Search10m
End of Course Survey10m

Instructors

Prof. Jimmy Ho Man Lee

Professor
Department of Computer Science and Engineering

Prof. Peter James Stuckey

Professor
Computing and Information Systems

About The University of Melbourne

The University of Melbourne is an internationally recognised research intensive University with a strong tradition of excellence in teaching, research, and community engagement. Established in 1853, it is Australia's second oldest University....

About The Chinese University of Hong Kong

Founded in 1963, The Chinese University of Hong Kong (CUHK) is a forward looking comprehensive research university with a global vision and a mission to combine tradition with modernity, and to bring together China and the West. CUHK teachers and students hail from all corners of the world. CUHK graduates are connected worldwide through an expansive alumni network....

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.