
运筹优化与数学建模实战
文章平均质量分 90
一边理论,一边项目实战,扎扎实实干活
无形忍者
运筹优化与数学建模实战,运筹优化算法科普,路径优化,排班排产,供需匹配,智能补货,仓储物流等项目实战。
完整代码清单:https://www.kdocs.cn/l/ckfuXIOK3qM8
展开
-
建模实战|第八期:Benders Decomposition求解设施选址问题(FLP):理论及python代码实战
Benders Decompositions是一种用来解决有特殊结构问题的数学编程技术。它经常被用来解决大规模混合整数规划(mixed integer programming, MIP)问题。其主要思想是,将较复杂的模型分解成为2部分,分别求解2部分都较为容易,通过两部分之间的交互迭代,最终算法得到收敛,得到最优解。Master Problem主问题 - usually harder, MIP problem,一般是关于整数变量y的,是复杂变量的问题。原创 2024-09-10 08:45:00 · 1004 阅读 · 0 评论 -
建模实战|第五期:ortools求解CVRP问题(有容量约束的车辆路径问题)-附python代码
车辆路径问题(VRP)有非常多的变形,这里介绍VRP研究最多的基本问题——有容量约束的车辆路径问题(Capacitated Vehicle Routing Problem,CVRP)。在CVRP问题中,要求由一个车队承担将货物从一个仓库运输到其他预先指定的客户点上的任务。其中,车队的车辆都是同质的,且都只能从仓库出发,服务完客户点后,返回仓库。每个客户点也只能被一辆车访问一次。决策对象是车辆的行驶路线,每辆车在不同的路线上的行驶成本不同,最终的目标是要使得完成这个任务的车队的总成本最小。原创 2024-09-07 10:00:00 · 773 阅读 · 0 评论 -
建模实战|第六期:智能电网的发电调度问题建模和求解-python调用Ortools求解器
世界各地的主要电力公司都会利用数学优化来管理其电网中的能量流。在本例中,我们将使用数学优化解决一个常见的能源行业问题(发电)。我们的目标是如何找出一组最佳的电站,以便在24小时内满足预期的电力需求。原创 2024-09-08 10:00:00 · 1067 阅读 · 0 评论 -
建模实战|第七期:电信公司人员调度优化问题-使用ortools求解器(附python代码)
电信公司经营多个服务中心为其客户服务。每个服务中心都有自己的技术人员,这些技术人员从服务中心派遣出去去完成指定的工作,待所有工作完成后再返回服务中心。技术人员有多种技能和可用的工作能力,在调度范围内不能超过他们的这些技能和可用的工作能力。服务订单/作业具有已知的处理时间、客户指定的启动服务的时间窗口、完成服务的截止日期及其技能要求。根据工作的性质(日常维护或紧急情况)以及与客户的关系(现有的或新的),公司评估工作的重要性并为其分配优先级分数。一项工作最多分配给一名拥有所需技能的技术人员,但该技术人员在调度范原创 2024-09-09 08:45:00 · 1054 阅读 · 0 评论 -
建模实战|第四期:乳制品定价问题建模和求解-python调用gurobi求解器
确定一个国家乳制品的价格和需求,以使这些产品的销售总收入最大化。我们会将问题建模为二次优化问题,并使用gurobi求解器解决它。所有这些产品都是(直接或间接)由该国的原料奶生产业务生产的。本来打算用ortools求解的,发现ortools居然不支持二次规划QP。这个案例我们将学习如何使用数学优化来解决一个常见但关键的。确定什么样的价格和需求能使总收入最大化。生产牛奶、黄油和两种奶酪这几种产品的。每年用来生产牛奶、黄油和两种奶酪的。下表显示了去年乳制品的。原创 2024-09-06 09:00:00 · 1468 阅读 · 0 评论 -
建模实战|第三期:解决背包问题与装箱问题-python调用Ortools求解器
背包问题(Knapsack problem):容器数量是固定的,每个容器有自己的最大容量,而需要分配的物件有各自的价值,我们的目标是让装入容器的物体的总价值最大,并不要求所有物体都装入。装箱问题( Bin-packing problem):容器数量不固定,每个容器容量是相同的,有自己的最大容量,我们的目标是用最少的容器来存放所有的物件。装箱问题也可以分为多种情况,如完全装箱问题、不完全装箱问题、一维装箱问题和二维装箱问题等。原创 2024-09-05 09:00:00 · 2470 阅读 · 0 评论 -
智能优化系列|第二期:模拟退火算法详解及TSP问题实战案例(附python代码)
模拟退火算法的(Simulated Annealing,SA)是一种基于概率的全局寻优方法,已在理论上被证明以概率1 收敛于全局最优解。模拟退火算法模拟物理退火过程,从某一较高初温出发,随着温度的不断下降,以一定概率突跳在全局进行寻优,并最终趋于全局最优,搜索过程中趋于零概率的突跳特性可有效避免算法陷入局部最优。模拟退火算法依赖现有求解规则,是一种对已有规则进行改造的算法,它的解与初始值无关;其核心思想是以1概率接受较优解,以较小概率接受劣质解(Metropolis准则)原创 2024-08-30 13:30:00 · 2633 阅读 · 0 评论 -
建模实战|第二期:快速掌握ortools求解VRPTW数学模型(附python代码)
经过上一篇无形忍者-禁忌搜索算法求解带时间窗的车辆路径规划问题详解(附python代码)的介绍,我们对带时间窗的车辆路径问题(VRPTW问题)已经有了一定的了解。另外经过这一篇无形忍者-OR-Tools-VRPTW带时间窗的车辆路径问题的介绍我们对ortools求解器也有了一定的了解,这篇文章是使用ortools的自带库来解决VRPTW问题的。但是实际工作中遇到的VRPTW问题更复杂,比如约束更多,或者是多目标的。这时候使用ortools中解决车辆路线的自带库会有一定的局限性。原创 2024-09-04 09:00:00 · 1301 阅读 · 0 评论 -
智能优化系列|第六期:VNS变邻域搜索算法求解TSP问题 (附python代码和详细注释)
变邻域搜索算法(VNS)是一种改进的爬山算法。变邻域搜索(VNS)主要是利用多个邻域对当前解进行搜索。它分为两个阶段,即变邻域下降阶段(variable neighborhood descent)-即VND阶段和扰动阶段(shaking phase)-即邻域动作阶段。这两个阶段都会改变搜索的邻域。原创 2024-09-03 09:00:00 · 1479 阅读 · 2 评论 -
智能优化系列|第五期:禁忌搜索算法求解VRPTW问题(带时间窗的车辆路径规划问题)- 附python代码
车辆路径问题(VRP)最早是由 Dantzig 和 Ramser 于1959年首次提出,它是指一定数量的客户,各自有不同数量的货物需求,配送中心向客户提供货物,由一个车队负责分送货物,组织适当的行车路线,目标是使得客户的需求得到满足,并能在一定的约束下,达到诸如路程最短、成本最小、耗费时间最少等目的。原创 2024-09-02 09:00:00 · 2858 阅读 · 3 评论 -
智能优化系列|第四期:也许你和禁忌搜索算法的距离就差这一文(附python案例代码)
禁忌搜索(Tabu Search,简称TS)是属于模拟人类智能的一种优化算法,它模仿了人类的记忆功能,在搜索过程中标记已经找到的局部最优解及求解过程,并于之后的搜索中避开它们(但不是完全杜绝),从而获得更广的搜索区间,有利于寻找到全局最优解。TS算法通过禁忌策略实现记忆功能,通过藐视准则继承LS的强局部搜索能力。各种机制的配合,使得TS一方面具备高局部搜索能力,同时又能防止算法在优化中陷入局部最优。原创 2024-09-01 11:00:00 · 1243 阅读 · 0 评论 -
智能优化系列|第三期:10分钟教你快速get遗传算法(附python案例代码)
遗传算法(Genetic Algorithm), 简称 GA。是一种通过模拟自然进化过程搜索最优解的方法。在遗传算法中,每个个体通常由染色体表示(个体(潜在解)的二进制编码),通过选择、交叉和变异等遗传操作来模拟生物进化过程,以寻找最优解或近似最优解。遗传算法的核心要素有5个:参数编码、初始群体、适应度函数、遗传操作(选择、交叉和变异)、解码。原创 2024-08-31 13:30:00 · 928 阅读 · 0 评论 -
智能优化系列|第一期:自适应大领域搜索算法(ALNS算法)详解与实战案例(附python代码)
Adaptive Large Neighborhood Search (ALNS) 算法是一种元启发式算法,用于解决组合优化问题。ALNS 算法结合了离散优化中的邻域搜索和元启发式算法的特点,能够有效地应对各种复杂的优化问题。ALNS 算法的核心思想自适应大领域搜索的核心思想是:破坏解、修复解、动态调整权重并选择(自适应)。通过设计多组破坏算子和修复算子,扩大解空间搜索范围,对当前解进行改进,表现好的破坏和修复方法相应地得到高分,权重也越高。在每次迭代中,根据以往表现对各个破坏和修复算子进行选择..原创 2024-08-29 11:04:30 · 3930 阅读 · 0 评论 -
建模实战|第一期:员工排班优化调度-Ortools求解器(附python代码)
问题描述下图分别为员工信息(包含每日最短工作时长、最长工作时长、单位小时工作薪资、可工作时间)、每小时最短工作人数,要求满足以下条件:a)如果员工进行工作,则需满足个人工作时长不低于最小值、不高于最大值b)每位员工每天至多工作一个班次,每个班次都是一段连续的时间c)满足每小时最短工作人数原创 2024-08-28 15:12:11 · 761 阅读 · 0 评论 -
运筹优化算法工程师面试题汇总
元启发式算法动态规划(i)分枝定界法—可求纯或混合整数线性规划。(ii)割平面法—可求纯或混合整数线性规划。(iii)隐枚举法—求解“0-1”整数规划:①过滤隐枚举法;②分枝隐枚举法。(iv)匈牙利法—解决指派问题(“0-1”规划特殊情形)。(v)蒙特卡洛法—求解各种类型规划优化方法规划算法。原创 2010-07-31 19:54:00 · 817 阅读 · 2 评论