Об этом курсе
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

Только онлайн-курсы

Начните сейчас и учитесь по собственному графику.
Calendar

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.
Intermediate Level

Промежуточный уровень

Clock

Предполагаемая нагрузка: 8 weeks of study, 10-15 hours per week

Прибл. 34 ч. на завершение
Comment Dots

English

Субтитры: English

Приобретаемые навыки

Linear ProgrammingConstraint ProgrammingDiscrete OptimizationDynamic Programming
Globe

Только онлайн-курсы

Начните сейчас и учитесь по собственному графику.
Calendar

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.
Intermediate Level

Промежуточный уровень

Clock

Предполагаемая нагрузка: 8 weeks of study, 10-15 hours per week

Прибл. 34 ч. на завершение
Comment Dots

English

Субтитры: English

Программа курса: что вы изучите

1

Раздел
Clock
2 ч. на завершение

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 видео (всего 43 мин.), 3 материалов для самостоятельного изучения, 1 тест
Video4 видео
Course Motivation - Indiana Jones, challenges, applications20мин
Course Introduction - philosophy, design, grading rubric11мин
Assignments Introduction & Any Integer9мин
Reading3 материала для самостоятельного изучения
Start of Course Survey10мин
Socialize10мин
Course Syllabus10мин

2

Раздел
Clock
7 ч. на завершение

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 видео (всего 101 мин.), 1 тест
Video9 видео
Knapsack 2 - greedy algorithms7мин
Knapsack 3 - modeling8мин
Knapsack 4 - dynamic programming17мин
Knapsack 5 - relaxation, branch and bound14мин
Knapsack 6 - search strategies, depth first, best first, least discrepancy14мин
Assignments Getting Started13мин
Knapsack & External Solver10мин
Exploring the Material - open course design, optimization landscape, picking your adventure10мин

3

Раздел
Clock
17 ч. на завершение

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 видео (всего 248 мин.), 1 материал для самостоятельного изучения, 2 тестов
Video13 видео
CP 2 - propagation, arithmetic constraints, send+more=money26мин
CP 3 - reification, element constraint, magic series, stable marriage16мин
CP 4 - global constraint intuition, table constraint, sudoku19мин
CP 5 - symmetry breaking, BIBD, scene allocation18мин
CP 6 - redundant constraints, magic series, market split11мин
CP 7 - car sequencing, dual modeling18мин
CP 8 - global constraints in detail, knapsack, alldifferent33мин
CP 9 - search, first-fail, euler knight, ESDD25мин
CP 10 - value/variable labeling, domain splitting, symmetry breaking in search28мин
Graph Coloring6мин
Optimization Tools5мин
Set Cover8мин
Reading1 материал для самостоятельного изучения
Optimization Tools10мин

4

Раздел
Clock
13 ч. на завершение

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 видео (всего 191 мин.), 1 тест
Video10 видео
LS 2 - swap neighborhood, car sequencing, magic square15мин
LS 3 - optimization, warehouse location, traveling salesman, 2-opt, k-opt23мин
LS 4 - optimality vs feasibility, graph coloring22мин
LS 5 - complex neighborhoods, sports scheduling21мин
LS 6 - escaping local minima, connectivity15мин
LS 7 - formalization, heuristics, meta-heuristics introduction22мин
LS 8 - iterated location search, metropolis heuristic, simulated annealing, tabu search intuition18мин
LS 9 - tabu search formalized, aspiration, car sequencing, n-queens26мин
Traveling Salesman10мин
4.9
Direction Signs

33%

начал новую карьеру, пройдя эти курсы
Briefcase

83%

получил значимые преимущества в карьере благодаря этому курсу

Лучшие рецензии

автор: 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.

автор: 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.

Преподавателя

Dr. Carleton Coffrin

Adjunct Lecturer
Computing and Information Systems

О 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....

Часто задаваемые вопросы

  • 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

Остались вопросы? Посетите Центр поддержки учащихся.