• No results found

Strengthening the Model

4.3 Exploring a New IP Formulation

4.3.2 Strengthening the Model

Reducing the Set of Columns Generated by SP 1

The LP relaxation of (4.24)-(4.29) can be tightened by reducing the size of the solution space of SP 1. We report on bounds on the amultnp coefficients, and on bounds on the number of rolls and patterns to be used up to a given multiplicity.

One way of strengthening this formulation is to bound the number of times a given multiplicity can appear in a combination. Let this upper bound be denoted by ub(amultnp ). A trivial upper bound on amultnp is given byzCSP

n , ∀n, p. This bound is implicitly enforced in SP 1. Another obvious bound is the following: amultnp ≤ z,

∀n, p. These two bounds can easily be strengthened for some multiplicities using the following arguments. Clearly, a combination of multiplicities cannot be composed only by a single value n ≤ bmin, with bmin being the smallest item demand, if all the item demands are not divisible by n. Hence, if n does not divide all the item demands, then amultnp ≤zCSP

n  − 1, ∀p. Furthermore, since an item with demand bi can only appear in patterns of multiplicity smaller than or equal to bi, for a given multiplicity n, if there are items i with bi < n, then amultnp ≤ z − 1, ∀p.

Let In be the set of items i such that bi ≥ n, for a given multiplicity n. The cutting patterns with multiplicity n can only have items from In. In the worst case, each cutting pattern of multiplicity n will be defined by a single item which belongs to In. In that case, there will be no more than P

For the highest multiplicities, it may be possible to set the amultnp equal to 0 if one takes into account the minimum waste that will be generated in the respective patterns. As a consequence, the value of nmax may also decrease. Let i1 and i2 be the items with the highest and second highest demand respectively. If bi2 ≤ nmax, then for bi2 < n ≤ bi1, we have that |In| = 1, which means that only items with

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

If n × (L − ai1nli1) > wCSP, then amultnp = 0, ∀p. This result can be extended to other multiplicities, but at the expense of an increase in complexity. Indeed, for n ≤ bi2, since |In| ≥ 2, we have to compute the minimum waste of patterns with multiplicity n by solving, for example, the following knapsack problem:

max zmaxn =X

The set In is defined as above for a given multiplicity n, while the xi variables indicate the number of items i in the knapsack. The minimum waste of a pattern with multiplicity n (say wminn ) will be given by L−zmaxn . Again, if n×wminn > wCSP, then amultnp = 0, ∀p.

Note that if one computes the wnmin for n = 1 up to nmax, by using the minimum among all these values (say wmin = minn=1,...,nmaxwnmin), we can enforce constraints on the cutting patterns generated by SP 2 that may be stronger than constraint (17) proposed in [15]:

i=1libi the maximum waste of a given solution. Another bound may be derived from the idea that a multiplicity should not be used so many times that it will not be possible to complete the combination (whose values must sum zCSP) with no more than z multiplicities, without using a multiplicity greater than nmax. If ub(amultnp ) is the best upper bound available for amultnp , ∀p, then we will have

zCSP − ub(amultnp )n

z − ub(amultnp ) ≤ nmax,

4.3. Exploring a New IP Formulation 63

and hence, the following upper bound applies:

amultnp ≤ nmaxz − zCSP nmax− n



, ∀n, p. (4.36)

This bound is useful only if one does not explicitly enforce an upper bound (z) on the dp coefficients in SP 1 for a given pattern p. Otherwise, this bound is modeled implicitly.

The final value for the upper bound ub(amultnp ) consists in the minimum value among all the bounds described above.

As referred to above, since overproduction is not allowed, the demand bi of an item i can only be satisfied from patterns with a multiplicity n ≤ bi. Let ri be a lower bound on the number of rolls that are necessary to cut all the items with a demand smaller than or equal to bi, and m0 be the number of different item demands. These demands are assumed to be ordered in nonincreasing order. A combination p of multiplicities will be feasible only if it satisfies

min{bi,nmax}

X

n=1

namultnp ≥ ri, ∀i ∈ {1, . . . , m0}. (4.37) Note that enforcing these constraints in SP 1 does not increase its complexity. The problem can still be solved as a knapsack problem with some additional constraints in O(nmaxzCSP) time, using dynamic programming.

Similarly, if pi is a lower bound on the number of distinct patterns necessary to cut all the items with a demand smaller than or equal to bi, then a combination p of multiplicities will be feasible only if

min{bi,nmax}

X

n=1

amultnp ≥ pi, ∀i ∈ {1, . . . , m}. (4.38)

If we consider a whole combination p of multiplicities, constraint (4.38) stands as follows:

nmax

X

n=1

amultnp ≥ z. (4.39)

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

These constraints force to impose a set of cardinality constraints on SP 1. In that case, SP 1 can be solved in O(nmaxzCSPz) time.

Bounds on the aitemsikn Coefficients

It is possible to bound from below the value of the aitemsikn coefficients. Indeed, in each roll, we know that there are at most ai =

jL li

k

items i. As a consequence, to satisfy the demand of items i, we will need at leastl

bi

ai

m

rolls. This means that if a pattern k of multiplicity n = zCSP−l

bi

ai

m

is used, it must contain at least one item i (aitemsikn ≥ 1, ∀k). Whenever there is a positive lower bound on one or more aitemsikn coefficients for a given multiplicity n, the right-hand side of the knapsack constraint in SP 2 can be decreased accordingly. On the other hand, this lower bound must be checked when computing the highest multiplicity for which a solution to the knapsack problems related to SP 2 remains optimal [193].

We can also strengthen the upper bound ub(aitemsikn ) proposed in [193] for aitemsikn ,

∀k, and for a given multiplicity n. This bound is given by

ub(aitemsikn ) = min L

For a given multiplicity n and an item i, when aitemsikn is set equal to its upper bound, the rolls divide into two subsets: zCSP − n rolls of size L, and n rolls of size L−ub(aitemsikn )li. The remaining items can also be separated in two groups: one with the item sizes that fit on both types of rolls and a second with the item sizes that only fit in the largest rolls. By computing a bound on the number of rolls necessary to cut the items from the second group, we can check if the upper bound ub(aitemsikn ) is set too high or not. Indeed, if this bound is greater than zCSP − n, then there will be no feasible solution with aitemsikn = ub(aitemsikn ). In this case, the bound can be decreased by at least one unit. Clearly, updating these upper bounds for each item and multiplicity may be computationally expensive in some cases. However, this method can always be applied to a restricted subset of items. As above, this