运筹优化

2024/4/12 10:05:16

简述“优化求解器”和相关软件产品

优化求解器(optimization solver)是一种用于求解数学优化问题的软件工具或库。数学优化问题的目标是在给定约束条件下找到一个目标函数的最优解(最大值或最小值)。优化问题在许多领域都有广泛应用,如运筹学、工程、经济…

一些三维装箱问题

三维装箱问题在电商业务中有重要应用, 例如订单打包和商品装车. 下面我们列举一些电商业务中可能用到的三维装箱问题. 基本概念 首先我们把问题分为两类: 判定问题(Decision Problem). 这类问题的答案只有两种: 是 或 否.优化问题(Optimiation Problem). 这类问题一般有一个…

差分进化算法,依旧强势

文章目录 前言DE算法DE代码DE再思考相关阅读 前言 过去两个月,一直在学习线性和整数规划。 今天开始,要回到智能优化算法了。用“回”这个字,主要是因为智能优化算法其实是我的老朋友了,毕竟在读博的大部分时间里,我…

运筹视角下,体系化学习机器学习算法原理的实践和总结

文章目录 引言目标设计目标实践文章汇总经验总结一则预告 引言 上两周总结了我在体系化学习运筹学基础知识方面的个人经验,看过那篇文章的人可能知道,今年我还花了很多时间学习机器学习中各种模型的算法原理。 在工业应用中,机器学习和运筹…

线性规划对偶问题:理论推导和实际应用

文章目录 对偶问题实例对偶问题定义和性质定义性质 对偶问题应用影子价格理论应用 参考文献 对偶问题实例 之前在很多地方,都看到过“对偶”这两个字眼,总觉得这个词很高大上。对偶理论的百度百科中甚至写到:“在线性规划早期发展中最重要的…

基于OR-Tools的装箱问题模型求解(PythonAPI)

装箱问题 一、背包问题(Knapsack problem)1.1 0-1背包模型基于OR-Tools的0-1背包问题求解(PythonAPI)导入pywraplp库数据准备声明MIP求解器初始化决策变量初始化约束条件目标函数调用求解器打印结果 1.2 多重背包问题(…

【运筹优化】元启发式算法详解:禁忌搜索算法(Tabu Search,TS)+ 案例讲解代码实战

文章目录 一、介绍二、The Classical Vehicle Routing Problem 经典的车辆路径问题三、基本概念3.1 历史背景3.2 禁忌搜索3.3 搜索空间和邻域结构3.4 Tabus 禁忌3.5 解禁准则3.6 简单禁忌搜索的模板3.7 终止标准3.8 概率TS和候选列表 四、中级概念4.1 搜索强化4.2 多样化4.3 允…

体系化学习运筹学基础算法的实践和总结

文章目录 引言目标设计目标实践文章汇总经验总结一则预告 引言 眨眼间已经12月了,眼看着2023年马上要过完了。 女朋友最近总说,工作以后感觉时间过的好快。事实上,我也是这么认为的。年纪越大,越会担心35岁危机的降临。所以&…

基于模拟退火算法的TSP问题建模求解(Python)

基于模拟退火算法的TSP问题建模求解(Python) 一、模拟退火算法(Simulated Annealing Algorithm,SAA)工程背景模拟退火算法用于优化问题求解原理 二、旅行商问题(Travelling salesman problem,TS…

【运筹优化】元启发式算法详解:迭代局部搜索算法(Iterated Local Search,ILS)+ 案例讲解代码实现

文章目录 一、介绍二、迭代局部搜索2.1 总体框架2.2 随机重启2.3 在 S* 中搜索2.4 ILS 三、获得高性能3.1 初始解决方案3.2 Perturbation3.2.1 扰动强度3.2.2 自适应扰动3.2.3 更复杂的扰动方案3.2.4 Speed 3.3 接受准则3.4 Local Search3.5 ILS 的全局优化 四、ILS 的精选应用…

线性规划:单纯形算法

考虑线性规划的标准形式(更多介绍参考《线性规划的标准形》): min⁡cTxs.t. Axbx≥0\begin{aligned} \min~ & c^T x\\ \text{s.t.}~ & Axb\\ & x\geq 0 \end{aligned} min s.t. ​cTxAxbx≥0​ 其中 c,x∈Rnc, x \in \mathbb{R}^…

【运筹优化】最短路算法之Floyd算法 + Java代码实现

文章目录 一、Floyd算法简介二、Floyd算法思想2.1 路径矩阵2.2 状态转移方程 三、Floyd算法 java代码四、测试五、优缺点分析 一、Floyd算法简介 Floyd算法又称为插点法,是一种利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法,与Dijkstr…

【运筹优化】拉格朗日松弛 次梯度算法求解整数规划问题 + Java调用Cplex实战

文章目录一、拉格朗日松弛二、次梯度算法三、案例实战一、拉格朗日松弛 当遇到一些很难求解的模型,但又不需要去求解它的精确解,只需要给出一个次优解或者解的上下界,这时便可以考虑采用松弛模型的方法加以求解。 对于一个整数规划问题&…

【(较大规模)作业车间调度JSP】通过OR-Tools的区间变量建模求解的效率对比实验

文章目录 问题描述Python调用OR-Tools建模求解(实验一)1. 声明问题的模型2. 创建区间变量3. 创建约束条件4. 求解模型5. 基于 plotly 展示甘特图 不同场景下的求解效率对比实验二:工件的工序数有差异实验三:消除工件的加工时长差异…

线性规划模型-应用篇

文章目录 模型特点使用技巧工具包和求解器模型线性化 应用实例经验总结 模型特点 上一篇中,详细阐述了线性规划问题和单纯形法的算法原理,本文将着重介绍线性模型在工业场景中的应用。 首先需要说清楚的是,为什么线性模型深受研发人员青睐。…

零售场景梳理和运筹优化工作经验总结

文章目录 亡羊补牢不为迟零售行业规模大卷出零售新高度运筹优化实践经验 亡羊补牢不为迟 由于工作岗位变动的缘故,暂时要告别零售场景了。当初自己没想太多就一头扎进了“新”零售这个场景,迄今为止都没有针对零售场景做一个通盘的梳理,现在…

运筹优化求解迭代过程案例:图解法、单纯形法、单纯形表

运筹优化求解迭代过程案例:图解法、单纯形法、单纯形表 题目来自于清华大学出版的《运筹学》第四版。 一、问题描述 二、图解法 三、单纯形法 第一次迭代: 第二次迭代: 第三次迭代: 下面描述一下第三次迭代的详细过程: 从表达式…

使用Java调用Cplex求解带时间窗的车辆路径问题

使用Java调用Cplex求解VRPTW问题 一、带时间窗车辆路径优化问题(Vehicle Routing Problem with Time Window,VRPTW)1.1 问题描述1.2 模型构建 二、使用Java调用Cplex求解VRPTW问题2.1 完整代码2.2 求解结果 三、求解过程中踩的坑 一、带时间窗…

基于or-tools的人员排班问题建模求解(JavaAPI)

使用Java调用or-tools实现了阿里mindopt求解器的案例(https://opt.aliyun.com/platform/case)人员排班问题。 这里写目录标题 人员排班问题问题描述数学建模编程求解(ortoolsJavaAPI)求解结果 人员排班问题 随着现在产业的发展&…

线性规划技巧: 列生成(Column Generation)

本文从问题出发,来介绍列生成算法。 在制造业中,常常要切割原材料,比如把纸卷、布料、钢管等等,切割成不同长度,从而满足不同产品,或者不同用户的需求。 由于需求长度不同,切割方式有多种。不同…

CPLEX Studio 集成开发环境 (IDE) 介绍

CPLEX Studio 集成开发环境 (IDE) 介绍 参考B站视频:cplex入门到精通 1.CPLEX Studio IDE 实现的功能 IBM ILOG CPLEX Studio IDE 是一个用于数学规划、约束规划以及一般组合优化应用程序的集成开发环境。 它是适用于 OPL(优化编程语言)和…

分支定价算法与分支定界、benders分解算法有什么区别和联系

分支定价算法、分支定界算法和Benders分解算法都是用于求解组合优化问题的算法,但它们在解决问题的方式和应用场景上有一些区别。 1. 分支定价算法(Branch and Price Algorithm) 基本思想: 分支定价算法的基本思想是在求解过程中…

CPLEX Studio OPL项目介绍

参考B站视频:cplex入门到精通 1.理解 OPL 项目 CPLEX Studio 处理 OPL 项目文件(.project)、数据文件(.dat)、模型文件 (.mod)、设置文件(.ops)和运行配置(.oplproject)。 文件类型扩展名作用份数说明模型文件.mod模型存储和数据1~n必须数据文件.dat数据存储0~n非…

【运筹优化】元启发式算法详解:变邻域搜索算法(Variable Neighborhood Search,VNS)+ 案例讲解代码实现

文章目录 一、介绍二、基本方案三、一些扩展四、在VNS内改变配方4.1 基于变邻域的公式空间搜索4.2 变公式搜索 五、原始对偶VNS六、求解混合整数线性规划的VNS七、连续全局优化的可变邻域搜索八、可变邻域编程(VNP):自动编程的VNS九、Discovery Science十、总结十一、案例讲解&…

【论文阅读】(2016)Learning to Branch in Mixed Integer Programming

文章目录 一、摘要二、介绍三、我们的框架概述3.1 数据采集 论文来源:(2016)Learning to Branch in Mixed Integer Programming 作者:Elias B. Khalil 等人 一、摘要 混合整数规划 (MIP) 中的分支策略设计以参数调整和离线实验的…

运筹优化-LP

目录 LP的定义LP的建模过程实例参考文献 这篇文章你将知道什么是LP,LP的建模过程,最后给出一个LP简单实例,并用scipy和ortools两个工具求解。 LP的定义 一般形如 min ⁡ z ∑ j 1 n c j x j s . t . { ∑ j 1 n a i j x j ≤ b i , i 1…

【标准算例数据源】

作业车间、流水车间、柔性作业车间、其它 OR-LIBRARY OR-LIBRARY链接:https://www.sfu.ca/~ssurjano/optimization.html Flexible Job Shop Problem Flexible Job Shop Problem链接:https://people.idsia.ch/~monaldo/fjsp.html flowshop1 Subject: …

基于Or-Tools的线性规划问题求解

画出可行域如图所示: Python调用ortools求解 导入求解器 # 导入(或包含)or - tools线性求解器包装器,这是MIP求解器和线性求解器的接口,如下所示 from ortools.linear_solver import pywraplp声明线性规划求解器 MPsolver is a wrapper …

基于Cplex的人员排班问题建模求解(JavaAPI)

使用Java调用Cplex实现了阿里mindopt求解器的案例(https://opt.aliyun.com/platform/case)人员排班问题。 这里写目录标题 人员排班问题问题描述数学建模编程求解(CplexJavaAPI)求解结果 人员排班问题 随着现在产业的发展&#…