Abstract
Distributed hybrid flow shop scheduling problem (DHFSP) has attracted some attention; however, DHFSP with uncertainty and energy-related element is seldom studied. In this paper, distributed energy-efficient hybrid flow shop scheduling problem (DEHFSP) with fuzzy processing time is considered and a cooperated shuffled frog-leaping algorithm (CSFLA) is presented to optimize fuzzy makespan, total agreement index and fuzzy total energy consumption simultaneously. Iterated greedy, variable neighborhood search and global search are designed using problem-related features; memeplex evaluation based on three quality indices is presented, an effective cooperation process between the best memeplex and the worst memeplex is developed according to evaluation results and performed by exchanging search times and search ability, and an adaptive population shuffling is adopted to improve search efficiency. Extensive experiments are conducted and the computational results validate that CSFLA has promising advantages on solving the considered DEHFSP.
Similar content being viewed by others
Introduction
Production scheduling is a decision-making process that plays an important role in manufacturing and production systems. In the past decades, scheduling problems have been extensively investigated in single factory by exact method, heuristic and meta-heuristics. In recent years, production has shifted from single factory to multiple factories to quickly respond to market changes and customer demands and distributed scheduling in multiple factories has become the main topic of the current scheduling researches. A number of results have been obtained on distributed scheduling in various production environments [2,3,4, 21, 21].
Hybrid flow shop scheduling problems (HFSP) extensively exist in many manufacturing industries such as electronics, textile and semiconductor [41]. In recent years, distributed hybrid flow shop scheduling problem (DHFSP) has been successfully considered and some progresses are made. For DHFSP in homogeneous factories, Ying and Lin [51] studied DHFSP with multiprocessor tasks and presented a mixed integer programming model and a self-tuning IG to minimize makespan. Hao et al. [13] proposed a hybrid brain storm optimization algorithm to optimize makespan. Cai et al. [6] developed a dynamic SFLA with dynamic search process for DHFSP with multiprocessor tasks. Cai et al. [5] addressed bi-objective DHFSP and gave a shuffled frog-leaping algorithm with memeplex quality. Shao et al. [43] proposed a DNEH with smallest-medium rule and a multi-neighborhood IG to minimize makespan. Zheng et al. [54] provided a cooperative coevolution algorithm with problem-specific strategies by combining estimation of distribution algorithm and IG for fuzzy DHFSP. Li et al. [29] designed a discrete artificial bee colony algorithm for DHFSP with sequence dependent setup time. Regarding DHFSP in heterogeneous factories, Lei and Wang [21] presented a shuffled frog-leaping algorithm (SFLA) with memeplex grouping for distributed two-stage HFSP with the minimization of makespan and the number of tardy jobs. Cai et al. [7] presented a collaborative variable search to solve fuzzy distributed scheduling in two-stage hybrid flow shop with sequence-dependent setup time. Li et al. [28] presented an improved artificial bee colony algorithm for DHFSP. Wang and Wang [45] propose a bi-population cooperative memetic algorithm for solving DHFSP to minimize makespan.
As an important energy-efficient scheduling problem, energy-efficient HFSP plays an essential part in green manufacturing. In recent years, it has attracted much attention. Dai et al. [8] developed a genetic-simulated annealing algorithm to minimize makespan and total energy consumption. Luo et al. [34] presented a novel ant colony optimization for HFSP with the consideration on electricity consumption cost. Tang et al. [44] developed an improved particle swarm optimization for energy-efficient dynamic scheduling. Lin et al. [32] presented teaching-learning-based optimization (TLBO) for the integration of processing parameter optimization and HFSP with the minimization of makespan and carbon footprint. Yan et al. [50] proposed a multi-level optimization method for reducing the total energy consumption and makespan. Lei et al. [17] provided a novel TLBO to minimize total tardiness regarded as key one and total energy consumption. Li et al. [26] presented an energy-aware multi-objective optimization algorithm for HFSP with setup energy consumptions. Zeng et al. [52] applied a hybrid non-dominated sorting genetic algorithm-II for flexible flow shop scheduling with total electricity consumption and material wastage. Meng et al. [35] proposed an improved GA with a new energy-conscious decoding method. Li et al. [27] presented a two-level imperialist competitive algorithm.
In general, DHFSP exists in many real-world manufacturing situations like wafer production in more than one wafer fab and the consideration of DHFSP can result in greater improvements in production performances than that of HFSP in a single factory. It can be found that the previous works have the following three features.
(1) Homogeneous factories are frequently considered and heterogeneous factories are seldom handled. Because the former is an idea case and the latter extensively exits in the real-life production process, it is vital to investigate DHFSP in heterogeneous factories. (2) Energy-efficient HFSP has attracted much attention in single factory; however, the energy-related objective or constraints are hardly considered in DHFSP. Obviously, energy-saving of multiple factories production is more important than that of single factory production, so energy-efficient DHFSP should be studied fully. (3) Distributed scheduling with uncertainty attracted limited attention in hybrid flow shop [7, 54]. Uncertainty always exists in the real-life manufacturing process and is an unavoidable property of manufacturing process [1]. The obtained schedule may be invalid if uncertainty is neglected in scheduling problem; moreover, the negligence of uncertainty in multiple factories will produce more serious consequences than that in single factory. Thus, it can be concluded from the above analyses that it is important to study DEHFSP with uncertainty in heterogeneous factories.
In the past decade, fuzzy theory is often adopted in fuzzy scheduling to depict uncertainty and a number of works have been done on fuzzy scheduling problem [1, 16, 18, 25, 30, 31, 33, 47] in single factory and fuzzy distributed scheduling in multiple factories [7, 54]. Some works on DHFSP with fuzzy processing conditions are also done; however, the related researches are not performed fully.
SFLA is a meta-heuristic by observing, imitating and modelling the behavior of a group of frogs searching for a location with the maximum amount of available food [10]. It has fast convergence speed, effective algorithm structure containing local search and global information exchanges. SFLA has been used to handle parallel machine scheduling, flow shop scheduling and HFSP etc by discretization in single factory [11, 15, 22, 23, 37,38,39, 49, 53]. There are some applications of SFLA to distributed scheduling [6, 21]. Not only that, SFLA performs very well in solving other scheduling problems [46]. The optimization abilities and advantages of SFLA have been validated on scheduling problems.
In the previous works, memeplexes evolve independently after population is divided into s memeplexes and the cooperation between memeplexes is seldom considered based on the quality evaluation of memeplex. For example, the best memeplex often consists of good solutions and the worst memeplex has some worse solutions. The cooperation between these two memeplexes can avoid the waste of computing resources on the worst memeplex and make full use of good search ability of the best memeplex.
In this study, an cooperated shuffled frog-leaping algorithm (CSFLA) is proposed to address fuzzy DEHFSP in heterogeneous factories. The goal is to optimize fuzzy makespan and fuzzy total energy consumption and total agreement index simultaneously. In CSFLA, IG, VNS and global search (GS) are designed based on features of the problem and memeplex evaluation is done in terms of three quality indices: solution quality, evolution quality and contribution degree of archive; to improve search efficiency, an effective cooperation between the best memeplex and the worst memeplex is performed in search process of memeplexes and an adaptive population shuffling is presented. CSFLA is tested on a number of benchmark instances and compared with the methods from literature. The computational results demonstrate that the new strategies of CSFLA are effective and efficient and CSFLA can generate better results than its comparative algorithms.
The remained parts of the paper are organized as follows. Operations on fuzzy scheduling is described in the second section followed by problem description in third section. Introduction to SFLA is shown in fourth section. CSFLA for DEHFSP with fuzzy processing time is given in fifth section. Computational results and analyses are provided in sixth section. The conclusions are drawn and the future research topics are reported in the final section.
Operations on fuzzy number
Triangular fuzzy number (TFN) is often used to indicate the processing time in fuzzy scheduling because of its simple operations. Some operations include addition operation, the ranking methods of TFNs and max operation of two TFNs are needed to build a fuzzy schedule.
Addition is used to decide completion time of job. For TFNs \({\tilde{s}}=(s_1,s_2,s_3)\) and \({\tilde{t}}=(t_1,t_2,t_3)\), addition operation is performed by
For \({\tilde{s}}\), \(c_1({\tilde{s}})=(s_1+2s_2+s_3)/4\), \(c_2({\tilde{s}})=s_2\), \(c_3({\tilde{s}})=s_3-s_1\).
Ranking of \({\tilde{s}}\) and \({\tilde{t}}\) is done according to the following conditions:
If \(c_1({\tilde{s}})>c_1({\tilde{t}})\), then \({\tilde{s}}>{\tilde{t}}\). If \(c_1({\tilde{s}})=c_1({\tilde{t}})\) and \(c_2({\tilde{s}})>c_2({\tilde{t}})\), then \({\tilde{s}}>{\tilde{t}}\). If \(c_i({\tilde{s}})=c_i({\tilde{t}})\), \(i=1,2\) and \(c_3({\tilde{s}})>c_3({\tilde{t}})\), then \({\tilde{s}}>{\tilde{t}}\).
Ranking is adopted to compare fuzzy objectives of solutions.
Max operation is applied to compute beginning time of job [16] and defined by
where \({\tilde{s}} \vee {\tilde{t}}\) denotes the larger one of \({\tilde{s}}\) and \({\tilde{t}}\).
Multiplication operation is applied to compute total energy consumption in this study. For TFN \({\widetilde{s}}=(s_1,s_2,s_3)\) and a constant \(\alpha \), multiplication operation is defined by
Problem description
DEHFSP with fuzzy processing time can be described as follows. There are n jobs distributed among F heterogeneous factories located in different sites. Each factory is a hybrid flow shop with m stages and there are \(w_{fl}\) unrelated parallel machines at stage l of each factory f. All jobs are available at time zero. Each machine \(M_{flk}\) exists two modes: processing mode and stand-by mode.
DEHFSP has some constraints on jobs and machines:
Each machine can process at most one operation at a time.
No jobs may be processed on more than one machine at a time.
Operations cannot be interrupted.
All machines are available at all times.
DEHFSP can be categorized into three sub-problems: factory assignment deciding a factory of each job, machine assignment and scheduling. There are strong coupling relationships among these sub-problems [6].
The mathematical model of DEHFSP with fuzzy processing time, which is extended from Wang and Wang [45], is as follows:
where Eq. (4) is to maximize total agreement index; Eq. (5) is to minimize fuzzy makespan; Eq. (6) is to minimize fuzzy total energy consumption; constraint (7) indicates that each job is processed on only one factory; constraint (8) shows that each job can only be processed in one machine at every stage; constraint (9) demonstrates that each job can be processed after zero time; constraint (10) indicates that the start time of process at stage \(l+1\) is not earlier than the end time of process at stage l; constraint (11) shows that the process cannot be interrupted; constraint (12)–(14) demonstrate that each machine can only process one job at one time; constraint (15)–(17) give the binary decision variables.
Regarding TAI, it is the sum of \(\mathrm{AI}_i\) of all jobs. Agreement index is defined by Sakawa and Kubota [42] and used to define the degree of tardiness of \({\widetilde{C}}_i\) to due date \(\widetilde{d_i}\). Figure 1 shows fuzzy makespan, fuzzy due date and agreement index. \(\mathrm{AI}_i\) is defined by
With respect to TEC, for machine \(M_{flk}\), its completion time is equal to the sum of processing times of all jobs in \(\varPhi _{flk}\) plus the sum \(\mathrm{ID}_{flk}\) of idle time, that is,
\(\mathrm{EC}_{flk}\) is energy consumption of \(M_{flk}\), Obviously,
TEC can be obtained after the above two equations are combined together and is adopted to avoid computing ID\(_{flk}\) because ID\(_{flk}\) is related to the subtraction of TFNs and difference between two TFNs is not TFNs frequently and hard to be obtained.
Introduction to SFLA
SFLA was first proposed by Eusuff et al. [10]. SFLA starts with an initial population P, in which each solution is represented as the position of a frog. Algorithm 1 shows the process of SFLA.
Population division is to divide the population into s memeplexes to form multiple sub-populations, which described as follows. All solutions are sorted in the descending order of fitness, then g-th solution is allocated into memeplex \( (g-1) ( \mathrm{mod} \ s)+1\), where \(g ( \mathrm{mod} \ s)\) indicates the remainder of \( g \big / s \) .
Memeplex search is the main process to find a better solution. Search within memeplex \({{{\mathcal {M}}}}_t\) is shown below. The following steps are repeated \(\eta \) times: an optimization object \(x_w\) is first chosen, then a new solution \(x'\) is produced by using \(x_w\) and \(x_b\) by Eq. 19, if the new one is better than \(x_w\), then replace \(x_w\) with \(x'\); otherwise, a solution \(x'\) is generated by Eq. 19 after \(x_g\) substitutes for \(x_b\), if \(x'\) has better fitness than \(x_w\), then \(x'\) becomes \(x_w\); otherwise, \(x_w\) is replaced with a randomly obtained solution, \(x_w\), \(x_b\) and \(x_g\) are the worst solution in memeplex, the best solution in memeplex and the best solution of P.
where rand is a random number following uniform distribution in [0,1].
Population shuffling is done in the following way. All evolved memeplexes \({{{\mathcal {M}}}}_1,{{{\mathcal {M}}}}_2,\ldots ,{{{\mathcal {M}}}}_s\) are combined together and a new population is formed.
CSFLA for DEHFSP
In SFLA, search within memeplex is often executed independently and there are no considerations on cooperation between memeplexes. Cooperation may be an effective way to intensify search ability of SFLA. In CSFLA, all memeplexes are evaluated and sorted, and then cooperation between the best memeplex and the worst one is implemented and an adaptive population shuffling is done. We describe these strategies in the following sections.
Initialization and population division
DEHFSP is composed of three sub-problems: factory assignment, machine assignment and scheduling. A two-string representation is used. For DEHFSP with n jobs and F factories, a solution is denoted by a factory assignment string \(\left[ \theta _1,\theta _2,\ldots , \theta _n \right] \) and a scheduling string \(\left[ \pi _1, \pi _2, \ldots , \pi _n \right] \). \(\theta _i\in \left\{ {1, 2, \ldots , F} \right\} \) indicates the factory allocated for job \(J_i\), \(\pi _i \in \left\{ {1,2,\ldots ,n}\right\} \). Machine assignment is decided by a rule.
The decoding procedure is described below. All allocated jobs in each factory are decided according to factory assignment string and then permutation of these allocated jobs in each factory is obtained in terms of scheduling string, then for job permutation of each factory f, start with the first job, for each job \(J_i\) at stage l, choose a machine \(M_{flk}\) with minimum completion time and allocate \(J_i\) on \(M_{flk}\).
Table 1 gives an example of DEHFSP. A possible solutions is composed of [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1] and [20, 18, 5, 16, 15, 3, 14, 7, 19, 2, 8, 1, 17, 6, 11, 4, 10, 13, 9, 12]. Figure 1 describes the schedule of the solution.
Initial population P with N solutions is randomly produced.
Population division is implemented as follows. A population \({{\bar{P}}}\) is first constructed, then \(g=1\), binary tournament is performed repeatedly until \({{\bar{P}}}\) is empty: two solutions \(x,y\in {{\bar{P}}}\) are randomly chosen, if \(x\succ y\)(\(y\succ x\)), then add x(y) into memeplex \({{{\mathcal {M}}}}_g\), and delete x(y) from \({{\bar{P}}}\); otherwise, randomly choose one of x and y, add the chosen solution into \({{{\mathcal {M}}}}_g\) and remove it from \({\bar{P}}\). \(g=g+1\), \(g=(g-1) (\mathrm{mod} \ {\bar{s}})+1\).
\(x\succ y\) means x dominates y and is defined as follows: \(x\succ y\) if \(\mathrm{TAI}(x)\ge \mathrm{TAI}(y)\), \(C_\mathrm{max}(x)\le C_\mathrm{max}(y)\), \(\mathrm{TEC}(x)\le \mathrm{TEC}(y)\) and at least one objective, take TAI as an example, \(\mathrm{TAI}(x)> \mathrm{TAI}(y)\).
Initially, \({\bar{P}}=P\), \({\bar{s}}=s\).
Memeplex evalution
Memeplex evaluation is seldom adopted in the previous SFLAs [6, 21, 37]. In this study, three quality indices are used to evaluate and discriminate memeplexes.
For memeplex \({{{\mathcal {M}}}}_i\), its quality \(\mathrm{Me}_i\) is defined by
\(\mathrm{Evo}_i\) is defined by
where \({{\bar{\lambda }}}_{x}\) and \({\lambda _{x}}\) are the effective search times and search times of \(x\in {\mathcal {M}}_i\). When \(x\in {{{\mathcal {M}}}}_i\) is selected as optimization object of memeplex search, \({\lambda _{x}}={\lambda _{x}}+1\) if a new solution is generated, \({{\bar{\lambda }} _{x}}={{\bar{\lambda }} _{x}}+1\) if the new solution is not dominated by x, that is, the search of x is effective. \({{\bar{\lambda }}_{x}}\) and \({\lambda _{x}}\) are initialized to 0 before search process is done in each memeplex.
where \(\mathrm{rank}_x\) is rank of x obtained by non-dominated sorting [9] on population P.
s memeplexes are sorted in the descending order of \(\mathrm{Me}_i\). Suppose that \(\mathrm{Me}_1 \ge \mathrm{Me}_2 \cdots \ge \mathrm{Me}_s\), so \({{{\mathcal {M}}}}_1\) is the best memeplex and \({{{\mathcal {M}}}}_s\) is the worst one.
Cooperation-based memeplex search
Algorithm 2 describes the main steps of memeplex search. Obviously, memeplex \({{{\mathcal {M}}}}_s\) is just given search times \(\eta <\mu \) and \({{{\mathcal {M}}}}_1\) has more search times than \(\mu \).
In Algorithm 2, GS, IG and two VNS are used and described in the following. GS(x, u) is described as follows. For a solution \(x\in {{{\mathcal {M}}}}_i\), randomly select a non-dominated solution \(y\in \mathcal{M}_i\), \(y\ne x\); stochastically pick a coding string in the same probability and produce a new z by crossover of the chosen string between x, y; if z is not dominated by x, replace x and update \(\varOmega \) with z and update \({\mathcal {Q}}\) with x, otherwise, randomly decide a coding string in the same probability and generate a new z by crossover on the selected string between x and a randomly determined \(y\in \varOmega \); if z is not dominated by x, replace x and update \(\varOmega \) with z and update \({\mathcal {Q}}\) with x, otherwise randomly produce a solution z; if x keeps invariant, \(u=u+1\), where the set \({\mathcal {Q}}\) is used to store some intermediate data and can be regarded as memory of CSFLA.
Crossover between x, y is performed in the following way. Randomly decide \(k_1,k_2,k_1<k_2\), decide jobs between \(k_1\) and \(k_2\) on the chosen string of y; if the chosen one is scheduling string, then adjust relative sequence of these jobs on x according to their sequence on y; if the chosen one is factory assignment string, then all genes of x between \(k_1\) and \(k_2\) are replaced with those of y on the same position.
IG(x, u) is shown below. For a solution \(x\in {{{\mathcal {M}}}}_i\), a new solution z is first obtained by the following steps: determine one objective randomly, for example, \(C_\mathrm{max}\), and choose a factory which has the worst objective value; stochastically select jobs \(\pi _i\), \(\pi _j\) from the chosen factory and delete them from scheduling string, compute the chosen objective value using the remained jobs; reinsert jobs \(\pi _i\) and \(\pi _j\) one by one into a position with the smallest value of the chosen objective among all possible new positions; then if \(x\succ z\), update memory \(\mathcal{Q}\) and \(u=u+1\); else replace x and update \(\varOmega \) with z.
Three neighborhood structures are used in VNS1 and VNS2. \({{{\mathcal {N}}}}_1\) is shown below. Select a factory \(f_1\) with the biggest completion time and a factory \(f_2\) with the smallest completion time; randomly select a job \(\pi _i\) from factory \(f_1\) and a job \(\pi _j\) from factory \(f_2\) on position \(k_2\) of scheduling string, insert \(\pi _i\) into position \(k_2-1\) on scheduling string and let \(\theta _{\pi _i}=\theta _{\pi _j}\). If \(k_2=1\), then \(\pi _i\) is deleted and then directly inserted on position 1.
\({{{\mathcal {N}}}}_2\) is described as follows. Decide factories \(f_1,f_2\) as done in \({{{\mathcal {N}}}}_1\), then randomly decide a job \(\pi _i\) from factory \(f_1\) and a job \(\pi _j\) from factory \(f_2\), and exchange them on scheduling string and swap \(\theta _{\pi _i}\) and \(\theta _{\pi _j}\) on factory assignment string. \({{{\mathcal {N}}}}_3\) is described below. Stochastically choose positions \(k_1,k_2,k_3, 1\le k_1<k_2<k_3\le n\), on two strings of a solution, genes between \(k_1\) and \(k_2-1\) and those between \(k_2\) and \(k_3\) are exchanged.
In IG, \({{{\mathcal {N}}}}_1\) and \({{{\mathcal {N}}}}_2\), factories are not randomly chosen and selected with the worst objective value or the best objective value, the movement of jobs in the chosen factory or between the selected factories can lead to the improvement of the chosen objective in a high probability, as a result, a new solution can be obtained easily because of the above features, which is non-dominated with the current solution at least.
VNS1(x, u) is performed below. \(g=1\), \(e=1\), repeat the following steps: produce \(z\in {{{\mathcal {N}}}}_g(x)\), if \(x\succ z\), then update memory \({{{\mathcal {Q}}}}\) with z and \(g=g+1\); else \(g=1\), replace x and update \(\varOmega \) with z. \(e=e+1\) until \(g>3\) or \(e\ge R\).
VNS2(x) is described in Algorithm 3.
\(\varOmega \) is updated as follows. z is added to \(\varOmega \) and all solutions in \(\varOmega \) are compared based on Pareto dominance, then all dominated solutions are removed. The same way is also used to update \({\mathcal {Q}}\) with z.
In Algorithm 2, IG, GS and two VNS are used in a flexible way, as a result, their search advantages can be used fully and exploration ability is intensified; on the other hand, \(\eta =2\times \mu \times \mathrm{Me}_s/(\mathrm{Me}_1+\mathrm{Me}_s)<\mu \) for \(\mathrm{Me}_s<\mathrm{Me}_1\), that is, the search times of \({{{\mathcal {M}}}}_s\) is less than \(\mu \), the remained \(\mu -\eta \) times are provided for the best memeplex \({{{\mathcal {M}}}}_1\) and VNS2 acts on a non-dominated solution of \({{{\mathcal {M}}}}_1\) and new solutions are used to update \({{{\mathcal {M}}}}_s\). This is an effective cooperation between the worst memeplex \({{{\mathcal {M}}}}_s\) and the best memeplex \({{{\mathcal {M}}}}_1\) by exchanging search times of \({{{\mathcal {M}}}}_s\) and search ability of \(\mathcal{M}_1\).
Algorithm description
CSFLA is shown in Algorithm 4. The initial \(\varOmega \) is composed of the non-dominated solutions in initial P. The initial \({{{\mathcal {Q}}}}\) is empty.
Adaptive population shuffling is done in the following way. Let \({\bar{P}}\) be empty, all memeplexes \({{{\mathcal {M}}}}_i\) meeting \(Evo_i\le \gamma \) are added into \({\bar{P}}\) and then all solutions \({{{\mathcal {Q}}}}\) are added into \(\bar{P}\); finally, non-dominated sorting is performed on all solutions in \(\bar{P}\) and the first \(N\times \bar{s}/s\) solutions are only kept, where \(\gamma \) is a real number and set to be 0.5 by experiments.
CSFLA has the following features. (1) Memeplex is evaluated according to solution quality, evolution quality and contribution degree for archive. All memeplexes are sorted in terms of quality. (2) An effective cooperation between the best memeplex and the worst memeplex is implemented. (3)Memeplexes for shuffling are selected in an adaptive way and combined with \({{{\mathcal {Q}}}}\) to form a new population.
Computational experiments
All experiments are implemented using Microsoft Visual C++ 2019 and run on 8.0 G RAM 2.4 GHz CPU PC.
Test instances, comparative algorithms and metrics
Extensive experiments are conducted on 80 instances to test the performances of CSFLA for DEHFSP. 80 instances are randomly produced and the basic information are shown in Table 3. TFN \({\widetilde{p}}_{iflk}=\left( \delta _1\times {p'_{iflk}}, p'_{iflk},\delta _2\times {p'_{iflk}}\right) \), where \(p'_{iflk}\in [60,80]\), \(\delta _1\in [0.85,1]\) and \(\delta _2\in [1,1.3]\). Fuzzy due date \({\widetilde{d}}_i=\left( d'_i, \delta _2\times d'_i\right) \), where \(d'_i\in [(n/F+m-1)\times 80, m\times 80]\). \(w_{fl}\in [1,3]\). \(E_{flk}\in [2,4]\). \(\mathrm{SE}_{flk}=1\). All the above data are integers except that \(\delta _1\) and \(\delta _2\) are real number.
Four comparative algorithms are chosen, which are multi-objective tabu search method (MOTS, [48]), multi-objective colonial competitive algorithm (MO-CCA, [14]), multi-objective adaptive large neighborhood search (MOALNS, [40]) and cooperative coevolution algorithm (CCA, [54]). Two variants of CSFLA are also compared with CSFLA to show the effect of new strategies of CSFLA.
MOTS is used to solve two-stage hybrid flow shop with preventive maintenance. It starts from some non-dominated solutions and generates a set of neighborhood solutions for each starting solution. MOTS can be applied to handle DEHFSP after coding string on maintenance is replaced by factory assignment string, neighborhood structure of maintenance is deleted and a neighborhood structure is added, in which a \(\theta _i\) is randomly selected from factory assignment string and assigned a new value.
MOCCA is proposed for solving HFSP with the minimization of makespan and total weighted tardiness and has good performance. It can be directly applied to solve DEHFSP after a factory assignment string is added and then VNS1 and GS are used instead of the original VNS and crossover between colony and its imperialist.
MOALNS is dedicated to deal with distributed reentrant permutation flow shop scheduling problem with three objectives. MOALNS can be used to solve DEHFSP after cost and tardiness are replaced with TEC and TAI.
CCA is presented to address multi-objectives DHFSP with fuzzy processing times and some different objectives from our DEHFSP and can be directly used to dispose DEHFSP, so it is chosen as a comparative algorithm.
We construct two variants of CSFLA, which are SFLA1 and SFLA2. When memeplex cooperation is moved from CSFLA, SFLA1 is obtained. The comparison between CSFLA and SFLA1 is to show the effect of cooperation. When shuffling is done in SFLA in the fourth section, SFLA2 is obtained. The comparison between CSFLA and SFLA2 is to reveal the impact of adaptive population shuffling.
Three metrics \({\mathcal {C}}\) [55], \(\rho _l\) [24] and inverted generational distance (IGD, [12, 36]) are applied to evaluate the performances of algorithms.
Metric \({\mathcal {C}}\) is used to measure the dominance relationship between the non-dominated solution sets of L and B. \({\mathcal {C}}(L,B)\) measures the proportion of members of B which are dominated by that of L.
Metric \(\rho _{l}\) indicates the ratio of number of the elements in the set \(\{x \in \varOmega _{l} | x \in \varOmega ^{*}\}\) to \(\left| \varOmega ^{*}\right| \). The larger the value of \(\rho _l\), the more members that \(\varOmega _l\) provides for \(\varOmega ^{*}\). \(\rho _l=1\) indicates that all solutions of \(\varOmega ^{*}\) are provided by \(\varOmega _l\).
IGD mainly used to measure the distance between the solution set \(\varOmega _A\) of algorithm A and the reference set \(\varOmega ^{*}\). The smaller the value of IGD, the better the overall performance of algorithm A.
where d(x, y) is the Euclidean distance between solution x and y by normalized objectives.
Parameter settings
CSFLA has five main parameters: stopping condition, N, s, \(\mu \), R. We set \(0.1\times n \times m\) CPU time as stopping condition. We found that CSFLA, its two variants and four comparative algorithms can converge well when the above time reaches, so we first choose \(0.1\times n \times m\) CPU time as stopping condition.
Taguchi method is used to decide settings of other parameters. Instances 1, 50 and 80 are selected. The same settings can be obtained using these instances, so we only exhibit the results on instance 50.
Table 4 lists the levels of each parameter and Table 5 gives the orthogonal array \(L_{9}\left( 3^{3}\right) \). CSFLA runs 10 times independently for instance 50. The results of IGD and S/N ratio are shown in Fig. 3, in which S/N ratio is defined as \(-10 \times \log _{10}\left( \mathrm{IGD}^{2}\right) \). As shown in Fig. 3, the best setting is \(N=60\), \(s=6\), \(\mu =100\) and \(R=20\).
All parameters of MOTS, MOCCA, MOALNS and CCA are directly selected from Wang and Liu [48], Karimi and Davoudpour [14], Rifai et al. [40] and Zheng et al. [54] except the stopping condition. Parameters of SFLA1 and SFLA2 are identical with those of CSFLA.
Results and analyses
Each algorithm randomly runs 10 times for each instance. The reference set \(\varOmega ^* \) is composed of the non-dominated solutions in \(\bigcup \nolimits _{i = 1}^6 {\varOmega _i } \), where \(\varOmega _1, \varOmega _2, \varOmega _3\), \(\varOmega _4\), \(\varOmega _5\) and \(\varOmega _6\) are non-dominated solutions of CSFLA, MOTS, MOCCA, MOALNS, SFLA1 and SFLA2 obtained in 10 runs. Tables 6, 7, 8 and 9 report the results of all algorithms, in which symbol ‘Ins’ indicates instance and ‘CS’, ‘MT’, ‘MC’, ‘MA’, ‘C’, ‘S1’ and ‘S2’ represent CSFLA, MOTS, MOCCA, MOALNS, CCA, SFLA1 and SFLA2. Figure 4 exhibits box plot of all algorithms on \(\rho \), \({{\mathcal {C}}}\) and IGD. Figure 5 provides the distribution of non-dominated solutions of algorithms on instances 32 and 68, in which \(c_1(C_\mathrm{max})\), \(c_1(\mathrm TEC)\) and TAI are used.
As shown in Tables 6, 8 and 9, CSFLA obtains smaller IGD than SFLA1 on 79 instances and it also has smaller \({{{\mathcal {C}}}}(\mathrm{S1,CS})\) than \({{{\mathcal {C}}}}(\mathrm{CS,S1})\) on 79 instances; moreover, \({{{\mathcal {C}}}}(\mathrm{CS,S1})\) is equal to 1 on 49 instances, that is, all solutions of SFLA1 is dominated by non-dominated solutions of CSFLA. Similarly, \(\rho \) of CSFLA is more than that of SFLA1 on all instances and equal to 1 on 14 instances, that is, all members of the reference set \(\varOmega ^*\) are provided by CSFLA. CSLFA performs notably better than SFLA1. This conclusion also can be obtained from Figs. 4 and 5. The same conclusion can be obtained by comparing CSFLA with SFLA2. The notable performance differences between CSFLA and its two variants reveal that cooperation and adaptive population shuffling really have positive impact on the performances of CSFLA.
As illustrated in Tables 7 and 9, solutions of MOTS are always far away from those of CSFLA on 79 instances because IGD of CSFLA is less than that of MOTS and \({\mathcal {C}}(\mathrm{CS, MT})\) is equal to 1 on 45 instances; CSFLA produces smaller IGD than MOCCA and obtains bigger \({\mathcal {C}}(\mathrm{CS, MC})\) than \({\mathcal {C}}(\mathrm{MC, CS})\) on all instances;
IGD of CSFLA is smaller than CCA on 68 instance and \({\mathcal {C}}(\mathrm{C, CS})\) is less than \({\mathcal {C}}(\mathrm{CS, C})\) on 71 instances, and it can be seen that MOALNS performs significantly worse than CSFLA on metrics IGD and \({\mathcal {C}}\) on all instances. On the other hand, \(\rho \) of CSFLA is more than that of its all comparative algorithms on 79 instances, that is, most of the solutions of \(\varOmega ^*\) are provided by CSFLA. Obviously, CSLFA performs notably better than its four comparative algorithms. The same conclusion also can be drawn from box plot in Figs. 4 and 5.
The promising performances of CSFLA mainly result from its cooperation between memeplexes and adaptive shuffling. With the addition of cooperation, the waste of computing resource on the worst memeplex is avoided and the good search ability of the best memeplex is used fully. Adaptive shuffling can keep the stability of solution structure in some memeplexes with good evolution quality. These strategies can effectively keep high diversity and avoid search falling local optima; thus, it can be concluded that CSFLA is a competitive method for solving DEHFSP with fuzzy processing time.
Conclusion
In real-world manufacturing systems, energy consumption, uncertainty and multi-objective optimization are often required to be considered simultaneously. This paper aims to solve DEHFSP with fuzzy processing time and apply a new algorithm named CSFLA to optimize fuzzy makespan, total agreement index and fuzzy total energy consumption simultaneously. In SFLA, three search strategies named IG, GS and VNS are designed based on problem-related features. After memeplexes evaluation, the best memeplex and the worst memeplex cooperate each other through exchanging search times and search ability. An adaptive shuffling is adopted to improve search efficiency. The performances of CSFLA are tested and the computational results show that CSFLA is a promising method to solve the considered DEHFSP.
In the near future, we will continue to study scheduling problems of distributed hybrid flow shop. Swarm intelligence optimizations are also the focus of our attention and we will try to carry out effective labor division and collaboration among multiple groups. We will also pay attention to DHFSP with some special constraints like distributed assembly hybrid flow shop scheduling problem.
References
Abdullah S, Abdolrazzagh-Nezhad M (2014) Fuzzy job-shop scheduling problems: a review. Inf Sci 278:380–407
Behnamian J (2014) Decomposition based hybrid VNS-TS algorithm for distributed parallel factories scheduling with virtual corporation. Comput Oper Res 52:181–191
Behnamian J, Ghomi SMTF (2013) The heterogeneous multi-factory production network scheduling with adaptive communication policy and parallel machine. Inf Sci 219:181–196
Behnamian J, Ghomi SMTF (2016) A survey of multi-factory scheduling. J Intell Manuf 27:231–249
Cai J, Lei D, Li M (2020a) A shuffled frog-leaping algorithm with memeplex quality for bi-objective distributed scheduling in hybrid flow shop. Int J Prod Res 2020:1–8
Cai J, Zhou R, Lei D (2020b) Dynamic shuffled frog-leaping algorithm for distributed hybrid flow shop scheduling with multiprocessor tasks. Eng Appl Artif Intel 90:103540
Cai J, Zhou R, Lei D (2020c) Fuzzy distributed two-stage hybrid flow shop scheduling problem with setup time: collaborative variable search. J Intell Fuzzy Syst 38:3189–3199
Dai M, Tang D, Zheng K, Cai Q (2013) An improved genetic-simulated annealing algorithm based on a hormone modulation mechanism for a flexible flow-shop scheduling problem. Adv Mech Eng 5:124903
Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE T Evolut Comput 6:182–197
Eusuff M, Lansey K, Pasha F (2006) Shuffled frog-leaping algorithm: a memetic meta-heuristic for discrete optimization. Eng Optimiz 38:129–154
Gao Z, Peng J, Han Z, Jia M (2019) Flow shop scheduling with variable processing times based on differential shuffled frog leaping algorithm. Int J Model Ident Control 33:179–187
Gong G, Chiong R, Deng Q, Han W, Zhang L, Lin W, Li K (2020) Energy-efficient flexible flow shop scheduling with worker flexibility. Expert Syst Appl 141:112902
Hao JH, Li JQ, Du Y, Song MX, Duan P, Zhang YY (2019) Solving distributed hybrid flowshop scheduling problems by a hybrid brain storm optimization algorithm. IEEE Access 7:66879–66894
Karimi N, Davoudpour H (2016) Multi-objective colonial competitive algorithm for hybrid flowshop problem. Appl Soft Comput 49:725–733
Karpagam M, Geetha K, Rajan C (2020) A modified shuffled frog leaping algorithm for scientific workflow scheduling using clustering techniques. Soft Comput 24:637–646
Lei D (2010) A genetic algorithm for flexible job shop scheduling with fuzzy processing time. Int J Prod Res 48:2995–3013
Lei D, Gao L, Zheng Y (2018) A novel teaching-learning-based optimization algorithm for energy-efficient scheduling in hybrid flow shop. IEEE T Eng Manage 65:330–340
Lei D, Guo X (2012) Swarm-based neighbourhood search algorithm for fuzzy flexible job shop scheduling. Int J Prod Res 50:1639–1649
Lei D, Liu M (2020) An artificial bee colony with division for distributed unrelated parallel machine scheduling with preventive maintenance. Comput Ind Eng 141:106320
Lei D, Wang T (2020) Solving distributed two-stage hybrid flowshop scheduling using a shuffled frog-leaping algorithm with memeplex grouping. Eng Optimiz 2020:1–14
Lei D, Yuan Y, Cai JC (2020) An improved artificial bee colony for multi-objective distributed unrelated parallel machine scheduling. Int J Prod Res 2020:1–13
Lei D, Zheng Y, Guo X (2017) A shuffled frog-leaping algorithm for flexible job shop scheduling with the consideration of energy consumption. Int J Prod Res 55:3126–3140
Lei DM, Guo XP (2015) A shuffled frog-leaping algorithm for hybrid flow shop scheduling with two agents. Expert Syst Appl 42:9333–9339
Lei DM, Li M, Wang L (2019) A two-phase meta-heuristic for multiobjective flexible job shop scheduling problem with total energy consumption threshold. IEEE T Cybern 49:1097–1109
Li JQ, Pan QK (2013) Chemical-reaction optimization for solving fuzzy job-shop scheduling problem with flexible maintenance activities. Int J Prod Econ 145:4–17
Li JQ, Sang HY, Han YY, Wang CG, Gao KZ (2018) Efficient multi-objective optimization algorithm for hybrid flow shop scheduling problems with setup energy consumptions. J Clean Prod 181:584–598
Li M, Lei D, Cai J (2019) Two-level imperialist competitive algorithm for energy-efficient hybrid flow shop scheduling problem with relative importance of objectives. Swarm Evol Comput 49:34–43
Li Y, Li X, Gao L, Meng L (2020a) An improved artificial bee colony algorithm for distributed heterogeneous hybrid flowshop scheduling problem with sequence-dependent setup times. Comput Ind Eng 2020:147
Li Y, Li X, Gao L, Zhang B, Pan QK, Tasgetiren MF, Meng L (2020b) A discrete artificial bee colony algorithm for distributed hybrid flowshop scheduling problem with sequence-dependent setup times. Int J Prod Res 2020:1–20
Lin J (2019) Backtracking search based hyper-heuristic for the flexible job-shop scheduling problem with fuzzy processing time. Eng Appl Artif Intel 77:186–196
Lin J, Zhu L, Wang ZJ (2019) A hybrid multi-verse optimization for the fuzzy flexible job-shop scheduling problem. Comput Ind Eng 127:1089–1100
Lin W, Yu DY, Zhang C, Liu X, Zhang S, Tian Y, Liu S, Xie Z (2015) A multi-objective teaching-learning-based optimization algorithm to scheduling in turning processes for minimizing makespan and carbon footprint. J Clean Prod 101:337–347
Liu GS, Zhou Y, Yang HD (2017) Minimizing energy consumption and tardiness penalty for fuzzy flow shop scheduling with state-dependent setup time. J Clean Prod 147:470–484
Luo H, Du B, Huang GQ, Chen H, Li X (2013) Hybrid flow shop scheduling considering machine electricity consumption cost. Int J Prod Econ 146:423–439
Meng L, Zhang C, Shao X, Ren Y, Ren C (2019) Mathematical modelling and optimisation of energy-conscious hybrid flow shop scheduling problem with unrelated parallel machines. Int J Prod Res 57:1119–1145
Ngoc Hoang L, La Poutre H, Bosman PAN (2018) Multi-objective gene-pool optimal mixing evolutionary algorithm with the interleaved multi-start scheme. Swarm Evol Comput 40:238–254
Pan QK, Wang L, Gao L, Li J (2011) An effective shuffled frog-leaping algorithm for lot-streaming flow shop scheduling problem. Int J Adv Manuf Tech 52:699–713
Rahimi-Vahed A, Dangchi M, Rafiei H, Salimi E (2009) A novel hybrid multi-objective shuffled frog-leaping algorithm for a bi-criteria permutation flow shop scheduling problem. Int J Adv Manuf Tech 41:1227–1239
Rahimi-Vahed A, Mirzaei AH (2008) Solving a bi-criteria permutation flow-shop problem using shuffled frog-leaping algorithm. Soft Comput 12:435–452
Rifai AP, Huu-Tho N, Dawal SZM (2016) Multi-objective adaptive large neighborhood search for distributed reentrant permutation flow shop scheduling. Appl Soft Comput 40:42–57
Ruiz R, Vazquez-Rodriguez JA (2010) The hybrid flow shop scheduling problem. Eur J Oper Res 205:1–18
Sakawa M, Kubota R (2000) Fuzzy programming for multiobjective job shop scheduling with fuzzy processing time and fuzzy duedate through genetic algorithms. Eur J Oper Res 120:393–407
Shao W, Shao Z, Pi D (2020) Modeling and multi-neighborhood iterated greedy algorithm for distributed hybrid flow shop scheduling problem. Knowl-Based Syst 2020:105527
Tang D, Dai M, Salido MA, Giret A (2016) Energy-efficient dynamic scheduling for a flexible flow shop using an improved particle swarm optimization. Comput Ind 81:82–95
Wang J, Wang L (2020) A bi-population cooperative memetic algorithm for distributed hybrid flow-shop scheduling. IEEE Trans Emerg Top Comput Intell 2020:1–15
Wang L, Fang C (2011) An effective shuffled frog-leaping algorithm for multi-mode resource-constrained project scheduling problem. Inf Sci 181:4804–4822
Wang L, Zhou G, Xu Y, Liu M (2013) A hybrid artificial bee colony algorithm for the fuzzy flexible job-shop scheduling problem. Int J Prod Res 51:3593–3608
Wang S, Liu M (2014) Two-stage hybrid flow shop scheduling with preventive maintenance using multi-objective tabu search method. Int J Prod Res 52:1495–1508
Xu Y, Wang L, Liu M, Wang, S.y., (2013) An effective shuffled frog-leaping algorithm for hybrid flow-shop scheduling with multiprocessor tasks. Int J Adv Manuf Tech 68:1529–1537
Yan J, Li L, Zhao F, Zhang F, Zhao Q (2016) A multi-level optimization approach for energy-efficient flexible flow shop scheduling. J Clean Prod 137:1543–1552
Ying KC, Lin SW (2018) Minimizing makespan for the distributed hybrid flowshop scheduling problem with multiprocessor tasks. Expert Syst Appl 92:132–141
Zeng Z, Hong M, Man Y, Li J, Zhang Y, Liu H (2018) Multi-object optimization of flexible flow shop scheduling with batch process—consideration total electricity consumption and material wastage. J Clean Prod 183:925–939
Zhang X, Wang Y, Yan D, Ji Z (2017) Improved shuffled frog-leaping algorithm for solving flexible job shop scheduling problem. J Syst Simul 29:2093–2099
Zheng J, Wang L, Wang JJ (2020) A cooperative coevolution algorithm for multi-objective fuzzy distributed hybrid flow shop. Knowl-Based Syst 2020:105536
Zitzler E, Thiele L (2000) Multiobjective evolutionary algorithms: a comparative case study and the strength pareto approach. IEEE T Evol Comput 3:257–271
Acknowledgements
This work was supported by National Natural Science Foundation of China (Grant nos. 61573264, 71471151).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Cai, J., Lei, D. A cooperated shuffled frog-leaping algorithm for distributed energy-efficient hybrid flow shop scheduling with fuzzy processing time. Complex Intell. Syst. 7, 2235–2253 (2021). https://doi.org/10.1007/s40747-021-00400-2
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s40747-021-00400-2