接上一篇文章,在了解生产调度问题的背景和基本概念之后,我想先从比较基础的 flowshop和 jobshop 数学模型入手,理解实际调度过程中的问题求解思路。这一篇文章主要面向 flowshop 问题进行数学建模,对于这类比较经典的问题,其实已经有很多现成的模型和求解思路了。我也在网上进行了搜索,看到了3种模型形式,本篇文章将进行列举及描述。
问题描述
n 个工件在 m 台机器上进行流水加工,每个工件在机器上的加工顺序相同。并且每个工件在同一台机器上只加工一次,每台机器在某个时刻只能加工一个工件。各工件在各机器上的加工时间和准备时间已知,求某个调度方案使得调度目标最优。
模型形式1
来自chatgpt的回复。
变量:
·pij:作业 i 在机器 j 上的加工时间。
·决策变量xijk:0-1变量,表示作业 i 是否在时间段 k 被安排在机器 j 上。
·Ci:作业 i 的完工时间。
·Cmax:最大完工时间。
目标函数:
Minimize Cmax
约束条件:
1、每个作业在每台机器上只能被加工一次:
2、每台机器在任意时间只能加工一个作业: