Professional Documents
Culture Documents
Consider a problem faced by a hiker packing n types (items) of equipment into his knapsack.
Let cj > 0 be the "value" and aj > 0 be the "weight" of the j-th item. If the total weight
N f g
limitation (capacity of the knapsack) is b, = 1; : : : ; n the set of the items, then the problem of
maximizing the total value of the packed knapsack may formulated as binary knapsack problem:
maximize
X
cj xj (1a)
j∈N
subject to
X
aj xj b; (1b)
j∈N
f g
xj ∈ 0; 1 ; ∀j ∈ N; (1c)
where
Æ
1; if the j-th item is packed,
xj =
0; otherwise.
A production system consists of single stage with a set of several (parallel) machines. Let
pij be the processing time of product j on machine i and Cmax the makespan, i.e. the maximal
processing time of one of the machines. Now we formulate the problem in the following way:
minimize
Cmax (2a)
subject to
X
pji xji Cmax ; ∀i ∈ M; (2b)
j∈N
X
xji = 1; ∀j ∈ N ; (2c)
i∈M
f g
xji ∈ 0; 1 ; ∀j ∈ N; ∀i ∈ M; (2d)
where
Æ
1; if j-th product is assigned to j-th machine,
xji =
0; otherwise.
3. Simple discrete optimization examples 7
The problem involves choosing locations for plants (facilities) producing a single product in
such a way that the total cost of production and transportation of the product from the plants
to the clients (consumer) in order to cover their demands are minimal.
M f g N f g
Let = 1; : : : ; m be the set of plants and = 1; : : : ; n be the set of clients. Let ci be
the xed cost of opening i-th plant, ai the productivity of the i-th plant, bj the demand of the
j-th client, and dij a unit cost of production in i-th plant and transportation to the j-th client.
Now we formulate the problem in the following way:
minimize
X XX
ci xi + dij yij (3a)
i∈M i∈M j∈N
subject to
X
yij bj ; ∀j ∈ N; (3b)
i∈M
X
yij ai xi ; ∀i ∈ M; (3c)
j N∈
and
Æ
1; if plant i will be opened,
xi =
0; otherwise.
8 3. Simple discrete optimization examples
The contents of this section is a part of: Sawik, T. (1999): Production Planning and
Scheduling in Flexible Assembly Systems. Springer-Verlag, Berlin, New-York, Tokyo 1999
(pp. 44{47).
In order to best utilize the system capabilities and to minimize the completion time of all
product requirements, the FAS balancing problem should simultaneously account for both the
assembly times and the transportation times between the stations.
The models presented in this section aim at simultaneous optimization of station workloads
and station-to-station product
ows. The problem objective is to determine the optimal assign-
ment of tasks to station and the assembly routes for all products so as to minimize the sum of
weighted assembly and transportation time.
The solution of each model must satisfy the following four basic types of constraints:
The demand for all products must be satised.
The number of tasks assigned to each station must not exceed its exibility capacity.
Tasks must be assigned to stations such that precedence relations among the tasks are
maintained with no revisiting of stations required in a FAL.
Products must be routed to the stations where the required assembly tasks have been
assigned.
6
L/U
Base parts
? Finished products
Models M1 and M2 are proposed for
exible assembly lines, in which products do not revisit
any station. In the model M1 each station is a single assembly machine, whereas in M2 a station
consists of identical parallel machines (see Fig. 3.1). Model M3 is constructed for a general FAS,
in which revisiting of stations is allowed.
In the models M1 and M2 precedence relations among the assembly tasks for all the product
types are merged and are represented by a single super-precedence constraint, whereas in the
model M3 individual precedence constraints for each product type are introduced. The notation
used in the models proposed is shown in Table 3.1.
In order to simplify the presentation of models proposed for
exible assembly lines, all
machines in the FAL are assumed to be of the same type, which is
exible enough to perform
3. Simple discrete optimization examples 9
all assembly tasks. This assumption can be easily relaxed to extend the models for multiple
machine types. When a machine i is incapable of performing some tasks j, (i.e., i ∈ Ij ), the
corresponding assignment and routing variables are restricted to zero.
Another simplied assumption made in this section is that of equal working space required for
all tasks. Under this assumption, the nite working space bi of a station can be redened as its
exibility capacity, i.e., the maximum number of dierent tasks that can be assigned to a station.
If the latter assumption does not hold, then dierent working space requirement coeÆcients aij
for each task should be introduced into the corresponding constraints with the bi 's coeÆcients
dened again as a station working space available.
Model M1: Balancing station workloads and minimizing product movements in a
e-
xible assembly line
Minimize
XX
Fmax = Pmax + (1 - ) dk yik (4)
i∈I k∈K
X Xto
subject
dk pjk xij Pmax; i∈I (5)
k∈K j∈Jk
X
xij = 1; j∈J (6)
X
i∈I
xij bi ; i∈I (7)
X j∈J
X
ixij ixir ; (j; r) ∈R (8)
i∈I i∈I
yik xij ;
i ∈ I; k ∈ K; j ∈ Jk (9)
f g
xij ∈ 0; 1 ; ∀i; j (10)
f g
yik ∈ 0; 1 ; ∀i; k (11)
The rst term of the objective function Fmax (3.1) corresponds to station workload balance
and the second term to station visits by all products. The weight factor (0 1) is used
for trading-o between the two criteria.
Constraint (3.2) determines workload Pmax of the bottleneck station. Constraint (3.3) ensures
that each task is assigned to only one station. The station
exibility capacity constraint (3.4)
guarantees that the total number of tasks assigned to a station does not exceed the number of
available part feeders. Constraint (3.5) maintains the precedence relations among the assembly
tasks and ensures that a product does not revisit any station in a unidirectional
ow system.
If task r is assigned to station i, then task of each type j, that is to be performed immediately
before r must be assigned to a station l such that l i. Constraint (3.6) ensures that each
product is routed to the station where the required tasks are assigned.
10 3. Simple discrete optimization examples
Tabela 1: Notation
Indices
i = f
assembly station, i ∈ I = 1; : : : ; mg
j = f g
assembly task, j ∈ J = 1; : : : ; n
h = parallel machine at station i, (h = 1; : : : ; mi )
k f
= product, k ∈ K = 1; : : : ; v g
Input parameters
aij = working space required for assignment of task j to sta-
tion i
bi = total working space of station i (number of tasks that
may be assigned to station i, if all aij = 1)
dk = demand for product k
mi = number of parallel machines at station i
pjk = assembly time for task j of product k
qil = transportation time from station i to station l
Ij = the set of stations capable of performing task j
Jk = the set of tasks required for product k
R (Rk ) = the set of immediate predecessor-successor pairs of ta-
sks (j; r) (for product k) such that task j must be per-
formed immediately before task r
= the weight factor in the objective function, 0 1
Decision variables
M = number of stations with assigned tasks
Mi = number of parallel machines at station i with assigned
tasks
Pmax = maximum station workload (cycle time)
xij = 1, if task j is assigned to station i ∈ Ij ; otherwise
xij = 0
xihj = 1, if task j is assigned to parallel machine h at station
i; otherwise xihj = 0
yik = 1, if product k visits station i; otherwise yik = 0
yiljk = 1, if product k is transferred from station i after com-
pletion of task j, to station l to perform next task;
otherwise yiljk = 0
Yiljk = number of products k to be transferred from station i
after completion of task j, to station l to perform the
next task
zijk = 1, if product k is assigned to station i to perform task
j; otherwise zijk = 0
Zijk = number of products k assigned to station i to perform
task j