Professional Documents
Culture Documents
Computers & Industrial Engineering: A. Costa
Computers & Industrial Engineering: A. Costa
Computers & Industrial Engineering: A. Costa
a r t i c l e i n f o a b s t r a c t
Article history: In today’s manufacturing outlook, production planning and scheduling may represent a leading leverage
Received 20 March 2014 to enhance the competitiveness of firms which aim to address the new challenge coming from emerging
Received in revised form 14 September markets and globalization. In this paper a real-world parallel machines scheduling problem from the
2014
pharmaceutical environment has been tackled. Though in the last decades literature extensively
Accepted 1 November 2014
Available online 8 November 2014
approached such an issue, a set of constraints and compulsory dispositions strongly increase the
complexity of the level of the problem in hand; thus, in order to fulfill the firm’s objectives in terms of
production rate increase and rapidity of solution, a dedicated hybrid genetic algorithm equipped with
Keywords:
Case study
a two-stage encoding and a proper local search has been developed. A twofold validation procedure
Encoding has been adopted for the proposed optimization technique. First, it was compared with a set of meta-heu-
Decoding ristic algorithms on the basis of a real-world data set. Once the outperformance of the proposed genetic
Production planning optimization was demonstrated, a further comparison with a set of empirical schedules, manually per-
Parallel machines formed by the production supervisor, had been carried out.
Multi-processor 2014 Elsevier Ltd. All rights reserved.
http://dx.doi.org/10.1016/j.cie.2014.11.001
0360-8352/ 2014 Elsevier Ltd. All rights reserved.
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 131
packing. Thus, because of the limited capacity at that stage, the the short-term production planning of a firm producing copper
problem was decomposed into two main components, one of wires. The hierarchical procedure provided the by authors revealed
which involving the single packing stage. The aim of their study its applicability and optimality in solution.
was to compare the discrete and continuous representations for Soman, Van Donk, and Gaalman (2007) presented a combined
solving the individual parts of the decomposed problem. The opti- production planning and scheduling framework for a food process-
mality of the linear programming approach for small-size prob- ing company. Since the short-term batch-scheduling problem
lems was exploited by Lin and Liao (2012), who studied the plays a key role in the proposed conceptual framework, a proper
batch-scheduling problem for an assembly shop in a machinery heuristic algorithm to solve that problem has been developed.
factory. As concerns both medium- and large-size problems they The wirebonding scheduling issue, which basically consists of
compared three distinct heuristics, and confirmed the effectiveness an equal parallel machine scheduling problem, has been
of a properly developed batch family sorting heuristic also by approached by an evolutionary simulation-optimization technique
means of a real-life implementation. Missbaurer, Hauber, and (Yang, 2009). The effectiveness of the proposed optimization strat-
Stadler (2009) implemented an integrated approach involving lin- egy was confirmed by comparing the empirical results with a set of
ear programming along with heuristics for a scheduling system lower bound solutions.
from the steel-making industry. In this research an LP model has Jia and Mason (2009) compared a set of polynomial – time heu-
been embedded within a properly developed heuristic procedure ristics approaches for investigating the identical parallel machine
with the aim of iteratively improving each obtained schedule. scheduling problem related to a semiconductor manufacturing
Extensive numerical tests with real-life data demonstrated the process. Although a mixed integer programming model was gener-
effectiveness of the proposed scheduling tool. Another significance ated for the problem in hand, a heuristic based approach was
example of integration between mixed integer programming and required to solve the problem in a satisfactory amount of time.
evolutionary algorithms was provided by Sand et al. (2008) who An experimental analysis made the authors able to identify the
made full use of a stage decomposition-based hybrid algorithm most promising heuristic procedure to cope with this practically
to deal with a realistic batch scheduling problem with uncertain motivated scheduling problem.
data. Another application of metaheuristics techniques is ascribable
The second research stream gathers tailor-made heuristics and to Venditti, Pacciarelli, and Meloni (2010), who studied a packag-
metaheuristics algorithms able to find near-optimal solutions ing department of a pharmaceutical industrial plant. They modeled
through a quick and at the same time smart exploration of the the problem as a multi-purpose machine scheduling problem with
solution space. Since real-life scheduling problems are usually setup and removal times, release and due dates and additional con-
characterized by several constraints emphasizing their complexity straints related to the scarce availability of tools and operators. In
with respect to the theoretical models usually approached by liter- particular, they developed a proper tabu-search algorithm, whose
ature, metaheuristic techniques may represent a valid and versatile objective was minimizing both makespan and maximum tardiness
alternative to quickly solve such combinatorial issues. In fact, in lexicographic order.
metaheuristic algorithms do not require any mathematical pro- He and Hui (2010) tackled the scheduling problem related to a
gramming modeling, but their efficacy and efficiency strongly typical multi-purpose batch plant with a network structure. Since
depend on the problem encoding as well as on the way a given mathematical programming is not able to solve large-sized issues,
problem code is decoded to generate a feasible solution of the the authors proposed a genetic algorithm (GA) equipped with a
problem itself. Several excellent contributions mentioning the binary encoding. Due to the logical heuristics utilized to decode a
application of meta-heuristic optimization algorithms to real-life chromosome into a schedule, only feasible solution space is
industrial scheduling issues are reported in the following searched. Comparative studies performed by authors show as their
paragraphs. technique takes much shorter search time for the proposed algo-
Pearn, Chung, Chen, and Yang (2004) investigated a case study rithm to obtain the optimal solutions for both small and medium
on the multistage integrated-circuit final testing scheduling prob- instances with respect to the MILP model. On the other hand, the
lem, wherein jobs are clustered by their product types, and they same algorithm solved the large-sized instances obtaining good
must be processed on group of parallel machines. The job process- quality solutions within a very short time.
ing time depends on the product type and the machine setup time Huang, Cai, and Zhang (2010) addressed a real-world schedul-
is sequentially dependent on the orders of processed jobs. They ing problem on parallel dedicated machines in which setup times
presented three fast network algorithms to efficiently solve the are sequence dependent and setup operations are performed by a
scheduling problem and provided a performance comparison single server. A hybrid genetic algorithm was developed and tested
among the proposed techniques on eight test problems. on the basis of a comprehensive data set from a printing industry.
A simulated annealing algorithm was implemented by Loukil, More recently, Meeran and Morshed (2012) coped with a job
Teghem, and Fortemps (2007) for addressing a real-case produc- shop scheduling problem related to a real machining department.
tion scheduling problem in a flexible job shop with particular con- In order to efficiently solve the problem under investigation, the
straints. Indeed, the authors arranged a multi-objective SA in order authors implemented a novel hybrid genetic tabu search, namely
to yield efficient schedules in terms of: makespan, mean comple- an integrated technique that combines the diversified global
tion time, maximum tardiness and mean tardiness. search and intensified local search capabilities of GA and TS,
A job shop case study from the apparel industry was respectively. Again in the field of the parallel machine scheduling
approached by Guo, Wong, Leung, Fan, and Chan (2006) through problem, Chen, Cheng, Wang, and Chen (2013) studied a solar cell
a genetic optimization technique. In order to properly tackle the industry which is similar to the traditional hybrid flow shop (HFS)
mixed- and multi-product assembly environment under investiga- scheduling problem. Since the challenge in solar cell manufactur-
tion, authors adopted a new chromosome representation and ing is allocating sublots to parallel machines of each stage such
equipped the genetic engine with a heuristic initialization process that the makespan time is minimized, a hybrid approach based
and with modified crossover and mutation operators as well. on the Variable Neighborhood Search and particle swarm (VNPSO)
Another demonstration about the leading role of expert systems was implemented to obtain the near-optimal solution. Preliminary
in real-world manufacturing arises from the study of Soyuer, computational studies demonstrated that the metaheuristics algo-
Kocamaz, and Kazancoglu (2007), wherein a scheduling tool based rithm proposed by the authors provides good quality solutions in
on a unique constructive algorithm has been developed to manage an acceptable amount of time and also outperformed the classic
132 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147
branch and bound method and the heuristic currently practiced by - a number of fixed time length windows must be planned along
the case company. the expected planning time; during such a time interval neither
This paper deals with a real-life case study from the pharma- setups nor removals may occurs;
ceutical industry, which may be formally configured as a flow shop - several constraints inherent to the interactions among time
with multiple processors (FSMP) wherein several constraints windows, setups and removals have to be fulfilled.
involving products, material resources and workforce have to be
taken into account. In reality, since a specific bottleneck stage In fact, the problem is motivated by the practical implementation
characterizes the whole process, and due to the specific kind of of a decision support system to improve the production scheduling
tasks connected to such a critical stage, the multi-stage problem task at the lyophilization department of a pharmaceutical plant
was relaxed to a single-stage scheduling problem with identical located in Europe. Up to now, the short-term scheduling task was
parallel machines. handled by means of the production supervisor’s experience. Once
The objective is the minimization of the total completion time, the production supervisor receives the planned production target
i.e. the makespan, for a provided mix of jobs. Notably, since each in terms of number of batches and type of products to be produced,
machine may process an indivisible set of product units of the he empirically generates an operative schedule by means of a Gantt
same type, a job can be configured as a batch and an optimal sche- chart, as to determine both the expected task completing times and
dule would consist of a sequence of batches. the related resource requirements. In light of what stated before, due
According to these last considerations, the present problem to an increasing market competitiveness and due to the world wide
could be also assimilated to a parallel-batch scheduling problem enlargement of the market area, the management of the company
wherein a machine can process several parts simultaneously in a decided to optimize the production output by a adopting an engi-
batch. In the last decades parallel-batch scheduling has been neered scheduling tool aiming to: (i) maximizing the production
widely researched. As far as the unbounded problem is concerned, rate of the plant, (ii) improving the resource exploitation of the
Liu, Ng, and Cheng (2009) developed a polynomial-time approxi- whole department, (iii) supporting and speeding up the scheduling
mation scheme for the problem of scheduling jobs with release and re-scheduling activities pertaining to the production supervisor.
dates on parallel unbounded batch processing machines to mini- Since the problem under investigation is quite different from
mize the maximum delivery completion. Fu, Cheng, Ng, and Yuan the regular parallel machines scheduling problem usually studied
(2013) provided an optimal algorithm for the online scheduling by literature, a holistic optimization strategy has been developed
of incompatible job families on an unbounded parallel-batch as to manage the multitude of constraints affecting the provided
machine to minimize the makespan, where jobs arrive over time process tasks. The complexity of the problem prevents any devel-
and the number of job families is known in advance. The makespan opment of linear programming-based mathematical formulations
minimization is the target of another research performed by the and, as a result, a tailor-made optimization method based on a
same team (Li, Ng, Cheng, & Jinjiang, 2011). They studied the prob- hybrid genetic algorithm (HGA) has been proposed. The optimiza-
lem of scheduling n deteriorating jobs with release dates on a sin- tion framework consists of a genetic algorithm that makes full use
gle batching machine. Both the bounded and unbounded issues of a proper initialization heuristic procedure aiming to increase the
have been investigated. For the unbounded model they obtain an number of feasible solutions included in the initial population. The
O(nlog n) dynamic programming algorithm. For the bounded same heuristic procedure, named focused local search, is itera-
model they show that the problem is binary NP-hard even if there tively applied to the most performing individual as to push the
are only two distinct release dates. Whether the problem size exploitation phase of the optimization algorithm. In addition, both
should increase, heuristics approaches are a valid alternative to a specific two-stage chromosome representation and a complex
the exhaustive procedures. decoding procedure have been developed in order to minimize
Li, Huang, Tan, and Chen (2013) used several heuristics based the risk of detecting unfeasible solutions. The effectiveness of the
on best fit longest processing time (BFLPT) to minimize makespan proposed scheduling tool was tested on the basis of a benchmarked
in a scheduling problem involving unrelated parallel batch analysis, which encompasses other performing metaheuristic pro-
processing machines. In their study jobs with non-identical sizes cedures. Further, in order to demonstrate both real-world applica-
are scheduled on batch processing machines that can process bility and quality of solutions of the proposed scheduler, a
several jobs as a batch as long as the machine capacity is not comparison with a set of schedules manually performed by the
violated. company supervisor has been carried out.
Recently, Cheng, Cai, Yang, and Hu (2014) presented a mixed The problem under investigation, also including a detailed
integer programming model for scheduling incompatible job fam- nomenclature is described in Section 2. Section 3 deals with the
ilies on single batching machine with limited capacity. In particu- structure of the proposed genetic optimization procedure, also
lar, they proposed two polynomial time heuristics based on longest emphasizing the procedural aspects concerning the encoding strat-
processing time first rule and first fit rule. For the special case egy and the decoding algorithm as well. In addition, the specific
where a larger job also has a longer processing time, the heuristic local search algorithm embedded within the proposed genetic
for minimizing makespan is optimal. algorithm is examinated. The real-world benchmark according to
However, differently from the regular parallel-batch scheduling which the proposed HGA has been validated is reported in Section
problem, the following features characterize the proposed real- 4. The same section holds the comparison analysis affirming the
world issue: effectiveness of HGA in solving the specific batch-scheduling prob-
lem under investigation. Finally, conclusions are reported in Sec-
- a batch is composed only by identical parts, i.e. product units of tion 5.
the same type;
- the batch size, i.e. the number of parts included in a batch, is
known in advance and depends on the product type; thus, each
batch processing time is equal to the processing time of the spe-
cific product type it holds; Perparaon Filling Lyophilizaon Sealing Packaging
preparation three lots. Since the production rate of the filling stage unload
depends on the specific kind of preparation, both preparation and load CIP /SIP
filling tasks are related and, as a consequence, preparation of lots leak test
must be planned along with the other tasks involved in the pro-
posed lot scheduling issue. Lyo 1
Whenever the filling of a given preparation is completed a
Cleaning-In-Place (CIP) and a Sterilization-In-Place (SIP) treatment,
namely CIP/SIP of the filling machine, has to be carried out.
Filling Lyo 2
Thereafter, flacons have to be loaded into the lyophilizer and
then lyophilization may start. Lyophilization is a process that
extracts the water from foods and other products so that the foods
or products remain stable and are easier to store at room temper- Lyo 3
ature (ambient air temperature). Lyophilization is a time consum-
ing process carried out using a simple principle of physics called CIP/SIP
4. A product size changeover (cij) is required whenever a lot i of 14. Once an a-category lot product completes the lyophilization
product type 4 (or 5) must be processed on a lyophilizer j phase, both CIPSIP and Leak test must be performed before
before/after a lot of any other type of product. processing another a-category lot on the same lyophilizer.
8
< > 0 if ðpðiÞ ¼ 4ð5Þ and pði 1Þ–4ð5ÞÞ
> lcij ; lkij > 0 if wðiÞ ¼ a; wðhÞ ¼ ajh > i;
cij or ðpðiÞ ¼ 4ð5Þ and pði þ 1Þ–4ð5ÞÞ ð4Þ pðhÞ is processed by j after p ðiÞ; ð14Þ
>
:
¼ 0 otherwise
15. Once an a-category lot product completes the lyophilization
5. Time overlap between the product size changeover and the phase, neither Leak test nor CIPSIP must be performed before
following activities is not allowed: filling and CIP/SIP. processing a b-category lot on the same lyophilizer.
0 0
cij P maxðfchk ; f hk Þ; ð5Þ lcij ; lkij0 if wðiÞ ¼ a; wðhÞ ¼ bjh > i;
h<i
k–j
pðhÞ is processed by j after pðiÞ; ð15Þ
6. During the department cleaning time any human related
task (lyophilizer load/unload lij/uij, setup sij and filling fij) 16. No shop floor cleaning may occur between the filling com-
cannot be carried out. The following relation refers to a gen- pletion time and the load start time of lot i on lyophilizer j;
eric task named gij. 0
clðdÞ P lij or clðdÞ þ cln < maxfsij ; f ij g ð16Þ
g ij clðdÞ þ cln if ðg ij < clðdÞ þ cln and
g 0ij P clðdÞ þ clnÞ or ðg ij 6 clðdÞ and g 0ij > clðdÞÞ ð6Þ 17. The time interval between the filling setup starting time sij
and the filling CIP/SIP starting time fci1,j⁄ of the previous
7. If any filling activity (setup included) occurs during the shift lot on another machine must be greater than or equal to
changeover (06:00, 14:00, 22:00) then it requires an addi- cst time;
tional time (aft) to be completed.
sij fci1;j P cst ð17Þ
f ij
0 0
f ij þ aft; and
if ðhðf ij Þ 6 h
0 h
hðf ij Þ P hÞj ¼ 6; 14; 22
in this case the two lots of product C should be arranged as a dou- Lot to be scheduled – i 1 2 3 4 5 6 7
ble preparation lot. Due to both CIP/SIP and Leak test in machine Product type – p A A C C D D B
one, the lyophilizer load starting time of lot 4 is delayed with Type of preparation – p(i) 2 2 1 2 2 2 2
Number of preparation – r(i) 1 2 1 1 2 1 2
respect to the filling completing time provided for the same lot.
Anyway, constraint 9 is satisfied as the time interval between the
filling starting time and the lyophilization starting time is lower
than prp. Because of the change from a product of type F to a prod- initial population) and then such population is replaced by a new
uct of type B, a changeover task conforming to constraint 4 and 5 one due to a mechanism that preserves the most promising solu-
must be arranged (look at the black block separating products type tions. Indeed, the population evolution proceeds by means of a
F from products type B). The difference of length between the reproduction mechanism called crossover, which selects one or more
lyophilizer loading task of lot 4 and the others is justified by con- couples of chromosomes (the parents) and recombines them to
straint 13. CIP/SIP and leak test between lot 1 and lot 4 in machine generate the children (two new chromosomes). Children replace
1 is due to what constraint 14 states, while the same tasks are parents in the new population. Search towards unexplored areas
missing when lot category b must be processed after a product of of the solutions domain is assured by means of a mutation opera-
category a, e.g. see lot 5 and 6 after lot 2 and 3 respectively (constr. tor, which can randomly alter one or more chromosomes within
16). The positioning of the cleaning time interval plays a key role the current population. A termination condition allows the gener-
for the feasibility of a given schedule. It can be emphasized by ational process to be stopped within a finite computational time.
Fig. 3 when the second filling, preliminary to lot 6, must be delayed One of the key issues for enhancing the performance of metaheu-
due to the incompatibility of such task with the cleaning phase of ristics regards the problem encoding as well as the related decod-
day 3, which starts at 1 a.m. and finishes at 4 a.m. of day four. How- ing procedure. The problem encoding is the way a given problem
ever, such a delay is lower than cfl and constraint 8 is not violated. may be represented by a string of numbers. On the other hand,
Finally, as exhibited by Fig. 3, the unloading task of lot 5 in decoding consists of a proper procedure assessing the performance
machine 2 is delayed in order to satisfy constraint 11. Lot 7, which of a given solution, with respect to the provided set of constraints
belongs to product type B, is handled by a single-lot preparation, as to be observed. Usually, for a constrained problem to be optimized,
confirmed by the presence of the CIP/SIP in the filling machine. The a twofold approach may be taken into account. The former uses a
schedule of preparations for each product, which arises from the set of constraint repairing procedures as to ensure the feasibility
Gantt diagram, is reported in Table 2. of a decoded solution; the latter makes full use of a penalty func-
Regardless of product type B, all the products to be produced have tion, which increases the objective function value whenever a con-
to be prepared through a double-lot (p(i) = 2) preparation, as to straint is violated. Due to the high number of constraints included
reduce the number of filling machine’s setups and, to increase the in the problem under investigation, a few areas of feasible solu-
production rate of the manufacturing system. The number of prepa- tions, whose investigation may result quite tricky, should charac-
ration r(i) denotes if a given lot is the first or the second lot to be terize the space of solution. For the same reason, a regular
filled. In fact, for each kind of preparation, just the first lot needs a metaheuristics addressing a so constrained scheduling issue, likely
preliminary setup of the filling machine before being processed. may remain trapped into a local optimum; thus, a proper local
search mechanism has been adopted to improve the searching per-
3. The proposed optimization procedure formance of the proposed optimization algorithm. In particular,
since the problem at hand is strongly influenced by the time posi-
3.1. General principles tioning of the cleaning shifts, a proper local search algorithm focus-
ing on the cleaning shift starting times has been implemented.
A GA is a metaheuristic optimization procedure that simulates Such a Focused Local Search (FLS) has been applied to the initial
the natural evolution. Firstly, a set of solutions is generated (the population of the proposed GA, thus increasing the quality of
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 137
solutions at the initial stage. Then, the same search mechanism Table 4
solely to the best solution is applied once a given number of Example of lot preparation management.
genetic iterations has been achieved. A detailed description of i 1 2 3 4 5 6 7 8 9 10 11 12
the proposed HGA is reported in the following paragraphs.
p(i) B A A C C C B B D D D A
p(i) 1 2 2 2 2 1 2 2 2 2 2 1
3.2. Encoding a chromosome r(i) 1 1 2 1 2 1 1 2 1 2 1 1
w(i) b a a a a a b b a a a a
0
fitness ¼ max flkNj g intðv iol J N1:07 Þ ð1Þ endif
j¼1;:::;J
if (constraint 9 is violated, i.e. the time interval
It is a combination of two parts. The former consists of the total between fij and the expected rij > prp) then
completion time of the whole mix of lots, which coincides with the EFL repair procedure: solution is repaired by
Leak test completion time of the last processed lot. The latter is the converting the
violation function that raises the makespan value whenever a vio- second/third preparation lot into a single
lation (viol) of some aforementioned constraint occurs. The struc- preparation lot.
ture of the proposed objective function is the result of an See Appendix A.
extended tuning analysis performed at varying number of lots. endif
The following paragraph reports the pseudo-code of the whole if r(i) = 3 then
decoding procedure where each step represents one of the afore- f’ij f’ij + aft (constraint 10);
mentioned blocks. Thereafter, the pseudo-code of the EFL repairing endif
algorithm is reported. a_fill(j) f’ij;
Decoding pseudo-code endif
Step 4: Lyophilization
Input: solution chromosome x = p + g;
lij max(a_lyo(j); f’ij);
TH: provided Time Horizon in days;
l’ij lij + lld;
a_fill(j), a_lyo(j) "j e 1, . . ., J;
rij l’ij;
Step 1: Initialization
r’ij rij + pti;
- Allocation of daily cleaning starting times g(d) "d e 1,
uij r’ij;
. . ., TH to the provided time horizon:
u’ij uij + lud;
- Assignation of the kind of preparation p(i) e {1, 2, 3}
flag = 0;
"i e 1, ..., N.
if category of p(i 1) = a and category of p(i) = b
Step 1.1: i=1, select the first lot to be scheduled;
then
Step 1.2: select first available machine j e {1, ..., M};
flag = 1; neither CIPSIP nor Leak test are required
r(i) = 1, first lot to be processed must be the first lot of
(constr. 15);
preparation;
endif
Step 2: First preparation-lot filling (constr. 3)
if (time overlap between load lyophilizer and
if r(i) = 1 then
department cleaning (constr.6) = true) then
sij a_fill(j);
viol = viol + oti; where oti is the overlap time
if p(i) = D or p (i) = E then
interval between the two mentioned tasks;
product size changeover time cov is required before
endif
the filling setup may start (constr. 4);
if (time overlap between load and unload (constr.11)
changeover task may not be overlapped with either
on a lyophilizer z e {1, . . ., J}|z – j = true) then
CIP/SIP or filling tasks (constr. 5);
uzk lij + lld; where k is the lot assigned to
sij sij + cov;
lyophilizer z: k e {1, . . ., N}|k – i;
endif
u’zk uzk + lud;
s’ij sij + fsu;
a_lyo(k) u’zk;
fij s’ij;
if (both leak test and CIP/SIP for lot k and
f’ij fij + fll;
lyophilizer z = true) then
if (time overlap between setup/filling and shop floor
lczk u’zk;
cleaning = true) then
lc’zk lczk + lcs;
sij g(d) + cln: setup starting time is shifted to the
lkzk lc’zk;
cleaning completion time;
lk’zk lkzk + lkt;
endif
a_lyo(k) lk’zk;
if (time overlap between setup/filling and shift
endif
change = true) then
endif
f’ij f’ij + aft (constraint 7);
if (time overlap between load and load (constr. 12)
endif
on a lyophilizer z e {1, . . ., J}|z – j = true) then
a_fill(i) f’ij; update start filling availability time;
lij l’zk+lld; where k is the lot assigned to
goto Step 4;
lyophilizer z: k e {1, . . ., N}|k – i;
endif
endif
Step 3: Second/third preparation-lot filling
if (load time reduction is allowed according to
if r(i) > 1 then
constraint 13) then
fij f’i1,j⁄; where j⁄ is the previous machine a lot has
l’ij=l’ij-ltr;
been assigned to;
if (time overlap between unload and shop floor
if (time overlap between filling and shop floor
cleaning (constr.6) = true) then
cleaning = true) then
uij g(d) + cln;
fij g(d) + cln: setup starting time is shifted to the
endif
cleaning completion time;
if flag = 0 (constr. 14) then
endif
csij u’ij;
if (time overlap between setup/filling and shift
cs’ij csij;
change = true) then
lkij csij;
f’ij f’ij + aft (constraint 7);
lk’ij lkij;
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 139
type. In addition, lots of product D and E cannot be separated, as 3.5.3. Mutation and elitism
mentioned in the earlier sections. Mutation operator plays a key role to enhance the exploitation
Fig. 5 shows how a regular PBC procedure may be applied to a phase of a genetic algorithm. It consists of a small perturbation to a
couple of parent chromosomes P1 and P2, which handle the fol- chromosome, on the basis of a specific probability pmut. The pro-
lowing amount of products: 3 units of product type A, four units posed metaheuristic algorithm has been equipped by a pairwise
of product type B and three units of product type C. Selected posi- interchange operator, which randomly exchanges two genes
tions are those corresponding to Npc = 5 bold lines between the two belonging to the same chromosome. After both crossover and
parents. Genes (alleles) related to the unselected positions (locus) mutation are carried out, in order to avoid any loss of the best per-
are copied into their corresponding parents. Whereas, for a given forming individual from the current population, an elitism strategy
child, genes related to the selected positions assume a new value has been embedded in the proposed GA. Thus, whenever any new
conforming to the order they are reported into the other parent. population is missing of the best solution, it is inserted again in a
The number of units per product type must be unchanged after randomly chosen position of the new population.
the crossover is performed. Children arising from the PBC are
denoted in Fig. 5 with C1 and C2, respectively.
4. Computational test and comparisons
In case the two selected parents have the same fitness, a regular
Shift Insertion (SI) operator is applied with probability pSI to their
This section deals with the comparison of a set of metaheuris-
permutation chromosomes, thus rejecting the risk that the PBC
tics, as to select the most suitable method for approaching the
operator yields two children identical to their parents. In that case,
industrial scheduling issue under investigation. First of all the
two positions are randomly selected for each parent and the corre-
way the computational tests have been designed is discussed.
sponding child is generated according to a regular shift-insertion
Then, a set of numerical results will be exhibited with the aim of
mechanism. Fig. 6 shows the application of a SI crossover between
motivating the outperformance of the proposed HGA. Finally,
positions 3 and 7 of parent P1.
HGA will be tested and empirically validated with respect to the
As far as the second part of chromosome g is concerned, a reg-
schedules recently adopted by the company supervisor for a real
ular Uniform Crossover (UC) has been implemented. According to a
production plan.
coin toss probability criterion, a regular exchange of genetic mate-
All the methods were implemented in Visual Basic for Applica-
rial is performed between two parents as to create two distinct
tion (VBA) language, within a MS Excel spread sheet installed in a
children. Fig. 7 reports an example of the UC operator.
personal computer with a 2.7 GHz Intel Core i5 and 6 GB of RAM.
P2 A A B B B A B C C C Table 5
Class I – 25 lots problems.
C2 B A A A B B B C C C A 3 4 7 0 1 6 10 7 10 5
B 2 5 0 6 5 3 4 5 8 5
C 14 7 9 14 11 6 8 2 4 5
Fig. 5. Position based cross-over for permutation stage p. D 6 0 9 0 7 0 3 11 0 5
E 0 9 0 5 0 10 0 0 3 5
P1 B A A C C C B B A B
Table 6
Class I – 50 lots problems.
P1 22 23 22 3 2 22 1
Table 7
P2 23 24 22 23 2 2 3 Genetic parameters.
Parameter Value
C1 23 23 22 23 2 2 3 POP 50 (if N 6 25); 100 (otherwise)
Niter 400 (if N 6 25); 800 (otherwise)
pcr 0.9
C2 22 24 22 3 2 22 1 Npc dN=15e þ 1
pSI 0.50
pmut 0.05
Fig. 7. Modified uniform crossover for permutation stage g.
142 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147
zation methods. On the basis of the industrial practice, the com- ing (SA), Genetic Algorithm (GA) and HGA) have been compared.
pany supervisor supported the present research by providing us A summary of the main features concerning the aforementioned
with two classes of real-world problems with two levels of lots optimization methods is reported in the following sub-section.
to be scheduled. Class I holds 25 lots, while class II is based on
50 lots. Then, S = 10 different production scenarios (s = 1, . . ., S)
have been supplied by the company for each class. Tables 5 and 4.2. Remarks about the implemented methods
6 thoroughly report the number of lots per product type required
by each scenario, for class I and II respectively. Once the overall The aim of the present sub-section is to inform the reader about
set of scenario problems has been arranged, the provided four opti- the main aspects and the setting parameters characterizing the
mization methods (namely Local Search (FLS), Simulated Anneal- tested algorithms, with exception of HGA.
Table 8
RPD based comparison among the proposed metaheuristics: 25 lots.
ME r Problems
1 2 3 4 5 6 7 8 9 10
LS 1 0.058 0.063 0.030 0.064 0.040 0.023 0.073 0.045 0.063 0.045
2 0.112 0.020 0.030 0.059 0.045 0.026 0.006 0.040 0.063 0.074
3 0.049 0.086 0.030 0.056 0.088 0.017 0.006 0.028 0.057 0.040
4 0.112 0.029 0.030 0.067 0.074 0.086 0.062 0.045 0.063 0.068
5 0.101 0.057 0.030 0.056 0.054 0.026 0.006 0.017 0.075 0.074
6 0.049 0.086 0.030 0.056 0.088 0.017 0.006 0.028 0.057 0.040
7 0.047 0.086 0.041 0.070 0.048 0.029 0.006 0.045 0.075 0.040
8 0.058 0.029 0.030 0.067 0.017 0.026 0.006 0.045 0.057 0.040
9 0.038 0.029 0.030 0.056 0.000 0.026 0.006 0.045 0.063 0.045
10 0.036 0.017 0.030 0.011 0.074 0.026 0.028 0.040 0.063 0.074
AVE 0.066 0.050 0.031 0.056 0.053 0.030 0.020 0.038 0.064 0.054
ST.DEV 0.030 0.029 0.003 0.017 0.029 0.020 0.026 0.010 0.007 0.016
MIN 0.036 0.017 0.030 0.011 0.000 0.017 0.006 0.017 0.057 0.040
MAX 0.112 0.086 0.041 0.070 0.088 0.086 0.073 0.045 0.075 0.074
SA 1 0.134 0.032 0.033 0.078 0.051 0.032 0.185 0.082 0.141 0.088
2 0.096 0.040 0.049 0.056 0.051 0.098 0.076 0.074 0.132 0.091
3 0.115 0.057 0.044 0.070 0.051 0.049 0.017 0.074 0.084 0.077
4 0.090 0.086 0.074 0.081 0.051 0.103 0.101 0.068 0.060 0.085
5 0.099 0.080 0.041 0.067 0.051 0.032 0.020 0.077 0.123 0.088
6 0.115 0.057 0.044 0.070 0.097 0.049 0.017 0.074 0.084 0.077
7 0.068 0.092 0.063 0.070 0.051 0.034 0.132 0.077 0.138 0.071
8 0.074 0.060 0.038 0.073 0.040 0.057 0.093 0.068 0.159 0.094
9 0.112 0.103 0.099 0.067 0.054 0.026 0.020 0.071 0.078 0.077
10 0.093 0.103 0.077 0.075 0.085 0.040 0.118 0.071 0.069 0.071
AVE 0.100 0.071 0.056 0.071 0.058 0.052 0.078 0.074 0.107 0.082
ST.DEV 0.020 0.025 0.021 0.007 0.018 0.027 0.059 0.004 0.035 0.008
MIN 0.068 0.032 0.033 0.056 0.040 0.026 0.017 0.068 0.060 0.071
MAX 0.134 0.103 0.099 0.081 0.097 0.103 0.185 0.082 0.159 0.094
GA 1 0.025 0.063 0.011 0.059 0.051 0.000 0.076 0.088 0.060 0.091
2 0.079 0.052 0.000 0.059 0.063 0.032 0.008 0.017 0.060 0.085
3 0.055 0.032 0.033 0.070 0.071 0.017 0.008 0.017 0.003 0.085
4 0.049 0.026 0.063 0.089 0.037 0.023 0.008 0.071 0.075 0.085
5 0.038 0.023 0.044 0.067 0.060 0.032 0.017 0.071 0.060 0.071
6 0.055 0.032 0.033 0.070 0.071 0.017 0.008 0.017 0.003 0.085
7 0.077 0.037 0.014 0.059 0.026 0.023 0.017 0.091 0.036 0.088
8 0.033 0.000 0.000 0.067 0.037 0.040 0.017 0.088 0.078 0.071
9 0.058 0.069 0.033 0.011 0.017 0.020 0.008 0.063 0.072 0.088
10 0.055 0.055 0.049 0.067 0.028 0.020 0.000 0.000 0.075 0.014
AVE 0.052 0.039 0.028 0.062 0.046 0.022 0.017 0.052 0.052 0.076
ST.DEV 0.017 0.021 0.021 0.020 0.020 0.011 0.021 0.035 0.029 0.023
MIN 0.025 0.000 0.000 0.011 0.017 0.000 0.000 0.000 0.003 0.014
MAX 0.079 0.069 0.063 0.089 0.071 0.040 0.076 0.091 0.078 0.091
HGA 1 0.030 0.017 0.047 0.011 0.017 0.026 0.006 0.043 0.006 0.068
2 0.033 0.011 0.011 0.011 0.000 0.020 0.006 0.017 0.036 0.068
3 0.030 0.026 0.041 0.064 0.034 0.040 0.006 0.063 0.000 0.023
4 0.038 0.032 0.025 0.008 0.060 0.026 0.006 0.003 0.000 0.068
5 0.000 0.017 0.038 0.064 0.031 0.011 0.006 0.034 0.072 0.068
6 0.030 0.011 0.014 0.056 0.043 0.020 0.006 0.040 0.006 0.020
7 0.044 0.020 0.030 0.056 0.034 0.052 0.006 0.068 0.072 0.000
8 0.019 0.034 0.011 0.000 0.048 0.029 0.006 0.060 0.072 0.020
9 0.030 0.023 0.011 0.011 0.040 0.052 0.006 0.040 0.009 0.082
10 0.047 0.034 0.038 0.064 0.034 0.029 0.006 0.040 0.057 0.085
AVE 0.030 0.023 0.027 0.035 0.035 0.030 0.006 0.041 0.033 0.050
ST.DEV 0.013 0.009 0.014 0.028 0.015 0.013 0.000 0.020 0.032 0.031
MIN 0.000 0.011 0.011 0.000 0.000 0.011 0.006 0.003 0.000 0.000
MAX 0.047 0.034 0.047 0.064 0.060 0.052 0.006 0.068 0.072 0.085
Underline identifies the lowest AVE values among the four groups of data. Bold highlights the lowest values of MIN and MAX, for each column, among the provided four
groups.
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 143
Table 9
RPD based comparison among the proposed metaheuristics: 50 lots.
ME r Problems
1 2 3 4 5 6 7 8 9 10
LS 1 0.022 0.024 0.013 0.063 0.048 0.023 0.031 0.030 0.000 0.010
2 0.060 0.027 0.067 0.029 0.047 0.027 0.022 0.036 0.000 0.065
3 0.101 0.023 0.038 0.040 0.085 0.056 0.061 0.001 0.031 0.030
4 0.073 0.053 0.039 0.035 0.041 0.020 0.073 0.001 0.031 0.061
5 0.101 0.061 0.001 0.029 0.047 0.021 0.061 0.036 0.037 0.033
6 0.101 0.023 0.038 0.040 0.085 0.056 0.061 0.001 0.031 0.030
7 0.101 0.055 0.034 0.039 0.041 0.021 0.036 0.036 0.039 0.000
8 0.039 0.027 0.034 0.004 0.075 0.020 0.031 0.001 0.000 0.031
9 0.035 0.053 0.067 0.040 0.075 0.052 0.061 0.036 0.031 0.062
10 0.064 0.060 0.046 0.076 0.076 0.050 0.031 0.031 0.000 0.036
AVE 0.070 0.041 0.038 0.040 0.062 0.035 0.047 0.021 0.020 0.036
ST.DEV 0.031 0.017 0.021 0.020 0.019 0.017 0.018 0.017 0.017 0.022
MIN 0.022 0.023 0.001 0.004 0.041 0.020 0.022 0.001 0.000 0.000
MAX 0.101 0.061 0.067 0.076 0.085 0.056 0.073 0.036 0.039 0.065
SA 1 0.408 0.197 0.324 0.134 0.052 0.130 0.098 0.072 0.215 0.144
2 0.699 0.162 0.322 0.210 0.185 0.206 0.071 0.178 0.080 0.104
3 0.395 0.176 0.447 0.105 0.385 0.125 0.242 0.112 0.271 0.175
4 0.176 0.147 0.357 0.146 0.429 0.145 0.426 0.079 0.068 0.172
5 0.417 0.128 0.421 0.140 0.355 0.172 0.248 0.139 0.152 0.141
6 0.395 0.176 0.447 0.105 0.385 0.125 0.242 0.112 0.271 0.175
7 0.419 0.066 0.388 0.105 0.116 0.114 0.065 0.170 0.073 0.172
8 0.632 0.130 0.355 0.174 0.085 0.096 0.223 0.187 0.217 0.144
9 0.627 0.130 0.121 0.121 0.111 0.168 0.248 0.110 0.192 0.135
10 0.419 0.089 0.125 0.071 0.120 0.063 0.178 0.154 0.218 0.180
AVE 0.459 0.140 0.331 0.131 0.222 0.134 0.204 0.131 0.176 0.154
ST.DEV 0.153 0.041 0.118 0.040 0.148 0.041 0.108 0.040 0.078 0.025
MIN 0.176 0.066 0.121 0.071 0.052 0.063 0.065 0.072 0.068 0.104
MAX 0.699 0.197 0.447 0.210 0.429 0.206 0.426 0.187 0.271 0.180
GA 1 0.060 0.096 0.044 0.068 0.051 0.043 0.039 0.037 0.012 0.034
2 0.059 0.052 0.014 0.065 0.058 0.030 0.074 0.042 0.037 0.042
3 0.071 0.061 0.015 0.046 0.085 0.058 0.037 0.075 0.017 0.073
4 0.066 0.037 0.052 0.040 0.076 0.034 0.095 0.073 0.014 0.095
5 0.064 0.081 0.034 0.048 0.073 0.070 0.076 0.024 0.039 0.068
6 0.071 0.061 0.015 0.046 0.085 0.058 0.037 0.075 0.017 0.073
7 0.036 0.038 0.046 0.048 0.069 0.088 0.040 0.042 0.037 0.095
8 0.066 0.066 0.018 0.048 0.071 0.064 0.091 0.040 0.039 0.042
9 0.056 0.038 0.052 0.065 0.037 0.023 0.080 0.073 0.014 0.065
10 0.028 0.040 0.031 0.056 0.044 0.090 0.059 0.067 0.014 0.037
AVE 0.058 0.057 0.032 0.053 0.065 0.056 0.063 0.055 0.024 0.062
ST.DEV 0.015 0.020 0.016 0.010 0.017 0.023 0.023 0.019 0.012 0.023
MIN 0.028 0.037 0.014 0.040 0.037 0.023 0.037 0.024 0.012 0.034
MAX 0.071 0.096 0.052 0.068 0.085 0.090 0.095 0.075 0.039 0.095
HGA 1 0.014 0.035 0.008 0.035 0.014 0.049 0.000 0.000 0.002 0.010
2 0.000 0.038 0.010 0.003 0.041 0.000 0.022 0.027 0.011 0.010
3 0.029 0.038 0.000 0.004 0.047 0.021 0.036 0.036 0.011 0.010
4 0.018 0.037 0.008 0.013 0.047 0.002 0.031 0.000 0.000 0.036
5 0.039 0.029 0.000 0.039 0.018 0.024 0.019 0.022 0.014 0.010
6 0.029 0.038 0.000 0.004 0.047 0.021 0.036 0.036 0.011 0.010
7 0.011 0.000 0.008 0.000 0.011 0.037 0.018 0.040 0.012 0.010
8 0.032 0.026 0.008 0.001 0.011 0.038 0.031 0.022 0.011 0.025
9 0.039 0.038 0.008 0.001 0.000 0.037 0.031 0.010 0.014 0.036
10 0.015 0.035 0.010 0.035 0.024 0.027 0.031 0.001 0.000 0.036
AVE 0.023 0.031 0.006 0.014 0.026 0.026 0.026 0.020 0.009 0.019
ST.DEV 0.013 0.012 0.004 0.016 0.018 0.016 0.011 0.016 0.006 0.012
MIN 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.010
MAX 0.039 0.038 0.010 0.039 0.047 0.049 0.036 0.040 0.014 0.036
Underline identifies the lowest AVE values among the four groups of data. Bold highlights the lowest values of MIN and MAX, for each column, among the provided four
groups.
4.2.3. Simulated annealing quite clear as the Simulate Annealing is never able to compete with
It consists of a regular Simulated Annealing (Kirkpatrick, Gelatt, the alternative optimization procedures.
& Vecchi, 1983), which starts with a randomly generated seed solu- The effectiveness of the proposed HGA with respect to the other
tion. The perturbation operators adopted for both the p-stage and methods may be better observed by Table 9. In fact, large-sized
the g-stage solution are the same as those used by the aforemen- instances usually involve a wider space of solutions and, as a con-
tioned local search method. Thus, a coin toss probability drives sequence, they should emphasize the ability of a certain optimiza-
the selection of either SI or PI operator. Similarly, the probability tion method in searching the most promising solutions. HGA
of perturbing the p sub-chromosome is equal to 50%, while each ensures the lower average RPI values (AVE) for each investigated
gene of the g sub-chromosome is modified through a 5% probabil- scenario problem. Looking at the bold type values, HGA reaches
ity. The cooling constant has been set to a = 0.992 while the initial the minimum makespan for nine scenario problems out of ten
temperature is equal to 1000 or 500, conforming to the class of and, in addition, it is able to minimize the maximum RPD in nine
problem to be optimized and to the number of evaluations to be cases out of ten. Finally, numerical results in terms of standard
ensured. deviation highlight the robustness of the proposed HGA in solving
large-sized problems. Regardless of the SA, which reveals again a
lack of performance, Fig. 9 outlines the average RPD behavior as
4.3. Numerical results
both the replicate and the meta-heuristics change.
The effectiveness of metaheuristic algorithms should be evalu-
In order to reduce the variability of performance due to the ran-
ated not only under the quality of solutions viewpoint but also in
dom seed driving evolutionary methods, R = 10 replicates (r = 1, . . .,
terms of computational time efficiency. Table 10 reports the aver-
R) with different seeds have been taken into account for each sce-
age computational times required by each metaheuristic algorithm
nario problem s (s = 1, . . ., 10) and for each optimization method m
for each class of problem. Although the number of evaluations for
(m = 1, . . ., 4). As a consequence, 4 10 10 2 = 800 runs have
each metaheuristics is approximately the same, a slight difference
been exploited to test the proposed optimization procedures.
of computational performance can be observed. As concerns Class I
Tables 8 and 9 show the relative performance deviations (RPDs)
scenario problems both LS, SA and HGA need a smaller computa-
for each replicate of a given scenario where RPD is computed as
tional time on the average with respect to GA, respectively. Nota-
follows:
bly, the rapidity of LS and SA is justified by their simple
current r bestMK s algorithm structure, which manages a single seed solution instead
RPDr;s ¼ 100; 8r ¼ 1; . . . ; R; ð2Þ of a population of chromosomes; on the other hand, the lower
bestMK s
computational times required by HGA confirm the effectiveness
where currentr is the makespan obtained by a certain metaheuris-
tics for the r-th replicate pertaining to a specific scenario problem
s, and bestMKs is the best makespan achieved among the tested 0.120
metaheuristics over the 10 replicates for the s-th scenario problem:
0.080
The exit criterion used for each metaheuristics algorithm is the
total number of fitness evaluations. In particular, scenario prob- HGA
RPD
0.040 HGA
proposed HGA, as confirmed by the results obtained for the sev-
0.030 LS
enth scenario problem (ST.DEV = 0). In addition, the maximum
GA
standard deviation due to scenario nine is just equal to 0.032. 0.020
Finally, it is worth noting as the quality of solutions of SA is quite 0.010
poor, as the percentage gap in terms of average RPD goes from 5.2%
0.000
to 10.7%. Fig. 8 shows the average RPD variation diagram as both
0 2 4 6 8 10 12
the scenario problem and the metaheuristic algorithm changes.
Scenario
Again, it highlights the significance performance of HGA that
mostly lies below the other competitors related curves. Also, it is Fig. 9. Average RPD diagram for Class II problems.
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 145
Table 10
Computational times analysis.
Class rr I II
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
LS 1 204 206 204 204 182 205 205 204 203 204 976 977 992 992 973 970 963 969 970 931
2 203 205 205 204 181 204 203 204 203 203 973 978 996 996 971 970 965 968 972 933
3 205 205 203 205 181 205 204 204 203 205 974 991 993 994 971 970 965 970 983 934
4 204 205 204 205 181 205 203 204 204 204 973 980 992 994 965 968 962 967 971 932
5 206 205 203 205 182 206 203 203 203 204 972 981 994 997 967 965 960 968 977 938
6 206 205 204 206 181 206 203 204 203 205 972 981 993 996 969 970 957 967 952 943
7 205 205 204 204 182 205 202 204 203 203 972 978 993 992 967 969 964 968 935 933
8 205 205 205 204 182 205 202 203 204 204 971 978 991 972 966 969 963 977 933 934
9 205 205 204 205 181 205 202 204 203 204 898 980 992 974 968 968 966 968 932 931
10 205 206 205 204 181 205 202 203 203 205 978 997 991 976 970 971 964 970 929 935
ave 205.0 205.4 204.1 204.7 181.7 205.3 202.7 203.6 203.0 204.1 965.9 982.1 992.7 988.3 968.7 969.0 962.9 969.2 955.4 934.4
g_ave 202.0 968.9
st.dev 6.9 19.2
SA 1 191 202 185 185 186 186 185 186 186 186 777 786 799 813 785 821 775 781 809 795
2 191 203 185 186 187 186 186 186 187 186 765 820 760 806 826 837 763 827 781 838
3 191 205 185 187 186 187 186 186 186 189 771 792 767 782 820 877 765 814 779 763
4 192 207 185 186 185 186 185 186 186 187 782 827 754 793 775 835 777 782 770 817
5 194 207 185 187 185 187 185 186 186 186 768 859 809 786 813 830 803 819 771 775
6 194 208 185 186 186 187 186 186 186 186 817 802 788 792 798 819 774 803 812 824
7 197 209 185 186 187 187 186 187 186 186 760 810 806 814 828 869 782 803 782 786
8 197 209 185 187 189 186 186 186 185 186 802 824 788 799 838 838 750 817 800 807
9 200 195 186 186 189 187 185 186 187 186 806 828 803 796 789 831 737 814 799 823
10 201 187 185 186 189 187 186 186 186 186 763 813 791 827 796 814 786 816 782 807
ave 194.8 203.2 185.1 186.2 186.9 186.6 185.6 186.1 186.1 186.4 558.2 583.4 562.5 572.1 576.7 598.8 551.2 577.2 563.5 574.3
g_ave 188.7 800.4
st.dev 6.1 25.8
GA 1 267 335 328 351 322 378 285 319 292 319 1157 1157 1158 1160 1154 1164 1155 1157 1152 1155
2 292 347 338 356 340 358 292 331 325 369 1161 1167 1157 1161 1157 1173 1157 1157 1150 1156
3 268 339 330 350 337 363 313 371 307 343 1161 1161 1160 1162 1159 1170 1153 1156 1154 1158
4 251 347 294 351 339 353 307 372 319 352 1161 1161 1157 1164 1159 1166 1155 1156 1146 1163
5 286 343 326 333 325 346 308 372 319 333 1157 1161 1154 1160 1157 1165 1157 1163 1152 1159
6 290 324 329 340 346 355 316 371 329 330 1164 1158 1157 1165 1159 1170 1157 1177 1146 1154
7 287 340 352 345 331 342 292 371 325 338 1161 1163 1155 1157 1157 1166 1154 1156 1150 1154
8 279 266 319 328 337 371 302 367 313 331 1156 1160 1157 1161 1160 1167 1151 1156 1151 1158
9 285 399 347 368 336 371 301 371 329 331 1158 1157 1153 1157 1155 1174 1153 1157 1151 1163
10 271 317 326 348 281 352 314 371 341 314 1159 1160 1157 1161 1156 1170 1148 1157 1153 1164
ave 277.6 335.7 328.9 347.0 329.4 358.9 303 361.6 319.9 336 1159.6 1160.4 1156.6 1160.8 1157.3 1168.7 1154.1 1159.2 1150.5 1158.4
g_ave 329.8 1158.6
st.dev 29.3 5.6
HGA 1 170 172 170 170 152 171 171 170 169 170 1063 1058 1058 1059 1066 1061 1049 1051 1050 1059
2 169 171 171 170 151 170 169 170 169 169 1060 1058 1055 1064 1056 1062 1051 1050 1047 1050
3 171 171 169 171 151 171 170 170 169 171 1059 1061 1064 1061 1062 1060 1052 1055 1048 1052
4 170 171 170 171 151 171 169 170 170 170 1062 1059 1057 1063 1061 1060 1046 1055 1049 1054
5 172 171 169 171 152 172 169 169 169 170 1061 1055 1057 1060 1063 1064 1048 1054 1045 1052
6 172 171 170 172 151 172 169 170 169 171 1062 1060 1055 1062 1059 1060 1049 1053 1047 1054
7 171 171 170 170 152 171 168 170 169 169 1062 1060 1058 1061 1059 1061 1034 1055 1044 1053
8 171 171 171 170 152 171 168 169 170 170 1062 1062 1059 1060 1061 1058 1046 1054 1048 1055
9 171 171 170 171 151 171 168 170 169 170 1063 1059 1058 1062 1061 1061 1047 1054 1047 1054
10 171 172 171 170 151 171 168 169 169 171 1063 1054 1060 1062 1063 1061 1046 1052 1043 1056
ave 170.8 171.2 170.1 170.6 151.4 171.1 168.9 169.7 169.2 170.1 1061.7 1058.6 1058.1 1061.4 1061.1 1060.8 1046.8 1053.3 1046.8 1053.9
g_ave 168.3 1056.3
st.dev 5.7 6.0
Table 12
Comparison in terms of makespan RPD and NAL to validate HGA.
schedules provided by the developed scheduling tool. The adopted to run the lot sequencing, while the second stage-stage chromo-
key performance indicator is the total completion time of the some drives the time allocation of the cleaning shifts along the pro-
whole mix of lots and the main goal consists of evaluating the vided time horizon. In fact, since the more restrictive constraint
expected number of additional lots that the proposed intelligent concerns the compulsory execution of a daily cleaning shift, a spe-
tool may lead to. Table 11 exhibits both the type and the number cific portion of the chromosome has been committed to the time
of lots that characterize each scenario problem involved in the val- allocation of the cleaning shifts. Then, in order to properly manage
idation analysis. Table 12 makes the reader able to compare the the mentioned constraints, a specific decoding algorithm has been
schedules performed by the company with those yielded by the embedded within the proposed metaheuristics. Basically, it com-
HGA. In particular, five replicates with different seeds have been putes the fitness function of a given chromosome by adopting a
carried out for each scenario problem and the corresponding RPD twofold constraint management procedure. Most constraint viola-
comparing the performance arising from each replicate with that tions are repaired during the decoding procedure, while the
manually reached by the company has been reported in Table 12. amount of violations concerning the remaining constraints feed a
Numerical results confirm that HGA is able, on the average, to proper penalty function connected to the makespan computation.
ensure a makespan reduction equal about to 8.6%. According to In light of what stated before about the influence of the cleaning
an optimistic viewpoint, the average makespan reduction could shifts time location, the proposed HGA integrates a regular GA
achieve the 10.7%, while the worse expected result should entail framework and a proper local search whose purpose is evaluating
a 6.8% makespan reduction with respect to the company approach the neighborhood of a specific solution, just by varying the integer
based on the supervisor’s experience. Basically, the most signifi- sub-chromosome holding the cleaning schedule.
cance makespan improvement (13.6%) pertains replicate four of The quality of solutions as well as the robustness of the pro-
problem two, whereas the worst result (3.4%) is ascribable to the posed HGA was tested with respect to a set of alternative metaheu-
fifth replicate of problem four. However, it worth pointing out as ristics, namely a Simulated Annealing, a regular genetic algorithms
the HGA-based scheduler is able to assure a makespan reduction and a specific local search. The test benchmark was generated
as well as a production rate improvement in all the investigated through a set of real-world data supplied by the company and
tested cases. As far as the Number of Additional Lots (NAL) indica- the obtained numerical results confirmed the effectiveness of the
tor, numerical results are reported in Table 12 too. NAL is equal to proposed HGA under the quality of solution viewpoint. Further-
the number of additional lots that may be started within the time more, a set of schedules performed by the company supervisor
window between the makespan reached by the company schedule have been utilized as a benchmark to validate the proposed HGA
and that yielded by HGA. Since the scenario problems provided by and to evaluate the average difference of performance between
the company should embrace a time horizon equal about to one the empirical approach used by the company to date and the pre-
month, the results in terms of NAL highlight as HGA may generate sented optimized expert system. The proposed genetic optimiza-
an average NAL increase, which goes from a minimum of two to a tion engine has been embedded within a customized production
maximum of three lots. Without loss of generality, it could be sta- scheduler that is currently used by the company supervisor.
ted that the average annual benefit gained from the proposed Though the scheduler is mainly oriented to the short-term produc-
scheduling method is equal about to 33 lots. tion planning, often it used by the management of the company for
approaching medium-term forecast analyses, whose objective is to
5. Conclusion provide the expected number of lots the system is able to produce
within a specific time window.
In this paper a real-life batch scheduling problem from the
pharmaceutical industry has been addressed. The scheduling prob-
lem under investigation is characterized by several constraints and References
process features, most of which due to a series of compulsory dis-
positions that firms working in the pharmaceutical environment Azzaro-Pantel, C., Bernal-Haro, L., Baudet, P., Domenech, S., & Pibouleau, L. (1998). A
two-stage methodology for short-term batch plant scheduling: discrete event
have to respect. Since the mentioned constraints strongly increase simulation and genetic algorithms. Computers & Chemical Engineering, 22(10),
the degree of complexity of the problem under investigation, no 1461–1481.
mathematical modeling has been developed and, as a result, any Balin, S. (2011). Non-identical parallel machine scheduling using genetic algorithm.
Expert Systems with Applications, 38(6), 6814–6821.
chance of optimally solving the proposed scheduling problem has
Baker, K. R., & Trietsch, D. (2009). Principles of sequencing and scheduling. NJ: Wiley &
been disregarded. Thus, a dedicated hybrid genetic algorithm has Sons Inc.
been developed in order to fulfill the firm’s requirements. Since Behnamian, J., Fatemi Ghomi, S. M. T., Jolai, F., & Amirtaheri, O. (2012). Minimizing
most constraints refer to the time overlap between different tasks, makespan on a three-machine flowshop batch scheduling problem with
transportation using genetic algorithm. Applied Soft Computing, 12, 768–777.
a proper two-stage encoding has been designed. In particular, the Blum, C., Puchinger, J., Raidl, G. R., & Roli, A. (2011). Hybrid metaheuristics in
first-stage chromosome is arrange as a permutation string aiming combinatorial optimization: A survey. Applied Soft Computing, 11, 4135–4151.
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 147
Celano, G., Costa, A., & Fichera, S. (2008). Scheduling of unrelated parallel Li, X. L., Huang, Y. L., Tan, Q., & Chen, H. P. (2013). Scheduling unrelated parallel
manufacturing cells with limited human resources. International Journal of batch processing machines with non-identical job sizes. Computers & Operations
Production Research, 46, 405–427. Research, 40, 2983–2990.
Chen, Y.-Y., Cheng, C.-Y., Wang, L.-C., & Chen, T.-L. (2013). A hybrid approach based Liao, T. W., Chang, P. C., Kuo, R. J., & Liao, C.-J. (2014). A comparison of five hybrid
on the variable neighborhood search and particle swarm optimization for metaheuristic algorithms for unrelated parallel-machine scheduling and
parallel machine scheduling problems – A case study for solar cell industry. inbound trucks sequencing in multi-door cross docking systems. Applied Soft
International Journal of Production Economics, 141, 66–78. Computing, 21, 180–193.
Cheng, B., Cai, J., Yang, S., & Hu, X. (2014). Algorithms for scheduling incompatible Lin, R., & Liao, C.-J. (2012). A case study of batch scheduling for an assembly shop.
job families on single batching machine with limited capacity. Computers and International Journal of Production Economics, 139, 473–483.
Industrial Engineering. http://dx.doi.org/10.1016/j.cie.2014.06.014. Liu, L. L., Ng, C. T., & Cheng, T. C. E. (2009). Scheduling jobs with release dates on
Cheraghi, S. H., Vishwaram, V., & Krishnan, K. K. (2003). A hybrid genetic algorithm parallel batch processing machines. Discrete Applied Mathematics, 157,
for scheduling of a single batch-processing machine. International Journal of 1825–1830.
Industrial Engineering: Theory Applications and Practice, 10(2), 175–187. Low, C. (2005). Simulated annealing heuristic for flow shop scheduling problems
Chiang, T.-C., Cheng, H.-C., & Fu, L.-C. (2010). A memetic algorithm for minimizing with unrelated parallel machines. Computers & Operations Research, 32(8),
total weighted tardiness on parallel batch machines with incompatible job 2013–2025.
families and dynamic job arrival. Computers & Operations Research, 37, Loukil, T., Teghem, J., & Fortemps, P. (2007). A multi-objective production
2257–2269. scheduling case study solved by simulated annealing. European Journal of
Costa, A., Cappadonna, F. A., & Fichera, S. (2013). A hybrid genetic algorithm for job Operational Research, 179, 709–722.
sequencing and worker allocation in parallel unrelated machines with Meeran, S., & Morshed, M. S. (2012). A hybrid genetic tabu search algorithm for
sequence-dependent setup times. International Journal of Advanced solving job shop scheduling problems: A case study. Journal of Intelligent
Manufacturing Technology, 69, 2799–2817. Manufacturing, 23, 1063–1078.
Crepinsek, M., Liu, S.-H., & Mernik, M. (2013). Exploration and exploitation in Michalewicz, Z. (1994). Genetic algorithms + data structures = evolution programs
evolutionary algorithms: A survey. ACM Computing Surveys, 45(3). Art. 35. (2nd ed.). Springe-Verlag.
Damodaran, P., & Vélez-Gallego, M. C. (2012). A simulated annealing algorithm to Missbaurer, H., Hauber, W., & Stadler, W. (2009). A scheduling system for the
minimize makespan of parallel batch processing machines with unequal job steelmaking-continuous casting process. A case study from the steel-making
ready times. Expert Systems with Applications, 39(1), 1451–1458. industry. International Journal of Production Economics, 47(15), 4147–4172.
Fu, R., Cheng, T. C. E., Ng, C. T., & Yuan, J. (2013). An optimal online algorithm for Mönch, L., Balasubramanian, H., Fowler, J. W., & Pfund, M. E. (2005). Heuristic
single parallel-batch machine scheduling with incompatible job families to scheduling of jobs on parallel batch machines with incompatible job families
minimize makespan. Operations Research Letters, 41, 216–219. and unequal ready times. Computers & Operations Research, 32, 2731–2750.
Guo, Z. X., Wong, W. K., Leung, S. Y. S., Fan, J. T., & Chan, S. F. (2006). Mathematical Pearn, W. L., Chung, S. H., Chen, A. Y., & Yang, M. H. (2004). A case study on the
model and genetic algorithm for the job shop scheduling problem in mixed- and multistage IC final testing scheduling problem with reentry. International
multi- product assembly environment: A case study based on the apparel Journal of Production Economics, 88, 257–267.
industry. Computers & Industrial Engineering, 50, 202–219. Sand, G., Till, J., Tometzki, T., Urselmann, M., Engell, S., & Emmerich, M. (2008).
Guo, Z. X., Wong, W. K., Li, Z., & Ren, P. (2013). Modeling and Pareto optimization of Engineered versus standard evolutionary algorithms: A case study in batch
multi-objective order scheduling problems in production planning. Computers scheduling with resources. Computers & Chemical Engineering, 32(11),
& Industrial Engineering, 64, 972–986. 2706–2722.
He, Y., & Hui, C.-W. (2010). A binary coding genetic algorithm for multi-purpose Soman, C. A., Van Donk, D. P., & Gaalman, G. J. C. (2007). Capacitated planning and
process scheduling: A case study. Chemical Engineering Science, 65, 4816–4828. scheduling for combined make-to-order and make-to-stock production in the
Hermann, J. (2006). Handbook of production scheduling. New York, NY 10013, USA: food industry: An illustrative example. International Journal of Production
Springer+Science+Business Media, Inc. Economics, 108, 191–199.
Huang, D. C., & Guo, H. D. (2004). Hybrid genetic algorithm for solving job Soyuer, H., Kocamaz, M., & Kazancoglu, Y. (2007). Scheduling jobs through multiple
scheduling problem on non-identical parallel machines based on JIT technique. parallel channels using an expert system. Production Planning and Control, 18(1),
Computer Integrated Manufacturing Systems, 10(3), 298–302. 35–43.
Huang, S., Cai, L., & Zhang, X. (2010). Parallel dedicated machine scheduling problem Stefansson, H., Sigmarsdottir, S., Jensson, P., & Shah, N. (2011). Discrete and
with sequence-dependent setups and a single server. Computers & Industrial continuous time representations and mathematical models for large production
Engineering, 58, 165–174. scheduling problems: A case study from the pharmaceutical industry. European
Jia, J., & Mason, S. J. (2009). Semiconductor manufacturing scheduling of jobs Journal of Operational Research, 215, 383–392.
containing multiple orders on identical parallel machines. International Journal Vallada, E., & Ruiz, R. (2011). A genetic algorithm for the unrelated parallel machine
of Production Research, 47(10), 2565–2585. scheduling problem with sequence dependent setup times. European Journal of
Kim, D. W., Kim, K. H., Jang, W., & Chen, F. F. (2002). Unrelated parallel machine Operational Research, 211(3), 612–622.
scheduling with setup times using simulated annealing. Robotics and Computer- Venditti, L., Pacciarelli, D., & Meloni, C. (2010). A tabu search algorithm for
Integrated Manufacturing, 18(3–4), 223–231. scheduling pharmaceutical packaging operations. European Journal of
Kirkpatrick, S., Gelatt, C. D., & Vecchi, M. P. (1983). Optimization by simulated Operational Research, 202, 538–546.
annealing. Science, 220, 671–680. Yang, T. (2009). An evolutionary simulation-optimization approach in solving
Kopanos, G. M., Mendez, C. A., & Puigjaner, L. (2010). MIP-based decomposition parallel-machine scheduling problems – A case study. Computers and Industrial
strategies for large-scale scheduling problems in multiproduct multistage batch Engineering, 56, 1126–1136.
plants: A benchmark scheduling problem of the pharmaceutical industry. Wang, W.-L., Wang, H.-Y., Zhao, Y.-W., Zhang, L.-P., & Xu, X.-L. (2013). Parallel
European Journal of Operational Research, 207, 644–655. machine scheduling with splitting jobs by a hybrid differential evolution
Li, K., Yang, S.-L., & Ma, H.-W. (2011a). A simulated annealing approach to minimize algorithm. Computers & Operations Research, 40, 1196–1206.
the maximum lateness on uniform parallel machines. Mathematical and Wang, H. M., & Chou, F. D. (2010). Solving the parallel batch-processing machines
Computer Modeling, 53(5–6), 854–860. with different release times, job sizes, and capacity limits by metaheuristics.
Li, S., Ng, C. T., Cheng, T. C. E., & Jinjiang, Yuan (2011b). Parallel-batch scheduling of Expert Systems with Applications, 37(2), 1510–1521.
deteriorating jobs with release dates to minimize the makespan. European
Journal of Operational Research, 210, 482–488.