Developing a multi-objective flexible job shop scheduling optimization model using Lexicographic procedure considering transportation time

A multi-objective flexible job shop scheduling problem (FJSSP) that considers transportation time using mathematical programming is proposed to optimise three conflicting objectives: minimising makespan, total cost, and total lateness. The proposed model was developed and verified in three stages. In the first stage, only one objective was considered. The minimisation of the makespan and total cost was considered separately in the first stage. In the second stage, only two objectives were considered. In this stage, the minimisation of the makespan and total cost was considered instantaneously. In the third stage, a model was developed to optimise the three objectives. The proposed model was formulated using mixed-integer nonlinear programming (MINLP) and solved using the DICOPT solver based on general algebraic modelling system (GAMS) optimisation software. This model includes the transportation times between machines in the FJSSP, and the problem is called the “flexible job shop scheduling problem with transportation time” (TT-FJSSP). The proposed model gave better results in comparison with the other recent developed models. The effect of changing the maximum allowable deviation when optimising the three objectives was studied to achieve more-practical results.


Introduction
Production scheduling is an important stage in operation management. which supports companies in properly planning their industrial activities [1]. The most common scheduling problem found in production is the job shop scheduling problem (JSSP), where a set of jobs is processed on a set of machines to find the job schedule on every machine, and each machine can process only one job at a time without interruption. The decision is made on how to schedule operations on machines such that a specific performance indicator is optimal. The makespan, manufacturing costs, and lateness time are common performance indicators for the JSSP [2][3][4][5][6][7][8][9].
As technology continues to improve, factories are using more-flexible machines that can perform more than one task. This enables businesses to save time and money by performing multiple tasks simultaneously. In this regard, a variant of the JSSP, called the 'flexible job-shop scheduling problem' (FJSSP), has been identified in which machines are flexible. Therefore, each operation can be performed using a different machine. There are two subproblems in FJSSP: machine selection and operation sequencing [10].
In this study, a multi-objective FJSSP considering transportation time (TT) was developed. The proposed model was verified in three stages. In the first stage, only one objective was considered. The minimisation of the makespan and total cost was considered separately in the first stage. As discussed in Sect. 5.1, minimising the makespan (minimising the maximum completion time) was taken as a single objective, and the model results were compared with those of Karimi et al. [11] and another model by Zhang et al. [12].
In the second stage, only two objectives were considered. In this stage, the minimisation of the makespan and total cost was considered instantaneously. As discussed in Sect. 5.2 the results of two single objectives (makespan and total cost) were compared with the same input, and then they were combined to make a bi-objective and compared with the previous single objective.
In the third stage, the model was developed to optimise the three objectives. In this stage, the multi-objective FJSSP was considered with TT. The first objective was to minimise the makespan, the second was to minimise the total cost of operations on the machines, and the third was to minimise the total lateness. The remainder of this paper is organised as follows. The literature is reviewed in Sect. 2. The problem is described in Sect. 3. The model formulation is presented in Sect. 4. Experimental results and comparisons are provided in Sect 5. Finally, the conclusions and future research recommendations are discussed in Sect. 6.

Literature review
In 1990, Bruker and Schlie were the first to study the FJSSP [13]. They developed a polynomial algorithm to resolve it. During the past 30 years, various methods and algorithms have been developed to solve this class of problems [14]. Owing to the difficulty of the FJSSP, researchers have used different techniques, from mathematical to various metaheuristics, such as particle swarm optimisation [15,16], ant colony algorithm [17], genetic algorithm [18][19][20], and artificial bee colony algorithm [21].
For the mathematical models, the initial formulations of the scheduling problem date back to the 1960s [22]. Shapiro [23] presented mathematical programming models and solution methods that were applied to various types of production planning and scheduling problem.
Al-Ashhab et al. [24] proposed a mixed-integer linear programming (MILP) model to solve the JSSP. They considered that this objective minimises the makespan, total tardiness, and total earliness individually. Pan [25] reviewed and compared MILP formulations for job shop, flow shop, and permutation flow shop scheduling problems. Kim and Egbelu [26] developed an MILP model for JSSP, where each job has determined alternative process plans.
Choi and Choi [27] proposed an MILP model to solve the JSSP by considering alternative operation sequences and sequence-dependent setup times. Gao et al. [28] proposed MINLP to solve the FJSSP with machine availability constraints. Imanipour and Zegordi [29] developed a tabu search approach and presented an MINLP model to solve the FJSSP with the objective of minimising total weight earliness and tardiness. Zhao et al. [30] dealt with the disturbance of the new jobs and proposed a pure reactive scheduling method for updating the scheduling.
Regarding scheduling with multiple objectives, Al-Ashhab and Alzahrani [31] proposed a multi-objective robust JSSP. They also considered multiple jobs and machines. In addition, they considered uncertain processing times for all operations. Fang [19] presented a hybrid multi-objective genetic algorithm to solve the multi-objective FJSSP. Guo et al. [32] studied a multiobjective FJSSP with sequence-dependent setup times. The objective was to minimise the makespan, total tardiness, and energy consumption. Rooyani and Defersha [33] presented a two-stage genetic algorithm to solve the lot streaming problem in the FJSSP. The objective was to minimise the makespan, maximum sublot flowtime, total sublot flow time, maximum job flowtime, total job flow time, maximum sublot finish-time separation, total sublot finish-time separation, maximum machine load, total machine load, and maximum machine load difference.
In this study, a multi-objective FJSSP considering the TT using mathematical programming is proposed to optimise three conflicting objectives: minimising the makespan, total cost, and total lateness. The proposed model was developed and verified in three stages. In the first stage, only one objective was considered. The minimisation of the makespan and total cost was considered separately in the first stage.
In the second stage, only two objectives were considered. In this stage, the minimisation of the makespan and total cost was considered instantaneously. Finally, a model was developed to optimise the three objectives.
The proposed model was formulated using MINLP and solved using the DICOPT solver based on the GAMS optimisation software.

Problem description
Before a job is started on a machine, it must be transported from the warehouse to the first machine. After the completion of a job on a machine, it must be transported to the next machine, which takes time. However, the TT from the warehouse to the first machine is usually neglected in studies.
The FJSSP can be expressed as follows. In this problem, j jobs should be processed on m machines. Each job can have different numbers of operations o. Each operation can be performed by any machine on a set of alternative machines. Each operation is completed, and the job is transported to the next machine. If two continuous operations are not processed on the same machine, the TTs between different machines must be considered. The FJSSP is an NP-hard combinatorial optimisation problem that cannot be solved in polynomial time. The optimisation objective is to obtain the minimum makespan, minimum total cost, and total tardiness with the processing time and TT. In this study, further discussion of this problem is based on the following assumptions.
(1) The same job can only be processed by one machine at the same time.
(2) The job cannot be interrupted once it starts processing. (3) Each job can be processed more than once on the same machine. (4) Operations belonging to different jobs can be processed in parallel. (5) Failure of the machine is not considered. (6) All machines can be used at zero time. (7) All jobs can be processed at zero time. (8) Each job has a fixed and known processing sequence. If the process of an operation begins, it should be completed with no interruption. (9) The processing times are different because of the differences in the selected processing machines, and the processing time is known. (10) The TT may be different between the different machines.

Model formulation
In this paper, the following notation is used.

Objectives
The three objectives considered in this model (minimising makespan, total cost, and total lateness) were formulated as 1, 2 and 3. Some of the experiments dealt with a single objective, two objectives, or multiple objectives. (1) determines the makespan value by considering the completion time of the last operation of all jobs. Equation (2) determines the value of the total cost by summing the machine cost for each operation of all jobs. Equation (3) determines the value of the total lateness by the sum of the lateness of all jobs.

Constraints
Equation (4) ensures that the first operation of each job is allocated exactly to one position on one available machine. Equation (5) ensures that each operation (except for the first operation) is assigned to only one machine.
For every operation, there is a set of machines that can process this operation, and this set of possible machines does not necessarily include all machines for each operation. Therefore, we define Eq. (6) in request to ensure that the machine for each O j,l (except O j,1 ) is selected from the eligible alternative machines for O j,l . Equation (7) implies that the first operation of each job must be performed on the feasible machines for this operation.
According to the meaning of the variable Y j,l,i,k , O j,l−1 must be processed on machine k if O j,l is processed on machine i. Therefore, Eqs. (8) and (9) ensure that, if O j,l is operated on machine i, then O j,l−1 is processed on machine k.

Computational results and analysis
The proposed model was solved using GAMS 39 software and ran on an Intel Core i7-8500U CPU @ 1.80 GHz computer with 16 GB RAM.
The proposed model was verified by solving two problems. The size of the first problem is 2 J × 3O × 3 M, whereas the size of the second is 8 J × 3O × 5 M.
The proposed model has been developed in three stages.
1-Developing a single-objective model 2-Developing a bi-objective model 3-Developing a multi-objective model. Table 1 summarises the verification and development stages of the proposed model.

Verification
The proposed model was verified by comparing its results with those of Karimi et al. [11] (Sect. 5.1.1) and Zhang et al. [12] (Sect. 5.1.2).

Verification 1
The model inputs for the processing times and TTs are shown in Tables 2 and 3.   The optimization of the model considers only the makespan as a single objective. Table 4 lists the starting and completion times of the jobs. The makespan, as shown in Table 4 and Fig. 1, is 12-time units.
The same model was solved by Karimi et al. [11] and the maximum completion times were the same in the present study with 12 time units. A Gantt chart for the model by Karimi is shown in Fig. 2.

Verification 2
The model inputs (processing time and TT) are shown in Tables  The output of the model considers only the makespan as a single objective. Table 7 lists the starting and completion times of these jobs. The makespan, as shown in Table 7 and Fig. 3, is 27-time units.
The same model was solved using MATLAB by Zhang et al. [12], and the maximum completion time was 32-time units. The Gantt chart for the results of Zhang et al. is shown in Fig. 4.

Model development
As described in the previous section, the code was verified, and the next step is development. The first model was solved once by making the makespan the objective and again by making the total cost the objective, and the results were compared. In the second model, the first model was changed from a single objective to two objectives by considering the makespan and total cost of the objectives. The third model becomes multi-objective when the makespan, total cost, and total lateness are determined. In the final model, the maximum allowance deviation was added to the third model to add more flexibility.

Stage 1
The model inputs-processing time, TT, and machine cost-are shown in Tables 8, 9 and 10. The processing and TTs are the same as those of Zhang et al. [12] for 3 J × 3O × 5 M. The machining cost depends on machine depreciation, labour cost, and processing time.
The model was then solved using the same input; however, the objective was changed. The first objective was to minimise the makespan, and the second was to minimise the total cost of the machine. The results are shown in Table 11 and Fig. 5 when the objective was to minimise the makespan, and in Fig. 6 when the objective was to minimise the total cost.
As shown in the Table 11, Figs. 5 and 6, when the objective was to minimise the makespan, the makespan was as small as possible, and the total cost was ignored because the makespan was 14-time units and the total cost was 615 cost units. When the objective was to minimise the total cost, the total cost was minimised and the makespan was  ignored because the makespan was 17-time units and the total cost was 535 cost units.

Stage 2
The model inputs-processing time, TT, and machine cost-are shown in Tables 8 and 9. In this model, the previous model was solved, but with two objectives: makespan and total cost. The results are presented in Table 12 and Fig. 7.    M1  0  2  3  2  4  M2  2  0  3  4  3  M3  3  3  0  5  2  M4  2  4  5  0  1  M5  4  3  2 1 0 The results show that the makespan was 14-time units and the total cost was 575 cost units. This means that, for two objectives, the makespan is made as small as possible, and the total cost is minimized without affecting the makespan.

Stage 3
In this model, there were multiple objectives: minimising the makespan, total cost, and total lateness. The inputs are shown in Tables 13,14,15 and 16. The results of this model are presented in Table 17 and Fig. 8. Table 17 lists the optimal operation path, start time, compilation time, cost, and lateness for each job. It also shows the minimum makespan, total cost,    and total latency. Figure 8 shows the Gantt chart for the start time, finish time, and TT between the machine and path for each operation for all seven jobs. As shown in Table 17 minimum makespan was 24-time units, the minimum total cost was 1750 cost units, and the minimum total lateness was 16-time units.

Study of the effect of the maximum allowable deviation on objectives
Next, the maximum allowable deviation was added to the objectives, which means that the objectives can change according by the value of the maximum allowable deviation. The maximum allowable deviation were added to the previous model, and the model inputs are shown in Tables 13, 14, 15 and 16. The effects of maximum allowable deviation on the makespan, total cost, and total lateness are shown in Table 18 and Fig. 9. The effect of the maximum allowable deviation on makespan as shown in Fig. 9 increases with maximum allowable deviation value. Total cost fluctuates so it does not exceed the target of the maximum allowable deviation value. The total lateness decreases with the maximum allowable deviation value. An example is shown in Table 19 for clarification.
From the maximum allowable deviation value, 0.1% is taken as an example to clarify the deviation model. As Table 19 shows, in the first solution, the focus is on    minimizing the makespan, followed by the total cost and total lateness, there is no deviation in the first solution. The second solution focuses on minimizing the makespan and total cost at the same time, and there is a 0.1% deviation of the makespan. The third solution minimizes the makespan, total cost, and total lateness at the same time second solve target fulfilled and there is a 0.1% deviation of the total cost.

Conclusion and future recommendations
A multi-objective FJSSP model using a mathematical model to minimise the makespan, total cost, and total lateness was proposed. The DICOPT solver based on GAMS optimisation software was used to solve the proposed model. The model accuracy was verified by solving and comparing two projects with the results obtained by Karimi et al.   . 9 Effect of the maximum variation of the duration times on the makespan, total cost and lateness [11] using GAMS software and by Zhang et al. [12] using MATLAB 7 software. In the development projects of the models, different objectives and combinations of objectives were optimized: A) Makespan B) Total cost C) Makespan and total cost D) Makespan, total cost, and total lateness Future studies should consider the following factors in the context of the model described in this study: • Human labour cost for each machine • Transportation cost • Machine availability (not considered in this study) • Interruption of machines to accommodate higher-priority jobs.