Mixed-Integer and Constraint Programming Models for the Two-Dimensional Guillotine Cutting Problem
针对二维断头台切割问题,提出了一个约束规划模型和一个混合整数线性规划模型,两者规模均为多项式级,在求解最优性和运行时间上优于现有模型。
The two-dimensional orthogonal guillotine cutting problem considers a single rectangular plate of raw material and a collection of rectangular items to be cut from the plate. Each item is associated with a profit and a demand. The problem searches for a feasible layout of a subset of items on the plate so as to maximize the total profit of selected items. The guillotine constraint restricts feasible layouts to those that can be obtained via guillotine edge-to-edge cuts that run parallel to an edge of the plate. First, we propose a constraint programming (CP) model that is suitable for guillotine cutting with an arbitrary number of stages of alternating horizontal and vertical guillotine cuts. This is an assignment-based model that builds a tree of guillotine cuts using a constant number of rectangular regions, with some regions allocated to items. It treats the entire plate as a primary region and decides on the guillotine cuts required to split the regions recursively until they produce space for the items. The number of regions never exceeds the number of items. To improve the search, the model explores the strength of cumulative scheduling relaxations of the cutting problem. We then translate the CP model into a mixed-integer linear programming (MILP) model. Although it lacks the cumulative scheduling relaxations, its performance is enhanced via a set of valid inequalities. Both our models are polynomial in size. They demonstrate strong computational performance that makes them highly competitive in comparison to the state-of-the-art MILP models, even in application to large-sized instances. Overall, our CP model appears to be stronger than its MILP translation as it solves more instances to optimality and provides a smaller average runtime.