本人8年数学建模竞赛经验,历史获奖率百分之百。团队成员都是拿过全国一等奖的硕博,有需要数模竞赛帮助的可以私信我

本体是典型的运筹学最优化赛题,设计优化模型和求解算法选取

完整资源:https://mbd.pub/o/bread/mbd-YZWcmptwZA==

output/2026年五一赛B/
├── 阶段1_赛题解析.md ← 赛题结构化分析
├── 阶段2_思路分析.md ← 建模方案论证
├── code/ ← Python求解代码(7个文件)
│ ├── data_config.py ← 数据配置(工序/设备/距离参数)
│ ├── scheduler_cpsat.py ← CP-SAT约束规划求解器
│ ├── problem1_solve.py ← 问题1:单班组单车间
│ ├── problem2_solve.py ← 问题2:单班组多车间
│ ├── problem3_solve.py ← 问题3:双班组多车间
│ ├── problem4_solve.py ← 问题4:预算约束优化
│ └── generate_figures.py ← 高质量图表生成
├── figures/ ← 可视化图表(13张)
│ ├── fig1_工序流程图.png ← 五车间工序流程
│ ├── fig2_工序耗时对比.png ← 各工序时长柱状图
│ ├── fig3_设备工作量分析.png ← 设备负载分析
│ ├── fig4_问题1甘特图.png ← 问题1调度甘特图
│ ├── fig5_距离热力图.png ← 车间距离矩阵热力图
│ ├── fig6_运输时间矩阵.png ← 运输时间可视化
│ ├── fig7_关键路径对比.png ← 各问题关键路径对比
│ ├── fig8_makespan对比.png ← 四个问题完工时间对比
│ ├── fig9_设备购置分析.png ← 问题4设备购置方案
│ ├── fig10_瓶颈设备时间线.png ← 瓶颈设备占用时间线
│ ├── fig11_空间布局图.png ← 车间空间布局
│ ├── fig12_灵敏度分析.png ← 参数灵敏度
│ └── fig13_设备利用率雷达图.png ← 设备利用率雷达图
└── paper/ ← 论文
└── B题论文.pdf ← PDF(25页)

赛题解析 — 2026年五一数学建模竞赛 B题

赛题信息

  • 竞赛:2026年第二十三届五一数学建模竞赛
  • 题目:B题 多工序协同作业问题
  • 赛题文件夹:2026年五一赛B
  • 附件:B-附件.xlsx(含工序流程表、班组配置表、车间距离表)

赛题背景

某工业制造系统需对 A、B、C、D、E 五个车间开展集中整修任务。每个车间的整修任务由若干工序组成,不同工序需占用相应类型设备完成。部分工序需要两类设备共同参与。设备在不同车间之间转运存在运输时间成本。

关键假设

  1. 各车间内工序顺序固定,必须严格按给定顺序依次执行
  2. 若某工序需两类设备共同完成,两类设备都需完成该工序对应的工程量,两类设备都完成后该工序才算完成(不考虑先后顺序和等待时间)
  3. 各班组内设备数量固定,设备可重复使用,但同一时刻每台设备只能服务于一道工序
  4. 同一台设备在同一车间不同工序间转移时间忽略;跨车间转移时间不可忽略
  5. 起始时间从 00:00:00 开始,持续工作时间精确到秒且向上取整

数据来源

工序流程表

车间 工序 设备及效率 工程量 备注
A A1.缺陷填补 精密灌装机200m³/h + 自动化输送臂250m³/h 300m³
A A2.表面整平 高速抛光机100m³/h + 工业清洗机250m³/h 500m³
A A3.强度检测 自动传感多功能机100m³/h 500m³
B B1.表面清理 工业清洗机100m³/h 120m³
B B2.垫层构筑 精密灌装机200m³/h + 自动化输送臂300m³/h 1500m³
B B3.表面密封 精密灌装机350m³/h 360m³
B B4.表面整平 高速抛光机120m³/h + 自动传感多功能机100m³/h 360m³
C C1.旧涂层剥离 工业清洗机250m³/h + 自动化输送臂250m³/h 720m³
C C2.基底填充 精密灌装机350m³/h 720m³
C C3.密封覆盖 精密灌装机200m³/h + 自动化输送臂250m³/h 360m³ C3-C5重复3遍
C C4.表面研磨 高速抛光机120m³/h + 工业清洗机100m³/h 400m³ C3-C5重复3遍
C C5.质量检测 自动传感多功能机100m³/h 400m³ C3-C5重复3遍
D D1.碎屑清理 工业清洗机250m³/h 600m³
D D2.基底固化 精密灌装机200m³/h + 自动化输送臂300m³/h 800m³
D D3.表面密封 精密灌装机350m³/h 450m³
D D4.表面整平 高速抛光机120m³/h + 自动传感多功能机300m³/h 1500m³
D D5.承载检测 自动传感多功能机300m³/h 1500m³
D D6.边缘修整 高速抛光机100m³/h 700m³
E E1.基础处理 工业清洗机250m³/h 1000m³
E E2.表面密封 精密灌装机350m³/h 600m³
E E3.稳定性检测 自动传感多功能机300m³/h + 工业清洗机100m³/h 600m³

班组配置表

设备名称 班组1数量 班组2数量 移动速度 设备单价
自动化输送臂 4台 4台 2 m/s 50000元
工业清洗机 5台 5台 2 m/s 40000元
精密灌装机 5台 5台 2 m/s 35000元
自动传感多功能机 1台 1台 2 m/s 80000元
高速抛光机 1台 1台 2 m/s 75000元

车间距离表

起点 终点 距离
班组1 A 400m
班组1 B 620m
班组1 C 460m
班组1 D 710m
班组1 E 400m
班组2 A 500m
班组2 B 460m
班组2 C 620m
班组2 D 680m
班组2 E 550m
A B 1020m
A C 1050m
A D 900m
A E 1400m
B C 1100m
B D 1630m
B E 720m
C D 520m
C E 850m
D E 1030m

子问题结构化列表

问题1:单班组单车间调度(基础问题)

  • 条件:班组1独立完成A车间全部整修任务
  • 目标:最短完成时长
  • 输出:表1(设备编号、起始时间、结束时间、持续工作时间、工序编号)
  • 特点:仅涉及A车间3道工序,无跨车间运输,是后续问题的基础

问题2:单班组多车间调度(扩展问题)

  • 条件:仅使用班组1设备,完成A/B/C/D/E五个车间
  • 目标:最短完成时长
  • 输出:表2(同表1格式)
  • 特点:引入跨车间运输时间,需要优化车间作业顺序和设备分配

问题3:双班组多车间调度(协同问题)

  • 条件:使用班组1和班组2的全部设备,完成五个车间
  • 目标:最短完成时长
  • 输出:表3(增加所属班组列)
  • 特点:两个班组协同,设备资源翻倍,需要合理分配车间给班组

问题4:预算约束下的设备购置与调度优化(综合问题)

  • 条件:追加500000元预算购置设备 + 双班组
  • 目标:在预算约束下使完成时间最短
  • 输出:表4(调度方案)+ 表5(设备购买情况)
  • 特点:设备购置决策 + 调度优化的联合优化问题

问题间逻辑关系

问题1(单班组单车间)→ 问题2(单班组多车间)→ 问题3(双班组多车间)→ 问题4(预算优化+双班组)
       基础模型              引入运输时间            引入协同调度           引入资源优化

问题逐步递进,每一步在前一步基础上增加约束或决策维度。

完整解题思路分析

一、问题本质与整体建模思路

1.1 问题本质

本题是一个带资源约束的多项目调度问题 (Resource-Constrained Multi-Project Scheduling Problem, RCMPSP),属于经典的作业车间调度问题(JSSP)的扩展变体。

核心特征:

  • 5个车间(项目),每个车间有3~6道工序(作业)
  • 工序间有严格先后依赖(同车间内顺序固定)
  • 5类设备是可复用的共享资源,同一时刻每台设备只能服务一道工序
  • 部分工序需要两类设备协同完成(取两类设备完成时间的max)
  • 多台同类设备可并行加速同一工序(总效率 = 单台效率 × 投入台数)
  • 跨车间有运输时间(距离 ÷ 速度),同车间内无运输时间
  • 目标:最小化 makespan(所有任务完成的最晚时间)

1.2 整体技术路线

问题1(解析计算)→ 问题2(CP-SAT精确求解)→ 问题3(CP-SAT扩展)→ 问题4(枚举+CP-SAT)
  • 论文建模:使用 MILP 数学公式严格表达
  • 实际求解:使用 Google OR-Tools CP-SAT 约束规划求解器
  • 结果展示:甘特图 + 调度表

二、数据预处理与关键参数

2.1 工序耗时计算公式

单台设备完成工序的时间(秒):

t = ceil(工程量 / 效率 × 3600)

若投入 k 台同类设备并行:

t = ceil(工程量 / (效率 × k) × 3600)

若工序需要两类设备协同:

t_工序 = max(t_设备类型1, t_设备类型2)

2.2 运输时间计算

运输时间(s) = 距离(m) / 速度(m/s) = 距离 / 2

关键运输时间表:

路径 距离 运输时间(s)
班组1→A 400m 200s
班组1→B 620m 310s
班组1→C 460m 230s
班组1→D 710m 355s
班组1→E 400m 200s
A→B 1020m 510s
A→C 1050m 525s
A→D 900m 450s
A→E 1400m 700s
B→C 1100m 550s
B→D 1630m 815s
B→E 720m 360s
C→D 520m 260s
C→E 850m 425s
D→E 1030m 515s

2.3 各工序单台设备耗时(秒)

工序 设备1 耗时1(s) 设备2 耗时2(s) 工序耗时(s)
A1 精密灌装机(200) 5400 自动化输送臂(250) 4320 5400
A2 高速抛光机(100) 18000 工业清洗机(250) 7200 18000
A3 自动传感多功能机(100) 18000 - - 18000
B1 工业清洗机(100) 4320 - - 4320
B2 精密灌装机(200) 27000 自动化输送臂(300) 18000 27000
B3 精密灌装机(350) 3703 - - 3703
B4 高速抛光机(120) 10800 自动传感多功能机(100) 12960 12960
C1 工业清洗机(250) 10368 自动化输送臂(250) 10368 10368
C2 精密灌装机(350) 7406 - - 7406
C3 精密灌装机(200) 6480 自动化输送臂(250) 5184 6480
C4 高速抛光机(120) 12000 工业清洗机(100) 14400 14400
C5 自动传感多功能机(100) 14400 - - 14400
D1 工业清洗机(250) 8640 - - 8640
D2 精密灌装机(200) 14400 自动化输送臂(300) 9600 14400
D3 精密灌装机(350) 4629 - - 4629
D4 高速抛光机(120) 45000 自动传感多功能机(300) 18000 45000
D5 自动传感多功能机(300) 18000 - - 18000
D6 高速抛光机(100) 25200 - - 25200
E1 工业清洗机(250) 14400 - - 14400
E2 精密灌装机(350) 6172 - - 6172
E3 自动传感多功能机(300) 7200 工业清洗机(100) 21600 21600

注:C3-C5需重复3遍,实际C车间工序为 C1→C2→C3→C4→C5→C3→C4→C5→C3→C4→C5

2.4 设备资源汇总

设备类型 班组1 班组2 单价(元) 瓶颈程度
自动化输送臂 4台 4台 50000
工业清洗机 5台 5台 40000
精密灌装机 5台 5台 35000
自动传感多功能机 1台 1台 80000 极高
高速抛光机 1台 1台 75000 极高

2.5 瓶颈分析

高速抛光机使用工序:A2(18000s), B4(10800s), C4×3(12000s×3), D4(45000s), D6(25200s)

  • 单台总工作量:18000+10800+36000+45000+25200 = 135000s = 37.5h

自动传感多功能机使用工序:A3(18000s), B4(12960s), C5×3(14400s×3), D4(18000s), D5(18000s), E3(7200s)

  • 单台总工作量:18000+12960+43200+18000+18000+7200 = 117360s = 32.6h

这两类设备是绝对瓶颈,决定了整体 makespan 的下界。


三、各问题详细建模方案

3.1 问题1:班组1完成A车间

建模思路

A车间工序 A1→A2→A3 严格顺序执行,且三道工序使用的设备类型完全不重叠:

  • A1: 精密灌装机 + 自动化输送臂
  • A2: 高速抛光机 + 工业清洗机
  • A3: 自动传感多功能机

因此不存在设备冲突,问题简化为:对每道工序分配最优数量的设备,使各工序耗时最短。

求解策略
  1. 所有设备从班组1出发到A车间,运输时间 = 200s
  2. 对每道工序投入最大数量的可用设备
  3. 总时间 = 运输时间 + sum(各工序耗时)
关键计算
  • A1: 用5台精密灌装机 → ceil(5400/5)=1080s; 用4台自动化输送臂 → ceil(4320/4)=1080s → A1=1080s
  • A2: 用1台高速抛光机 → 18000s; 用5台工业清洗机 → ceil(7200/5)=1440s → A2=18000s
  • A3: 用1台自动传感多功能机 → 18000s → A3=18000s
  • 总时间 = 200 + 1080 + 18000 + 18000 = 37280s

3.2 问题2:班组1完成五个车间

建模思路(MILP数学模型)

决策变量:

  • xi,j,kx_{i,j,k}xi,j,k ∈ {0,1}:设备k是否被分配给工序(i,j)(车间i的第j道工序)
  • si,js_{i,j}si,j ≥ 0:工序(i,j)的开始时间
  • CmaxC_{max}Cmax:makespan(最大完成时间)

目标函数:
min⁡Cmax\min C_{max}minCmax

约束条件:

  1. 工序顺序约束(同车间内):
    si,j+1≥si,j+pi,j∀i,∀js_{i,j+1} \geq s_{i,j} + p_{i,j} \quad \forall i, \forall jsi,j+1si,j+pi,ji,j

  2. 工序耗时计算:
    pi,j=max⁡t∈Ti,j⌈Qi,jri,j,t⋅∑k∈Ktxi,j,k×3600⌉p_{i,j} = \max_{t \in T_{i,j}} \left\lceil \frac{Q_{i,j}}{r_{i,j,t} \cdot \sum_{k \in K_t} x_{i,j,k}} \times 3600 \right\rceilpi,j=tTi,jmaxri,j,tkKtxi,j,kQi,j×3600

  3. 设备不重叠约束(同一台设备不能同时服务两道工序):
    si1,j1+pi1,j1+travel(i1,i2)≤si2,j2或si2,j2+pi2,j2+travel(i2,i1)≤si1,j1s_{i_1,j_1} + p_{i_1,j_1} + \text{travel}(i_1, i_2) \leq s_{i_2,j_2} \quad \text{或} \quad s_{i_2,j_2} + p_{i_2,j_2} + \text{travel}(i_2, i_1) \leq s_{i_1,j_1}si1,j1+pi1,j1+travel(i1,i2)si2,j2si2,j2+pi2,j2+travel(i2,i1)si1,j1
    (当设备k同时分配给工序(i₁,j₁)和(i₂,j₂)时)

  4. 运输时间约束:
    travel(i1,i2)=d(i1,i2)v(i1≠i2)\text{travel}(i_1, i_2) = \frac{d(i_1, i_2)}{v} \quad (i_1 \neq i_2)travel(i1,i2)=vd(i1,i2)(i1=i2)

  5. 设备初始运输约束:
    si,j≥d(班组1,i)v(设备首次使用时)s_{i,j} \geq \frac{d(\text{班组1}, i)}{v} \quad \text{(设备首次使用时)}si,jvd(班组1,i)(设备首次使用时)

  6. makespan约束:
    Cmax≥si,j+pi,j∀i,∀jC_{max} \geq s_{i,j} + p_{i,j} \quad \forall i, \forall jCmaxsi,j+pi,ji,j

求解策略(CP-SAT实现)

使用 OR-Tools CP-SAT 求解器,建模要素:

  1. 为每台设备创建 interval 变量序列
  2. 使用 AddNoOverlap 约束确保设备不冲突
  3. 使用 optional interval 处理设备分配决策
  4. 运输时间作为设备连续任务间的最小间隔

关键优化策略:

  • 由于瓶颈设备(高速抛光机、自动传感多功能机)各仅1台,优先安排这些设备的工序顺序
  • 非瓶颈设备(精密灌装机5台、工业清洗机5台)有充足冗余,分配相对灵活
  • 车间作业顺序对瓶颈设备的利用率影响最大

3.3 问题3:双班组完成五个车间

建模思路

在问题2模型基础上扩展:

  • 设备集合从班组1的16台扩展为班组1+2的32台
  • 不同班组设备的初始位置不同(运输时间不同)
  • 允许同一车间由两个班组的设备协同完成
关键差异
  • 班组2的自动传感多功能机和高速抛光机各1台,瓶颈设备翻倍
  • 理论 makespan 下界约为单班组的一半
  • 需要合理分配车间给两个班组以平衡负载
求解策略
  • 统一建模,32台设备自由分配
  • CP-SAT 自动寻找最优分配方案
  • 可先用启发式(按工作量均分车间)获得初始解加速求解

3.4 问题4:预算约束下设备购置+调度

建模思路

两阶段优化:

  1. 第一阶段(设备购置决策):确定各类设备的购买数量
  2. 第二阶段(调度优化):基于新设备配置求解最优调度
预算约束

∑tnt⋅ct≤500000\sum_{t} n_t \cdot c_t \leq 500000tntct500000

其中 ntn_tnt 为购买设备t的数量,ctc_tct 为单价。

求解策略:枚举+CP-SAT

瓶颈分析驱动的购置策略:

  • 高速抛光机(75000元):总工作量135000s,增加1台可显著降低makespan
  • 自动传感多功能机(80000元):总工作量117360s,增加1台效果显著
  • 其他设备已有4~5台,增加边际效益低

枚举空间估算:

  • 高速抛光机:06台(0450000元)
  • 自动传感多功能机:06台(0480000元)
  • 其他设备:0~若干台
  • 约束:总费用≤500000

实际有效组合约几十种,对每种组合运行CP-SAT求解,取makespan最小的方案。


Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐