离散优化算法篇 Solving Algorithms for Discrete Optimization
The Chinese University of Hong Kong and University of Melbourne via Coursera
-
31
-
- Write review
Overview
优化是决策的一般形式,在我们的社会中很常见。它的应用包括从求解数独谜题到婚礼上的座次安排。同样的技术可以调度航班和机组成员,协调钢铁生产,组织铁矿从矿井到港口的运输。人力资源和材料管理上好的决策可以令企业提升上百万的盈利。同样的问题很多也在我们日常生活出现,成为决定每天送货路线,决定学校时间表,传输电力到家里等种种问题的一部分。除了它们的重要性,这些问题如果用传统的本科计算机科学方法难以求解。
这门课程为已经完成离散优化高阶篇的同学设计。
请看这门课程的宣传视频:http://www.cpr.cuhk.edu.hk/cutv/detail/988
Syllabus
- 基础约束编程
- 这个模块开始时用例子说明约束编程求解器的基础技术,也就是约束传播和搜索。值域代表了变量可能的取值,而约束可用于在值域上进行推理。约束本身可以以值域传播器和边界传播器的形式表示。你将会学习到一个传播引擎如何处理一组传播器,并通过变量值域协调沟通约束传播得到的信息。你也将会学到基础搜索,变量,数值选择等概念,还有传播和搜索是如何紧密而高效地连接起来的。最后,这个模块介绍了如何在Minizinc中进行编程化搜索。
- 高阶约束编程
- 在这个模块中,你将会看到如何用分支限界搜索求解优化问题,和搜索策略在这些情况下如何变得更为重要。你将会了解到高阶的搜索策略,包括重启搜索和基于影响(impact-based)的搜索。这个模块也会解释如alldifferent和cumulative全局约束的内部实现。
- 混合整数线性规划
- 这个模块从介绍线性规划和用于解决连续线性规划优化问题的Simplex算法开始,之后展示了这个方法如何可以和分支限界法配合来解决混合整数线性规划问题。之后再进一步学习Gomory切割和分支切割法并领略它们如何提高求解速度。
- 局部搜索
- 这个模块带你进入局部搜索的神奇领域,它可以高效地探索一些大而复杂的搜索空间。你将会学到状态,移动和邻域的概念,还有它们在受约束的搜索空间中如何被应用在基本贪心搜索和最速梯度下降搜索中。你还将学习不同的方法来逃离或者避免局部最小值,包括重启,模拟退火,禁忌表和离散拉格朗日乘数法。最后,你将会看到大邻域搜索把在邻域中找到最优相邻点看作一个离散优化问题来解决,并因此使我们探索更远和更有效地搜索。
Taught by
Prof. Jimmy Ho Man Lee and Prof. Peter James Stuckey