Sie sind auf Seite 1von 18

Computers & Industrial Engineering 79 (2015) 130–147

Contents lists available at ScienceDirect

Computers & Industrial Engineering


journal homepage: www.elsevier.com/locate/caie

Hybrid genetic optimization for solving the batch-scheduling problem


in a pharmaceutical industry q
A. Costa ⇑

University of Catania, DII, Viale Andrea Doria 6, 95125 Catania, Italy

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.

1. Introduction highlighting their vulnerability against most real-world problems.


According to Hermann (2006), algorithms that can find optimal
Nowadays firms have to tackle an ever increasing global compe- solutions to these hard problems in a reasonable amount of time
tition as well as an ever changing market demand fluctuation. Such are unlikely to exist.
a stressing condition pushes firms to continuously improve the However, in the last decades, two different research streams
performance of their production processes as to deliver the fin- concerning the optimization of real-life scheduling problems have
ished products as early as possible and at the lowest production captured the attention of both practitioners and scholars. The for-
cost. Scheduling optimization methods play a key role in manufac- mer consists of the integration between heuristics and mathemat-
turing performance improvement and cost reduction and, as a con- ical programming models, as demonstrated by the following
sequence, they may represent a leading leverage in increasing literary contributions.
firms’ competitiveness. Kopanos et al. (2010) proposed a mixed integer programming-
Since most industrial scheduling problems are highly combina- based decomposition strategy to cope with a scheduling problem
torial and involve complex decision-making issues, they rarely can of a multi-stage pharmaceutical process. Their solution strategy
be optimally solved in a reasonable amount of time. Further, the approach entails a MIP-based core and consists of two major pro-
computational effort to find a good solution is strongly dependent cedures: the constructive step and the improvement step. The
on the problem size itself. Although mathematical formulations are objective of the former step is the generation of a feasible schedule
able to describe a large number of scheduling problems, in practice, in a short amount of time. Afterwards, the obtained schedule is
they can only solve problems of modest size in a reasonable gradually improved by implementing some elaborate rescheduling
computational time (Kopanos, Mendez, & Puigjaner, 2010), thus techniques by the latter step. Similarly, Stefansson, Sigmarsdottir,
Jensson, and Shah (2011) used the decomposition-based approach
q to face a real-world scheduling problem related to the packing
This manuscript was processed by Area Editor T.C. Edwin Cheng.
⇑ Tel.: +39 095 7382457; fax: +39 095 337994. stage of a pharmaceutical company. After a thorough analysis of
E-mail address: antonio.costa@dii.unict.it the process flow, they observed that there was a very critical
URL: http://www.dii.unict.it/users/costa bottleneck in the overall production process at the last stage, i.e.

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

- regardless of the product type, sequence dependent setup


times and removal times are required for each batch to be
processed; Fig. 1. Process flow.
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 133

2. Description of the problem of lot i from lyophilizer j;


lcij lyophilizer CIP/SIP starting time after lot i is
Notations processed by lyophilizer j;
lc’ij (=lcij + lcs) lyophilizer CIP/SIP completing time
Indices after lot i is processed by lyophilizer j;
i=1, . . ., N; number of lots to be produced; lkij lyophilizer leak test starting time after lot i is
j = 1, . . ., M; lyophilizers; processed by lyophilizer j;
p = 1,2,..,P; product types; lk’ij (=lkij + lkt) lyophilizer leak test completing time
w = a, b; product categories; after lot i is processed by lyophilizer j;
d = 1, . . ., days of Time Horizon; cij change-over starting time before lot i is
TH; processed by lyophilizer j;
c’ij (=cij + cov) change-over completion time before
Parameters
lot i is processed by lyophilizer j;
pti lot i lyophilization process time;
cl(d) (=g(d)) aseptic area cleaning start time at day d;
fsu filling setup time;
h(x) hour clock time from 1 a.m. to 24 p.m. when
fll filling time;
variable x occurs (e.g. h(sij) = 21 means sij occurs
fcs filling CIP/SIP time;
at 21 p.m.)
lld lyophilizer load time;
d(x) day time from 1 to TH when variable x occurs
ltr allowable loading time reduction;
(e.g. d(sij) = 12 means that sij occurs at day 12);
lud lyophilizer unload time;
a_fill(j) allowable filling starting time for processing any
lcs lyophilizer CIP/SIP time;
lot through lyophilizer j within a given time
lkt lyophilizer leak test time;
limit;
cov changeover time ‘‘from lot p(i) to lot p(h)’’/
a_lyo(j) availability of lyophilizer j to start processing.
’’from lot p(h) to lot p(i)’’|p(i), p(h) = 4,
5 ^ p(i) – p(h);
cln aseptic area cleaning time;
prp preparation time limit; As described in the previous section, the proposed real-world
cfl time limit between two consecutive fillings; issue significantly differs from the theoretical scheduling models
cst complete sterilization time (including filling investigated by literature. The following paragraph aims to outline
machine CIP/SIP time); a formal as well as synthetic description of the problem.
sch shift change time; Assume N batches, also called lots, to be produced through M
Variables identical parallel machines. Each machine may process one lot at
p(i) product type corresponding to the i-th gene of a time. The provided N lots involve P|P < N different kinds of prod-
solution p; ucts; thus, each lot refers to a single product type. Lot processing
g(d) hour clock time corresponding to the d-th gene times connected to the different product types are a priori-known.
of solution g; Regardless of the multitude of constraints affecting the mentioned
w(i) category of product p(i); problem, it can be stated that both lot setup times and lot removal
p(i) = 1, 2, type of preparation for the i-th lot of p; times are sequence dependent. A number of time windows con-
3; forming to the planning time length have to be placed along the
r(i) = 1, . . ., number of preparation for i-th lot of p(i); planning time itself. During each time window neither setup nor
p(i); removal operations may occur. Neither preemptions nor machines’
sij setup filling starting time of lot i before being breakdowns are allowed. The whole set of lots is available at time
processed by lyophilizer j; zero.
s’ij (=sij + fsu) setup filling completing time of lot i The problem under investigation refers to a manufacturing pro-
before being processed by lyophilizer j; cess of pharmaceutical products. For the sake of privacy, neither
fij filling starting time of i-th lot before being the name of the company nor the specific kind of product may
processed by lyophilizer j; be discussed in this paper. As far as the material flow is concerned,
f’ij (=fij + fll) filling completing time of lot i before Fig. 1 shows the different production stages required to pass from
being processed by lyophilizer j; the raw material to the finished product. The first stage entails the
fcij filling machine CIP/SIP starting time of lot i preparation of the chemical solution, i.e. the semi-finished product
processed by lyophilizer j; that requires four more production stages before being delivered
fc’ij (=fcij + fcs) filling machine CIP/SIP completing and introduced through the market. According to what the com-
time of lot i processed by lyophilizer j; pany stated, no more than three lots of the same product may be
lij lyophilizer load starting time of lot i into contemporarily yielded by the preparation stage. In addition, once
lyophilizer j; batches involved within each preparation are completed, they can-
l’ij (=lij + lld) lyophilizer load completing time of lot not wait for more than a certain time period before being pro-
i into lyophilizer j; cessed at the subsequent stage. In fact, once the chemical
rij lyophilizer run starting time for lot i into solution for a given batch of product has been prepared, a set of fla-
lyophilizer j; cons needs to be filled at the filling stage. Actually, whenever a new
r’ij (=rij + pti) lyophilizer run completing time for lot preparation batch, hereinafter lot, has to be poured into the fla-
i into lyophilizer j; cons, a specific sterilization task is required and a setup of the fill-
uij lyophilizer unload starting time of lot i from ing machines is needed. Each lot comprises about 500 l of raw
lyophilizer j; product and its preparation may be executed in three ways,
u’ij (=uij + lud) lyophilizer unload completing time according to the quantity of lots it generates: single-, double- or
triple-lot preparation. A single-lot preparation implies just a single
lot of product; a double preparation fulfills two lots and a triple
134 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147

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

sublimation. Sublimation is the transition of a substance from


the solid to the vapor state, without first passing through an inter- Fig. 2. Filling and lyophilization within the aseptic area.
mediate liquid phase.
After lyophilization is completed, flacons have to be unloaded
by the same operator employed for the loading task. Once all the load/unload, filling) is allowed. In words, no risk of contamination
flacons have been unloaded, the lyophilizer has to be subject to a arising from the human presence is accepted during the cleaning
twofold sterilization treatment named CIP/SIP and Leak test. How- phase. Of course, lyophilizers may run when cleaning operations
ever, the next paragraph discusses some cases in which such a are in progress.
twofold treatment may be disregarded.
Then, bottles are closed at the sealing stage and, finally, they 2.1. Constraints of the problem
pass through the packaging stage before being stored in the fin-
ished product inventory. It worth pointing out that both sealing In light of what discussed in the previous section, the problem
and packaging do not suffer any gap in terms of capacity; thus, under investigation has been modeled as a parallel machine sched-
as indicated by the company managers, and through the numerous uling problem, though the compulsory application of the GMP rules
empirical observations performed by authors, the first three man- for such a kind of company entails a significant distortion of the reg-
ufacturing stages strongly affect the performance of the process in ular model usually studied by literature. The well-known Good
hand. Hence, the restricted capacity of the preparation stage along Manufacturing Practices (GMPs) are production and testing prac-
with the numerous constraints affecting both filling and lyophiliza- tices that helps to ensure a quality product. Many countries have
tion tasks significantly limit the production rate of the system in legislated that pharmaceutical and medical device companies must
hand. In particular, since a time-consuming cleaning/sterilization follow GMP procedures, and have created their own GMP guide-
phase is required on the filling equipment whenever an entire lines that correspond with their legislation. Basic concepts of all
preparation is processed, preparations that gather a high number of these guidelines remain more or less similar to the ultimate goals
of lots (e.g. triple or double preparations) are preferred under the of safeguarding the health of the patient as well as producing good
makespan reduction perspective. quality medicine, medical devices or active pharmaceutical prod-
Nevertheless, as may be noticed in the next paragraphs, single ucts [http://www.fda.gov/Drugs/DevelopmentApprovalProcess/
lot preparations may profitably be introduced in the time slots Manufacturing/ucm169105.htm].
generated by the numerous constraints affecting the problem in The following list summarizes the constraints characterizing
hand. the observed pharmaceutical manufacturing issue. For each con-
In light of the aforementioned remarks, the overall process has straint a mathematical description has been provided with the
been modeled only on the basis of the lyophilization process while aim of illustrating the relationships among the different variables.
filling has been managed as a preliminary task properly driven by It is worth pointing out as several constraints refer to the five prod-
the type of preparation adopted for the lots to be processed (Fig. 2). uct types currently manufactured by the company.
The observed lyophilization production stage entails three par-
allel identical lyophilizers, hereinafter called machines. Machines 1. Shop floor cleaning can be performed only during the third
are always available; thus no breakdowns may occur. Preemption shift (from 10:00 p.m. to 6:00 a.m.);
is not allowed. Since the preparation task should be planned clðdÞ þ cln 6 24 þ 6 if ð22 6 clðdÞ 6 24Þ
through a proper lot schedule, all the lots to be scheduled may ð1Þ
clðdÞ þ cln 6 6 if ðclðdÞ P 1Þ;
be considered as available at time zero. Descriptors of lots and
the other task times are known in advance. Since machines are 2. A triple lot preparation is allowed only for product type 3,
identical, allocation of lots to machines is based on the first avail- whether it is preceded by a single lot preparation of
able machine (FAM) policy. Filling may be anticipatory with product 1;
respect to lyophilization. Filled flacons may wait for a limited
pðhÞ ¼ 3; rðiÞ ¼ 3 if pðhÞ ¼ 3 and pði  3Þ
amount of time before being loaded into a lyophilizer. h¼i;i1;i2 h¼i;i1;i2
Both lyophilizer load and unload tasks are performed by the
¼ 1 and pði  3Þ ¼ 1 and i > 3; ð2Þ
same worker; thus, such a kind of tasks cannot be timely over-
lapped. Due to some international dispositions, the aseptic area 3. Regardless of any kind of preparation, a proper setup opera-
department must be cleaned every day during the third shift tion of lot i on a lyophilizer j is required whenever the first
and, in addition, the cleaning task should take 3 h; thus, the daily filling of any preparation occurs;
cleaning phase cannot start before 22:00, or later than 03:00 a.m. 
of the subsequent day. The time slot positioning of the department
¼ 0 if rðiÞ > 1
sij ð3Þ
cleaning plays a key role in the lot scheduling issue since no over- >0 if rðiÞ ¼ 1
lap between such a task and other manual activities (lyophilizer
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 135

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

ð7Þ An illustrative example will be presented in order to demonstrate


8. In case of double-lot preparation, the time interval how such constraints influences the proposed scheduling problem.
between the filling completion time (f’i1,j⁄) of the previous
lot in the precedent machine (j⁄) and the filling starting 2.2. An illustrative example
time of lot i in machine j (fij) must be lower than or equal
to cfl time; In order to better depict how the mentioned constraints
0
increase the complexity of the proposed scheduling problem, the
f ij  f i1;j 6 cfl; if pði  1Þ ¼ pðiÞ ¼ 2; rði  1Þ ¼ 1; rðiÞ ¼ 2; following example may be analyzed. Seven lots (i = 1, . . ., 7) con-
ð8Þ nected to four product types (p = 1, . . ., 4) are considered. For sake
of clarity, hereinafter those four product types will be denoted by
9. Time interval between the filling starting time fij (or sij if p = A, B, C, D. Products belong to two categories (a and b) and lot
r(i) = 1) and the lyophilization starting time rij must be specifications are reported in Table 1.
lower than or equal to prp time; Let us suppose that the following sequence of lots p = (A-A-C-C-
rij  sij 6 prp; ðrðiÞ ¼ 1Þ or r ij  f ij 6 prp; ðrðiÞ > 1Þ; ð9Þ D-D-B) should be scheduled through the provided M = 3 lyophiliz-
ers, as to satisfy the mentioned constraints. Fig. 3 shows the Gantt
10. Whether a triple lot may be processed, the third lot filling diagram involving both filling and lyophilization phases for each
requires an additional time (aft) to be completed. lot and for each machine. Both filling and lyophilization related
0 tasks were reported into the same Gantt diagram with the aim of
f ij f ij þ fll þ aft; if pðiÞ ¼ 3 and rðiÞ ¼ 3; ð10Þ
explaining the way most constraints should be managed. The pro-
11. Lyophilizer loading and unloading tasks concerning two duction supervisor usually adopts the same approach to plan the
distinct lyophilizers have not to be overlapped. Loading short-term production scheduling. Shop floor cleaning time inter-
has priority with respect to unloading; vals (light blue areas) are located respecting both constraints 1
0 and 6. The lower time axis refers to the clock time of each day,
uhk lij ; if ðuhk þ lud P lij and uhk þ lud while the upper time axis holds the progressive time. Setup filling
0 0
6 lij Þ or ðuhk P lij and uhk 6 lij Þji–h; j–k ð11Þ and the filling task itself must precede the load task of the first lot
into the first lyophilizer (constr. 3). Once all the flacons have been
12. Loading tasks concerning two different lyophilizers have not loaded, lyophilization may start and the filling task for the second
to be overlapped in time, due to a limited workforce lot may start. To do that, a double-lot preparation should be
availability. provided for the two lots of product A. After the second filling is
0 completed a CIP/SIP task is required on the filling stage and any
lij lhk þ lld; if ðlhk þ lld P lij and lhk þ lld 6 lij Þji–h; j–k
subsequent filling setup may not start before a time interval
lhk lij þ lld; if ðlhk P lij and lhk 6 lij þ lldÞji–h; j–k equal to cst (constr. 18). Filling tasks executed during the shift
ð12Þ

13. If before any lyophilizer load there is not any in-progress


activity with exception of filling (e.g. CIPSIP, Leak test, Table 1
Unload), then the loading task time may be reduced by ltr Features of the products to be scheduled.
time.
Lots to be scheduled 1 2 3 4 5 6 7
0 0 0
lij lij þ lld  ltr; if lij  maxflchj ; u0hj ; lkhj g > 1 ð13Þ Product type – p A A B C C D D
h<i Product category – w a a b a a b b
136 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147

Fig. 3. Gantt diagram concerning filling and lyophilization phases.

changeover have a longer duration (aft time increment), as con- Table 2


firmed by the different length of the green blocks (constr. 7). Also Preparation schedule.

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

Due to the particular structure of the problem under investiga-


tion, the adopted encoding approach is based on a two-stage chro-
scheduled are the same products (p(2) = A, p(3) = A); thus, a dou-
mosome (hereinafter defined as x = p + g), as reported in Table 3.
ble-lot preparation should be arranged: p(2) = A is the first lot to
The first stage (p) holds the sequence of lots to be processed, while
be worked (r(2) = 1), while p(3) = A is the second prepared lot
the second one, denoted by g, includes the department cleaning
(r(3) = 2) to be poured into the flacons. Although three C lots have
starting time for each day of the provided time horizon TH. Thus,
to be processed after product A, they cannot be prepared as triple-
as for example, p(3) = A means that a lot of product A is the third
lots because of constraint 2. Hence, fourth and fifth lot should be
job to be processed, while g(2) = 3 denotes that cleaning task of
managed by a double-lot preparation (p(4) = p(5) = 2), while the
the aseptic area at day 2 should start at 3 a.m., since cleaning time
remaining C lot (p(6)) is handled by a single-lot preparation
intervals starting from 24:00 p.m. to 3:00 a.m. always refer to the
(p(6) = 1). Preparation of the downstream lots should be arranged
previous day.
according to the same fashion (see Table 4). It worth pointing
out that triple-lot preparations according to constraint 2 are han-
3.3. Decoding procedure and fitness evaluation dled by the same automatic procedure.
In short, five different leading blocks may denote the structure
A specific decoding procedure has been developed with the aim of the implemented decoding algorithm:
of keeping as much as possible the feasibility of a certain chromo-
some x, and driving the genetic exploration just towards areas of 1. First block initializes the input data defined by the user, which
feasible solutions as well. For that reason, such decoding algorithm also depend on the time length characterizing the planning per-
has been equipped with several repair instructions, aiming to over- iod. However, TH depends on the number of lots to be sched-
come most constraint violations. In order to balance exploration uled. Then, for a given chromosome x to be decoded: (a)
and exploitation of the proposed metaheuristics, a proper violation cleaning time intervals are allocated along the provided time
function has been provided for a set of specific constraints. In fact, horizon, according to the starting times within the g sub-chro-
an excessive number of repairing actions may convert the decoding mosome; (b) a kind of preparation related to the sub-chromo-
procedure into a constructive algorithm, thus raising the risk of some p is assigned to each lot of the sequence by means of
being trapped into a local near-optimal solution. the mentioned automatic procedure.
The time positioning of cleaning time intervals along the pro- 2. Second block runs the filling task related to the first lot of any
vided time horizon is a crucial aspect of the entire decoding proce- preparation to be processed. As a consequence, setup tasks
dure, and it may strongly affect the feasibility of a given solution. In (constraint 3) and product size changeovers (constraint 4) are
order to properly manage the time variables included within the g managed in this block. Further, such a block of decoding proce-
sub-chromosome, the time horizon has been arranged conforming dure includes two ad-hoc repair instructions addressing any
to a discrete time representation. So, the overall planning time, possible time overlap arising from violation of either con-
whose length should be preliminary tuned according to the num- straints 5 or 6.
ber of lots to be scheduled, is divided into a defined number of 3. Third block is able to manage the filling task concerning the sec-
identical time units. Conforming to the standard processing times ond/third lot of any double/triple lot preparation. In case of tri-
provided by the company, in the present research a time unit equal ple-lot preparation (constraint 2), the same block is able to
to 1 h has been adopted. schedule the filling task pertaining to both second and third
According to Section 2.2, the filling stage decoding has been lot of such a triple preparation. Similarly to block two, this por-
included in the overall decoding procedure, which involves the tion of decoding algorithm is equipped with the same repair
lyophilization phase as well. Remembering that the filling task instructions able to cope with any unfeasibility arising from
depends on the kind of lot preparation and its efficacy can be violation of constraints 6 and 5. In addition, in order to fulfill
enhanced whether triple-lot and double-lot preparations are max- the time gap required by constraint 9, such block holds a spe-
imized, the kind of preparation for each lot is managed by a proper cific repair algorithm (denoted as EFL), whose role will be clar-
automatic procedure whose aim is reducing the required number ified in the next sections.
of single-lot preparations, thus giving priority to triple- and dou- 4. Fourth block handles the lyophilization phase of each lot, also
ble-lot preparations. including complementary tasks like loading, unloading and,
Table 4 shows an example about how the automatic procedure when required, CIP/SIP and leak test. It runs any possible time
concerning the lot preparation issue works. The first lot (p(1) = B) overlap both constraints 11 and 12 refer to. In addition, this part
to be processed must be prepared as a single-lot since it is followed of decoding algorithm has a twofold role: reducing the loading
by a different type of product (A). Both second and third lot to be time in case constraint 13 occurs and tackling the task schedul-
ing affected by the product category issue (see constraints 14,
and 15). Finally, constraint 16 violation, concerning the time
Table 3 overlap between the activities supporting lyophilization and
Outline of chromosome encoding. the shop cleaning, is properly faced by this block.
x 5. Of course, once the mentioned actions have been applied to
decode a certain schedule, a number of constraint violations
p g
may be generated. Fifth block assigns penalties whenever con-
1 2 3 ... i ... N 1 2 3 ... d ... TH
straints 8,16 and 17 are violated and, additionally, it computes
B A A ... p(i) ... D 22 3 24 ... g(d) ... 22
the fitness function as follows:
138 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147

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

i = i + 1; ing problems. For example, Azzaro-Pantel, Bernal-Haro, Baudet,


if i + 1 > N then goto Step 5 Domenech, and Pibouleau (1998) developed a two-stage methodol-
if r(i) = 1 then goto Step 2 ogy for the short-term batch scheduling problem. The first step
if r(i) > 1 then goto Step 3 involves the discrete-event simulation (DES) to model the produc-
Step 5: Compute constraint violation and fitness tion system behavior. In the second step they used genetic algo-
The overall schedule is analyzed rithms (GAs) for minimizing the average residence time to
for (any overlap time interval (oti) arising from produce a set of batches. Mönch, Balasubramanian, Fowler, and
constraint 8, 16 and 17 violation) Pfund (2005) studied the diffusion and oxidation areas of semicon-
viol = viol + oti; ductor wafer fabrication, where the machines can be modeled as
next parallel batch processors. They attempted to minimize total
Step 5.1: Fitness function weighted tardiness on parallel batch machines with incompatible
0
fitness ¼ maxj¼1;...;J flkNj g int(viol  J  N1.07); job families and unequal jobs ready times through a Genetic algo-
rithm combined with a decomposition method. Motivated by sched-
uling of diffusion operations in the wafer fabrication facility, Chiang,
EFL repairing procedure pseudo-code Cheng, and Fu (2010) attempted to minimize the total weighted tar-
diness on parallel batch machines with incompatible job families
Step 1: Identification of day d⁄ corresponding to lyophilizer j and dynamic job arrival. They proposed a memetic algorithm with
availability time: a new genome encoding scheme to search for the optimal or near-
if cl(d⁄) 6 a_lyo(j) 6 cl(d⁄) + cln then optimal batch formation and batch sequence simultaneously.
a_lyo(j) cl(d⁄) + cln; Machine assignment is resolved in the proposed decoding scheme.
endif Recently, Behnamian, Fatemi Ghomi, Jolai, and Amirtaheri (2012)
Step 2: Check if a forward shifting equal to cfl of the filling studied the minimization of makespan in a three-machine flowshop
start time fij may satisfy constraint 2 violation, scheduling problem in which a batch processing machine is located
otherwise, to ensure the feasibility of solution, lot i must between two single processing machines on first and third stages.
be treated as a single lot: Since the problem under study is NP-hard, a genetic algorithm is also
if a_lyo(j) + lld  fij > prp and a_lyo(j) + lld  fij 6 prp + fll proposed to minimize makespan. Finally, both efficacy and effi-
then ciency of a genetic algorithms with a novel chromosome representa-
fij a_lyo(j) + lld-prp; tion has been recently exploited for the multi-objective order
elseif a_lyo(j) + lld-fij > prp + fll then scheduling problem in a complicated production environment
if a_lyo(j) + lld-prp P f’i1,j⁄ + cst then (constr. 17) (Guo, Wong, Li, & Ren, 2013).
sij a_lyo(j) + lld-prp; The main motivation behind the hybridization of different algo-
goto step 3 rithms is to exploit the complementary character of different opti-
elseif a_lyo(j) + lld-cst P f’i1,j⁄ + cst then (constr. 17) mization strategies, that is, hybrids are believed to benefit from
sij a_lyo(j) + lld-cst; synergy. In fact, choosing an adequate combination of complemen-
goto step 3 tary algorithmic concepts can be the key for achieving top perfor-
else mance in solving many hard optimization problems (Blum,
sij f’i1,j⁄ + cst; Puchinger, Raidl, & Roli, 2011). Recently, Liao, Chang, Kuo, and
endif Liao (2014) strengthened the effectiveness of hybrid metaheuris-
Step 3: tics for solving the unrelated parallel machine scheduling and
s’ij sij + fsu; inbound truck sequencing in a multi-door cross docking system
fij s’ij; in consideration of sequence dependent setup, and both zero and
f’ij fij + fll; nonzero release time. Finally, further noteworthy research contri-
if (time overlap between setup/filling and shift butions in the field of the parallel machine scheduling problem
change = true) then were endorsed by Cheraghi, Vishwaram, & Krishnan, 2003;
f’ij f’ij + aft; Huang & Guo, 2004; Wang, Wang, Zhao, Zhang, and Xu (2013).
endif
update lot preparation schedule: p(i), r(i), "i = 1, . . ., N;
inserting the CIP/SIP task before the previous lot filling: 3.5. Structure of the proposed hybrid genetic algorithm
lci1,j⁄ f’i1,j⁄; The proposed genetic algorithm has been developed according
lc’i1,j⁄ lci1,j⁄ + cst; exit to the specific features of the industrial problem under investiga-
tion. The high number of constraints, the double encoding, the
presence of lots of the same products to be scheduled, as well as
3.4. Genetic algorithms and hybridization the need of keeping unchanged some groups of lots related to some
product types, led to the development of ad-hoc genetic operators.
Since most scheduling problems in batch processing belong to In addition, because of the numerous constraints, a local search
the family of problems classified as NP-complete, genetic algorithms focusing on the selection of the daily cleaning starting times has
and, in general, metaheuristic optimization algorithms represent a been embedded, as to improve the exploitation of the metaheuris-
good alternative for solving large-scale combinatorial problems. As tics around a certain local minimum.
for the parallel machines scheduling problems, in the last decades The initial population generation has been arranged in the fol-
numerous literary contributions emphasized the effectiveness of lowing way. Regardless of the large number of constraints to be
genetic algorithms (Balin, 2011; Costa, Cappadonna, & Fichera, managed and of the filling stage, the problem may be assimilated
2013; Vallada & Ruiz, 2011; Wang & Chou, 2010) and simulated to an identical parallel machines scheduling problem. Since the
annealing (Celano, Costa, & Fichera, 2008; Damodaran & Vélez- LPT schedule is demonstrated to be very effective for the makespan
Gallego, 2012; Kim, Kim, Jang, & Chen, 2002; Li, Ng, et al., 2011; Li, minimization in identical parallel machines scheduling problems
Yang, & Ma, 2011; Low, 2005) Further, a variety of research contribu- (Baker & Trietsch, 2009), just one chromosome of the initial
tions employed genetic algorithms for approaching batch schedul- population is generated by the LPT dispatching rule, as for the per-
140 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147

constraints interact with the cleaning interval issue, the local


search operates only on the g sub-chromosome and it cyclically
is employed to investigate an extended neighborhood of the cur-
rent best solution. After a variety of trial-and-error test runs on
both small- and large-sized problems, a cyclic threshold of 50 iter-
ations has been identified as a good compromise between explora-
tion and exploitation for the proposed hybrid evolutionary
algorithm (Crepinsek, Liu, & Mernik, 2013).
Fig. 4 shows the flow chart of the proposed metaheuristic opti-
mization algorithm, whereas the following sub-sections deal with
the implemented FLS and with the adopted genetic operators.
The exit criterion of the proposed optimization technique is the
total number of iterations, hereinafter denoted as Niter.

3.5.1. Focused Local Search


The aim of the focused local search is finding a new near opti-
mal solution by keeping unchanged the permutation sub-chromo-
some p and by varying just the cleaning shift starting time for each
day, i.e. each gene of the provided g sub-chromosome. Once a new
cleaning time yields a makespan reduction of the current solution,
such a modified solution will represent the new seed chromosome
to be investigated. In detail, the search mechanism replaces each
gene of the g sub-chromosome with an integer number included
in the range [22–27], where values 25, 26, 27 correspond to
01:00 a.m., 02:00 a.m., 03:00 a.m. cleaning starting times. Once
all genes pertaining to g have been varied through the mentioned
time range, the best solution will be saved and introduced within
the genetic population. The pseudo-code exhibiting the proposed
focused local search is reported in the following paragraph.
Pseudo code of FLS

Input: chromosome solution x = p + g


Step 0: Initialization
x0 x, p0 p, g0 g, gopt g, best_mk = a big number;
Step 1: Second-stage h chromosome perturbation
g1 g0;
for d = 1 to TH
for h = 22–27
if h > 24 then
h’ = h  24;
else
Fig. 4. Flow chart of the proposed HGA.
h’ = h
endif
g1(d) = h’
mutation sub-chromosome. On the other hand, the corresponding Compute makespan:
integer sub-chromosome g is randomly generated. Starting from Makespan(x1) = Makespan(p0+g1)
the LPT-based sub-chromosome (wherein lots to be scheduled if C(x1) < best_mk then
are grouped in G groups corresponding to the types of product to g0(d) g1(d)
be processed), a neighborhood of G  1 permutation sub-chromo- gopt(d) g1(d)
somes is built to populate the remaining G  1 locations of the ini- goto Step 2
tial population. For instance, if a number of lots pertaining to three else
product types (A, B, C) has to be produced, and the LPT schedule is g1(d) g0(d)
(A, B, C), then the corresponding last insertion-based neighborhood endif
should consist in the following G  1 permutation schedules: (C, A, next h
B), (B, C, A). Also for these chromosomes, genes provided by their Step 2: perturbation of another gene
respective g sub-chromosomes are drawn from a uniform distri- next d
bution U[22 p.m., 3 a.m.]. Then, if POP is the genetic population
size, the remaining POP-G permutation sub-chromosomes are ran- 3.5.2. Crossover
domly copied from the already devised G chromosomes, whereas Whenever a pair of parent chromosomes is selected by a regular
their corresponding integer sub-chromosomes are again randomly roulette wheel criterion, a proper crossover operator is carried out
generated. with probability pcross. It combines both a Position Based Crossover
Once the initial population has been arranged, a proper focused (PBC) (Michalewicz, 1994) to be applied to p (the permutation sub-
local search FLS is applied on the integer part of each chromosome chromosome), and a proper uniform crossover to be used for g (i.e.
as to improve the quality of solutions of the initial population. In the integer coded sub-chromosome). Indeed, the adopted PBC
words, it aims to depurate each individual of the unfeasibility operator differs from the regular one, as its recombination
caused by the provided daily cleaning time intervals. Since most mechanism has to respect the provided number of lots per product
A. Costa / Computers & Industrial Engineering 79 (2015) 130–147 141

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.

4.1. Test cases design

The goal of the first phase was identifying a set of instances in


P1 B A A C C C B B A B terms of product mixes necessary to compare the different optimi-

P2 A A B B B A B C C C Table 5
Class I – 25 lots problems.

C1 A A B B C C C B A B Product type Scenario problem


1 2 3 4 5 6 7 8 9 10

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.

Product type Scenario problem


C1 B A C C C B A B A B 1 2 3 4 5 6 7 8 9 10
A 6 8 14 0 2 12 20 14 20 10
Fig. 6. Shift insertion for permutation stage p. B 4 10 0 12 10 6 8 10 16 10
C 28 14 18 28 22 12 16 4 8 10
D 12 0 18 0 16 0 6 22 0 10
E 0 18 0 10 0 20 0 0 6 10

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.1. Local search


It may be defined as a regular local search, which carries out a each gene may be randomly modified with probability 0.05 within
search in the neighborhood of a temporary seed solution. Once the the range [22:00; 03:00]. Perturbation of the g sub-chromosome is
search mechanism finds a better solution, it will represent the new always performed for a given seed solution.
seed solution and, on the same fashion, the search procedure starts
again until an exit criterion based on the number of iterations is 4.2.2. Genetic algorithm
satisfied. The p sub-chromosome pertaining to each seed solution The structure of the tested Genetic Algorithm is identical to that
may be perturbed by means of two operators: shift insertion (SI) developed for the proposed HGA, as described in Section 3. In
and pairwise interchange (PI). Probability of perturbation for the words, the proposed GA may be considered as a HGA without the
p sub-chromosome is 50%, and both SI and PI have a coin toss prob- contribution of the focused local search. Table 7 reports the genetic
ability to be selected, as well. As concerns the g-stage solution, parameters adopted for both the proposed GA and HGA.
144 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147

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:

bestMK s ¼ min MK s;r;m 8s ¼ 1; . . . ; 10; ð3Þ 0.100


r¼1;...;R
m¼1;...;4

0.080
The exit criterion used for each metaheuristics algorithm is the
total number of fitness evaluations. In particular, scenario prob- HGA
RPD

lems included in Class I were investigated on the basis of about 0.060


LS
30,000 evaluations while, as concerns larger size problems in Class
SA
II, about 60,000 solution evaluations have been taken into account. 0.040
GA
Conforming to the employed computational equipment, class I
problems took about 6 min to converge, while problems involving 0.020
50 lots needed about 15 min to achieve the provided exit criterion.
The genetic parameters as well as the other parameters required 0.000
by the other optimization methods have been selected by an 0 1 2 3 4 5 6 7 8 9 10
ANOVA analysis that, for sake of brevity, was not reported in this scenario
paper.
Table 8 refers to a customer demand of 25 lots. By looking at the Fig. 8. Average RPD diagram for Class I problems.

Average RPI values (AVE) is it possible to notice as HGA outper-


forms the other meta-heuristics (ME), with exception of scenarios
six and eight where GA and FLS achieve the best results. Whether 0.080
the minimum value of RPD (MIN) is considered as performance
0.070
indicator, a substantial equilibrium exists between GA and HGA,
while values related to the maximum RPD confirm again the effec- 0.060
tiveness of HGA with respect to the other techniques. Furthermore, 0.050
the standard deviation results put in evidence the robustness of the
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

Bold data refer to g_ave and st.dev results.

of the focused local search in reducing the computational times Table 11


and improving the quality of solutions. Standard deviations con- Scenario problems for the validation analysis.
firms the robustness of HGA under the computational viewpoint. Product type Problem
The computational time analysis connected to Class II shows
1 2 3 4 5 6 7 8
how the problem size affects the time to convergence. SA and GA
A 3 7 0 2 6 5 0 2
are the shortest and the longest algorithm respectively, while
B 0 0 4 3 0 0 7 8
HGA seem to be negatively influenced by the problem size. Never- C 12 15 14 13 25 33 27 23
theless, the average computational performance of HGA is still D 11 7 0 0 14 13 0 0
comparable to LS and SA. E 0 0 6 5 0 0 17 15

4.4. Empirical validation of proposed HGA


namely HGA. To this aim, a set of eight schedules manually per-
The final step of the proposed numerical analysis entails the formed by the production supervisor and recently used by the
experimental validation of the proposed scheduling method, company, have been compared with the corresponding optimal
146 A. Costa / Computers & Industrial Engineering 79 (2015) 130–147

Table 12
Comparison in terms of makespan RPD and NAL to validate HGA.

Problem Replicate RPD NAL


1 2 3 4 5 Ave Min Max Ave Min Max
1 10.6 9.9 9.9 12.4 10.1 10.6 12.4 9.9 2.00 2.00 3.00
2 9.1 10.7 10.1 13.6 10.9 10.9 13.6 9.1 3.00 2.00 3.00
3 10.7 8.3 10.7 12.0 7.0 9.7 12.0 7.0 2.00 1.00 2.00
4 7.2 4.7 7.2 8.5 3.4 6.2 8.5 3.4 2.00 2.00 2.00
5 10.4 8.3 11.8 10.4 10.4 10.3 11.8 8.3 4.00 3.00 4.00
6 4.6 7.6 8.7 5.3 7.1 6.7 8.7 4.6 3.00 2.00 3.00
7 6.3 3.7 6.8 7.1 7.6 6.3 7.6 3.7 3.00 2.00 3.00
8 7.1 10.3 6.9 7.1 6.7 7.6 10.3 6.7 3.00 2.00 4.00
Ave 8.6 10.7 6.8 2.75 2.00 3.00

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.

Das könnte Ihnen auch gefallen