Conference PaperPDF Available

A New Representation in Genetic Programming for Evolving Dispatching Rules for Dynamic Flexible Job Shop Scheduling

Authors:

Abstract and Figures

Dynamic flexible job shop scheduling (DFJSS) is a very important problem with a wide range of real-world applications such as cloud computing and manufacturing. In DFJSS, it is critical to make two kinds of real-time decisions (i.e. the routing decision that assigns machine to each job and the sequencing decision that prioritises the jobs in a machine’s queue) effectively in the dynamic environment with unpredicted events such as new job arrivals and machine breakdowns. Dispatching rule is an ideal technique for this purpose. In DFJSS, one has to design a routing rule and a sequencing rule for making the two kinds of decisions. Manually designing these rules is time consuming and requires human expertise which is not always available. Genetic programming (GP) has been applied to automatically evolve more effective rules than the manually designed ones. In GP for DFJSS, different features in the terminal set have different contributions to the decision making. However, the current GP approaches cannot perfectly find proper combinations between the features in accordance with their contributions. In this paper, we propose a new representation for GP that better considers the different contributions of different features and combines them in a sophisticated way, thus to evolve more effective rules. The results show that the proposed GP approach can achieve significantly better performance than the baseline GP in a range of job shop scenarios.
Content may be subject to copyright.
A New Representation in Genetic
Programming for Evolving Dispatching
Rules for Dynamic Flexible Job Shop
Scheduling
Fangfang Zhang(B
), Yi Mei, and Mengjie Zhang
School of Engineering and Computer Science,
Victoria University of Wellington, P.O. Box 600, Wellington 6140, New Zealand
{fangfang.zhang,yi.mei,mengjie.zhang}@ecs.vuw.ac.nz
Abstract. Dynamic flexible job shop scheduling (DFJSS) is a very
important problem with a wide range of real-world applications such
as cloud computing and manufacturing. In DFJSS, it is critical to make
two kinds of real-time decisions (i.e. the routing decision that assigns
machine to each job and the sequencing decision that prioritises the
jobs in a machine’s queue) effectively in the dynamic environment with
unpredicted events such as new job arrivals and machine breakdowns.
Dispatching rule is an ideal technique for this purpose. In DFJSS, one
has to design a routing rule and a sequencing rule for making the two
kinds of decisions. Manually designing these rules is time consuming and
requires human expertise which is not always available. Genetic program-
ming (GP) has been applied to automatically evolve more effective rules
than the manually designed ones. In GP for DFJSS, different features
in the terminal set have different contributions to the decision making.
However, the current GP approaches cannot perfectly find proper com-
binations between the features in accordance with their contributions.
In this paper, we propose a new representation for GP that better con-
siders the different contributions of different features and combines them
in a sophisticated way, thus to evolve more effective rules. The results
show that the proposed GP approach can achieve significantly better
performance than the baseline GP in a range of job shop scenarios.
Keywords: Representation ·Dispatching rules
Dynamic flexible job shop scheduling ·Genetic programming
1 Introduction
Job shop scheduling (JSS), as an important optimisation problem, has received a
great deal of attention from both academics and industry researchers. It captures
practical and challenging issues in real world scheduling tasks such as managing
grid/cloud computing [1] and designing manufacturing processes [2]. JSS aims
c
Springer Nature Switzerland AG 2019
A. Liefooghe and L. Paquete (Eds.): EvoCOP 2019, LNCS 11452, pp. 33–49, 2019.
https://doi.org/10.1007/978-3-030-16711-0_3
34 F. Zhang et al.
to make a schedule to process a number of jobs with a set of machines. Each
job consists of a sequence of operations which need to be processed one by
one. Classical JSS assumes that one operation can be processed on only one
specific machine. Thus, the task is to schedule the operations in the queue of the
machines.
Flexible job shop scheduling (FJSS) is different from the classic JSS in
that each operation can be processed by multiple candidate machines. There-
fore, FJSS includes two sub-tasks, which are machine assignment and operation
sequencing. Machine assignment is to select an appropriate machine for each
operation from its candidate machines. Operation sequencing is to determine
the order of processing the allocated jobs in each machine to obtain feasible and
satisfactory solutions. FJSS is NP-hard [3].
In practice, the JSS problems are typically in dynamic environment. For
instance, the jobs arrive over time and their attributes are not completely known
until they arrive in the shop floor. There are also other types of dynamic events
in JSS problem such as order cancellations [4] and machine breakdowns [5]. In
this paper, we focus on dynamic new job arrivals because it is the most frequent
and common factor in the shop floor. The challenge of dynamic flexible job shop
scheduling (DFJSS) is how to capture both the machine assignment (rou tin g )
decision and operation sequencing (sequencing) decision simultaneously along
with the new jobs arriving over time.
Exact approaches to search for optimal solutions, such as dynamic program-
ming [6] and branch-and-bound [7], are too time-consuming and inapplicable for
solving large scale JSS problems. Therefore, heuristic search methods such as
tabu search [8] and genetic algorithm [9] have been commonly adopted to find
“near-optimal” solutions in a reasonable time. However, heuristic search meth-
ods are not suitable for solving DFJSS problems because of their lack of ability
to react to the dynamic events in real time. Dispatching rules are promising in
this case because of their low time complexity, the ease of implementation and
the ability to cope with dynamic situations in the job shop. Since the term dis-
patching rule has been used in different contexts, it is worth highlighting that the
concept of a dispatching rule in DFJSS consists of a routing rule and a sequenc-
ing rule (i.e. two kinds of rules). The dispatching rules are normally designed
manually, which is very time-consuming and requires human expertise which is
not always available. In addition, many manually designed dispatching rules are
relatively simple and normally restricted to some specific assumptions [10]and
have difficulties in handling complex practical scenarios [11,12]. Genetic pro-
gramming (GP) has been proven to be a dominating method to automatically
design dispatching rules for JSS [1114]. In order to evolve both the routing
rule and sequencing rule for DFJSS, GP was hybridised with the cooperative
co-evolution framework to co-evolve the two kinds of rules [15,16].
In GP for DFJSS, different features in the terminal set have different contri-
butions to the decision making. For example, the feature named WIQ (work in
queue, i.e. the total processing time of operations in the queue of a machine) is
known to be a dominating feature for making the routing decision, as intuitively
A New Representation in Genetic Programming 35
a machine with lighter workload should be preferred [17]. On the other hand,
machine ready time is another important feature for routing decisions, i.e., it
tends to be better to assign the operation to a machine that can become idle
in the earliest time. However, the contribution of machine ready time should be
smaller than WIQ. Intuitively, a machine with a lighter workload but a later
ready time should still be better than a machine with a heavier workload but an
earlier ready time. However, the existing GP approaches fail to properly combine
the features in accordance with their contributions. As a result, the evolved rout-
ing rules usually focus too much on WIQ, but overlook the other non-dominating
features. The schedules obtained may become ineffective over the longer term
when facing the real-world shop environments.
In this paper, we aim to develop a new representation for routing rule to
help GP evolve more effective rules for DFJSS. In particular, we consider the
following research objectives:
Develop a novel component that can appropriately take the information of
workload of machines into consideration.
Propose a novel representation that tends to take into account the effect of
the dominating feature WIQ and other non-dominating features properly.
Verify the effectiveness of proposed GP approach with new representation by
comparing its performance with the baseline GP.
Analyse the rules evolved by the proposed GP approach.
2 Background
2.1 Dynamic Flexible Job Shop Scheduling
Given a set of machines M={M1,M
2, ..., Mm}and jobs J={J1,J
2, ..., Jn},
FJSS aims to determine which machine to process a particular job and which
job will be chosen to process next by a particular machine. To be specific, each
job Jjhas a sequence of lj(lj<=m) operations Oj=(Oj1,O
j2, ..., Ojlj). Each
operation Oij can only be processed by one of its own optional machines π(Oij)
and its processing time δ(Oij ) depends on the machine that processes it. Then
FJSS is to find an effective schedule subject to the following constraints:
(1) The (j+1)th operation of Ji(denotes by Oi(j+1) ) can only be processed
after its preceding operation Oij has been processed.
(2) Each operation Oij can be processed on one of the corresponding set of
machines π(Oij)Mwith δ(Oij ).
(3) Each machine can process at most one operation at a time.
(4) The scheduling is non-preemptive, i.e. the processing of an operation cannot
be stopped or paused until it is completed.
For the dynamic job shop scheduling problem, jobs arrive in the job shop
over time and their information can only be known when they arrive.
36 F. Zhang et al.
2.2 Dispatching Rules in Dynamic Flexible Job Shop Scheduling
In DFJSS, a routing decision situation will be generated when a new job arrivals
or an operation is finished and its subsequent operation becomes a ready oper-
ation. A sequencing decision situation will be derived when a machine becomes
idle and its queue is not empty. Two kinds of dispatching rules are needed in
DFJSS, which are routing rule and sequencing rule, respectively. The quality of
a schedule depends highly on how well the routing rule and the sequencing rule
work together. The routing rule will be triggered to decide which machine to allo-
cate the operation when a routing decision situation is derived. The sequencing
rule will be triggered to determine which operation in its queue will be chosen
to process next when a sequencing decision situation is derived. Once the trigger
conditions are met, the corresponding decisions will be made immediately.
The machine or operation with the highest priority assigned by routing or
sequencing rule is identified respectively. Once one operation is finished, its infor-
mation related to objectives will be recorded to its corresponding job. After all
the operations are processed, the recorded information related to all jobs is
obtained. Finally, the fitness can be calculated based on the information accord-
ing to different objectives.
2.3 Related Work
In recent years, GP has been widely used to automatically design dispatching
rules for solving JSS problems [18,19]. Tree-based GP is commonly used in many
studies [20,21]. In 2007, Tay and Ho [2] proposed a GP approach to evolve
priority rules for FJSS with multiple objectives by combining them into a single
function. Hildebrandt et al. [11] then used GP to evolve dispatching rules in
different simulations for the single objective of meanflow time. The results show
that the evolved rules perform very well in different scenarios. However, the early
studies only aim to evolve sequencing rule by fixing the routing rule. Cooperation
co-evolution was applied to GP to evolve the rules at the same time in [15]. The
results show that the evolved rules are more effective.
However, in the standard GP, all the features are considered equally in the
terminal set. The WIQ feature is a dominating factor [17,22] that is much more
important than other features for routing decisions, therefore, the routing rules
tend to select the machine with minimal WIQ. In this case, WIQ tends to be
dominant and overweights the other non-dominating features. However, there
are many other features in the job shop and they might be less important than
WIQ, but still contribute to the routing decisions. Using them improperly could
lead to suboptimal performance.
3 The Proposed GP Approach
In order to identify effective combinations of the features with different impor-
tance, this paper considers to separate WIQ from other features, thus to expect
GP can focus more on non-dominating features during the evolutionary process.
A New Representation in Genetic Programming 37
A new representation for routing rule is designed to learn dispatching rules
which can take more information of non-dominating features. It is noted that the
representation design only applies on routing rule. In this section, the proposed
representation is presented first, followed by the designed components.
3.1 Representation
The routing rule is defined as the product of two parts, which are named as com-
ponent 1 and component 2 (i.e. the details will be given in Sect. 3.2). Component
1ispredefined and component 2 is evolved by GP approach automatically. The
motivation of this design is to separate the WIQ with non-dominating features.
It is worth mentioning that a machine with smallest priority value (i.e. highest
priority) will be chosen in this paper. Multiplication is used here to combine
these two components together as it is a more appropriate combination opera-
tor than addition and subtraction. Specifically, the value of component 2 might
be much larger than the value of component 1. An example of the routing rule
is shown in Fig. 1. The terminals and functions in Fig. 1will be described in
Sect. 4.2.
WIS
WIQ
MWT
TIS NIQ
/
_
+
*
component 1 component 2
1
1/
/
Fig. 1. An example of routing rule with new representation.
3.2 Components Design
The goal of component 1 is to extract the information of the current state solely
related to the workload of machines. To this end, component 1 is designed not
only to consider the information of WIQ, but also to consider the workload
distribution of machines in the system. The workload ratio (i.e. workload of
one machine over the entire workload in the system) that can help measure the
distribution of allocated jobs of machines. This is to prevent a solution from
assigning too much work on a single machine. Thus, the design of component
38 F. Zhang et al.
1 needs to meet two requirements. Firstly, it can be used to indicate the infor-
mation of workload of individual machines properly. Secondly, it should express
the difference of the workload of different machines in the system appropriately.
Under the above consideration, the expression of the proposed component 1 is
showninEq.(1), where WIQ stands for the total processing time of operations
in the queue of a machine, and WIS (work in system. i.e. the total processing
time of operations in the queue of all machines) denotes the sum of the workload
of all the machines in the job shop. The component2is the value (VGP ) obtained
by GP method.
component1=1/(1 WIQ/WIS) (1)
component2=VGP (2)
Priority =component1component2(3)
As shown in Eq. (1), component 1 has the following two characteristics. Firstly,
it can ensure that all the values obtained by Eq. (1) are larger than 1. It means
that component 1 will enlarge the value obtained by the GP approach. In other
words, component 1 plays a role of a penalty coefficient. Secondly, the penalty of
each machine is different. The heavier the workload of a machine, the severer the
punishment is given to that machine. This way, a machine with a lighter workload
tends to have a smaller priority value, and is more likely to be selected.
An example of the combination mechanism is shown as follows. We assume
there are two candidate machines for one operation. The value obtained by orig-
inal GP approach are VGP 1and VGP 2. The workloads of these two machines are
denoted by WIQ
1and WIQ
2. At one decision point, the workload in the entire
shop floor (WIS, i.e. work in system) is the same for all the machines. According
to the Eqs. (1), (2) and (3), the different situations of the proposed represen-
tation are shown in Table 1, where C() stands for the relationship between the
corresponding elements. In Table 1,“=,>,< ” are used to show the relation-
ship between VGP 1and VGP 2,WIQ
1and WIQ
2,component1and component2,
Priority
1and Priority
2.
Table 1shows how the difference between machines workload (WIQ) can
influence the final priority value (Priority) under different situations categorised
by VGP . All the cases of VGP 1=VGP 2and most cases of VGP 1>V
GP 2and
VGP 1<V
GP 2have the same trend that the WIQ is positively correlated with
component1and Priority. This means a machine with lighter workload will get
a smaller component 1 and final priority value, and vice versa. This ensures
that the priority values obtained by GP is well considered. There are some
special cases as follows. When VGP 1>V
GP 2(VGP 1<V
GP 2), if WIQ
1<WIQ
2
(WIQ
1>WIQ
2), the final priority value (Priority) is not sure and depends on
the accurate result according to Eqs. (1), (2) and (3). Thus, on one hand, the
machine with heavier workload but small VGP still has chance to have a small
priority value, and thus be selected. On the other hand, the machine with a poor
VGP can also be selected if its workload is very light.
A New Representation in Genetic Programming 39
Table 1. The situations of the final priority values with the proposed components.
C(VGP )C(WIQ)C(component1)C(Priority)
=< < <
= = =
> > >
> < < ?
= = >
> > >
< < < <
= = <
> > ?
Overall, the proposed priority function with the above two components is
expected to consider the effect of both the workload of machines (in component
1) and the other features (in component 2), and combine them together properly
by multiplication.
4 Experiment Design
This work applies the framework (i.e. cooperative evolution genetic program-
ming, CCGP) in [15], which is the current state-of-the-art algorithm of DFJSS
to evolve routing and sequencing rules simultaneously. The proposed algorithm,
which is named as rCCGP, is compared with CCGP [15] to verify its effectiveness
on different job shop scenarios using three commonly used objectives, namely:
(1) max-flowtime, (2) mean-flowtime, and (3) mean-weighted-flowtime.
To verify the performance of the evolved rules, we will use the test beds based
on dynamic flexible simulation model [23,24]. In order to test the effectiveness
and robustness of proposed algorithm, six simulation scenarios based on the
three objectives and two utilisation levels (3 2) are investigated.
4.1 Simulation Configuration
For dynamic simulation, commonly used configuration is adopted. In the job
shop, there are ten machines, which has been proven to be a good showcase for
job shop environment. There are 5000 jobs that need to be processed by ten
machines. In order to get a steady state, a warm up period of 1000 jobs is used
and we collect data from the next 5000 jobs. The new jobs keep coming until
the 6000th job is finished. In each problem instance, jobs arrive stochastically
according to a Poison process with rate λand the average processing time for
machines has mean μ. The utilisation is the proportion of time (p) that a machine
is busy as shown in Eq. (4). Two utilisation levels (i.e. 0.85 and 0.95) are used
in this paper.
p=λμPM(4)
40 F. Zhang et al.
In Eq. (4), PMis the probability of a job visiting a machine. For example, if
each job has two operations and there are ten machines, PMis 2/10.
Different weights are set to jobs to indicate the urgency or importance of jobs
(weight 1 (20%), weight 2 (60%), weight 4 (20%)). Uniform discrete distribution
between 1 and 10 is designed for deciding both the number of operations per job
and the number of candidate machines per operation. In addition, processing
time of each operation will follow uniform discrete distribution between 1 and
99. In this work, the processing time of each operation is the same for all the
candidate machines.
4.2 Parameter Settings
In our experiment, the terminal set and function set in [24] are adopted. The
details are shown in Table 2. It is worth mentioned that “/” is the protected
division that returns 1 if divided by 0.
Table 2. The terminal and function sets.
Terminals Description
NIQ The number of operations in the queue
WIQ Current work in the queue
MWT Waiting time of a machine
PT Processing time of an operation
NPT Median processing time for next operation
OWT The waiting time of an operation
WKR Median amount of work remaining of a job
NOR The number of operations remaining of a job
WWeight of a job
TIS Time in system
Functions +, ,,/,max,min
The GP parameter settings follow the standard setting that have been used in
most existing studies [15,20,22]. The population size is 1024 and the maximum
depth of programs is 8. The crossover, mutation and reproduction rates are 0.80,
0.15 and 0.05, respectively. The rates of terminal and non-terminal selection are
0.10 and 0.90. Tournament selection is set as parent selection method with a
tournament size of 7. The learning process continues until the generation reaches
the maximum number of generations, which is set to 51.
5 Results and Discussions
The proposed GP approach with respect to the test performance and distribu-
tion of average objective value is investigated. 50 independent runs are executed,
A New Representation in Genetic Programming 41
which assures that the results represent the average behavior instead of extreme
situations. Then, the evolved rules are analysed. The (,+) marks show whether
our proposed approaches converge significantly better or poorer than the basic
approach in Wilcoxon rank sum test with a significance level of 0.05. Better
results of min and max values are shown in bold. For the convenience of descrip-
tion, <obj, uti>indicates the simulation scenarios, where obj and uti are the
objective and the utilisation level.
5.1 Test Performance of Evolved Rules
The comparison of the performance of the evolved rules obtained by rCCGP
and CCGP are shown in Table 3. The statistical tests show that the evolved
rules obtained by rCCGP are significantly better than the rules obtained by
CCGP in four (scenario <Tmax, 0.95>,<Tmean, 0.85>,<WTmean, 0.85>
and <WTmean, 0.95>) out of six scenarios. In scenario <Tmax, 0.85>,the
performance is quite similar between rCCGP and CCGP with respective to the
mean(sd), min and max value. In scenario <Tmean, 0.95>, although the rules
evolved by rCCGP is not significantly better, the min, mean(sd) and max value
are all better than their counterparts. In addition, rCCGP can reach better
best-case and worse worst-case performance than CCGP in most cases.
Table 3. The mean(standard error), min and max of the objective value of rCCGP
and CCGP over 50 independent runs for six dynamic scenarios.
Scenario mean(sd) min max
rCCGP CCGP rCCGP CCGP rCCGP CCGP
<Tmax,0.85>1202.96(28.34) 1202.36(30.98) 1158.79 1152.97 1273.17 1270.26
<Tmax,0.95>1864.83(30.69)(-) 1883.66(36.67) 1813.77 1829.47 1942.71 2034.34
<Tmean,0.85>384.36(2.28)(-) 385.81(2.58) 382.31 382.72 396.83 395.81
<Tmean,0.95>550.32(4.80) 552.14(6.46) 543.18 545.64 569.43 577.49
<WTmean,0.85>828.30(6.02)(-) 829.38(3.47) 823.08 824.68 856.29 839.67
<WTmean,0.95>1107.63(12.47)(-) 1110.72(10.77) 1095.88 1097.74 1169.34 1143.34
5.2 Distribution of Average Objective Value
Figure 2shows the violin plot of the average objective value obtained by rCCGP
and CCGP. When further looking into the violin plot in Fig. 2, we can see that in
most scenarios, the value obtained by rCCGP are distributed at lower positions
compared with the value achieved by CCGP expect for scenario <Tmax, 0.85>.
Although in <Tmean, 0.85>,<WTmean, 0.85>and <WTmean, 0.95>, there
are some outliers which are higher than the maximum outlier in CCGP, the
number of outliers is still smaller than their counterparts. Except for the outliers,
the value obtained by rCCGP are more concentrated than that of CCGP, even
in scenario <Tmax, 0.85>. This suggests that the performance of GP with the
proposed new representation is more stable and effective.
42 F. Zhang et al.
<Tmax, 0.95> <Tmean, 0.95> <WTmean, 0.95>
<Tmax, 0.85> <Tmean, 0.85> <WTmean, 0.85>
rCCGP CCGP rCCGP CCGP rCCGP CCGP
rCCGP CCGP rCCGP CCGP rCCGP CCGP
830
840
850
1110
1130
1150
1170
382
386
390
394
550
560
570
1150
1175
1200
1225
1250
1275
1850
1900
1950
2000
Algorithm
Average Objective Value on Test Instances
rCCGP CCGP
Fig. 2. Violin plot of average objective value obtained by rCCGP and CCGP.
5.3 Rule Analyses
Routing Rule. The proposed strategy for GP approach only works on routing
process directly. The results show that the number of occurrences of the feature
WIQ appeared in the final routing rules evolved by rCCGP is much lower than
that of evolved by CCGP. For instance, in scenario <WTmean, 0.95>,thenum-
ber of occurrences for feature WIQ in 50 best routing rules of CCGP (131) is
41% lighter than in rCCGP (93). This is consistent with our expectation as in
the proposed rCCGP, the workload of machines is considered in component 1,
so that the GP-evolved component 2 can be more focused on the other features.
Figure 3shows the simplified component 2 of one promising routing evolved
by rCCGP in the scenario <Tmax, 0.95>. It obtains a Tmax of 1831. There
is no WIQ in the GP evolved rule (component 2). The component 2 consists of
four parts and these four parts are added together. So, we can analyses them one
by one. The details are shown in Eqs. (5)–(8). Note that based on the definition
in Table 2,PT and NPT for all the candidate machines of an operation are
equal in our experiment. NOR for a job is also the same for routing at the
decision point. In addition, TIS and WKR are equal for an ready operation. In
summary, by definition given in Table 2, at any routing decision situation, the
PT,NPT,NOR,TIS and WKR features can be treated as constants, as they
are the same for all the candidate machines. Adding or subtracting a constant
can be removed from the priority function, since it will not change the relative
A New Representation in Genetic Programming 43
preference between machines. In our experiment, the smaller the priority value,
the higher the priority.
part1=1 + max{min{NIQ,MWT},PT MWT}
min(W, M W T +NOR)(5)
The first part is shown as Eq. (5). Obviously, 1 and Ware small constants,
and thus min(W, M W T +NOR) equals Win most cases since Wis usually
smaller than MWT +NOR. Therefore, Eq. (5) can be further simplified as
max{min{NIQ,MWT},PT MWT}. It shows that the routing rule prefers
machines with larger MWT, i.e. the earlier available machine (MWT = current
time - machine ready time).
part2=PT (1 + NIQ)2MWT NOR +min{NPT,TIS}(6)
The second part can be presented as Eq. (6). After ignoring some variables that
can be considered as constants, Eq. (6) can be further simplified to PT NIQ
2MWT. It means the routing rule prefers machines with smaller NIQ (i.e.
number of operations in the queue) and larger MWT.
part3=NPT +WKR
min{NIQPT,max{min(NIQ, MWT),PT MWT}} (7)
The third part is described as Eq. (7). It can be simplified as -min{NIQ PT,
max{min(NIQ,MWT),PT MWT}after ignoring the first two con-
stant terms. In addition, no matter what min{NIQ PT,max{min(NIQ,
MWT),PT MWT}returns, it will be cancelled out by the same component
in part1or part2.
part4=MWT (PT +NPT +min{NIQ,MWT})
OWT W(8)
The last part can be denoted as Eq. (8). OW T (i.e. the waiting time of an
operation) for a ready operation in routing process equals zero in our experiment
(i.e. the details are shown in Sect. 2.2), therefore, the part4will return 1 (i.e.
protected division).
According to the analysis mentioned above, this routing rule can be roughly
simplified as max{min{NIQ,MWT},PTMWT}−2MWT or PT NIQ
2MWT.
Table 4shows the number of times (proportion) a feature appears in the
routing rule mentioned above and the counterpart in scenario <Tmax, 0.95>.
The number of occurrences of features in the routing rule evolve by rCCGP and
CCGP are 39 and 25, respectively. The number of designed terminals is 10 and
the details can be seen in Table2. The number of considered features in rCCGP
(8) is more than that of evolved by CCGP (6). It suggests that the proposed GP
approach can pay more attention to other features to get more information, thus
to improve its performance. It is worth mentioning that the number of features
considered in rCCGP is nine in fact because we consider WIQ by component 1.
44 F. Zhang et al.
10
max min
min
NIQ MWT PT MWT
W
MWT NOR
PT MWT
MWT NOR min
NPT TI S NIQ P T
TIS MWT MWT
TIS MWT
min
NPT
MWT WKR
max
NIQ PT min
NIQ MWT PT MWT
PT
MWT
OWT W
NPT min
NIQ MWT
MWT
OWT W
Fig. 3. Component 2 of one of the best performing rules for routing evolved by rCCGP
in the scenario <tmax, 0.95>.
A New Representation in Genetic Programming 45
Table 4. The number of occurrences (proportion) of features in one promising routing
rule evolved by rCCGP (component 2) and CCGP in scenario <Tmax,0.95>.
Feature Count (rCCGP) Count (CCGP)
MWT 15 (0.38) 7 (0.28)
PT 6 (0.15) 0(0.00)
NIQ 5 (0.13) 6 (0.24)
NPT 3 (0.08) 0 (0.00)
TIS 3 (0.08) 2 (0.08)
W3 (0.08) 0 (0.00)
NOR 2 (0.05) 2 (0.08)
OWT 2 (0.05) 5 (0.20)
WKR 0 (0.00) 0 (0.00)
WIQ 0 (0.00) 3 (0.12)
Total 39 25
min
PT W W KR max
WKR min
max PT
OWT
PT W
max
WKR NPT min max
WIQ NOR min NIQ
WIQ NOR
WWPTW
W W NIQ WKR
Fig. 4. Component 2 of one of the best performing rules for routing evolved by rCCGP
in the scenario <tmax, 0.95>.
MWT, which occurs 15 times, is the most frequently seen feature (15/39 =
0.38) of the evolved rule by rCCGP. For CCGP, MWT is also the most popularly
used one, however, in terms of the proportion, it is less considered than that of
in rCCGP (0.28 <0.38). rCCGP and CCGP pay different attention to different
features (i.e. the features have different importance in rCCGP and CCGP).
Sequencing Rule. The corresponding sequencing rule of the routing rule com-
pared in last section is observed here. This is mainly to investigate what effect
46 F. Zhang et al.
WIQ W
min max
WIQ W TIS NIQ
PT W
max
PT NPT WKR WT
W
WIQ W PT W WIQ W
PT W
max
WIQ W
PT NP T W KR MWT
W
WIQ W
PT W WKR NIQ
Fig. 5. The corresponding sequencing rule of the routing rule mentioned in last section
evolvedbyCCGPinthescenario<tmax, 0.95>.
A New Representation in Genetic Programming 47
routing rule will have on sequencing rule. The sequencing rule evolved by rCCGP
and CCGP are shown in Figs. 4and 5. The size (i.e. number of nodes) of the
sequencing rule is 45 evolved by rCCGP while the sequencing rule evolved by
CCGP in the same scenario is 67. Obviously, the sequencing is much smaller.
When looking at the sequencing rule evolved by rCCGP, the most popular
pattern is PTWfollowed by WWand min{WIQ,NOR}.WIQ/W appears
most often (i.e. six times) followed by PTWin the sequencing rule evolved by
CCGP. It means if the workload is not well considered in routing process, the
machine might be assigned too many tasks. Thus, the sequencing rule should
take WIQ into account. Intuitively, a machine with lots of work should take
different processing strategy compared with a machine has fewer tasks.
6 Conclusions and Future Work
The goal of this paper was to help GP evolve more effective dispatching rules
for DFJSS. The goal has been successfully achieved by developing a new repre-
sentation. The new representation is based on the domain knowledge that the
workload of a machine WIQ is the dominating feature for making the routing
decision. To fully explore the best way of using the other non-dominating fea-
tures, the new representation was designed as a combination of two parts, one
solely related to the workload of machines, and the other focused on the other
non-dominating features. This way, GP can focus on exploring more appropriate
ways of using the other features than the dominating feature.
The results show that the proposed GP approach with new representation can
achieve significantly better performance in most of the involved scenarios. To be
specific, the distributions of average objective values obtained by rCCGP in five
out of six scenarios are better than that of in CCGP. This means the proposed
new representation works well in almost all the examined instances. It confirms
the effectiveness of the proposed component for workload information and the
combination strategy. It is also known that the routing rule obtained by rCCGP
can focus more on the non-dominating features with the proposed new repre-
sentation. In addition, the evolved corresponding sequencing rule is also affected
to consider different information and tended to be smaller than its counterpart.
Overall, the results demonstrate that the proposed way of using domain knowl-
edge successfully helps GP evolve more effective routing and sequencing rules
for DFJSS.
In the future, more strategies will be investigated to make full use of the
information provided by features. In addition, useful techniques will be adopted
to inspect the evolved rules.
References
1. Nguyen, S.B.S., Zhang, M.: A hybrid discrete particle swarm optimisation method
for grid computation scheduling. In: 2014 IEEE Congress on Evolutionary Com-
putation (CEC), pp. 483–490. IEEE (2014)
48 F. Zhang et al.
2. Tay, J.C., Ho, N.B.: Evolving dispatching rules using genetic programming for
solving multi-objective flexible job-shop problems. Comput. Ind. Eng. 54(3), 453–
473 (2008)
3. Brucker, P., Schlie, R.: Job-shop scheduling with multi-purpose machines. Com-
puting 45(4), 369–375 (1990)
4. Oktaviandri, M., Hassan, A., Shaharoun, A.M.: Decision support tool for job shop
scheduling with job cancellation. In: International Conference on Engineering of
Taru-managara (ICET) (2013)
5. Sabuncuoglu, I., Bayız, M.: Analysis of reactive scheduling problems in a job shop
environment.Eur.J.Oper.Res.126(3), 567–586 (2000)
6. Bertsekas, D.P., Bertsekas, D.P., Bertsekas, D.P., Bertsekas, D.P.: Dynamic Pro-
gramming and Optimal Control, vol. 1. Athena Scientific, Belmont (2005)
7. Lawler, E.L., Wood, D.E.: Branch-and-bound methods: a survey. Oper. Res. 14(4),
699–719 (1966)
8. Nowicki, E., Smutnicki, C.: A fast taboo search algorithm for the job shop problem.
Manage. Sci. 42(6), 797–813 (1996)
9. Pezzella, F., Morganti, G., Ciaschetti, G.: A genetic algorithm for the flexible job-
shop scheduling problem. Comput. & OR 35(10), 3202–3212 (2008)
10. Gomes, M.C., Barbosa-P´ovoa, A.P., Novais, A.Q.: Reactive scheduling in a make-
to-order flexible job shop with re-entrant process and assembly: a mathematical
programming approach. Int. J. Prod. Res. 51(17), 5120–5141 (2013)
11. Hildebrandt, T., Heger, J., Scholz-Reiter, B.: Towards improved dispatching rules
for complex shop floor scenarios: a genetic programming approach. In: Proceedings
of the 12th Annual Conference on Genetic and Evolutionary Computation, pp.
257–264. ACM (2010)
12. Pickardt, C.W., Hildebrandt, T., Branke, J., Heger, J., Scholz-Reiter, B.: Evolu-
tionary generation of dispatching rule sets for complex dynamic scheduling prob-
lems.Int.J.Prod.Econ.145(1), 67–77 (2013)
13. Nguyen, S., Zhang, M., Johnston, M., Tan, K.C.: A computational study of rep-
resentations in genetic programming to evolve dispatching rules for the job shop
scheduling problem. IEEE Trans. Evol. Comput. 17(5), 621–639 (2013)
14. Zhang, F., Mei, Y., Zhang, M.: Genetic programming with multi-tree represen-
tation for dynamic flexible job shop scheduling. In: Mitrovic, T., Xue, B., Li, X.
(eds.) AI 2018. LNCS (LNAI), vol. 11320, pp. 472–484. Springer, Cham (2018).
https://doi.org/10.1007/978-3-030- 03991-2 43
15. Yska, D., Mei, Y., Zhang, M.: Genetic programming hyper-heuristic with coopera-
tive coevolution for dynamic flexible job shop scheduling. In: Castelli, M., Sekanina,
L., Zhang, M., Cagnoni, S., Garc´ıa-S´anchez, P. (eds.) EuroGP 2018. LNCS, vol.
10781, pp. 306–321. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-
77553-1 19
16. Zhang, F., Mei, Y., Zhang, M.: Surrogate-assisted genetic programming for
dynamic flexible job shop scheduling. In: Mitrovic, T., Xue, B., Li, X. (eds.) AI
2018. LNCS (LNAI), vol. 11320, pp. 766–772. Springer, Cham (2018). https://doi.
org/10.1007/978-3-030-03991- 2 69
17. Haupt, R.: A survey of priority rule-based scheduling. Oper.-Res.-Spektrum 11(1),
3–16 (1989)
18. Branke, J., Nguyen, S., Pickardt, C.W., Zhang, M.: Automated design of produc-
tion scheduling heuristics: a review. IEEE Trans. Evol. Comput. 20(1), 110–124
(2016)
19. Nguyen, S., Mei, Y., Zhang, M.: Genetic programming for production scheduling:
a survey with a unified framework. Complex Intell. Syst. 3(1), 41–66 (2017)
A New Representation in Genetic Programming 49
20. Mei, Y., Nguyen, S., Xue, B., Zhang, M.: An efficient feature selection algorithm
for evolving job shop scheduling rules with genetic programming. IEEE Trans.
Emerg. Top. Comput. Intell. 1(5), 339–353 (2017)
21. Nguyen, S., Mei, Y., Xue, B., Zhang, M.: A hybrid genetic programming algorithm
for automated design of dispatching rules. Evol. Comput. 1–31 (2018)
22. Mei, Y., Zhang, M., Nyugen, S.: Feature selection in evolving job shop dispatching
rules with genetic programming. In: Proceedings of the Genetic and Evolutionary
Computation Conference 2016, pp. 365–372. ACM (2016)
23. Hildebrandt, T., Branke, J.: On using surrogates with genetic programming. Evol.
Comput. 23(3), 343–367 (2015)
24. Mei, Y., Nguyen, S., Zhang, M.: Evolving time-invariant dispatching rules in job shop
scheduling with genetic programming. In: McDermott, J., Castelli, M., Sekanina, L.,
Haasdijk, E., Garc´ıa-S´anchez, P. (eds.) EuroGP 2017. LNCS, vol. 10196, pp. 147–163.
Springer, Cham (2017). https://doi.org/10.1007/978-3-319-55696-3 10
... Dynamic Flexible Job Shop Scheduling: Dynamic flexible JSS (DFJSS) [239] needs to do machine assignment and operation sequencing simultaneously under a dynamic environment with unpredicted events such as dynamic job arrivals [244] and machine breakdown unexpectedly [224]. DFJSS is more challenging than static JSS, dynamic JSS, and flexible JSS, since DFJSS involves more than one decision and dynamic environments compared with other variations of JSS. ...
... Comprehensive comparison among a large number of dispatching rules can be found in [201]. It is noted that a scheduling heuristic in DFJSS is made of two rules, a routing rule for machine assignment and a sequencing rule for operation sequencing [236,239]. Scheduling heuristics make decisions according to the priority values of machines or operations only at the decision points. ...
... Scheduling heuristics make decisions according to the priority values of machines or operations only at the decision points. This leads to two major reasons for the success of scheduling heuristics in DFJSS [228,239]. One is its ability to efficiently address large-scale problems. ...
Book
Full-text available
This book introduces readers to an evolutionary learning approach, specifically genetic programming (GP), for production scheduling. The book is divided into six parts. In Part I, it provides an introduction to production scheduling, existing solution methods, and the GP approach to production scheduling. Characteristics of production environments, problem formulations, an abstract GP framework for production scheduling, and evaluation criteria are also presented. Part II shows various ways that GP can be employed to solve static production scheduling problems and their connections with conventional operation research methods. In turn, Part III shows how to design GP algorithms for dynamic production scheduling problems and describes advanced techniques for enhancing GP’s performance, including feature selection, surrogate modeling, and specialized genetic operators. In Part IV, the book addresses how to use heuristics to deal with multiple, potentially conflicting objectives in production scheduling problems, and presents an advanced multi-objective approach with cooperative coevolution techniques or multi-tree representations. Part V demonstrates how to use multitask learning techniques in the hyper-heuristics space for production scheduling. It also shows how surrogate techniques and assisted task selection strategies can benefit multitask learning with GP for learning heuristics in the context of production scheduling. Part VI rounds out the text with an outlook on the future. Given its scope, the book benefits scientists, engineers, researchers, practitioners, postgraduates, and undergraduates in the areas of machine learning, artificial intelligence, evolutionary computation, operations research, and industrial engineering.
... Dynamic Flexible Job Shop Scheduling: Dynamic flexible JSS (DFJSS) [239] needs to do machine assignment and operation sequencing simultaneously under a dynamic environment with unpredicted events such as dynamic job arrivals [244] and machine breakdown unexpectedly [224]. DFJSS is more challenging than static JSS, dynamic JSS, and flexible JSS, since DFJSS involves more than one decision and dynamic environments compared with other variations of JSS. ...
... Comprehensive comparison among a large number of dispatching rules can be found in [201]. It is noted that a scheduling heuristic in DFJSS is made of two rules, a routing rule for machine assignment and a sequencing rule for operation sequencing [236,239]. Scheduling heuristics make decisions according to the priority values of machines or operations only at the decision points. ...
... Scheduling heuristics make decisions according to the priority values of machines or operations only at the decision points. This leads to two major reasons for the success of scheduling heuristics in DFJSS [228,239]. One is its ability to efficiently address large-scale problems. ...
Chapter
Full-text available
This chapter investigates how genetic programming evolves scheduling improvement heuristics and the links between the scheduling improvement heuristics presented in this book and other meta-heuristics in the literature. Extended attribute sets and several evaluation mechanisms are introduced in this chapter to allow GP to evolve scheduling improvement heuristics. Experiment results show that the evolved scheduling improvement heuristics outperform the existing scheduling construction heuristics. Analyses also show that the effectiveness of the evolved scheduling improvement heuristics can be improved further by incorporating the search techniques from well-established meta-heuristics in the literature such as variable neighbourhood search.
... The routing rule and sequencing rule have shown their effectiveness in generating schedules in DFJSS. Using the multi-tree representation of GP has proved to be a good way to learn these two rules simultaneously [35], and we use the representation of GP with two trees in this paper. Fig. 2 shows an example of a GP individual to represent the routing rule and the sequencing rule for DFJSS. ...
... Cooperative coevolution was applied to learn the routing rule and the sequencing rule simultaneously in [47]. GP with multi-tree representation has also been successfully used to learn these two rules [35]. The results show that learning two rules simultaneously with GP is an effective approach for DFJSS. ...
Article
Full-text available
Genetic programming has achieved great success for learning scheduling heuristics in dynamic job shop scheduling. In theory, generating a large number of offspring for genetic programming, known as brood recombination, can improve its heuristic generation ability. However, it is time-consuming to evaluate extra individuals. Phenotypic characterisation based surrogates with K-nearest neighbours have been successfully used for genetic programming to preselect only promising individuals for real fitness evaluations in dynamic job shop scheduling. However, sample individuals used by surrogate are from only the current generation, since the fitness of individuals across generations are not comparable due to the rotation of training instances. The surrogate cannot accurately estimate the fitness of an offspring that is far away from all the limited sample individuals at the current generation. This paper proposes an effective instance rotation based surrogate to address the above issue. Specifically, the surrogate uses the samples extracted from individuals across multiple generations with different instances. More importantly, we propose a fitness mapping strategy to make the fitness evaluated by different instances comparable. The results show that the GP with brood recombination and the proposed surrogate can significantly improve the quality of scheduling heuristics. The results also reveal that the proposed algorithm has successfully reduced the number of omitted promising offspring due to the higher accuracy of the surrogate. The samples in the new surrogate spread better in the phenotypic space, and the nearest neighbour tends to be closer to the predicted offspring. This makes the estimated fitness more accurate.
... The goal of GP for DFJSS is to automatically evolve effective scheduling heuristics by selecting and combining terminals (i.e., low-level heuristics) and functions properly. Fig. 2 shows the flowchart of using GP with multi-tree representation to learn heuristics for DFJSS [50]. Each GP individual consists of two trees (i.e., one for evolving routing rule for machine assignment, and the other for evolving sequencing rule for operation sequencing). ...
Article
Full-text available
Multitasking learning has been successfully used in handling multiple related tasks simultaneously. In reality, there are often many tasks to be solved together, and the relatedness between them is unknown in advance. In this paper, we focus on multitask genetic programming for the dynamic flexible job shop scheduling problems, and address two challenges. The first is how to measure the relatedness between tasks accurately. The second is how to select task pairs to transfer knowledge during the multitask learning process. To measure the relatedness between dynamic flexible job shop scheduling tasks, we propose a new relatedness metric based on the behaviour distributions of the variable-length genetic programming individuals. In addition, for more effective knowledge transfer, we develop an adaptive strategy to choose the most suitable assisted task for the target task based on the relatedness information between tasks. The findings show that in all of the multitask scenarios studied, the proposed algorithm can substantially increase the effectiveness of the learned scheduling heuristics for all the desired tasks. The effectiveness of the proposed algorithm has also been verified by the analyses of task relatedness and structures of the evolved scheduling heuristics, and the discussions of population diversity and knowledge transfer.
... Two algorithms are taken into comparison in this paper. The first is the traditional genetic programming (GPHH) [11]. The second is a variant of GPDPS that excludes the operator rate tuning, named GPDPS*. ...
... More recent studies about automated dispatching rule design have introduced the genetic programming (GP) to get rid of the dependence on the expertise of schedulers. Besides, the dispatching rules constructed by GP not only show superior performance as compared with traditional rules (Zhang et al., 2018;Zhou et al., 2020) but also can obviously reduce computational cost without sacrificing the performance (Zhang et al., 2021a). Besides, GP can simultaneously explore the optimal heuristic structure and its corresponding parameters with little model design and domain knowledge (Nguyen et al., 2017). ...
Article
Recessive disturbance can gradually lead to machine idling and production status deviation. Its instant influence on system performance is often insignificant. Still, it can be accumulated over time, consequently causing considerable unnecessary carbon emission and flexible system performance degradation, which brings many difficulties to production managers to make a timely and effective response. To cope with this problem, this paper proposes an adaptive hybrid dynamic scheduling strategy for low carbon flexible job shops, which helps production managers understand the production status of the flexible system and decide the optimal strategy to re-optimise the schedule. This strategy consists of two parts: decision feature and decision approach. For one, concerning performance, phase, and adaption capability (PPC), a decision feature is devised to quantify the dynamic production status. For the other, an ensemble deep forest-based dynamic scheduling decision approach is presented to adaptively select the optimal strategy from four typical dynamic scheduling strategies to accommodate schedules to recessive disturbances. The experiments are conducted to verify the effectiveness of the proposed strategy, and the results reveal the proposed strategy delivers excellent performances both in decision accuracy and schedule repairing.
Article
Against the background of smart manufacturing and Industry 4.0, how to achieve real-time scheduling has become a problem to be solved. In this regard, automatic design for shop scheduling based on hyper-heuristics has been widely studied, and a number of reviews and scheduling algorithms have been presented. Few studies, however, have specifically discussed the technical points involved in algorithm development. This study, therefore, constructs a general framework for automatic design for shop scheduling strategies based on hyper-heuristics, and various state-of-the-art technical points in the development process are summarized. First, we summarize the existing types of shop scheduling strategies and classify them using a new classification method. Second, we summarize an automatic design algorithm for shop scheduling. Then, we investigate surrogate-assisted methods that are popular in the current algorithm field. Finally, current problems and challenges are discussed, and potential directions for future research are proposed.
Article
This paper presents an end-to-end deep reinforcement framework to automatically learn a policy for solving a flexible Job-shop scheduling problem (FJSP) using a graph neural network. In the FJSP environment, the reinforcement agent needs to schedule an operation belonging to a job on an eligible machine among a set of compatible machines at each timestep. This means that an agent needs to control multiple actions simultaneously. Such a problem with multi-actions is formulated as a multiple Markov decision process (MMDP). For solving the MMDPs, we propose a multi-pointer graph networks (MPGN) architecture and a training algorithm called multi-Proximal Policy Optimization (multi-PPO) to learn two sub-policies, including a job operation action policy and a machine action policy to assign a job operation to a machine. The MPGN architecture consists of two encoder-decoder components, which define the job operation action policy and the machine action policy for predicting probability distributions over different operations and machines, respectively. We introduce a disjunctive graph representation of FJSP and use a graph neural network to embed the local state encountered during scheduling. The computational experiment results show that the agent can learn a high-quality dispatching policy and outperforms handcrafted heuristic dispatching rules in solution quality and meta-heuristic algorithm in running time. Moreover, the results achieved on random and benchmark instances demonstrate that the learned policies have a good generalization performance on real-world instances and significantly larger scale instances with up to 2000 operations.
Article
This paper deals with a Genetic Programming (GP) approach for solving flexible shop scheduling problems. The adopted approach aims to generate priority rules in the form of an expression tree for dispatching jobs. Therefore, in a list-scheduling algorithm, the available jobs can be ranked using the tree-based priority rules generated using GP. These priority rules were tested on benchmark problem settings, such as those of Brandimarte and Lawrence, in a static and dynamic environment. The GP approaches were then applied to a special case based on the problem setting of an industrial partner. The goal of these approaches was to minimize the maximum completion time of all jobs, which is known as the makespan. To reach this goal, we considered job assignment and machine sequencing decisions simultaneously in a single-tree representation and compared this single tree with a multi-tree approach, where the terminal sets (job- and machine-related) were strictly separated. This resulted in two parallel GP populations; they were used to first decide which job to choose and then which machine it should be assigned to. Furthermore, for both tree approaches, we implemented an iterative variant that stores recorded information of past schedules to achieve further improvements. Computational experiments revealed a consistent advantage compared to the existing advanced priority rules from the literature with considerably increased performance under the presence of unrelated parallel machines and larger instances in general.
Conference Paper
Full-text available
Flexible job shop scheduling (FJSS) can be regarded as an optimization problem in production scheduling that captures practical and challenging issues in real-world scheduling tasks such as order picking in manufacturing and cloud computing. Given a set of machines and jobs, FJSS aims to determine which machine to process a particular job (by routing rule) and which job will be chosen to process next by a particular machine (by sequencing rule). In addition, dynamic changes are unavoidable in the real-world applications. These features lead to difficulties in real-time scheduling. Genetic programming (GP) is well-known for the flexibility of its representation and tree-based GP is widely and typically used to evolve priority functions for different decisions. However, a key issue for the tree-based representation is how it can capture both the routing and sequencing rules simultaneously. To address this issue, we proposed to use multi-tree GP (MTGP) to evolve both routing and sequencing rules together. In order to enhance the performance of MTGP algorithm, a novel tree swapping crossover operator is proposed and embedded into MTGP. The results suggest that the multi-tree representation can achieve much better performance with smaller rules and less training time than cooperative co-evolution for GP in solving dynamic FJSS problems. Furthermore, the proposed tree swapping crossover operator can greatly improve the performance of MTGP.
Conference Paper
Full-text available
Genetic programming (GP) has been widely used for automatically evolving priority rules for solving job shop scheduling problems. However, one of the main drawbacks of GP is the intensive computation time. This paper aims at investigating appropriate surrogates for GP to reduce its computation time without sacrificing its performance in solving dynamic flexible job shop scheduling (DFJSS) problems. Firstly, adaptive surrogate strategy with dynamic fidelities of simulation models are proposed. Secondly, we come up with generation-range-based surrogate strategy in which homogeneous (heterogeneous) surrogates are used in same (different) ranges of generations. The results show that these two surrogate strategies with GP are efficient. The computation time are reduced by 22.9% to 27.2% and 32.6% to 36.0%, respectively. The test performance shows that the proposed approaches can obtain rules with at least the similar quality to the rules obtained by the GP approach without using surrogates. Moreover, GP with adaptive surrogates achieves significantly better performance in one out of six scenarios. This paper confirms the potential of using surrogates to solve DFJSS problems.
Article
Full-text available
Designing effective dispatching rules for production systems is a difficult and timeconsuming task if it is done manually. In the last decade, the growth of computing power, advanced machine learning, and optimisation techniques has made the automated design of dispatching rules possible and automatically discovered rules are competitive or outperform existing rules developed by researchers. Genetic programming is one of the most popular approaches to discovering dispatching rules in the literature, especially for complex production systems. However, the large heuristic search space may restrict genetic programming from finding near optimal dispatching rules. This paper develops a new hybrid genetic programming algorithm for dynamic job shop scheduling based on a new representation, a new local search heuristic, and efficient fitness evaluators. Experiments show that the new method is effective regarding the quality of evolved rules. Moreover, evolved rules are also significantly smaller and contain more relevant attributes.
Article
Full-text available
Automated design of job shop scheduling rules using genetic programming as a hyper-heuristic is an emerging topic that has become more and more popular in recent years. For evolving dispatching rules, feature selection is an important issue for deciding the terminal set of genetic programming. There can be a large number of features, whose importance/relevance varies from one to another. It has been shown that using a promising feature subset can lead to a significant improvement over using all the features. However, the existing feature selection algorithm for job shop scheduling is too slow and inapplicable in practice. In this paper, we propose the first “practical” feature selection algorithm for job shop scheduling. Our contributions are twofold. First, we develop a Niching-based search framework for extracting a diverse set of good rules. Second, we reduce the complexity of fitness evaluation by using a surrogate model. As a result, the proposed feature selection algorithm is very efficient. The experimental studies show that it takes less than 10% of the training time of the standard genetic programming training process, and can obtain much better feature subsets than the entire feature set. Furthermore, it can find better feature subsets than the best-so-far feature subset.
Article
Full-text available
Genetic programming has been a powerful technique for automated design of production scheduling heuristics. Many studies have shown that heuristics evolved by genetic programming can outperform many existing heuristics manually designed in the literature. The flexibility of genetic programming also allows it to discover very sophisticated heuristics to deal with complex and dynamic production environments. However, as compared to other applications of genetic programming or scheduling applications of other evolutionary computation techniques, the configurations and requirements of genetic programming for production scheduling are more complicated. In this paper, a unified framework for automated design of production scheduling heuristics with genetic programming is developed. The goal of the framework is to provide the researchers with the overall picture of how genetic programming can be applied for this task and the key components. The framework is also used to facilitate our discussions and analyses of existing studies in the field. Finally, this paper shows how knowledge from machine learning and operations research can be employed and how the current challenges can be addressed.
Article
Full-text available
Hyper-heuristics have recently emerged as a powerful approach to automate the design of heuristics for a number of different problems. Production scheduling is a particularly popular application area for which a number of different hyperheuristics have been developed and shown to be effective, efficient, easy to implement, and reusable in different shop conditions. In particular, they seem a promising way to tackle highly dynamic and stochastic scheduling problems, an aspect that is specifically emphasised in this survey. Despite their success and the substantial number of papers in this area, there is currently no systematic discussion of the design choices and critical issues involved in the process of developing such approaches. This review strives to fill this gap by summarising the state of the art, suggesting a taxonomy, and providing the interested researchers and practitioners with guidelines for the design of hyper-heuristics in production scheduling. This paper also identifies challenges and open questions and highlights various directions for future work.
Conference Paper
Full-text available
Although most job shop scheduling problems are concerning dynamic demand and stochastic processing time, the majority of existing scheduling techniques are based on static demand and deterministic processing time. As a consequence, the solutions obtained from the traditional scheduling technique are ineffective wherever changes occur to the system. The Decision Support Tool (DST) for dynamic job shop scheduling was developed. The components of DST, namely, the knowledge-base, data-base, rule base, and graphical user interface were integrated. It provides alternative recommended schedules to be selected by practitioners with minimum knowledge in job shop scheduling. Validation of DST shows that the performance of DST is promising and able to provide comparable results as when using discrete event simulation. This paper demonstrates the capability of the DST to handling changes in demand, i.e. job cancellation. The demonstration suggests that the proposed DST can effectively handle job cancellation during early, middle or late time instances.
Conference Paper
Genetic Programming (GP) has achieved success in evolving dispatching rules for job shop scheduling problems, particularly in dynamic environments. However, there is still great potential to improve the performance of GP. One challenge that is yet to be addressed is the huge search space. In this paper, we propose a simple yet effective approach to improve the effectiveness and efficiency of GP. The new approach is based on a newly defined time-invariance property of dispatching rules, which is derived from the idea of translational invariance from machine learning. Then, we develop a new terminal selection scheme to guarantee the time-invariance throughout the GP process. The experimental studies show that by considering the time-invariance, GP can achieve much better rules in a much shorter time.
Conference Paper
Genetic Programming (GP) has been successfully used to automatically design dispatching rules in job shop scheduling. The goal of GP is to evolve a priority function that will be used to order the waiting jobs at each decision point, and decide the next job to be processed. To this end, the proper terminals (i.e. job shop features) have to be decided. When evolving the priority function, various job shop features can be included in the terminal set. However, not all the features are helpful, and some features are irrelevant to the rule. Including irrelevant features into the terminal set enlarges the search space, and makes it harder to achieve promising areas. Thus, it is important to identify the important features and remove the irrelevant ones to improve the GP-evolved rules. This paper proposes a domain-knowledge-free feature ranking and selection approach. As a result, the terminal set is significantly reduced and only the most important features are selected. The experimental results show that using only the selected features can lead to significantly better GP-evolved rules on both training and unseen test instances.