À propos de ce cours
4.9
207 ratings
44 reviews
Tired of solving Sudokus by hand? This class teaches you how to solve complex search problems with discrete optimization concepts and algorithms, including constraint programming, local search, and mixed-integer programming. Optimization technology is ubiquitous in our society. It schedules planes and their crews, coordinates the production of steel, and organizes the transportation of iron ore from the mines to the ports. Optimization clears the day-ahead and real-time markets to deliver electricity to millions of people. It organizes kidney exchanges and cancer treatments and helps scientists understand the fundamental fabric of life, control complex chemical reactions, and design drugs that may benefit billions of individuals. This class is an introduction to discrete optimization and exposes students to some of the most fundamental concepts and algorithms in the field. It covers constraint programming, local search, and mixed-integer programming from their foundations to their applications for complex practical problems in areas such as scheduling, vehicle routing, supply-chain optimization, and resource allocation....
Globe

Cours en ligne à 100 %

Commencez dès maintenant et apprenez aux horaires qui vous conviennent.
Calendar

Dates limites flexibles

Réinitialisez les dates limites selon votre disponibilité.
Intermediate Level

Niveau intermédiaire

Clock

Recommandé : 8 weeks of study, 10-15 hours per week

Approx. 34 heures pour terminer
Comment Dots

English

Sous-titres : English

Compétences que vous acquerrez

Linear ProgrammingDiscrete OptimizationConstraint ProgrammingDynamic Programming
Globe

Cours en ligne à 100 %

Commencez dès maintenant et apprenez aux horaires qui vous conviennent.
Calendar

Dates limites flexibles

Réinitialisez les dates limites selon votre disponibilité.
Intermediate Level

Niveau intermédiaire

Clock

Recommandé : 8 weeks of study, 10-15 hours per week

Approx. 34 heures pour terminer
Comment Dots

English

Sous-titres : English

Programme du cours : ce que vous apprendrez dans ce cours

1

Section
Clock
2 heures pour terminer

Welcome

These lectures and readings give you an introduction to this course: its philosophy, organization, and load. They also tell you how the assignments are a significant part of the class. This week covers the common input/output organization of the assignments, how they are graded, and how to succeed in this class....
Reading
4 vidéos (Total 43 min), 3 lectures, 1 quiz
Video4 vidéos
Course Motivation - Indiana Jones, challenges, applications20 min
Course Introduction - philosophy, design, grading rubric11 min
Assignments Introduction & Any Integer9 min
Reading3 lectures
Start of Course Survey10 min
Socialize10 min
Course Syllabus10 min

2

Section
Clock
7 heures pour terminer

Knapsack

These lectures introduce optimization problems and some optimization techniques through the knapsack problem, one of the most well-known problem in the field. It discusses how to formalize and model optimization problems using knapsack as an example. It then reviews how to apply dynamic programming and branch and bound to the knapsack problem, providing intuition behind these two fundamental optimization techniques. The concept of relaxation and search are also discussed....
Reading
9 vidéos (Total 101 min), 1 quiz
Video9 vidéos
Knapsack 2 - greedy algorithms7 min
Knapsack 3 - modeling8 min
Knapsack 4 - dynamic programming17 min
Knapsack 5 - relaxation, branch and bound14 min
Knapsack 6 - search strategies, depth first, best first, least discrepancy14 min
Assignments Getting Started13 min
Knapsack & External Solver10 min
Exploring the Material - open course design, optimization landscape, picking your adventure10 min

3

Section
Clock
17 heures pour terminer

Constraint Programming

Constraint programming is an optimization technique that emerged from the field of artificial intelligence. It is characterized by two key ideas: To express the optimization problem at a high level to reveal its structure and to use constraints to reduce the search space by removing, from the variable domains, values that cannot appear in solutions. These lectures cover constraint programming in detail, describing the language of constraint programming, its underlying computational paradigm and how it can be applied in practice....
Reading
13 vidéos (Total 248 min), 1 lecture, 2 quiz
Video13 vidéos
CP 2 - propagation, arithmetic constraints, send+more=money26 min
CP 3 - reification, element constraint, magic series, stable marriage16 min
CP 4 - global constraint intuition, table constraint, sudoku19 min
CP 5 - symmetry breaking, BIBD, scene allocation18 min
CP 6 - redundant constraints, magic series, market split11 min
CP 7 - car sequencing, dual modeling18 min
CP 8 - global constraints in detail, knapsack, alldifferent33 min
CP 9 - search, first-fail, euler knight, ESDD25 min
CP 10 - value/variable labeling, domain splitting, symmetry breaking in search28 min
Graph Coloring6 min
Optimization Tools5 min
Set Cover8 min
Reading1 lecture
Optimization Tools10 min

4

Section
Clock
13 heures pour terminer

Local Search

Local search is probably the oldest and most intuitive optimization technique. It consists in starting from a solution and improving it by performing (typically) local perturbations (often called moves). Local search has evolved substantially in the last decades with a lot of attention being devoted on which moves to explore. These lectures explore the theory and practice of local search, from the concept of neighborhood and connectivity to meta-heuristics such as tabu search and simulated annealing....
Reading
10 vidéos (Total 191 min), 1 quiz
Video10 vidéos
LS 2 - swap neighborhood, car sequencing, magic square15 min
LS 3 - optimization, warehouse location, traveling salesman, 2-opt, k-opt23 min
LS 4 - optimality vs feasibility, graph coloring22 min
LS 5 - complex neighborhoods, sports scheduling21 min
LS 6 - escaping local minima, connectivity15 min
LS 7 - formalization, heuristics, meta-heuristics introduction22 min
LS 8 - iterated location search, metropolis heuristic, simulated annealing, tabu search intuition18 min
LS 9 - tabu search formalized, aspiration, car sequencing, n-queens26 min
Traveling Salesman10 min
4.9
Direction Signs

33%

a commencé une nouvelle carrière après avoir terminé ces cours
Briefcase

83%

a bénéficié d'un avantage concret dans sa carrière grâce à ce cours

Meilleurs avis

par AMFeb 6th 2017

I like the instructor teaching approach and the evaluation system, the subject itself took me a lot of effort and i think the LNS technique should be teached just after local search.

par XWJul 16th 2017

Awesome course, learned a lot for solving NP hard problem. It could be hard for people without basic algorithm and data structure background.

Enseignants

Dr. Carleton Coffrin

Adjunct Lecturer
Computing and Information Systems

À propos de 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....

Foire Aux 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.

  • Good programming skills, knowledge of algorithms and linear algebra.

  • A minimal knowledge of python is necessary to integrate with the course infrastructure. Outside of that, students are free to use any language of their choice.

  • A motivated student spending the time on the programming assignment will succeed in this class.

  • At the discrete optimization store: http://www.zazzle.com.au/discreteoptimization

D'autres questions ? Visitez le Centre d'Aide pour les Etudiants.