组合优化问题

组合优化问题概念

从广义上讲,组合优化问题是涉及从有限的一组对象中找到"最佳"对象的问题。“最佳”是通过给定的评估函数来测量的,该函数将对象映射到某个分数或者成本,目标是找到最高评估分数和最低成本的对象。组合优化往往涉及排序、分类、筛选等问题。以离散的COP问题来讲,目标就是从所有可行解中寻找一个集合、一个排列或者一个图。

典型的组合优化问题

旅行商问题(Traveling Salesman Problem - TSP)
加工调度问题(Scheduling Problem,如Flow-Shop,Job-Shop)
0-1背包问题(Knapsack Problem)
装箱问题(Bin Packing Problem)
图着色问题(Graph Coloring Problem)
聚类问题(Clustering Problem)
著名的旅行商问题(TSP):假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径长度为所有路径之中的最小值。TSP是一个典型的组合优化问题,且是一个NP完全难题,关于NP的这个概念本文就不做详细介绍了,但简单的说就是:TSP问题目前尚不能找到一个多项式时间复杂度的算法来求解。例如,下图显示了美国所有州所在城市的最佳旅游:

image.png

对于旅行商问题,计算的复杂度为O(n!),在现实世界中出现TSP的实际实例通常具有数千个城市,所以是一个相当高维的最优求解问题。类比到其他的COP问题,又由于各类问题具有细微差别和约束,方案难以直接借用,对应于这些问题的解决方案探索是漫长而艰巨的,并且可能需要领域专家的工作来检测特定问题的组合搜索空间中的某些结构。
由于近年来深度学习在许多领域取得了巨大成功,让机器学会如何自己解决问题的可能性听起来非常有希望。将算法设计为自动化,可以为解决困难的COP问题可以节省大量的金钱和时间,也许可以产生比人类设计的方法更好的解决方案,正如我们在AlphaGo的成就中看到的那样,这些成就击败了数千年的人类经验


对项目的想法
BIOS配置寻优也可以理解为组合优化问题,是一个NP-hard问题,具有高维的离散动作空间。


组合优化求解算法

传统算法

参考组合优化问题求解算法思路的整理

  1. 精确算法
    精确算法是指能够求出问题最优解的算法。当问题的规模较小时,精确算法能够在可接受的时间内得到最优解;当问题的规模较大时,精确算法一方面可以提供问题的可行解,另一方面可以为启发式算法提供初始解,以便搜索到更好的解。
    常用的精确算法有分支定界法、割平面法、动态规划法等。
  2. 近似算法
    近似算法是指用近似方法来解决优化问题的算法,通常与 NP-hard 问题相关,由于无 法有效地在多项式时间内精确地求得最优解,所以考虑在多项式时间内求得一个有质量保 证的近似解。

贪婪算法、局部搜索算法、松弛算法、动态规划法等都可用于构建近似算法求解。

  1. 启发式算法
    启发式算法是一种基于直观或经验构造的算法,能在可接受的计算成本内尽可能地逼近最优解,得到一个相对优解,但无法预计所得解与最优解的近似程度。

启发式算法可分为传统启发式算法和元启发式算法,传统启发式算法包括构造性方法、局部搜索算法、松弛方法、解空间缩减算法等

  1. 元启发式算法
    元启发式算法主要指一类通用型的启发式算法,它对启发式算法进行了改进,是随机 算法与局部搜索算法相结合的产物。这类算法的优化机理不过分依赖与算法的组织结构信 息,可以广泛地应用到函数的组合优化和函数计算中。

元启发式算法包括禁忌搜索算法、模拟退火算法、遗传算法、蚁群算法、粒子群算 法、人工神经网络等

强化学习解决组合优化问题

组合优化问题由于多半属于NP-hard问题,传统的数学优化方法目前很难求到精确解。神经网络是否能帮助组合优化问题的求解一直以来都是一个非常有趣和前沿的话题。

组合优化问题大多数情况下都是涉及到决策顺序,即序列的决策问题,例如对于TSP问题就是决定以什么顺序访问每一个城市,例如对于Job shop问题(加工车间调度问题)就是决定以什么顺序在机器上加工工件。而深度神经网络里边的递归神经网络恰好可以完成从一个序列到另一个序列的映射问题,因此可以借用递归神经网络来直接求解组合优化问题完全是一种可行的方案。另外一套方案就是采用强化学习,强化学习天生就是做序列决策用的,那么组合优化问题里边的序列决策问题完全也可以用强化学习来直接求解,其难点是怎么定义state, reward。

强化学习方法小结

参考相关资料汇总与点评部分

2015年,O. Vinyals, M. Fortunato, and N. Jaitly. Pointer networks使用监督学习训练了一个深度神经网络(DNN)来解决欧几里德TSP,作者通过实验证明了神经网络能够在具有大动作空间的domains中参数化竞争策略。文章引入了指针网络,这是一种能够输出输入序列的置换的神经架构。尽管文章看起来十分promising,但使用监督学习来解决组合问题并不简单,因获得一个训练集意味着我们求得大量组合实例的最优解,这实在太耗费计算资源了+很多COP足量的训练集太难找了.

专为组合优化求解而诞生的神经网络 -- Pointer Network介绍
组合优化问题很多时候就是进行序列决策,而Pointer Network就是非常适合求解组合优化问题的一种神经网络。Pointer Network(后面简称Ptr-Net)是基于Sequence-to-Sequence网络生成的一种新的网络架构。Ptr-NetSequence-to-Sequence类似,都是解决从一个序列到另一个序列的映射问题,不同的是Ptr-Net针对的序列问题更加特殊:输出序列的内容与输入序列的内容完全一致,只是序列的顺序发生了改变。这种问题在实际中常见的应用就是组合优化问题,因此Ptr-Net首次建立了神经网络与组合优化问题的联系。

2016年,I. Bello, H. Pham, Q. V. Le, M. Norouzi, and S. Bengio. Neural combinatorial optimization with reinforcement learning. arXiv preprint arXiv:1611.09940给出了NCO框架,并首次实现了用RL方法求解组合问题。作者采用了Vinyals引入的指针网络,并将其用于演员-评论家体系结构来解决TSP问题。实验证明,在没有人工干预的情况下,学习有竞争力的heuristics是可能的。不过他们还是应用了大量的采样和搜索技术来改善神经网络本身产生的解

到目前为止,很多工作都有很大的相似之处: 它们都是基于序列到序列模型,这是最初为监督学习而设计的架构。在这些模型中,解仅基于与问题的单一交互而被立即解码。相反,M. Nazari, A. Oroojlooy, L. Snyder, and M. Takác. Reinforcement learning for solving the vehicle routing problem将车辆路径问题(VRP)视为MDP问题。具体来说,他们构建的解是与环境交互做出一系列决策后的结果。这种算法可以专注于环境的演变过程以构建最终解,论文中说算法能处理问题的随机版本。

image.png

image.png
image.png

基于DRL的应用对比分析

基于DRL的应用对比分析
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,176评论 5 469
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,190评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,232评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,953评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,879评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,177评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,626评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,295评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,436评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,365评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,414评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,096评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,685评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,771评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,987评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,438评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,032评论 2 341