• No results found

upper bound must be checked whenever we look for the highest multiplicity that guarantees the optimality of a knapsack solution for SP 2.

A Family of Valid Inequalities

When the demand of an item is odd, in any integer solution for (4.24)-(4.29), there will be at least one pattern k of some multiplicity n such that n × aitemsikn is odd.

However, when the integrality constraints are relaxed in (4.24)-(4.29), the item demands with odd values may be satisfied in (4.26) through a linear combination of coefficients n×aitemsikn with even values. Let Coddbe the set of cutting patterns k of multiplicity n in (4.24)-(4.29) such that n × aitemsikn is odd. The following inequalities are valid for (4.24)-(4.29)

X

Codd

λkn≥ 1, ∀i : bi mod 2 = 1. (4.40)

Constraints (4.40) shall be enforced in the LP-relaxation of (4.24)-(4.29) for each item with a demand that is odd. As we will see in section 4.5, these constraints effectively cut infeasible solutions, leading to a tighter formulation. Even when we enforce constraints (4.40), the knapsack problems related to SP 2 remain solvable in O(mW ) time by using a dynamic programming procedure.

Forcing the item demands to be satisfied through a combination of appropriate n × aitemsikn terms is an important issue that will be explored below.

4.4 A CP Model

In this section, we describe a CP model that can be used to derive both lower bounds for the PMP, and valid inequalities for SP 1 in model (4.24)-(4.29). The elements of the model are presented in section 7.3.2. The procedure for computing lower bounds for the PMP using this CP model is described in section 4.4.2, and the valid inequalities for the SP 1 are discussed in section 4.4.3.

66 4. New Lower Bounds based on CG and CP for the PMP

4.4.1 The Model

Let X be the set of multiplicities considered in a given combination, and let Xj,

∀j ∈ {1, . . . , z}, denote the value of the jth multiplicity in X. We assume the multiplicities to be ordered in nondecreasing order, except for the last ones which may be 0 if less than z multiplicities are considered. With this scheme, we know that X1 is the first multiplicity in the combination, X2 the second, and so on. The constraints of our CP model state as follows:

Xj ≤ Xj+1∨ Xj+1 = 0, ∀j ∈ {1, . . . , z − 1}, (4.41)

Constraints (4.41) and (4.42) define the ordering of the Xj variables. Con-straints (4.43) state that the combination X of multiplicities must be such that each item demand can be expressed as a linear integer combination of the corre-sponding Xj, ∀j ∈ {1, . . . , z}. The variables Aij are general integer variables that represent the number of times a multiplicity j should be used so as to recover the value of the demand bi. A valid upper bound on the Aij variables is

jL li

k

, ∀j. Con-straint (4.44) forces the use of exactly zCSP rolls, i.e., the sum of all the selected multiplicities, which represents the total number of rolls used, must be equal to zCSP. We also incorporate in the CP model the bounds on the amultnp coefficients

4.4. A CP Model 67

and the constraints (4.37) and (4.38) described in section 4.3.2. Given that the values of ub(amultnp ) are independent of p, constraints (4.45) hold. The counting ex-pression count(X, n) accounts for the number of elements in X that are equal to n.

This expression is also used to express constraints (4.37) and (4.38), respectively, through constraints (4.46) and (4.47).

By definition, the domain of the Xj variables is in [1, nmax] for j ∈ {1, . . . , z}, and in [0, nmax] for ∀j ∈ {z + 1, . . . , nmax}. To improve the solution of the model, we may reduce the domain of these variables by taking into account constraints (4.37). For example, given that the items with the smallest demand will only appear on patterns with a multiplicity smaller than or equal to that demand, the first multiplicity X1 will never be greater than this smallest demand, and hence, we have X1 ≤ min

Our CP model can be seen as a relaxation of the compact model (4.1)-(4.8) with additional constraints. The demand constraints (4.2) and (4.3) are enforced in our CP model, while the remaining constraints of (4.1)-(4.8) are relaxed. In addition, we enforce the bounds on the amultnp coefficients together with constraints (4.37) and (4.38) described above. These constraints are easily enforced in the CP model, while integrating them in (4.1)-(4.8)would increase the size of the model, leading to a pseudo-polynomial number of variables and constraints. In particular, to model exactly constraints (4.37) in (4.1)-(4.8), we would need to define additional binary variables ykn (one for each multiplicity n up to nmax) that take the value 1 only if pattern k is used n times. The following constraints would complete the model:

zk = nykn, ∀k ∈ {1, . . . , zCSP}, ∀n ∈ {1, . . . , nmax},

68 4. New Lower Bounds based on CG and CP for the PMP

Constraints (4.43) may be linked to the demand constraints (4.2), while the vari-ables Aij may be interpreted as the number of times an item i is considered in the jthpattern of multiplicity Xj. However, note that we relax the knapsack constraints (4.5) of (4.1)-(4.8), which are the strongest constraints on the assignment of items to rolls. That allows us to focus on the relation between the values of the item demands and the combination of multiplicities, and to apply different procedures to reduce the number of constraints (4.43) and variables Aij. First, we only need to consider in (4.43) the largest item among those with the same demand. Without loss of generality, assume that two items s and t with ls ≥ lt have the same value of demand (bs = bt). Constraints (4.43) for these two items are as follows.

As1X1+ As2X2 + As3X3+ . . . + AszXz = bs (4.48)

, if (4.48) is satisfied, the same will happen with (4.49). The item demands that are equal to the sum of two (or more) other item demands may also be excluded from constraints (4.43) provided some condi-tions are fulfilled. For example, assume that we are given three items r, s and t such that br = bs+ bt. For these items, constraints (4.43) stand as follows.

, then any combination X that satisfies (4.51) and (4.52) will satisfy also (4.50). The values of the Arj variables can be obtained by summing Asj with Atj, ∀j. Hence, we do not have to consider constraint (4.50) and the corresponding Arj variables in our CP model.

4.4. A CP Model 69

4.4.2 Deriving Lower Bounds from the CP Model

As we mentioned above, a lower bound for the PMP can be computed by solving a corresponding bin packing problem (with all the demands equal to one) with the same set of item sizes, and demands that are equal to 1. It is so because the solution to a bin packing problem corresponds also to the minimum number of different patterns that are needed to pack the items. These bounds can be computed efficiently (see for example [50]). We will denote this specific bin packing lower bound by z, as we already did above.

We can improve this lower bound by using the CP model described above. For this purpose, we solve a sequence of constraint satisfaction problems. The first step consists of solving a constraint satisfaction problem based on the previous model with the additional constraint Xz+1 = 0. By solving this problem, we try to find out if there is a solution with at most z multiplicities (positive elements in X) that satisfies all the constraints of the model. If there is no such a solution, then the lower bound can be increased by one unit, i.e., z will take the value z + 1. The process is repeated until a feasible solution is found for the constraint satisfaction problem. In that case, the procedure ends with a lower bound given by z.

4.4.3 Using the CP to Derive Valid Inequalities for SP 1

Many combinations of multiplicities in (4.24)-(4.29) are clearly not interesting, namely those from which we cannot express all the item demands as a linear in-teger combination of the multiplicities. In example 4.1, a possible combination of multiplicities could correspond to using 5 times the multiplicity with a value equal to 9, and once the multiplicity with a value equal to 2. In table 4.1, the corresponding column for the rows associated to the multiplicities will be defined as (0, 1, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0)T. The issue is that there is no integer solution for the problem of determining how many times the item with size 13716 should

70 4. New Lower Bounds based on CG and CP for the PMP

appear in each one of these six different patterns so as to fulfill the correspond-ing demand, which is of 25 units. Clearly, this demand cannot be expressed as a linear integer combination of these multiplicities. However, this combination of multiplicities is feasible for the LP-relaxation of (4.24)-(4.29).

It is difficult to force the combinations of multiplicities in (4.24)-(4.29) to be such that each item demand can be expressed as a linear integer combination of the multiplicities. In fact, these constraints are typically nonlinear, and hence they cannot be considered explicitly in SP 1. Our CP model can be used to handle these hard constraints, and to derive valid inequalities for SP 1. The development of hybrid methods combining CP approaches with IP based techniques has been a major topic of research in the recent years [119, 157]. These techniques complement each other, CP being traditionally used to deal with the complicated constraints that cannot be expressed in a linear form. In our case, solving the related constraint satisfaction problems will allow us to derive bounds on the variables of SP 1.

We used the ILOG CP Optimizer 1.0 to solve this CP model with the objective of further reducing the domain of the X variables. These domains translate into valid inequalities in SP 1. For this purpose, we enforce additional constraints on the X variables, and test the satisfiability of the problem. Assume that the domain of Xj is in [ldj, udj], j = 1, . . . , z. We add a constraint with the form Xj ≥ h, for some j. If the problem is unsatisfiable, we can update the upper bound on Xj

accordingly setting udj = h − 1. Of course, a complete search may be computa-tionally expensive. It would require solving O(z log2nmax) constraint satisfaction problems. However, the computational experiments that we conducted show that formulation (4.24)-(4.29) may be strengthened even with a few inequalities on a subset of the X variables.