提问人:Ignacio Aristimuño 提问时间:9/29/2023 更新时间:9/29/2023 访问量:35
可变清洁时间的约束公式 - MILP 优化
Constraint formulation for variable cleaning times - MILP optimization
问:
我有一个混合整数线性问题,我想安排不同产品(P)的生产。
每个产品一次可以生产一次,每个产品之间,必须安排一定的时间来清洁生产线。时间取决于之前生产了哪种产品,以及之后将生产哪种产品。例如:如果我先生产青苹果汁,然后生产红苹果汁,则清洁时间设置为 20 分钟。但是,如果葡萄汁是在青苹果汁之后生产的,则时间增加到 35 分钟。
我正在考虑以下变量对生产进行建模:
X_{p, d, h} is a binary variable that equals to 1 if the product p is produced in the day d at the hour h, and 0 otherwise.
c_{d, h} is a binary variable that equals to 1 if the line is being cleaned in the day d at the hour h, and 0 otherwise.
y_{d, h} is a binary variable that equals to 1 if the line not being used (no production nor cleaning) in the day d at the hour h, and 0 otherwise.
我还有一个矩阵 C,其中包含每对产品之间的清洁时间。
我想为清洁部分创建约束。如果生产了任何产品,则必须在矩阵 C 中指定的时间内进行清洁(不间断),这取决于之前生产的产品以及之后生产的产品。
我必须通过添加这些约束来制定强制开始清洁:
c_{d,h} >= x_{p,d,h-1} - x_{p,d,h}
x_{p,d,h} + c_{d,h} + y{d,h} = 1
然而,这只会产生一个清洁块,并且必须有与矩阵 C 一样多的块,这取决于之前生产的产品和之后生产的产品。关于如何解决这个问题的任何想法?
答: 暂无答案
评论