OR-Tools 是解决组合优化问题最优解的谷歌开源项目。可解如以下问题,
① 路径规划问题。
在给定条件下,为运载车辆寻找最优的装卸路径。(其条件可以是,“运载车辆不能装超过2万镑的货物”,“所有的货物必须在两小时内完成”)。
② 调度
在复杂任务下最有的调度流程。
③ 装箱问题
如何在有限的体积下,最多的装更多物品。
在大多数情况下,这些问题都是有很多的解,这些解太多以至于不能将其枚举完。为了解决这个问题,OR-Tools 使用 state-of-the-art 算法 来缩小解的空间,来找到最优解。
OR-Tools 给了以下解决方案:
约束规划
解决问题的前置约束条件。比如,同一场地不能举办两场赛事,不能同时录播5个电视节目。
线性-整数规划
谷歌提供了Glop 来解决线性规划问题,SCIP来解决整数规划问题。
路径规划
对于路径规划问题有指定的包来解决。
图算法
用于在图中查找最短路径、最小成本流、最大流和线性总和分配的代码。
(注:运筹学系列为个人学习笔记,不喜勿喷。)