Discrete Optimization

所在平台: Coursera

课程主页: https://www.coursera.org/learn/discrete-optimization

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:离散优化 课程概述:如果厌倦手动解数独,这门课将教您如何通过离散优化概念和算法解决复杂的搜索问题,包括约束编程、局部搜索和混合整数规划。优化技术在我们的社会中无处不在,涉及飞机与机组人员的调度、钢铁生产的协调、从矿区到港口的铁矿石运输、电力市场的管理、肾脏交换与癌症治疗、以及科学研究等多个领域。这门课程是离散优化的入门,向学生介绍该领域的一些基本概念和算法,涵盖约束编程、局部搜索和混合整数规划,涉及调度、车辆路线、供应链优化和资源分配等复杂实际问题的应用。 课程大纲: - 欢迎:介绍课程的哲学、组织及学分负担,讲述作业在课程中的重要性及如何成功完成课程。 - 背包问题:通过经典的背包问题引入优化问题和技术,讨论如何规范和建模优化问题,并回顾动态规划和分支限界法的应用。 - 约束编程:介绍一种源于人工智能的优化技术,通过高层次表达优化问题的结构,及通过约束减少搜索空间。 - 局部搜索:探讨局部搜索这一古老优化技术,从现有解出发进行局部调整,讨论邻域和连通性,以及禁忌搜索和模拟退火等元启发式方法。 - 线性规划:回顾线性规划的基本概念,包括著名的单纯形算法,单纯形表和对偶性。 - 混合整数规划:讨论如何通过引入整数变量来广泛应用线性规划,讲解混合整数规划问题的建模和求解方法。 - 高级主题:第一部分:介绍调度和路线的约束编程技术。 - 高级主题:第二部分:讨论将约束编程和局部搜索结合的较大邻域搜索,以及通过主问题和定价问题分解优化模型的列生成技术。 通过本课程,学生将获得解决各种复杂问题的技能,应用于实际优化场景。

课程大纲

Name:Welcome

Description: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.

Name:Knapsack

Description: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.

Name:Constraint Programming

Description: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.

Name:Local Search

Description: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.

Name:Linear Programming

Description:Linear programming has been, and remains, a workhorse of optimization. It consists in optimizing a linear objective subject to linear constraints, admits efficient algorithmic solutions, and is often an important building block for other optimization techniques. These lectures review fundamental concepts in linear programming, including the infamous simplex algorithm, simplex tableau, and duality. .

Name:Mixed Integer Programming

Description:Mixed Integer Programming generalizes linear programming by allowing integer variables, which dramatically changes the complexity of the problems but also broadens the potential applications significantly. These lectures review how to model problems in mixed-integer programming and how to solve mixed-integer programs using branch and bound. Advanced techniques such as cutting planes and polyhedral cuts are also covered.

Name:Advanced Topics: Part I

Description:These lectures cover some more advanced concepts in optimization. They introduce constraint-programming techniques for scheduling and routing.

Name:Advanced Topics: Part II

Description:These lectures continues to cover some more advanced concepts in optimization. They introduce large neighborhood search, which often combines constraint programming and local search, and column generation which decomposes an optimization model into a master and pricing problem, using more complex variables.

课程评论(0条)

课程详情

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.

课程标签

0人关注该课程

主题相关的课程