ArticlePDF Available

Abstract

Computer-based manufacturing scheduling tools can play a key role in the management of industrial operations, as obtaining economic and reliable schedules is at the core of excellence in customer service and of efficiency in manufacturing companies. As a consequence, this topic has been receiving an increasing interest in the last decades, resulting in a number of case studies and descriptions of implementation of these tools. However, to the best of our knowledge, there is no review of these cases in order to classify existing references and to identify relevant issues still not properly addressed. Therefore, in this paper we carry out a systematic review of case studies of manufacturing scheduling tools. In order to provide a coherent taxonomy for the analysis of these tools, we develop a classification based on the functionalities of the manufacturing scheduling tools. Using this framework, existing contributions are classified and discussed, and a number of conclusions and open issues are identified. We hope that our work can establish a coherent picture of the topic so it serves as a starting point for future research.
A Review and Classification of Computer-Based Manufacturing
Scheduling Tools
Manuel Dios1
, Jose M. Framinan1
1Industrial Management, School of Engineering, University of Seville,
Ave. Descubrimientos s/n, E41092 Seville, Spain, {mdios,framinan}@us.es
Abstract
Computer-based manufacturing scheduling tools can play a key role in the management of industrial oper-
ations, as obtaining economic and reliable schedules are at the core of excellence in customer service and of
efficiency in manufacturing companies. As a consequence, this topic has been receiving an increasing interest in
the last decades, resulting in a number of case studies and descriptions of implementation of these tools. How-
ever, to the best of our knowledge, there is no review of these cases in order to classify existing references, and
to identify relevant issues still not properly addressed. Therefore, in this paper we carry out a systematic review
of case studies of manufacturing scheduling tools. In order to provide a coherent taxonomy for the analysis of
these tools, we develop a classification based on the functionalities of the manufacturing scheduling tools. Using
this framework, existing contributions are classified and discussed, and a number of conclusions and open issues
are identified. We hope that our work can serve to establish a coherent picture of the topic so it serves as a
starting point for future research.
Keywords: Manufacturing Scheduling Tools, Scheduling, Manufacturing.
Preprint submitted to Computers & Industrial Engineering. DOI: 10.1016/j.cie.2016.07.020
Corresponding author.
1
1 Introduction
Scheduling –understood as the assignment of the various resources of a company to the manufacturing of a range of products
(Framinan et al., 2014) – plays a crucial role in industrial companies. Given the complexity of scheduling decisions, it is
usually carried out using a piece of software to provide some type of support to the human user. This software is denoted
here as Manufacturing Scheduling Tool (MST).
Since its introduction, a number of case studies and descriptions of implementation of manufacturing scheduling tools
is available in the literature. However, there is a great variation regarding the functionalities of this software, ranging from
relatively simple applications focused on a specific problem, to sophisticated information systems capable of supporting a
wide range of scheduling decisions. This variability, coupled with the specific nature of scheduling, makes difficult to have
a coherent picture of the developments in the area, which in turn hides both specific topics not yet addressed and issues
already solved in a satisfactory manner.
The goal of our paper is to systematically review these scheduling tools and to provide a framework for their classification.
Tools for which no publicly available information exists are not included in the review, due to the impossibility of obtaining
detailed, neutral information. We focus on what we call the structure of these tools, i.e. which are their functionalities and
how these functionalities are organised. In this way, we investigate what these tools are made for rather than focusing on
how these functions are achieved. Although it would be undoubtedly interesting to study which techniques and/or methods
are employed, we believe that a first step is to establish what these tools are made for. By doing so, we expect to present
an exhaustive state-of-the-art of manufacturing scheduling tools that serves to identify a number of relevant issues still
not properly addressed and to provide a retrospective study on the parts that constitute manufacturing scheduling tools
implemented in practice. Additionally, since the lack of an integrated view of scheduling has been frequently mentioned (see
e.g. Herrmann, 2004) as a cause of the well-known gap between research and practice in the scheduling field (MacCarthy
and Liu, 1993), we expect that the findings in this paper also serve to foster research in some areas where actual scheduling
tools do not offer a satisfactory solution due to the lack of basic research.
To the best of our knowledge, there are no other reviews on the use of computer tools for scheduling in manufacturing
settings. Furthermore, the few reviews on other computer-based decision support tools (see e.g. Yarramsetti and Kousalya,
2015 or Kreipl and Pinedo, 2004) usually address the techniques and/or methodologies employed in the tools rather than
focusing on the structure of these tools.
The review carried out in our paper shows a field in which great advances have been accomplished, but also where
some mismatches between research and practice are revealed (such as e.g. the scarce practical relevance of well-established
theoretical scheduling objectives), scientific challenges are identified (such as e.g. to advance in a proper incorporation of
human expertise), and research opportunities are devised (such as e.g. the needs for more research in layout modelling
issues).
The remainder of the paper is as follows. In Section 2 we briefly discuss the main issues regarding manufacturing
scheduling tools and their structure in order to present the framework to classify existing contributions on the topic. In
Section 3 we present the results of the classification of the manufacturing scheduling tools. Finally, in Section 4 we conclude
2
and discuss a number of open issues that emerged through the analysis.
2 The Structure of Manufacturing Scheduling Tools
Although manufacturing scheduling has been carried out manually for years (Metaxiotis et al., 2002), the necessity to
overcome the limited short-term and long-term memory of human planners (McKay and Wiers, 2003), particularly when
they have to consider many constraints at the same time (Speranza and Woerlee, 1991) has led to the development of different
types of computer support for decision making. These systems are collectively known as manufacturing scheduling tools,
and include very different types of software, going from interactive systems that allow an automatic check of the feasibility
of schedules, to sophisticated systems where optimal schedules are suggested.
Given such variety, it is necessary to develop a framework to classify the different contributions regarding these tools.
Since they constitute a special type of business information systems (Framinan et al., 2014), they can be described along a
list of functionalities or pieces of business functions that the system is capable to support. In other words, the functionalities
describe which manufacturing decisions are supported by the system. These functionalities and the way in which they are
organised is what it is called in the remainder of the paper structure of the tool and will serve to distinguish the different
features found in the tools described in the literature.
Clearly, as many tools described are company-specific, it is necessary to distinguish between specific functionalities
(unique for each software application) and those which are common to most tools and that constitute the architecture of the
system. The work by Framinan and Ruiz (2010) presents a classification of the generic (i.e. high-level) functionalities of a
manufacturing scheduling tool. Therefore, we can use this classification as a starting point although, given its abstract nature,
a modification and extension of the classification is required. In addition, since our review is based on actual descriptions of
manufacturing scheduling tools, some categories present in the architecture are not found in practice.
The procedure adopted for this review consists of two stages. In a first stage, a systematic review was developed for
papers published from 2000 to 2015. Given the processing and graphical capabilities of computers prior to that date, we
first focus on that period. We used the SCOPUS search engine by Elsevier, given that the majority of relevant journals and
conference proceedings are indexed in this database. Different queries were performed to take into account as many tools as
possible. To do so, we also use different definitions of systems commonly employed in scheduling practice, such as Decision
Support Systems, or Expert Systems. The queries used for the review are shown in Fig. 1 together with the number of
results obtained.
Due to the heterogeneity and ambiguity of the results of the fist stage, some of them were suitable for our study. Therefore,
we adopted a three-step procedure to filter the results:
Title. First, we rejected those works whose title was not relevant for our study.
Abstract. The abstracts of works that seemed to be relevant were carefully read and those that did not focused on the
topic were excluded.
Full Document. Those works still remaining were analysed in full-depth in order to obtain the final set of contributions
3
Figure 1: Review queries and summary of the results
Figure 2: Classification framework
for the review.
In a second stage we extended the number of contributions by selecting all relevant references cited by the works in the
first stage, including references prior to 2000. To filter theese new contributions, we adopted the same three-step procedure
as in the first stage. Moreover, we include book chapters that were not considered in previous stage, but that were listed in
the references selected in the second stage.
As a result of the analysis of the final set of references, a number of types of functionalities were identified. These types
constitute the framework for classification (see Figure 2), and are discussed in the following subsections.
2.1 Problem Modelling
This type of functionality refers to the ability of the tool to capture in an autonomous or semi-autonomous manner different
parameters of the corresponding shop floor. The following functionalities within this type are considered:
4
2.1.1 Model Detection (MD)
This functionality refers to the ability of the tool to determine the most suitable (abstract or theoretical) scheduling model
from the raw instance data provided to the system. Since some theoretical scheduling models can be seen as simplification of
a real-life setting, model detection might be seen as a type of constraint abstraction. However, since it focuses on a specific
type of relaxation (i.e. that to reach to specific scheduling models so solution procedures taken from these models could be
applied), we keep it apart. Model detection is achieved by the tools reviewed using different approaches:
Reduction Trees (RT). Reduction trees (see e.g. Framinan et al., 2014) constitute a useful taxonomy for scheduling
problems, as they establish the interdependences for well-known scheduling problems together with their corresponding
scheduling algorithms. Therefore, if the user enters the type of scheduling problem to be solved, it is possible for the
tool to look for the stored algorithms which are closest to this problem according to the reduction tree.
Decision Trees (DT). In this approach, the user has to iteratively respond to a number of questions related to the
constraints and objectives in the scheduling decision so the tool finds the model (among those entered in the system)
that better fits with the models in the tool.
Raw Data Detection (RDD). In this approach, the system is able to detect the corresponding layout from raw
instance data.
2.1.2 Constraints Abstraction (CA)
Constraints abstraction refers to the ability of the tool to work/detect a simplified subset of constraints, so those with little
impact in the evaluation of the solution may be ignored or omitted for a further consideration if possible. This functionality
has been implemented in several ways:
Inclusion of Constraints into the Objective Function (COF). The constraints are included in the objective
function, usually via penalization.
Hard Constraints vs. Soft Constraints (HSC). The tool allows the user to distinguish between ‘hard’ constraints
and ‘soft’ constraints (so-called preferences). The goal is to find a schedule satisfying all ‘hard’ constraints and that
relaxes as few as possible of the ‘soft’ constraints. This approach can be further refined by providing the tool with the
importance (or weight) of each constraint, so a hierarchy of constraints is defined to evaluate the degree of satisfaction
of the soft constraints.
Constraint Violation Warning (CVW). In some tools, only general constraints relative to the usage of resources
(machine conflict resolution and machine selection) are considered. For the rest of constraints, the tool launches
warnings to the user so he/she can manually try to comply with these constraints.
Black-box Constraints Abstraction (BCA). The relaxation of certain constraints is performed internally by the
system to augment the search space. Once a solution has been found, the relaxed constraints are enforced iteratively.
The relaxation of these constrains may refer to either temporal and due-date related constraints are relaxed, or to the
consideration of partial schedules.
5
2.2 Problem Solving
The functionalities grouped under this type refer to how the system generates schedules (i.e. solutions to the problem).
Based on the classification by Framinan and Ruiz (2010), a number functionalities are identified. These are discussed in the
next subsections.
2.2.1 Generation of New Algorithms (GNA)
This refer to the ability of the system to incorporate new algorithms to solve scheduling models. Here we can distinguish
between the incorporation of new algorithms at design level, or at a user level, depending in whether a re-compilation of
the tool is needed. While for the first case, the challenge is to accommodate the design of the tool to ease the incorporation of
new algorithms without altering its structure, the generation of new algorithms allows the user to incorporate new algorithms
by one of the following approaches:
External Generation (EG). The algorithms are incorporated into the tool as executable files that capture the
relevant data and export the results via a well-defined input/output interface.
Language-Based Generation (LBG). The algorithms can be introduced by the user in a relatively straightforward
manner using a sort of language to produce algorithms, although in the experiences found in the literature, these
algorithms are confined to simple sequencing rules.
Generation by Combination of Existing Algorithms (CEA). In this approach, the tool stores chunks or blocks of
different selection rules (mostly dispatching rules) that can be combined into different scheduling strategies (i.e. order-
based scheduling, resource-based scheduling, and operation-based scheduling), so different ‘composite’ algorithms can
be incorporated into the tool.
Rule-based generation (RIT). In this approach the user can generate a number of rules of the type IF . . . T HE N
to determine which job is to be selected to be scheduled.
2.2.2 Incorporation of Human Expertise (HE)
.
This functionality refers to the ability of the tool to incorporate the knowledge of the Decision Maker. Several approaches
to implement this feature have been adopted in the tools reviewed:
Ad-hoc Solution Procedures (AHSP). The tool allows to introduce ad-hoc solution procedures that reflect the
expertise of the scheduler.
Working Conditions (WC). Instead of introducing ad-hoc solution procedures, these are obtained as the result of a
set of working conditions established by the expert. Moreover, these working conditions are in some cases introduced
in an interactive manner.
’Excuses’ (E). Some authors propose a functionality called ’excuses’ that allows the user to see why an order is late.
This functionality makes easier the development of new ad-hoc heuristics.
6
Ad-hoc Constraints (AHC). It is possible to introduce specific process constraints, such as grouping certain types
of jobs.
2.2.3 Algorithms for Rescheduling (AR)
This functionality indicates the capability of the tool to offer support for events that may impact the current schedule, such
as machine breakdowns, rush orders, etc. In this functionality, we include tools which do not completely rebuild the existing
schedules (perhaps with the addition of new incoming jobs), but perform a reschedule in which a subset of jobs change their
schedule. The construction of the new schedule is achieved using different approaches:
Forward Rescheduling (FR), i.e. pushing ahead the starting time of the operations affected by the disruptive event.
Backward Recheduling (BR), i.e. pushing backwards the starting times of the operations affected by the disruptive
event, whenever this results in a feasible schedule.
Exclusion of the Affected Operations (EAO), so the tool allows the user to reject a scheduled operation. A
particular case of this option can be found in Fox (1994), where a rather sophisticated method is proposed: the jobs
affected by these activities were ‘unscheduled’ and their former schedule (i.e. the reservation of the time on each
operation) was transformed into a ‘soft’ constraint. Then, the jobs affected were rescheduled taken into account the
new ‘soft’ constraints.
Breaking Down the Tasks (BDT) into smaller pieces so they can be executed and/or re-scheduled (entirely or
in part) in the idle times of the schedule resulting from the disruptive event. This option is labelled opportunistic
insertion by Chan and Zeng (2003).
Merging Tasks (MT). This case is the opposite to the previous one, and the rescheduling is performed by trying to
merge different operations into a single one.
Changing the Weight/Priority of Affected Operations (CW). The weight of the jobs affected by the unexpected
event is altered, so they have a higher priority for being rescheduled.
Searching for Alternative Resources (SAR) for scheduling the affected operations, perhaps including the possi-
bility of outsourcing production to other operators is also considered.
Modify Constraints between Tasks (MCT). In some tools, the schedule is not explicit, but implicitly described
using some rules and/or constraints among operations. In those tools, rescheduling is done by modifying these rules.
Case Based Reasoning (CBR). A database with information about how similar problems were addressed in the
past is used to modify the existing schedule.
2.2.4 Multi-Algorithm Scheduling (MA)
This functionality indicates that the tool supports a logical separation of models and the corresponding solution procedures,
so different solution procedures could be applied to a given model, and one solution procedure could be employed for different
models. If such separation exists, several aspects have to be defined, i.e. the algorithm library (which types of algorithms
7
are included in the tool to be selected), the selection mechanism (how a single algorithm is picked from the algorithm
library), and the selection mode (in which time period the selection is performed). Regarding the algorithm library,
different types of algorithms can be found in the tools reviewed:
Generic Algorithms (G), that may be based on bottleneck/machine workload considerations, or are simply based
in sequencing methods/dispatching rules at the different resources.
Local Search and Metaheuristics (LSM)
Specific algorithms (SA).
Regarding the selection mechanism, the following approaches have been encountered:
Selection by User (U). Using this approach, a set of algorithms is available for the user, which chooses one from
the library.
Guided Selection (G). In some tools the selection is done by the user, but the tool offers some interactive aid that
helps him/her.
Autonomous Selection (A). The tool is capable to perform the selection, and the approach is more similar to a
‘black box’ so the user is provided with the best solution found among part/all algorithms in the library but he/she
cannot trace back which one provided the best solution.
Finally, regarding the selection mode, the following options have been implemented:
On-line selection (ON), where the algorithms are tested in real-time (or quasi real-time) with respect to the solution
obtained in the problem instance that it is to be scheduled.
Off-line selection (OFF), where a benchmark on existing testbeds in the tool is performed, so the efficiency of the
algorithms is tested before solving the instance.
2.3 Solution Evaluation
This type of functionality refers to how the tool evaluates the schedules obtained. Two aspects are identified within this type
of functionalities. These are discussed in the next subsections.
2.3.1 Consideration of objectives
With respect to how objectives are considered by the tool, several options are present:
Constrained Approach (CA), where the objectives are embedded into constraints.
Weighted Combination (WC). The tool employs a single objective function composed of a weighted sum of different
objectives.
Lexicographic Approach (LA). The decision maker can establish a primary objective, and then a set of secondary
objectives.
8
User Selection / Single-objective (US), The system offers the decision makers the list of available objectives and
allows him/her to select one of them.
User Selection / Several Objectives (USO). The system offers a set of solutions (presumably found by different
solution procedures, each one seeking one objective), and evaluates them with respect to the set of objectives available
in the system.
User Selection / Multi-criteria (USM). The system offers the Decision Maker a set of solutions obtained from
one/several multicriteria algorithms (pseudo-Pareto set).
Stochastic evaluation (SE). In addition to the deterministic evaluation of objectives, the tool is able to evaluate
the schedules on an stochastic (e.g. simulation) basis, so that the potential impact of unexpected events, or deviations
from the (deterministic) data introduced in the system can be assessed.
2.3.2 Analysis of Scenarios (AS)
This functionality refers to the ability of the system to manage different potential schedules, so the user is able to handle
different schedules at a time. Fargher et al. (1994) distinguishes two types of analysis, i.e.:
Implicit analysis (IA), which means that a new schedule can be evaluated so its impact can be assessed. Typically,
different schedules are produced by the system and their results are compared and offered to the decision maker.
Explicit analysis (EA), which is used to check the impact of modifications of the working conditions of the shop
floor in the current schedule. This is usually referred as a what-if analysis.
Both Analyses (BA). This case covers those systems allowing to use both approaches.
2.4 Schedule Presentation
This type of functionalities refers to how the system presents the information to the Decision Maker and how interacts with
him/her. This type of functionality is adopted in the reviewed tools using different means: TO-DO (Framinan): Para
ser consistente, creo que estos items deberian ir en negrita
Text (T), as the simplest form of presenting data.
Gantt Charts (GC). Classical chart where horizontal bars, representing the time required to execute a task, are lo-
cated into a diagram where the vertical axis represents the resource. Although it typically serves to present information,
in some cases it is possible some interaction, such as e.g. drag and drop to manually modify the schedule.
Job Screens (JS). This functionality presents the jobs in the schedule together with their main attributes to the
Decision Maker.
Other Charts (OC). Since there is a large variety in the forms of presenting the data other than the charts presented
above, we will use this option to group them and will discuss them separately.
9
Figure 3: References by date
2.5 Interaction with other Decisions
Finally, this category refers to the type of manufacturing decisions supported by the tool in addition to those specifically
referring to scheduling. In the reviewed tools, the following decisions have been found:
Planning, i.e. time- and resource- aggregated allocation of jobs to resources.
Control, i.e. real-time tracking of the schedule’s execution.
Transportation, i.e. movement of goods before/after their manufacture.
3 Analysis of Manufacturing Scheduling Tools
Equipped with the classification for the structure of the tools for manufacturing scheduling discussed in Section 2, we have
reviewed the contributions in the literature. A total of 106 cases have been found, and their classification is summarized in
Table 1. These references represents a total of 91 tools (in some works different contributions describe the same tool) over a
timespan of 30 years, which speaks for the existence of a sizeable repository of cases from which lessons can be learnt. Note
that most contributions (67) refer to journal papers, which shows the quality and importance of the contributions reviewed.
Regarding the distribution by year of publication, Figure 3 shows a relatively uniform distribution of them, which seems
to indicate that the interest of the topic has remained constant through time.
Figure 4 shows the degree of maturity of the tools. We have differentiated the following degrees according to the
publication time:
The system has been fully developed (D),
The system may have been developed, but no screenshots or results on their implementation has been provided (E)
The system has been proposed, but not implemented (P).
As it can be seen from Figure 4, most of the reviewed works present tools already developed, there is also a number of
works where the details are not shown in detail, due to a work-in-progress, or to the privacy on the results.
10
Figure 4: Maturity of the tools
Figure 5: Relative Importance of Functionalities
When fitting the functionalities into the framework discussed in Section 2, we find that there is a wide diversity in the
number and type of features considered on them (see Figure 5): while Schedule Presentation features are described in around
85% (77) of the tools, Problem Modelling is present only in about 29% (26). Furthermore, less than 10% (8) tools cover all
types of functionalities (see Table 1), which means that only few tools cover the whole scheduling process, from modelling
to solution representation.
Interaction with Problem Problem Solution Scheduling
Reference other Decisions Modelling Solving Evaluation Presentation
P C T MD CA GNA HE AR MA CO AS T GC JS OC
Collinot et al. (1988) X X X
Le Pape (1994)
Kerr and Ebsary (1988) X X X X X
Kolen and Woerlee (1988) X X X
Speranza and Woerlee (1991)
Lamatsch et al. (1988) X X X X
Numao and Morishita (1988)
X X
Numao and Morishita (1989)
Numao and Morishita (1991)
Numao (1994)
Savell et al. (1989) X
Bona et al. (1990) X X X X
Hadavi et al. (1990) X X X X X X X
Hadavi et al. (1992)
Niew et al. (1990) X X
Adelsberger and Kanet (1991) X X
Burke and Prosser (1991) X X X
Boccalatte et al. (1992) X X X
Hsu et al. (1993) X X X X X X
11
Interaction with Problem Problem Solution Scheduling
Reference other Decisions Modelling Solving Evaluation Presentation
P C T MD CA GNA HE AR MA CO AS T GC JS OC
Prietula et al. (1994)
Sadeh (1993) X X X X
Sadeh (1994)
Sauer (1993) X X X X X X X X
Zong et al. (1993) X X X X
Aerts et al. (1994) X X X X
Boccalatte et al. (1994) X X
Fargher et al. (1994) X X X X X
Flower and Cheselka (1994) X X X X
Fox (1994) X X X X
Kempf (1994) X X X
Marriott (1994) X X X X
O’Donoghue et al. (1994) X X X
Taunton and Ready (1994) X X X X
Weigl (1995) X X X X X X X
Goldman et al. (1996) X X X X X
citeGol1997
Karacapilidis and Pappis (1996) X X X X
May and Vargas (1996) X X X X
Artiba and Aghezzaf (1997) X X X X X X
Esquirol et al. (1997) X X X
Pinedo and Yen (1997) X X X X X X
Yen (1997)
Sauer and Bruns (1997) X X X X X X X
Wang and Lin (1997) X X X X
Weintraub et al. (1997) X X X
Kuo and Hwang (1998) X X
Patkai (1998) X X X X X
Sauer et al. (1998) X X X X X
Vaidyanathan et al. (1998) X X X
Marinho et al. (1999) X X X X
Murthy et al. (1999) X X X X X X
Henning and J. (2000) X X X X X X X X
Blazewicz et al. (2001) X X X X - - - -
Blazewicz et al. (2007)
Everett (2001) X X X
Gazmuri and Maturana (2001) X X X X
Kotak et al. (2001) X X X
Musselman (2001) X X X X X
Gupta et al. (2002) X X X X - - - -
Keskinocak et al. (2002) X X X X X
Metaxiotis et al. (2002) X X X X
Saydan and Cooper (2002) X X X
Chan and Zeng (2003) X X X X - - - -
Concannon et al. (2003) X X X X X X
Hindle and Duffin (2006)
Feng et al. (2003) - - - -
McKay and Wiers (2003) X X X X X
Ozbayrak and Bell (2003) X X X
Bredstrom et al. (2004) X X X - - - -
Appelqvist and Lehtonen (2005) X X X X
Cheeseman et al. (2005) X X X
Geiger (2005) X X X X
Geiger (2011)
Munawar et al. (2005) X X X
T’kindt et al. (2005) X X X X X X X
Almeida and Marreiros (2006) X X X
Chan et al. (2006) X - - - -
de Castro et al. (2006) X - - - -
Kumar and Rajotia (2006) X - - - -
Abreu et al. (2008) X X
Bonfill et al. (2008) X X X X
Gao and Tang (2008) X X X - - - -
Józefowska and Zimniak (2008) X X X X X
de Ugarte et al. (2009) X X X X X X
Lopez and Villar (2009) X X
Silva (2009) X X X X
Stevenson et al. (2009) X X X
Tang et al. (2009) X X X
Zhang et al. (2010)
Yang and Lin (2009) X X X - - - -
Ko and Wang (2010) X X
12
Interaction with Problem Problem Solution Scheduling
Reference other Decisions Modelling Solving Evaluation Presentation
P C T MD CA GNA HE AR MA CO AS T GC JS OC
Leung et al. (2010) X X - - - -
Maturana et al. (2010) X - - - -
Sadi-Nezhad and Darian (2010) X X
Angelidis et al. (2011) X X
Trojet et al. (2011) X X X X
Nieuwenhuyse et al. (2011) X X X
Zhao and Lin (2011) - - - -
Zhongyi et al. (2011) X X X
Barlatt et al. (2012) X X X X X X X X
Korosec et al. (2013) X X X X X
Madureira et al. (2014b) X X X X
Piairo et al. (2013)
Madureira et al. (2014a) X X X X X X
Figueira et al. (2015) X X X X X X X X X
Guo et al. (2015) X X X X X X
Table 1: Functional Features Review
Regarding the approaches adopted to implement the different features within the framework discussed in Section
2, these are discussed for each type of functionality in the next subsections.
3.1 Problem Modelling
Model Detection is implemented only in 5 of the tools described. The rest of the tools usually leave to the user
the choice of the most suitable model (see Pinedo and Yen (1997); Yen (1997)) or, in the simplest cases, only one
specific model can be used (Ko and Wang, 2010), therefore making the tool hardly usable if any change takes place
in the scheduling process. Among the works implementing Model Detection, the approaches are summarised in
Table 2, ranging from those using Reduction Trees (RT) (Lamatsch et al., 1988), those using Decision Trees (DT)
(Wang and Lin, 1997; Metaxiotis et al., 2002), and those that can detect the layout from raw data (T’kindt et al.,
2005; Yang and Lin, 2009).
Regarding constraint abstraction, 21 of the tools implement this functionality using different approaches. COF
is adopted in Bredstrom et al. (2004) where authors include constraints into the objective function with a penalty
cost. The HSC implementation can be found in Kerr and Ebsary (1988); Bona et al. (1990); Hsu et al. (1993);
Boccalatte et al. (1994); Prietula et al. (1994); Sauer and Bruns (1997); Munawar et al. (2005); Silva (2009); Figueira
et al. (2015). An improvement of HSC can be found in Fox (1994), where the author brings together the existence of
hard and soft constraints and the assignment of a penalty cost to soft constraints to gain some control when trying
to satisfy them, i.e. which ones should be considered first. A more relaxed approach (CVW) is used by Numao and
Morishita (1988, 1989, 1991); Numao (1994); Hadavi et al. (1990, 1992); Vaidyanathan et al. (1998). This approach
could be seen as a special case of the previous one, where hard constraints are those related to resources and the
process of satisfying soft constraints is left to the user. In the last approach detected (BCA), the system itself is
in charge of relaxing constraints to try to obtain a solution. Once a solution is obtained, the system tries to force
13
Reference Problem Modeling
Model Detection Constraints Abstraction
Kerr and Ebsary (1988) HSC
Lamatsch et al. (1988) RT
Numao and Morishita (1988)
CVW
Numao and Morishita (1989)
Numao and Morishita (1991)
Numao (1994)
Bona et al. (1990) HSC
Hadavi et al. (1990) CVW
Hadavi et al. (1992)
Burke and Prosser (1991) BCA
Hsu et al. (1993) HSC
Prietula et al. (1994)
Aerts et al. (1994) BCA
Boccalatte et al. (1994) HSC
Fox (1994) HSC
Goldman et al. (1996) BCA
Goldman and Boddy (1997)
Sauer and Bruns (1997) HSC
Wang and Lin (1997) DT
Vaidyanathan et al. (1998) CVW
Keskinocak et al. (2002) BCA
Metaxiotis et al. (2002) DT
Bredstrom et al. (2004) COF
Munawar et al. (2005) HSC
T’kindt et al. (2005) RDD
Silva (2009) HSC
Yang and Lin (2009) RDD
Maturana et al. (2010) BCA
Trojet et al. (2011) BCA
Barlatt et al. (2012) BCA
Figueira et al. (2015) HSC
Guo et al. (2015) BCA
Table 2: Classification of Problem Modeling
the constraints. In Burke and Prosser (1991); Goldman et al. (1996); Goldman and Boddy (1997); Maturana et al.
(2010); Trojet et al. (2011), their systems relax temporal and due-date related constraints, whereas in Keskinocak
et al. (2002); Barlatt et al. (2012); Guo et al. (2015), authors use the concept of partial schedules, i.e. schedules
considering only those jobs whose characteristics are compatible, and tries to reach the best possible solution by
refining these schedules iteratively.
3.2 Problem Solving
Since classical scheduling focuses in solving scheduling problems in the most efficient manner, problem solving
functionalities could be expected to be widely implemented in the reviewed tools. However, this only happens in a
bit more than half of the tools.
As described in Section 2, 4 different functionalities within this type were considered. The first one is the
generation of new algorithms (GNA), which at the design level is implemented in the tools described in Zong et al.
(1993); Gazmuri and Maturana (2001); Bonfill et al. (2008). The main shortcoming of this approach is that it is
not valid for non-technical users.
The incorporation of algorithms at the user level has had more acceptance within authors (7 tools (70%)).
Lamatsch et al. (1988); Angelidis et al. (2011) use specific languages to add new algorithms (LBG), while CEA is
adopted by Sauer (1993); Sauer and Bruns (1997); Sauer et al. (1998). RIT can be found in Taunton and Ready
(1994), where instead of pieces of algorithms, users can generate rules that can be added or removed as required.
Finally, EG is proposed in T’kindt et al. (2005), where authors developed a complete module to this end. Table 3
14
shows the classification.
The second functionality refers to tools able to acquire knowledge from users, which can be done in several
ways according to our framework. AHSP is adopted by Sauer (1993); O’Donoghue et al. (1994); Goldman et al.
(1996); Goldman and Boddy (1997); Artiba and Aghezzaf (1997). The most extended approach (14 tools out of
22) is via WC, which is implemented in Hsu et al. (1993); Zong et al. (1993); Flower and Cheselka (1994); Weigl
(1995); Karacapilidis and Pappis (1996); Wang and Lin (1997); Kuo and Hwang (1998); Madureira et al. (2014a);
Figueira et al. (2015). A slight modification of this approach by allowing their application in an interactive manner
is adopted in Esquirol et al. (1997); Patkai (1998); de Ugarte et al. (2009). Moreover, Gao and Tang (2008); Barlatt
et al. (2012) allow for both types, decision makers can introduce the working conditions before executing algorithms
and after a solution has been found they can modify them interactively. The possibility of evaluating why orders
are late to ease the development of new algorithms (E) can be found in Lamatsch et al. (1988); Tang et al. (2009);
Zhang et al. (2010). Finally, allowing the expert to enter new constraints obtained from his/her experience or from
his/her knowledge on the field is implemented in May and Vargas (1996); Everett (2001).
The AR functionality refers to tools able to take into account possible uncertain events that could happen during
the normal functioning of the shop. The classification is detailed in Table 3. Systems offering this functionality
are able to deal with these events in a well-managed manner, i.e. we could consider that every system allows
for rescheduling by just obtaining a completely new schedule from the scratch incorporating the changes arisen.
Although this approach can be valid for certain shops, e.g. those with a small number of large orders, it is difficult
to adapt it to an important number of them. For this functionality we classified the different approaches used in the
literature as described in Section 2. The n.s. (’not specified’) label corresponds to contributions in which authors
state that their tool allow for rescheduling without giving further information. It is interesting to note that most
tools apply just one approach for rescheduling, although in Henning and J. (2000); Chan and Zeng (2003) different
approaches are combined.
The last functionality related to problem solving is Multi-Algorithm Scheduling (MA). Almost all tools imple-
menting this functionality (16 out of 17) include generic algorithms. There are also many cases where the tool offers
different possibilities. This is the case for 7 tools combining generic models with local search and metaheuristics,
and other 7 cases where generic systems are combined with specific algorithms. We found one tool (T’kindt et al.,
2005) with only metaheuristics and local search methods. The second criterion to classify this functionality is the
selection mode. Here, we evaluate the degree of assistance of the system. The case where no help is available (i.e.
user selection - U), is present in 4 four tools (Weigl, 1995; Pinedo and Yen, 1997; Yen, 1997; Concannon et al., 2003;
Hindle and Duffin, 2006; T’kindt et al., 2005). This is the simplest method for offering this functionality and the less
useful for users, as they are supposed to know which algorithm fits better with the problem under study. A guided
selection (G) where the tool gives some hints to users to make a good decision is implemented by Sauer (1993);
15
Wang and Lin (1997); Metaxiotis et al. (2002); Geiger (2005, 2011); T’kindt et al. (2005). The last mechanism is the
autonomous selection of the algorithm (A). This mechanism is preferred for those cases where users does not have
any technical knowledge. In these cases, the system is deciding the algorithm instead of supporting its selection.
There are several approaches to implement this selection mechanism:
Experimentation-based (cited in Sauer, 1993; Patkai, 1998; Marinho et al., 1999; Blazewicz et al., 2001), where
several/all algorithms are run so the tool offers the solution found by the best one.
Rule-based (Gupta et al., 2002; Artiba and Aghezzaf, 1997). A set of expert rules are used to analyse the
scheduling problem with respect to the optimization criterion, constraints, and search space size, so it is able
to select the appropriate algorithm or heuristic stored in the algorithm library.
Agent-based. Perhaps the most ambitious generic algorithm library is described in Murthy et al. (1999);
Keskinocak et al. (2002), where a set of algorithms is embedded by means of three types of agents: constructors
(who use both deterministic and randomized generic algorithms to obtain solutions), improvers (who try to
improve the current set of solutions modifying or combining existing solutions to create new solutions), and
destroyers (who remove bad solutions from the population). In Almeida and Marreiros (2006), a set of different
algorithms are also encapsulated in an agent-based architecture, although it is not clear whether they exchange
information about their solutions.
Finally, regarding how the selection of the algorithm is made, we distinguish between on-line selection, and
off-line selection. Six tools use each one of the approaches, and one work (T’kindt et al., 2005) uses both selection
modes. The detailed classification of systems can be seen in Table 3.
3.3 Solution Evaluation
This type of functionalities are in charge of supporting the decision maker in the evaluation of the scheduling
obtained by the tool. First we analyse how the tools consider different objectives. The classification of the tools
according to their consideration of objectives is detailed in Figure 6. As discussed in Section 2, these are classified
with respect to 7 different criteria. The most common approach is using a single objective function with a number
of weighted objectives (WC), which is found in 11 tools. Another widely used approach is USM, where decision
makers are offered a Pareto set of optimal solutions, thus letting him/her the decision of selecting the best one.
With respect to the objectives considered, it has to be noted that, in some tools, the objectives are expressed
in terms of managerial objectives (such as maximizing resource usage, or minimizing work in process), whereas
in other cases these are expressed in terms of scheduling criteria (such as makespan minimization, or flowtime
minimization). Whenever possible, we accommodate the latter criteria to managerial objectives, as this provides
16
Problem Solving
Reference GNA HE AR MA
Level Type Algorithm Library Selection Mechanism Selection Mode
Collinot et al. (1988) FR/EAO/BDT
Le Pape (1994)
Kerr and Ebsary (1988) FR
Lamatsch et al. (1988) User LBG
Hadavi et al. (1990) CW/SAR
Hadavi et al. (1992)
Hsu et al. (1993) WC
Prietula et al. (1994)
Sauer (1993) User CEA AHSP n.s. G/SA G/A OFF
Zong et al. (1993) Design n.s. WC
Aerts et al. (1994)
Fargher et al. (1994) EAO
Flower and Cheselka (1994) WC
Fox (1994) EAO
Kempf (1994) G A OFF
O’Donoghue et al. (1994) AHSP
Taunton and Ready (1994) User RIT E
Weigl (1995) WC G U ON
Goldman et al. (1996) AHSP MCT
Goldman and Boddy (1997)
Karacapilidis and Pappis (1996) WC
May and Vargas (1996) AHC
Artiba and Aghezzaf (1997) AHSP G/SA A ON
Esquirol et al. (1997) WC
Pinedo and Yen (1997) G/LSM/SA U OFF
Yen (1997)
Sauer and Bruns (1997) User CEA FR
Wang and Lin (1997) WC G G OFF
Kuo and Hwang (1998) WC
Patkai (1998) WC G/LSM A ON
Sauer et al. (1998) User CEA
Marinho et al. (1999) G A ON
Murthy et al. (1999) G/LSM/SA A ON
Henning and J. (2000) FR/BR/EAO/BDT/MT
Blazewicz et al. (2001) EAO G/SA A OFF
Everett (2001) AHC
Gazmuri and Maturana (2001) Design n.s.
Musselman (2001) SAR
Gupta et al. (2002) FR
Keskinocak et al. (2002) G/LSM/SA A ON
Metaxiotis et al. (2002) G/LSM G ON
Chan and Zeng (2003) FR/BR/BDT/CW/SAR
Concannon et al. (2003) G U ON
Hindle and Duffin (2006)
Cheeseman et al. (2005) EAO
Geiger (2005) G/LSM G OFF
Geiger (2011)
T’kindt et al. (2005) User EG LSM U/G ON/OFF
Almeida and Marreiros (2006) G A OFF
Bonfill et al. (2008) Design n.s.
Gao and Tang (2008) WC
de Ugarte et al. (2009) WC EAO
Tang et al. (2009) E
Zhang et al. (2010)
Yang and Lin (2009) G/SA A OFF
Leung et al. (2010) CBR
Angelidis et al. (2011) User LBG
Barlatt et al. (2012) WC EAO
Madureira et al. (2014b) SAR
Piairo et al. (2013)
Madureira et al. (2014a) WC n.s.
Figueira et al. (2015) WC EAO
Table 3: Classification of Problem Solving
17
Reference Solution Evaluation
Consideration of Objectives Analysis of Scenarios
Hadavi et al. (1990) CA EA
Hadavi et al. (1992)
Niew et al. (1990) CA
Boccalatte et al. (1992) IA
Hsu et al. (1993) IA
Prietula et al. (1994)
Sadeh (1993) WC
Sadeh (1994)
Sauer (1993) US IA
Zong et al. (1993) IA
Aerts et al. (1994) WC EA
Fargher et al. (1994) BA
Flower and Cheselka (1994) EA
Marriott (1994) IA
Weigl (1995) BA
Karacapilidis and Pappis (1996) BA
May and Vargas (1996) EA
Artiba and Aghezzaf (1997) USO/SE EA
Pinedo and Yen (1997) WC
Yen (1997)
Sauer and Bruns (1997) US
Patkai (1998) EA
Vaidyanathan et al. (1998) IA
Marinho et al. (1999) LA EA
Murthy et al. (1999) USM BA
Henning and J. (2000) CA BA
Blazewicz et al. (2001) US/SE
Gazmuri and Maturana (2001) IA
Kotak et al. (2001) IA
Musselman (2001) EA
Gupta et al. (2002) USO IA
Keskinocak et al. (2002) USM BA
Metaxiotis et al. (2002) US
Saydan and Cooper (2002) IA
Chan and Zeng (2003) WC EA
Concannon et al. (2003) WC EA
Hindle and Duffin (2006)
McKay and Wiers (2003) BA
Ozbayrak and Bell (2003) US
Appelqvist and Lehtonen (2005) LA
Geiger (2005) USM
Geiger (2011)
T’kindt et al. (2005) USM IA
Almeida and Marreiros (2006) WC
Chan et al. (2006) WC
de Castro et al. (2006) US
Abreu et al. (2008) WC
Bonfill et al. (2008) WC
Gao and Tang (2008) WC EA
Józefowska and Zimniak (2008) USM IA
de Ugarte et al. (2009) BA
Silva (2009) EA
Tang et al. (2009) BA
Zhang et al. (2010)
Ko and Wang (2010) USM
Angelidis et al. (2011) EA
Trojet et al. (2011) EA
Nieuwenhuyse et al. (2011) EA
Barlatt et al. (2012) CA EA
Korosec et al. (2013) USM IA
Madureira et al. (2014b) CA
Piairo et al. (2013)
Madureira et al. (2014a) EA
Figueira et al. (2015) WC EA
Guo et al. (2015) USM/SE
Table 4: Classification of Solution Evaluation
18
Figure 6: Consideration of objectives
a more model-independent view of the goals pursued by the tool. We also do not take into account the possible
inter dependencies between objectives/criteria, i.e. it is known that maximizing machine utilization is equivalent,
in some cases, to minimize makespan. The results of this classification are summarised in Table 5.
In some cases, decision makers prefer evaluating different schedules before deciding which one will be put into
practice. For this reason, we analyse the functionality ’Analysis of Scenarios’ (AS). 44% of the tools (40 out of
91) provide this functionality. From the possibilities discussed in Section 2, we found that the explicit analysis
of scenarios (EA) was the most widely used, being implemented in 18 tools. There were also some of them (9)
adopting both types of analysis. The detailed classification is summarised in Table 4.
3.4 Schedule Presentation
This subsection discusses how the different tools –when this information is provided– show the schedules to decision
makers. This classification is summarised in Table 6. Moreover, in Table 7 the contributions dealing with other
presentation types are shown. From this classification we can conclude that even for the most modern tools, classical
representations are preferred, i.e. textual representation is used in 48 tools (almost half of the reviewed tools) and
Gantt Charts are used in 49. It is also interesting to note that, for many tools, information on the presentation of
the schedules is not provided.
Reference Schedule Presentation
Text Gantt Chart Job Screen Other Charts
Collinot et al. (1988) X
Le Pape (1994)
Kerr and Ebsary (1988) X X
Kolen and Woerlee (1988) X X X
Speranza and Woerlee (1991)
Lamatsch et al. (1988) X X
Numao and Morishita (1988)
X
Numao and Morishita (1989)
Numao and Morishita (1991)
19
Reference Schedule Presentation
Text Gantt Chart Job Screen Other Charts
Numao (1994)
Savell et al. (1989) X
Bona et al. (1990) X X
Hadavi et al. (1990) X
Hadavi et al. (1992)
Niew et al. (1990) X
Adelsberger and Kanet (1991) X
Burke and Prosser (1991) X
Boccalatte et al. (1992) X X
Hsu et al. (1993) X X
Prietula et al. (1994)
Sadeh (1993) X X
Sadeh (1994)
Sauer (1993) X
Zong et al. (1993) X
Aerts et al. (1994) X
Boccalatte et al. (1994) X
Fargher et al. (1994) X X
Flower and Cheselka (1994) X
Fox (1994) X X
Kempf (1994) X
Marriott (1994) X X
O’Donoghue et al. (1994) X
Taunton and Ready (1994) X X
Weigl (1995) X X X
Goldman et al. (1996) X
Goldman and Boddy (1997)
Karacapilidis and Pappis (1996) X
May and Vargas (1996) X
Artiba and Aghezzaf (1997) X
Esquirol et al. (1997) X X X
Pinedo and Yen (1997) X X X X
Yen (1997)
Sauer and Bruns (1997) X X
Wang and Lin (1997) X
Weintraub et al. (1997) X X
Kuo and Hwang (1998) X
Patkai (1998) X
Sauer et al. (1998) X X
Vaidyanathan et al. (1998) X
Marinho et al. (1999) X
Murthy et al. (1999) X X X X
Henning and J. (2000) X X X X
Blazewicz et al. (2001) n.s. n.s. n.s. n.s.
Blazewicz et al. (2007)
Everett (2001) X
Gazmuri and Maturana (2001) X X
Kotak et al. (2001) X X
Musselman (2001) X X
Gupta et al. (2002) n.s. n.s. n.s. n.s.
Keskinocak et al. (2002) X
Metaxiotis et al. (2002) X
Saydan and Cooper (2002) X
Chan and Zeng (2003) n.s. n.s. n.s. n.s.
Concannon et al. (2003) X X
Hindle and Duffin (2006)
Feng et al. (2003) n.s. n.s. n.s. n.s.
McKay and Wiers (2003) X X
Ozbayrak and Bell (2003) X X
Bredstrom et al. (2004) n.s. n.s. n.s. n.s.
Appelqvist and Lehtonen (2005) X X
Cheeseman et al. (2005) X
Geiger (2005) X X
Geiger (2011)
Munawar et al. (2005) X
T’kindt et al. (2005) X X
Almeida and Marreiros (2006) X
Chan et al. (2006) n.s. n.s. n.s. n.s.
de Castro et al. (2006) n.s. n.s. n.s. n.s.
Kumar and Rajotia (2006) n.s. n.s. n.s. n.s.
Abreu et al. (2008) X
Bonfill et al. (2008) X
Gao and Tang (2008) n.s. n.s. n.s. n.s.
20
Reference Schedule Presentation
Text Gantt Chart Job Screen Other Charts
Józefowska and Zimniak (2008) X X
de Ugarte et al. (2009) X X
Lopez and Villar (2009) X
Silva (2009) X X
Stevenson et al. (2009) X X
Tang et al. (2009) X
Zhang et al. (2010)
Yang and Lin (2009) n.s. n.s. n.s. n.s.
Ko and Wang (2010) X
Leung et al. (2010) n.s. n.s. n.s. n.s.
Maturana et al. (2010) n.s. n.s. n.s. n.s.
Sadi-Nezhad and Darian (2010) X X
Angelidis et al. (2011)
Trojet et al. (2011) X X
Nieuwenhuyse et al. (2011) X
Zhao and Lin (2011) n.s. n.s. n.s. n.s.
Zhongyi et al. (2011) X X
Barlatt et al. (2012) X
Korosec et al. (2013) X X
Madureira et al. (2014b) X
Piairo et al. (2013)
Madureira et al. (2014a) X X
Figueira et al. (2015) X X X
Guo et al. (2015) X X X
Table 6: Classification of Schedule Presentation
4 Conclusions and Open Issues
This paper reviews the main MSTs described in the literature, presenting a framework to classify their functionalities.
A number of general conclusions can be derived from this analysis, together with other reflections that are maybe
worth for future research. These are elaborated along the following items:
Regarding the integration of scheduling and related decisions, there seem to be a relatively high autonomy
of scheduling decisions with respect to other issues in production management, save that of control, which is
often seen as the way to ‘close the loop’ of the MST.
Most systems are designed for a specific scheduling model. Whenever several scheduling models are available,
the system offers some guide to the user to choose the specific model, usually in the form of family trees.
In contrast, there are several works handling some form of constraint abstraction, particularly regarding the
acknowledgement of ‘soft’ and ‘hard’ constraints. Since in practice, many constraints are soft, perhaps the
interest lies in identifying those hard constraints and then provide the user with a system to handle the
soft constraints. In addition, there would be what we could call ‘hidden’ constraints (i.e. constraints that
do not appear during the development of the MST, but are considered by users nevertheless). To handle
these constraints, the user’s manipulation of the schedules provided by the system (ideally via an interactive
interface) is required.
21
Reference Feasibility Resource Makespan Inventory Cycle Meeting Set-up Pro duction Quality Others
Deadlines Time (Problem
Usage Time /Due Dates Reduction Cost Related Sp ecific)
Collinot et al. (1988) X X X
Le Pape (1994)
Kerr and Ebsary (1988) X X
Kolen and Woerlee (1988) X X X X
Speranza and Woerlee (1991)
Lamatsch et al. (1988) X
Numao and Morishita (1988)
X X X
Numao and Morishita (1989)
Numao and Morishita (1991)
Numao (1994)
Hadavi et al. (1990) X X X X
Hadavi et al. (1992)
Niew et al. (1990) X X X X
Burke and Prosser (1991) X
Boccalatte et al. (1992) X X
Hsu et al. (1993) X X
Prietula et al. (1994)
Sadeh (1993) X X X X
Sadeh (1994)
Sauer (1993) X X X
Zong et al. (1993) X X
Aerts et al. (1994) X X X
Boccalatte et al. (1994) X X
Fargher et al. (1994) X X
Flower and Cheselka (1994) X
Fox (1994) X X X X X
Marriott (1994) X
O’Donoghue et al. (1994) X
Taunton and Ready (1994) X X X
Weigl (1995) X X X
Goldman et al. (1996) X
Karacapilidis and Pappis (1996) X X X
May and Vargas (1996) X X
Artiba and Aghezzaf (1997) X X X
Esquirol et al. (1997) X
Wang and Lin (1997) X X X X X
Weintraub et al. (1997) X
Kuo and Hwang (1998) X X X
Patkai (1998) X
Vaidyanathan et al. (1998) X
Marinho et al. (1999) X X
Murthy et al. (1999) X X
Henning and J. (2000) X X
Everett (2001) X
Musselman (2001) X X X
Gupta et al. (2002) X X X
Keskinocak et al. (2002) X X
Saydan and Cooper (2002) X X X
Chan and Zeng (2003) X
Concannon et al. (2003) X X X
Hindle and Duffin (2006)
Feng et al. (2003) X
McKay and Wiers (2003) X
Ozbayrak and Bell (2003) X X X
Bredstrom et al. (2004) X X X
Appelqvist and Lehtonen (2005) X X
Cheeseman et al. (2005) X X X
Geiger (2005) X X X
Geiger (2011)
Munawar et al. (2005) X X X X
Almeida and Marreiros (2006) X X X
Chan et al. (2006) X X X
de Castro et al. (2006) X
Kumar and Rajotia (2006) X X
Abreu et al. (2008) X X X X X X
Bonfill et al. (2008) X X X X
Gao and Tang (2008) X X X X
Józefowska and Zimniak (2008) X X X X X
de Ugarte et al. (2009) X X
Lopez and Villar (2009) X
Silva (2009) X X
Stevenson et al. (2009) X X
Tang et al. (2009) X X X
Zhang et al. (2010)
Yang and Lin (2009) X
Ko and Wang (2010) X X X
Leung et al. (2010) X X
Maturana et al. (2010) X X
Sadi-Nezhad and Darian (2010) X X X X
Trojet et al. (2011) X X X
Nieuwenhuyse et al. (2011) X
Barlatt et al. (2012) X X X
Korosec et al. (2013) X X X
Madureira et al. (2014b) X X X
Piairo et al. (2013)
Figueira et al. (2015) X X X
Guo et al. (2015) X X X X
Table 5: Objectives considered in the reviewed tools
22
Reference Chart Description
Kolen and Woerlee (1988) Flow Chart It shows the problem instance
Speranza and Woerlee (1991)
Numao and Morishita (1988)
Diagrammatic View of the Scheduling
It allows user to see the production flow and machine utilization at
the same time
Numao and Morishita (1989)
Numao and Morishita (1991)
Numao (1994)
Niew et al. (1990) Spreadsheet-like form It is similar to Excel. The user can manually edit the cells
Marriott (1994) Simulation Interaction It allows the user to see the status of the different work stations
and the manufacturing lots
Taunton and Ready (1994) Simulation Interaction Schematic View of the Plant Layout for Simulation
Weigl (1995) Manning Level Charts It shows the manning levels for a certain order sequence
Esquirol et al. (1997) Placement Charts The system shows how the different metal sheets are filled (with
parts).
Pinedo and Yen (1997) Capacity Bucket Interface It shows the load of each machine
Yen (1997)
Weintraub et al. (1997)
Priority List of Jobs for each machine (similar to Capacity
Bucket) /Chart of the utilization of each machine within
a cell
The statistics and model information are presented at three levels:
machine (most detailed), management and factory
Murthy et al. (1999) Detailed shcedule of each machine (with the jobs and
their priority in that machine) It shows the load of each machine
Henning and J. (2000) Evolution of Storage Devices The system displays the evolution of storage devices along the plan-
ning horizon through line plots
Everett (2001) Macro-driven Spreadsheets Not described in the pap er
Gazmuri and Maturana (2001) User defined reports (can be exported to spreadsheets) The system provides means for the user to customize the reports
he /she wants to obtain from the system
Kotak et al. (2001) Different interfaces for ripsaws and for the chop line
For the former the system includes loads to be used, their sequence
and the priority of individual ripping. For the latter components to
be produced, their kicker assignment and the production sequence
Keskinocak et al. (2002) GUI for view and modify solutions Authors do not give any deeper detail about their user interface
Appelqvist and Lehtonen (2005) Other non detailed charts and reports Some of them are utilization rate for each workstation, order back-
log, task lists in each workstation or a summary report.
Geiger (2005) Pareto frontier according to objectives
The system allows for defining certain aspiration levels for each ob-
jective and it represents a Pareto frontier with all these objectives
highlighting those achieving the selected aspiration levels
Geiger (2011)
de Ugarte et al. (2009) Chart for hot rolling
In this chart, the sequence and the width of each slab (height of
rectangles proportional to the slab width) are shown together. It
also allows the user for seeing where the schedule has problems
Tang et al. (2009) Loading of resources This chart shows graphically the loading of each furnace
Zhang et al. (2010)
Sadi-Nezhad and Darian (2010) Excel spreadsheet
The system uses Excel to connect to Lingo solver and retrieve the
results. There are not much more details about the schedule pre-
sentation
Trojet et al. (2011) Cumulative curves for each resource These charts show the evolution of resource consumption over time
in each resource
Figueira et al. (2015) Excel spreadsheet
The system provides different information and charts about the
performance of the schedule (e.g. evolution of the stock, paper
campaigns, production rate, etc.)
Guo et al. (2015) Production detail of orders in an order group Apart from the job screens where the system details the operations
in an order, it also presents the details of the order groups.
Table 7: Details about “Other Charts”
23
More work is needed regarding to model detection abilities. We see this issue as critical since the vast ma jority
of developments in classical scheduling assume the existence of a model (particularly a layout) upon which
specific solution procedures are developed. The need of identifying the underlying models from the raw data
becomes clear if all this enormous research effort has to be put into practice. Otherwise, developments in MST
would be difficult to be translated from one implementation to another, thus leaving only generic methods to
be applied in generic MST.
The incorporation of human expertise into the MST for manufacturing scheduling has been always con-
troversial, and the limited number of systems reporting this functionality are mostly confined to a sort of
‘parametrization’ of the system rather than to a pure knowledge-based system. Therefore, the possibility of
incorporation of the scheduler knowledge should be done in a more subtle way by leaving the system more
open and flexible to integrate constraints and objectives, i.e. as discussed before it is preferable to support the
decision maker better than replacing him/her. More specifically, perhaps it would be interesting to discuss the
argument the other way round, i.e. to make the suggestions of the system more transparent to the scheduler
so he/she can learn from the system. In this regard, we miss systems in which the estimation of different
key data that must be entered by the scheduler –such as e.g. processing times, set up times, etc.– are sug-
gested/contrasted against the real data obtained from control, so the scheduler can produce better estimates
in the future. This may be, undoubtedly, an area in which research results could be easily translated into
practice.
Despite the fact that most effort has been devoted to algorithm development, it has been difficult to exploit
this knowledge by integrating them in the MSTs under review. Most systems dealing with the integration
of new algorithms perform this task at the design level. The few of them dealing with it at user level just
integrate dispatching rules, which results in relatively poor- performance algorithm. However, this may not
be as grave as it seems, given the fact that many systems suffice with finding feasible solutions and that, as
mentioned before, the users may be permitted to worsen the solutions provided by the system in order to
cope with ’hidden’ constraints.
Part of the problems regarding the application of algorithms could be tackled by properly addressing model
detection abilities, giving yet another reason for prioritizing this area of research. Another avenue could be
the integration of more sophisticated, generic algorithms. Indeed, it is well-known that many local search
approaches work well for different scheduling problems (see e.g. the exceptional performance of the iterated
greedy algorithm Ruiz and Stützle, 2007 for rather diverse problems and objectives), so perhaps it may be
possible to develop tools for designing this type of algorithms at user level.
24
Figure 7: Objectives considered
The concept of a library of algorithms is not considered in most MSTs. Most classical literature on scheduling
has focused on devising ‘champion’ algorithms that outperforms existing ones. However, most of the times,
the performance of these algorithms is instance-dependent, therefore the idea of a library of algorithms –
particularly fast ones– may be of special interest. Up to now, the few works dealing with several algorithms
in classical scheduling research simply consider running a set of algorithms for a problem instance, and then
taking the best result. However, as Murthy et al. (1999) show, there may be high benefits in devising a
cooperation among algorithms to find the best solutions.
Regarding the objectives usually considered in the MSTs, it is interesting to note that the most frequent
(roughly half of the systems reviewed) are those related to due dates fulfilment. The objectives classification
and their appearances can be seen in Figure 7. An important number of systems consider problem-specific
objectives, and many of these systems simply seek feasible schedules. Makespan –by large the most employed
objective in scheduling research– is not among the principal objectives considered in the MSTs reviewed. Such
pre eminence of due date -oriented objectives is probably a reflection of the prevalence of a customer-oriented
view in manufacturing rather than to a cost-oriented view. In this regard, it would be interesting to further
explore the interface between scheduling and order fulfilment.
Very few systems consider the stochastic evaluation of deterministic solutions, which is in contrast with the
common belief that stochasticity is present in most shop floors. Possibly the problems addressed by the
systems are sufficiently complex so a deterministic setting can be considered a first-order approximation of
the solution, but still is surprising that no further checking of these deterministic solutions is carried out.
We also believe that another cause may be in the lack of reliable data to perform such checking, therefore a
25
promising research avenue could be to investigate solution procedures robust or at least not very sensitive to
variations in the deterministic inputs.
Rescheduling seems to be considered, in many cases, an integral part of a MST. However, most algorithms
devised for scheduling are extremely simple (e.g. forward scheduling), or are driven by user judgement (e.g.
exclusion of affected operations, or changes in the priority of the works). While useful, these options do not
fully exploit the possibilities of rescheduling, particularly taking into account the advances in algorithms in
this field.
The user interface of the MSTs reviewed does not have an homogeneous form for presenting and manipulating
results. Although it does not seem to be the most important part of a MST, in many situations it is the
factor determining if the system is going to be used or not. Therefore we think that making progresses
in obtaining an homogeneous interactive and easy to use user interface constitutes another opportunity for
research. Furthermore, devising sophisticated user interfaces may pay off as a way to allow Decision Makers
to handle the aforementioned ‘hidden constraints’.
As a summary, the review carried out in this paper pictures a research area which, despite the advanced
accomplished in the last decades, still shows great opportunities to conduct research. Since the ultimate goal of
most research in the manufacturing scheduling area is to be employed in the shop floor, thrusting this research is key
to keep manufacturing scheduling as one of the most fruitful fields in Operations Research, Production Management,
or Industrial Engineering.
26
References
Abreu, C. F., May, J. H., Spangler, W. E., and Vargas, L. G. (2008). Conflict identification and reconciliation in a collaborative
manufacturing scheduling task. International Journal of Information Technology & Decision Making, 07(01):147–174.
Adelsberger, H. H. and Kanet, J. J. (1991). The leitstand - a new tool for computer-integrated manufacturing. Production
and Inventory Management Journal, 32(1):43 – 48.
Aerts, A., Jansen, A., Klieb, L., Noorlander, C., and Wolf, G. (1994). ’PLATE’: A decision support system for resource
constrained scheduling problems. European Journal of Operational Research, 79(2):158–166.
Almeida, A. and Marreiros, G. (2006). A collaborative framework to support scheduling decisions. In Industrial Informatics,
2006 IEEE International Conference on, pages 979–984.
Angelidis, E., Pappert, F., and Rose, O. (2011). A prototype simulation tool for a framework for simulation-based optimization
of assembly lines. In Proceedings - Winter Simulation Conference, pages 2378–2389.
Appelqvist, P. and Lehtonen, J.-M. (2005). Combining optimisation and simulation for steel production scheduling. Journal
of Manufacturing Technology Management, 16(2):197–210.
Artiba, A. and Aghezzaf, E. (1997). An architecture of a multi-model system for planning and scheduling. International
Journal of Computer Integrated Manufacturing, 10(5):380–393.
Barlatt, A., Cohn, A., Gusikhin, O., Fradkin, Y., Davidson, R., and Batey, J. (2012). Ford motor company implements
integrated planning and scheduling in a complex automotive manufacturing environment. Interfaces, 42(5):478–491.
Blazewicz, J., Ecker, K., Pesch, E., Schmidt, G., and Weglarz, J. (2001). Computer integrated production scheduling. In
Scheduling Computer and Manufacturing Processes, pages 421–468. Springer Berlin Heidelberg.
Blazewicz, J., Ecker, K., Pesch, E., Schmidt, G., and Weglarz, J. (2007). Computer integrated production scheduling. In
Handbook on Scheduling, International Handbook on Information Systems, pages 583–630. Springer Berlin Heidelberg.
Boccalatte, A., Minciardi, R., Paolucci, M., and Pesenti, R. (1992). SKED: An integrated decision support system for
scheduling problems. In Computer Integrated Manufacturing, 1992., Proceedings of the Third International Conference on,
pages 128–135.
Boccalatte, A., Paolucci, M., Pesenti, R., Piombo, A., and Prefumo, R. (1994). Hybrid system for short-term scheduling
in manufacturing: a case study. In Proceedings of the IEEE International Conference on Systems, Man and Cybernetics,
volume 2, pages 1189–1193.
Bona, B., Brandimarte, P., Greco, C., and Menga, G. (1990). Hybrid hierarchical scheduling and control systems in manu-
facturing. IEEE Transactions on Robotics and Automation, 6(6):673–686.
Bonfill, A., Espuna, A., and Puigjaner, L. (2008). Decision support framework for coordinated production and transport
scheduling in scm. Computers & Chemical Engineering, 32(6):1206 – 1224.
Bredstrom, D., Lundgren, J. T., Rannqvist, M., Carlsson, D., and Mason, A. (2004). Supply chain optimization in the pulp
mill industry - IP models, column generation and novel constraint branches. European Journal of Operational Research,
156(1):2 – 22.
Burke, P. and Prosser, P. (1991). A distributed asynchronous system for predictive and reactive scheduling. Artificial
Intelligence in Engineering, 6(3):106–124.
Chan, F. T., Au, K., and Chan, P. (2006). A decision support system for production scheduling in an ion plating cell. Expert
Systems with Applications, 30(4):727 – 738.
Chan, W.-T. and Zeng, Z. (2003). Coordinated production scheduling of prefabricated building components. In Proceedings
of the Contruction Research Congress, Winds of Change: Integration and Innovation in Construction, pages 909–916.
Cheeseman, M. J., Swann, P., Hesketh, G. B., and Barnes, S. (2005). Adaptive manufacturing scheduling: a flexible and
configurable agent-based prototype. Production Planning & Control, 16(5):479–487.
Collinot, A., Le Pape, C., and Pinoteau, G. (1988). SONIA: A knowledge-based scheduling system. Artificial Intelligence in
Engineering, 3(2):86–94.
Concannon, K., Hunter, K., and Tremble, J. (2003). Simul8-planner simulation-based planning and scheduling. In Winter
Simulation Conference Proceedings, volume 2, pages 1488–1493.
de Castro, A., Pinheiro, P., and de Souza, G. (2006). A scheduling process applied to newspaper production. In Proceedings
of the International Conference on Service Systems and Service Management, volume 2, pages 1245–1250.
de Ugarte, B. S., Hajji, A., Pellerin, R., and Artiba, A. (2009). Development and integration of a reactive real-time decision
support system in the aluminum industry. Engineering Applications of Artificial Intelligence, 22(6):897 – 905.
27
Esquirol, P., Lopez, P., Haudot, L., and Sicard, M. (1997). Constraint-oriented cooperative scheduling for aircraft manufac-
turing. IEEE Expert, 12(1):32–39.
Everett, J. (2001). Iron ore production scheduling to improve product quality. European Journal of Operational Research,
129(2):355 – 361.
Fargher, H. E., Kilgore, M. A., Kline, P. J., and Smith, R. A. (1994). Planner and scheduler for semiconductor manufacturing.
IEEE Transactions on Semiconductor Manufacturing, 7(2):117–126.
Feng, S., Li, L., Cen, L., and Huang, J. (2003). Using MLP networks to design a production scheduling system. Computers
& Operations Research, 30(6):821 – 832.
Figueira, G., Amorim, P., Guimarães, L., Amorim-Lopes, M., Neves-Moreira, F., and Almada-Lobo, B. (2015). A decision
support system for the operational production planning and scheduling of an integrated pulp and paper mill. Computers
and Chemical Engineering, 77:85–104.
Flower, M. A. and Cheselk