For Modeling sequence-dependent setup time/cost across periods use the following approach in Constraint Programming Optimizer (e.g., IBM CP Optimizer):
Use one sequence variable per machine across all periods.
Define optional interval variables for each lot (machine-product-period).
Apply NoOverlap with a transition matrix for setup times/costs.
Handle cross-period setups:
Use typeOfNext/typeOfPrevious to track product transitions.
Add dummy intervals for empty periods, skipping them for setups.Include setup costs in the objective via the transition matrix.
------------------------------
Natalie Elijah
------------------------------
Original Message:
Sent: Tue April 15, 2025 05:52 PM
From: Mateus Martin
Subject: Constraint Programming: handling setups between last product (period t-1) and first product (period t' >= t)"
Hello everyone!
I am working on a problem that combines lot-sizing decisions (machine, product, period) with scheduling (sequence-dependent setups). I use interval variables to represent the production time window for each lot, defined by the machine-product-period triple. I also use sequence variables for each machine-period pair, applying NoOverlap to prevent temporal overlap of lots and to model both the setup times and setup costs (in the objective function), which are sequence-dependent.
However, I am struggling to model a specific aspect: there is a setup time/cost between the last product produced in the previous period (t-1) and the first product produced in the current period (t). This setup is performed immediately before the production of the first item in the current period (t). If there is no production in the current period (t), this setup should instead occur before the first product produced in the next period (t' > t) that has production.
How can I model this phenomenon using the Constraint Programming Optimizer? Any suggestions or examples would be greatly appreciated!
Thank you in advance!
------------------------------
Mateus Martin
------------------------------