Sunteți pe pagina 1din 28

CUTTING STOCK PROBLEM

COMBINATORIAL OPTIMIZATION

MADE BY :

LUCKY AGARWAL Y08UC076


RADHIKA LOOMBA Y08UC099
VENKATESH VISWANATHAN Y08UC138

UNDER GUIDANCE OF:


Dr. ANJULIKA GUPTA

1
INTRODUCTION
• The cutting-stock problem is an optimization problem,
or more specifically, an integer linear programming
problem
• It arises from many applications in industry , eg. Paper
mills, sheet metal cutting etc.
• Solving this problem to optimality can be
economically significant: a difference of
1% for a modern paper machine can be
worth more than one million USD per year.
• Can be classified in several ways:
1 D: cutting wires/cables/pipes etc
2 D: furniture/glass production etc
3 D: Shipping container packing.

2
TYPES OF 1D CUTTING STOCK PROBLEM

There are 2 types of 1DCSPs.

• Single stage 1DCSP

• Multistage 1DCSP

3
SINGLE STAGE 1DCSP
• The finished product is obtained in
one single step
example:

STOCK BAR

F1 F2 F3 F4

or

STOCK BAR

F1 F2 LEFT

4
MULTI STAGE 1DCSP
• In multistage 1DCSP the cutting
process is distributed over several
successive stages

S1
First stage
F1 I1 S2
Second stage

F2 F3 F4 I2
Third stage

F5 F6

5
SINGLE STAGE
1 DIMENSIONAL CUTTING
STOCK PROBLEM

6
FORMULATION
• The standard formulation starts with a
list of m orders, each requiring qj, j =
1,...,m pieces

• We then construct a list of all possible


combinations of cuts (often called
"patterns")

• A positive integer variable xi denotes


how many times each pattern is to be
used

7
Example:
The paper rolls all have width of 100
inches. There are orders for 4 different
order widths as follows:

Quantity Ordered Order Width


(inches)
97 45
610 36
395 31
211 14

Then there are 37 ways of having a


pattern.

8
37 Patterns •36 14 14
•45 •36 14 14 14
•45 45 •36 14 14 14 14
•45 36 •31
•45 36 14 •31 31
•45 31 •31 31 31
•45 31 14 •31 31 14
•45 14 •31 31 14 14
•45 14 14 •31 14
•45 14 14 14 •31 14 14
•36 •31 14 14 14
•36 36 •31 14 14 14 14
•36 36 14 •14
•36 36 14 14 •14 14
•36 31 •14 14 14
•36 31 31 •14 14 14 14
•36 31 14 •14 14 14 14 14
•36 31 14 14 •14 14 14 14 14 14
•36 14 •14 14 14 14 14 14 14
9
SOLUTION APPROACH
• The integer linear program can be
stated as:

Minimize

s.t.
For all j=1……m

and >=0 integer


Where is the number of times order j
appears in pattern i
is the cost (often the waste) of pattern i

10
• The above formulation's quantity constraints are
minimum constraints (at least the given amount of each
order must be produced,but possibly more)
• When = 1 the objective minimises the number of
utilised master items
• The most general formulation has two-sided constraints
(and in this case a minimum-waste solution may
consume more than the minimum number of master
items):

• In general, the number of possible patterns


grows exponentially as a function of m.
As the number of orders increases, it may
therefore become impractical to
enumerate the possible cutting patterns

11
1 D CUTTING STOCK
PROBLEM WITH USABLE
LEFTOVERS
12
DESCRIPTION
• We will consider the1DCSPUL, focusing on minimizing
the pseudo bar cost in respect of the following three
aspects:

1. The bar cost. It is the actual cost of the bars required


to fulfill the item demand.

2. The profit obtained from the leftovers.


The residual length of a cutting pattern is
taken as a leftover if it is longer than a
threshold; as trim loss otherwise. The
leftovers are returned to inventory for
future use.

13
DESCRIPTION (contd…)

3. The profit obtained from shorter


stocks reduction. Shorter stocks may
represent the leftovers generated
from previous stock cutting
processes, which in general are more
difficult to use than longer bars.

The proposed algorithm consists of a


linear programming (LP) procedure.

14
FORMULATION OF 1DCSPUL
• The 1DCSPUL is characterized by the following data:

1. The demand of items:


m :number of item types
(l1,…, lm) :item lengths
(b1,…, bm) :item demands

2. The leftover:
K :number of leftover types
(g1,…, gK) :leftover lengths with g1<…<gK
(u1,…, uK) :upper bound on no. of leftovers
(w1,…, wK) :leftover values

15
3. The stock bar usage:
M :number of bar types
(L1,…, LM) :bar lengths
(B1,…, BM) :bar supply
(p1,…, pM) :bar prices

Now, let n=m+K & N=m+K+M

The notations for the linear program are:


z: total cost of the cutting plan
q: number of cutting patterns, q ≥ N
cj : the price of the stock bar used by
pattern j
xj : the frequency of pattern j

16
: when 1 ≤ i ≤ m , is the number of items
type i appearing in pattern j

when m < i ≤ n , is the number of


leftovers type i-m appearing in pattern j

when n < i ≤ N , =1 if pattern j uses bar


type i-n ; =0 otherwise

17
• The 1DCSPUL can be formulated as the following integer
linear programming problem:

• Min

• St

18
• Where in the objective function

represents the total value of the leftovers in pattern j.

19
1 D CUTTING STOCK
PROBLEM WITH TWO
STAGES
20
PROBLEM AT HAND:
List of roll sizes available
List of stock sizes. Constraints for intermediate
 List of intermediate sizes. rolls are strict:
Stock
 List of finished sizes. For every size the total number
of consumed rolls cannot
exceed the produced amount

Intermediate
a two-stage CSP with one width
of stock roll that is to be cut at the
first stage into several
intermediate rolls

Final
Product

21
assumption: the width of an intermediate roll coming out of the first
stage and going to the second one satisfies minimum–maximum
restrictions

x1 and x2 are pattern activities for the first and the second
stages
b is a vector of customer demands on finished rolls.
Cutting patterns of the first stage and the second stage: A11
and A22 matrices
A12 showing the relations between the two:
If column j represents a pattern then the value is
non-zero (-1) only for the position corresponding to the
intermediate roll i that should be cut
22
DUAL PROBLEM

vectors u1 and u2 are vectors of dual


variables

23
I) Generating a cutting pattern for the first stage

This is identical to solving the given Knapsack problem. We


basically stress on maximum usage of patterns

(Knapsack I)

u1 is a vector of values that are of the dual


variables of the master problem
y is a vector of intermediate roll widths
w0 is the stock roll width
vector a is a vector of variables.

If the objective function value exceeds 1.0, a new column a for the
first stage is generated.
The solution vector of u1T ≤ A11 1Tenters as a column into matrix
A11.
24
II) Generating a cutting pattern for the final rolls

Here also we can design it as the given Knapsack problem.

(Knapsack II)

u2 is a vector of values that are the dual variables of


the master problem;
w is a vector of finished sizes;
emin is a mandatory minimal edge, always ≥0
yj is width of intermediate roll j
vector a is a vector of variables.
If the objective function value exceeds u1j, a new column a for
the second stage is generated.
The solution vector of u2TA22 ≤−u1TA12enters as a column into
matrix A22.
25
If we do not have uncertainty in the
intermediate rolls, two types of
knapsacks shown above – Knapsack I
and Knapsack II – are sufficient to
solve the problem optimally

26
REFERENCES
• http://en.wikipedia.org/wiki/Integer_li
near_programming.

• www.sciencedirect.com.

• Research Paper: Modeling multistage


cutting stock problems -Eugene J. Zak

• Research Paper: J.M.V. Carvalho and


A.J.G. Rodrigues , An LP-based
approach to a two-stage cutting
stock problem. European Journal of
Operational Research 84 3 (1995), pp.
580–589.
27
THANK
YOU

28

S-ar putea să vă placă și