Optimization is a common form of decision making, and is ubiquitous in 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 in manpower and material resources management also allow corporations to improve 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, all of these problems are a nightmare to solve using traditional undergraduate computer science methods.
Offered By
Advanced Modeling for Discrete Optimization
The University of MelbourneAbout this Course
Learner Career Outcomes
20%
20%
Learner Career Outcomes
20%
20%
Offered by

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.

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.
Syllabus - What you will learn from this course
Debugging and Improving Models
Similar to computer programs, models can have bugs. In this module, you will see the symptoms (unsatisfiability, too many solutions, too few solutions) of different bugs, and learn methods to discover what is going wrong with your model and how to fix it. Equipped with these tools, you will be able to develop and debug complex models.
Predicates
In this module, you will learn how to encapsulate a complex constraint definition in a predicate definition to enable its reuse. This will enable the construction of far more complex models with improved readability in a modular manner. You will also encounter for the first time a problem with multiple objectives and learn how to compress them into one single objective. In addition to this, you will learn how to model the banquet seating problem, which will assist you in many occasions in life.
Scheduling
Learn how to tackle complex project scheduling problems of various forms, progressively from ones with only basic precedence requirements to ones with unary resources and even cumulative resources. You will see how to model some of the complex constraints that arise in these applications.
Packing
In this module, you will learn the important application of packing, from the packing of squares to rectilinear shapes with and without rotation. Again, you will see how to model some of the complex constraints that arise in these applications.
Reviews
TOP REVIEWS FROM ADVANCED MODELING FOR DISCRETE OPTIMIZATION
Excellent course! I learned a lot. Although the assignments were sometimes hard to fathom, and its online nature mean getting hints was difficult, there's enough there to help get through.
Great course! Engaging content and not-so-easy assignments to make you understand the subject better. Thanks Prof. Stuckey and Prof. Lee for making this course available on Coursera!
Thank you so much! This course wasn't easy, but the material and assignments are very well thought out. Kept me motivated all the way through.
Great course! Good presentation and lectures, challenging assignments. Learned a lot
Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I purchase the Certificate?
Is financial aid available?
Will I earn university credit for completing the Course?
More questions? Visit the Learner Help Center.