课程信息
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

100% 在线课程

立即开始,按照自己的计划学习。
Calendar

可灵活调整截止日期

根据您的日程表重置截止日期。
Intermediate Level

中级

Clock

建议:8 weeks of study, 10-15 hours per week

完成时间大约为34 小时
Comment Dots

English

字幕:English

您将获得的技能

Linear ProgrammingDiscrete OptimizationConstraint ProgrammingDynamic Programming
Globe

100% 在线课程

立即开始,按照自己的计划学习。
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

还有其他问题吗?请访问 学生帮助中心