分享好友 最新资讯首页 最新资讯分类 切换频道
运筹优化求解器--工业软件的核心引擎
2024-12-28 02:06

运筹优化求解器有什么用?

运筹优化求解器--工业软件的核心引擎

其实,运筹学不仅仅存在于我们的生活中,更加被广泛应用在企业中。例如生产和制造系统中的排产排程、生产调度;交通工具和乘务的调度排班、路径规划;电力系统中潮流优化“等等这些现代工业生产中的应用场景,往往都需要优化求解器来进行底层的算法支持。如下图中所示:

这里我们仅以手机的制造过程为例,一部手机有上千个零件构成,每个零件都在指定的供应商处生产,例如手机屏幕,摄像头,电池,充电器等,每个零件都由不同的工厂来生产,完成所有零件的生产后会把它们运送到最终的组装厂拼装成一台成品的手机。那么,如何合理地安排每个工厂在什么时候该生产多少零件是一个需要决策的重要问题。这个问题的核心在于要考虑尽量满足订单的需求的前提下降低库存水位或周转率,同时还要考虑物料、产能和运输的约束等等,使得最终的生产成本最低。以上借助了手机生产的例子,让大家了解运筹学是如何解决工业制造中的问题。总结起来在企业中面对实际的整数规划问题,我们一般是采用两步走的思路:


数学建模,把具体的实际问题抽象为通用的数学优化问题

算法求解,针对这些优化问题设计高效的算法来求解。

数学建模+算法求解是运筹学解决实际问题的基本步骤,这里,我更愿意将算法类比作汽车引擎,它平常是不被看到的,但是却驱动着车子的前进。同时,这个算法引擎是可以通用的,只要数学模型和原理一致,算法引擎可以应用于不同的行业。

当我们针对实际业务建立了优化模型之后,便可以将建立好的模型直接导入到求解器中,这时候,求解器会智能地选择最适合该模型的算法,给出最优解或可行解。如下图所示:

求解器通常集成了大多数目前最顶级的算法包,并建立了API,可以让算法工程师非常方便的调用。求解器是经过长期打磨的软件产品,其内部有很多加速求解的小技巧,对于一般的整数规划问题而言往往有着不错的效果。这样,我们就可以将更多的精力放在数学建模上,而不用操心求解器内部具体算法的实现,我们也可以把求解器看作是一个有神奇魔法的“黑匣子”。


1 运筹优化求解器国内外发展现状

商业优化求解器的传统三巨头:Gurobi, Cplex和 Xpress,前两家是美国公司,后者成立于英国爱丁堡大学,又被美国公司FICO收购。商业求解器三大厂凭借多年的算法积累和商业经验,在国际市场上占据了超过90%的份额。


开源求解器目前主要有两家:SCIP和HiGHS,SCIP 是德国柏林的ZIB研究院,花了近20年时间及好几代的PhD,开发了开源的求解器 SCIP。HiGHS 目前是爱丁堡大学Julian Hall 教授团队开发的开源求解器,目前是开源求解器中性能最好的。各大求解器在混合整数线性规划问题中的性能排名如下所示:

求解器是数学,运筹学,计算机和软件工程诸多学科的综合运用的结果,这导致求解器的研发是一个大的系统工程,长期稳定的高质量技术投入是研发求解器的必要条件。而欧美等国在求解器领域深耕几十年所形成的技术壁垒,使得他们在求解器研发领域始终保持领先地位。


当然可喜的是近几年来国内对求解器的研发也越来越重视,杉数科技有 COPT,阿里达摩院有 MindOpt, 华为有 OptVerse (天筹),例如 COPT 求解器 目前已经在benchmark测试榜单上 线性规划问题取得第一名,混合整数线性规划取得第二名,为国产求解器的发展做出了卓越的贡献。


2 运筹优化求解器开发技术

运筹优化求解器涉及到的技术非常多,这里主要以线性规划和混合整数线性规划为例子,如下图中所示:

线性规划包括


模型输入模块主要负责各类模型文件的读写,各类不同编程语言的API支持和各类建模工具

预求解(Presolve),预求解可以在模型求解之前通过一些技巧将线性规划模型冗余的变量或者冗余的约束删掉,使得模型变得更好,以便于后续求解的加速

求解,主要是针对稀疏矩阵的分解算法包括 LU 分解算法和 Cholesky 分解算法

单纯形算法,主要包括寻找初始可行解,不可行问题的判断,防止循环的摄动算法等

混合整数线性规划包括


模型输入模块主要负责各类模型文件的读写,各类不同编程语言的API支持和各类建模工具

预求解(Presolve),预求解可以在模型求解之前通过一些技巧将线性规划模型冗余的变量或者冗余的约束删掉,使得模型变得更好,以便于后续求解的加速

初始的LP求解,这块是依赖于LP求解模块

割平面的生成,主要负责生成割平面,主流的有十几种割平面

启发式算法,主要是一些数学启发式算法来快速获取可行解

分支定界,主要是一些节点选择,分支选择,reduced cost fixing,对称性处理等模块。


3 优化求解器开发的难点

优化求解器是一个综合运用 软件工程和运筹优化的产品,兼具良好工程能力和优化理论能力的人较少

优化求解器是一个需要长期稳定投入的产品,非常依赖于算法人员的长期经验

很多实用的优化算法并没有代码,甚至说连算法流程也没有公开,像Gurobi里边的算法大多都没有发表paper,连专利都不写,毕竟是涉及商业机密的事情。后来的开发者只能从零开始,大大增加了难度

学术界大量的paper是在实际中没有用处,Gurobi的研发人员曾说他们每年会复现100篇paper的算法真正可以对求解器有提升的不超过3个算法


综上所述,运筹优化求解器是很多应用问题的技术底座。在全球范围内,商业求解器的市场主导地位主要被 Gurobi、Cplex 和 Xpress 三大巨头垄断。然而,国内也涌现出一些颇具潜力的求解器,如 COPT,MindOpt 和 OptVerse 等


然而,我们也直面了优化求解器开发的一些难点。这个领域需要综合软件工程和运筹优化的专业知识,而且长期稳定的高质量技术投入是不可或缺的。算法人员的经验和长期的积累成为求解器开发的关键因素。同时,开发者面临着从零开始的挑战,因为许多优秀的优化算法并没有公开的代码和流程,增加了开发的难度。


总体而言,运筹优化求解器在解决实际问题中发挥着不可替代的作用,而在其背后的技术和开发过程中却存在着一系列挑战。希望未来国内的优化求解器研发能够不断取得新的突破,为我国在这一领域的发展贡献更多力量。



上一条:Gurobi版本8功能新亮点

最新文章
【E1搜狗手机输入法下载】vivo E1搜狗手机输入法12.1.1免费下载
搜狗输入法,拥有超大中文词库,输入更加精准,智能。搜狗智能旺仔带你用表达,斗图,妙语,输入更加有趣。******特色功能******
排列三2005年单期跳号走势图
功能类排列三显示遗漏:显示/隐藏遗漏值,遗漏值是指自上期开出到本期间隔的期数。排列三遗漏分层:是将当前遗漏值用柱状图形标
走!毛爸带你买豪车!!超低价一次能买俩的那种!!!| 圣诞礼物3
大家好哇,我是洋芋丝~圣诞玩具周,今日是第二弹~想看全品领免单福利的朋友,戳链接▼昨天的2个玩具戳链接▼今天欢迎大家来到「
啵乐物种起源漫画app下载
啵乐物种起源漫画app下载是一款备受欢迎的漫画平台,拥有海量的漫画资源和强大的搜索功能,能够满足用户对不同类型漫画的需求。
浅析做好电商网站外链需要具备哪些条件
对于优化网站来说,不管是内链也好还是外链也罢,二者都是缺一不可的,尤其是网站的外链,外部链接一直
桃江卫生间漏水维修电话〈免费上门〉桃江县卫生间渗水维修
不砸砖、不砸墙;免砸砖防水补漏技术,2小时快速解决漏水问题,超长保修期。漏水维修服务项目:楼顶裂缝漏水、阳台漏水、天棚漏水、
写作神器
以下是一些写作神器:1. **土罗罗**:这是一个专业的在线剧本创作、管理、交易平台,具备多人协作、著作权登记、全平台同步、一
淘大象查排名(淘宝淘大象)
随着电商行业的蓬勃发展,越来越多的商家纷纷涌入这个市场,竞争日益激烈,为了在众多商家中脱颖而出,我们需要善于运用各种工具
淘宝中被禁止的词汇有什么?有什么处罚?
淘宝商家在设置商品信息的时候,需要使用一系列的关键词描述商品,让商品更容易获得消费者的信赖。但并不是所有的关键词都可以使
如何提升演示效果,探索文档转PPT助手AI的无限可能
```html在数字化时代,信息的呈现方式正在快速演变。无论是企业会议,还是学术发布,演示文稿的重要性愈加突出。那么,如何才能