什么是组合优化 | 集智百科
导语
组合优化的定义、应用、方法、特定问题。
目录
一、应用
二、方法
三、形式化定义
四、NP优化问题
五、特定问题
六、编者推荐
七、百科项目志愿者招募
组合优化主要是从一个有限的对象集合中寻找一个最佳对象。在许多这样的问题中,穷举搜索 exhaustive search 是不易处理的。如果这些优化问题可行解集是离散的,或者可行解集可以化为离散的,那么可以在问题范围内进行运算,其目标是找到最优解。典型的问题是旅行商问题 Traveling Salesman Problem (“ TSP”)、最小生成树问题 (“ MST”) 和背包问题 Knapsack Problem。
一些研究文献认为离散优化 Discrete Optimization 是由整数规划 Integer Programming和组合优化组成的(反过来由解决图结构的优化问题组成),尽管所有这些主题的研究文献都紧密地交织在一起。它通常涉及如何有效地分配用于寻找数学问题解决方案的资源的决策。
应用
组合优化的应用包括但不限于:
物流
供应链优化
发展最好辐条和目的地的航空公司网络
决定车队中哪辆出租车来载客
确定运送包裹的最佳方式
制定最佳工作分配
方法
对于NP完全 NP-Complete的离散优化问题,目前的研究文献包括以下主题:
• 多项式时间可精确解决的特殊问题(例如,固定参数可解)
• 在“随机”实例上表现良好的算法(例如,TSP)
• 近似算法 Approximation Algorithm在多项式时间内运行并找到一个“接近”最优值的解
• 解决现实世界中出现的实例,这些实例不一定表现出NP完全问题固有的最坏情况(例如,具有成千上万个节点的TSP实例)
组合优化问题可以看作是在一些离散项目中搜索最佳元素,因此,原则上,任何一种搜索算法或元启发式算法都可以用来解决它们。也许最普遍适用的方法是分支定界法 Branch-and-bound (一种可以在任何时间点停止来用作启发式的精确算法)、分支切割法 Branch-and-cut (使用线性最优化生成边界)、动态规划法 Dynamic Programming (一种有限搜索窗口的递归解构法) 和禁忌搜索法 Tabu Search (一种贪婪交换算法)。然而,遗传搜索算法 Generic Search Algorithms 不能保证首先找到最优解,也不能保证快速运行 (在多项式时间内)。由于一些离散优化问题是NP完全的,例如旅行商问题,除非P=NP,否则这是可以预期的。
形式化定义
从形式上来说,一个组合优化问题A是涉及四个变量(I, f, m, g)的问题 :
• I 是实例中的数学集合;
• 给定I中的一个实例,f(x)是可行解的有限集合;
• 给定一个实例x和其对应的可行解y,m(x,y)表示y的测度,其中,y通常是正实数。
在近似算法approximation algorithms领域,算法被设计来寻找困难问题的近似最优解。因此,通常的决策版本对问题的定义不够充分,因为它只指定了可接受的解决办法。尽管我们可以引入合适的决策问题,使这个问题更自然地被描述为一个最优化问题。
NP优化问题
NP优化问题(NPO)是一个具有以下附加条件的组合优化问题。注意,下面提到的多项式是相应函数输入大小的函数,而不是某些隐式输入实例集大小的函数。
• 每个可行解y∈f(x)的大小都是由给定实例x的大小多项式约束的,
• 语言{x | x∈I}and{(x,y) | y∈f(x)}在多项式时间内可以可判定语言/识别,并且,
这意味着相应的决策问题在NP中。在计算机科学中,有趣的优化问题通常具有上述性质,因此是NPO问题。如果存在一种在多项式时间内找到最优解的算法,则该问题又称为P-优化(PO)问题 P-optimization problem 。通常,在处理NPO类问题时,人们对决策版本为NP完全的优化问题感兴趣。请注意,硬度关系总是与某些降低有关。由于近似算法和计算优化问题之间的联系,在某些方面保持近似性的缩减比一般的图灵和卡普规约 Turing and Karp Reductions 更为可取。这种规约的一个例子就是L-规约 L-reduction 。因此,具有NP完全决策版本的优化问题不一定称为NPO完全问题。
NPO问题根据其近似性可分为以下子类:
• NPO(I):等价于完全多项式时间近似方案 Fully Polynomial-time approximation scheme | PTAS 。包含背包问题。
• NPO(II):等价于多项式时间近似方案 Polynomial-time approximation scheme。包含分批调度问题。
• NPO(III):具有多项式时间算法的NPO问题类,其计算的解的成本最多为最优成本的“c”倍(对于最小化问题),或成本至少为最优成本的1/c对于最大化问题。在尤拉·赫罗姆科维奇 Juraj Hromkovic 的书中,除了P=NP之外,所有的NPO(II)问题都被排除在这个类之外。如果没有排除,则等于APX(approximable)。包含最大可满足性问题 MAX-SAT 和标准的旅行商问题 | TSP。
• NPO(IV):多项式时间算法的一类NPO问题,以比率为输入大小的对数多项式来逼近最优解。在Hromkovic的书中,除非P=NP,否则所有的NPO(III)-问题都不属于此类。包含集合覆盖问题。
特定问题
德国15个最大城市的最佳旅行推销员之旅。最优的旅行商途经德国15个最大的城市。在43,589,145,600个可能的游览每个城市的旅行团中,这是最短的一个。
指派问题 Assignment Problem
封闭性问题 Closure Problem
约束满足问题 Constraint Satisfaction Problem
切割问题 Cutting Stock Problem
控制集问题 Dominating Set
整数规划 Integer Programming
背包问题 Knapsack Problem
线性系统中的最小相关变量 Minimum Relevant Variables In Linear System
最小生成树 Minimum Spanning Tree
护士调度问题 Nurse Scheduling Problem
集合覆盖问题 Set Cover Problem
旅行商问题 Traveling Salesman Problem
车辆重新调度问题 Vehicle Rescheduling Problem
车辆线路优化问题 Vehicle Routing Problem
武器目标分配问题 Weapon Target Assignment Problem
编者推荐
集智视频
张量网络与组合优化
张量网络可以用来计算有限温度下统计物理模型的配分函数,但一般无法处理零温的基态问题,即组合优化问题。在这个报告中,中科院物理研究所的王磊研究员将介绍如何在张量网络中引入 Tropic 代数,直接将自旋玻璃零温的配分函数映射到张量网络缩并问题上,并利用 GPU,Yao以及 NiLang 进行有效的计算。
结合图卷积网络的组合优化和树搜索——图网络读书会第3期
GCOMB:在上亿节点网络上学习带约束的组合优化算法法|Openlab内部读书会第13期
18年的S2V-DQN是第一篇尝试学习如何求解图上组合优化问题的工作,它以及后续的工作主要都集中于如何提升算法的逼近程度,而没有特别考虑在大图上的效率和扩展性,这次介绍的工作GCOMB主要关注这个问题。本文的能够扩展到上亿节点的核心是,计算密集型的步骤只在比较“好”的节点上进行计算。本文提出监督学习+强化学习两阶段的框架:监督学习部分利用GCN学习出节点的作为候选解的优劣,强化学习部分在比较好的节点中选出问题的解。在实际应用中,第一阶段筛除了图上的大部分“无用”节点,使得计算密集型的第二阶段所需考虑的备选节点大大减少,从而完成加速。
图神经网络与组合优化读书会
推荐阅读