Energy-Aware Scheduling in Hybrid Flow Shop using Firefly Algorithm

In the present time, the industrial sector contributes a large proportion of the world's total energy consumption [1]. Almost half of the world's energy consumption comes from the sector. The main concern of current research has been the worries about the limited availability of energy resources [2]. The worries rise as the consumption of energy in the world is also rising [3]. Therefore, energy efficiency in the manufacturing process activities is an important consideration that requires investigation [4] [5]. Optimizing the manufacturing industry's scheduling is a critical approach to improve the indicators for energy and environmental sustainability [6]. One of the common problems in manufacturing industry scheduling is the hybrid flow shop scheduling (HFSS) [7]. HFSS is one of the problems in NP-hard problems, which is also the generalization of the flow shop scheduling problem [8] [9] [10] [11]. In the flow shop scheduling problems, a series of jobs are ordered, and each job employs one machine in each stage [12] [13]. However, in HFSS, a series of jobs have similar production orders, but each stage's job might require one or more machines [14] [15]. ARTICLE INFO ABSTRACT


Introduction
In the present time, the industrial sector contributes a large proportion of the world's total energy consumption [1]. Almost half of the world's energy consumption comes from the sector. The main concern of current research has been the worries about the limited availability of energy resources [2]. The worries rise as the consumption of energy in the world is also rising [3]. Therefore, energy efficiency in the manufacturing process activities is an important consideration that requires investigation [4] [5]. Optimizing the manufacturing industry's scheduling is a critical approach to improve the indicators for energy and environmental sustainability [6]. One of the common problems in manufacturing industry scheduling is the hybrid flow shop scheduling (HFSS) [7]. HFSS is one of the problems in NP-hard problems, which is also the generalization of the flow shop scheduling problem [8] [9] [10] [11]. In the flow shop scheduling problems, a series of jobs are ordered, and each job employs one machine in each stage [12] [13]. However, in HFSS, a series of jobs have similar production orders, but each stage's job might require one or more machines [14] [15].
Previous studies on the scheduling of HFSS by considering the energy consumption have been conducted. Wang, et al. [4] investigated the scheduling in two-stage HFSS for energy efficiency. They proposed a tabu search and ant colony optimization procedures. Liu, et al. [16] proposed a new mathematical model for energy consumption efficiency procedures for HFSS problems. One machine in stages 1 and 2 machines in stages 2 and 3 are considered in solving HFSS problems. Furthermore, an ant colony optimization algorithm was proposed by Luo, et al. [17] to solve some problems in several stages of HFSS problems. The research on solving two-stage ant colony system HFSS was conducted by Du, et al. [18]. A discrete imperialist competitive algorithm was proposed by Tao, et al. [19] to solve two-stage HFSP to minimize energy consumption. Xiang, et al. [20] designed a model to solve three-stage HFSS, which involved three machines in stage 1, 2 machines in stage 2, and 3 machines in stage 3 to solve the HFSS problems proposed GA algorithm to find the solutions. Several other algorithms to solve HFSP by considering energy efficiency which has been proposed so far include A-novel Teaching-learning-based Optimization Algorithm [21], two-level imperialist competitive algorithm [7], Particle swarm optimization [22], Genetic Algorithm [23], Lagrangian Relaxation Algorithm [24], and Improved Genetic Algorithm [25].
Reflecting on the previous research, research on HFSP is commonly conducted on the two-stage machine. As far as this research concerns, research on three-stage HFSP has been limited. This research considered one machine in stages 1 and 3, and 2 machines in stage 2. The research worked on the proposal of three-stage hybrid flow shop scheduling employed with the firefly algorithm. Firefly algorithm is used in this research because there has been hardly any research employing this algorithm to solve HFSP problems by considering energy efficiency. Firefly algorithm is considered an effective algorithm to solve optimization problems. Several studies have employed the firefly algorithm, including the research by Karthikeyan, et al. [26], which used discrete FA in job shop scheduling to minimize completion time, and by Fan, et al. [27], which used mutant FA for two-stages HFSP solution. This research aimed to contribute to the energy-aware HFSP because it employed three-stage problems with the characteristics that consider 1 machine in stage 1 and 3, and 2 stages in stage 2. Furthermore, this research also proposed a firefly algorithm to solve energy-aware HFSP problems. As elaborated previously, the firefly algorithm has not been used to solve energy aware HFSP problems.
The research discusses the assumption and definition of problems, proposal method, data collection, and experimental procedures in the second section, while the discussions and results are presented in the third section. The research is then concluded in the fourth section.

Assumption and Notation of HFSP Problems
HFSP refers to problems where m-machine is required to solve n-job. In this sense, the total number of the machine allowed in each stage can be more than one. The illustration of HFSP problems is presented in Fig. 1. There are several assumptions which are employed in HFSP; (1) Three stages problems where one machine is employed in stage 1 and 3, and 2 machines are employed in stage 2, (2) The setup time, which is not dependent on the order of the job execution, (3) All machines are available at t= 0, (4) Set up time is differentiated from the processing time, (5) Removal time is ignored, (6) Each machine is switched on at t= 0 and is switched off when the last job is finished, (7) Each job is started and finished without interruption, The mathematical model is developed from the model proposed by Xiang, et al. [20]. The objective function of the model is to minimize energy consumption. The HFSP formulation, which can minimize total energy consumption, is modeled into equation (1).
The objective function of minimizing the consumption of energy is further divided into several components of energy. The energy components are formulated into equations (2), (3), and (4).
In HFSP problems, there are several constraints in the MILP model. The limitations in the HFSP problems are elaborated as follows.
The constraints of processing are presented into equations (5) and (6). Equation (5) formulates that each job must be processed with 1 machine in each stage. Equation (6) shows that in each stage, there are n-total jobs to be processed.
Time constraints are presented in equations (7), (8), and (9). Equation (7) ensures that a job cannot be processed at the j+1 stage if the previous stage is not completed. The time needed to complete a job is determined by the processing time and the starting time in each machine in each stage, illustrated in equation (8). Meanwhile, equation (9) shows that a machine used in a stage can proceed into the subsequent job if the machine completes the current job in the previous stage.

The Firefly Algorithm Proposal
Firefly algorithm is employed to solve scheduling problems in hybrid flow shop in order to minimize energy consumption. There are five stages proposed in the firefly algorithm, which include objective function, the stipulation of firefly parameter, the initiation of firefly's initial population, the implementation of large rank value, and the procedures for finding solutions firefly algorithm.

Stipulating the Objective Function
In this problem, the objective function determined is minimizing energy consumption. The objective function is based on the mathematical model, which is presented in the previous sub-chapter.

Stipulating the Parameters
The parameters of the firefly algorithm used in the problem solving are the population of fireflies, random coefficient α, coefficient during stationary β0, and random coefficient gamma .

Initiating the Firefly Early Population
The initial population of fireflies is notated as . The initialization of the early population is conducted by conjuring the elements of real numbers randomly at certain intervals. The illustration of the initial position of the fireflies is presented in Table 1.

The Implementation of Large Ranked Value
To determine the order of the jobs, the research proposed large ranked value (LRV) procedure. The procedure is an effective method to convert the positions of fireflies into the appropriate order of jobs. LRV is conducted by sorting the biggest values to the smallest. The illustration for the implementation of LRV is presented in Fig. 2.

Finding Solutions with Firefly Algorithm
Firefly algorithm is an algorithm developed by Yang [28]. The algorithm was inspired by the natural and attractive behaviors of a firefly. Firefly algorithm is laid out into several stages.
The first stage is determining the light intensity of the firefly. The light intensity I( x1 ) is determined using objective function f(x) from the research problems. For the maximization function, light intensity is found by using equation (10).
In this scheduling research, the objective function of the problem is to minimize energy consumption. Since the objective function is inversely proportional to the light intensity, the light intensity can be found using equation (11).
Light intensity in the firefly affects the firefly's attractiveness value. The light intensity of firefly x is represented with l and is proportional to the solution's objective function to be solved f(x). The attractiveness function is presented in equation (12).
To obtain the value of the firefly's attractiveness, the calculation is conducted with distance (r). Attractiveness (β) is relative because light intensity needs to be seen and valued by other fireflies. Therefore, the results of the research are different depending on the distances between fireflies. The distance between fireflies is modeled with equation (13).
The difference between the coordinates of firefly i and firefly j is the distance between the two fireflies. After the light intensity in each firefly is obtained, the transportation of firefly i to firefly j, which has better light intensity, is conducted. The transportation is described with equation (14).
The initial variable shows the firefly's initial position x. Next, the second equation consists of the firefly's transportation variable due to attractiveness. The third term is the random firefly movement, where α = 0.1 is the random coefficient and is the uniform random distribution value at interval [0,1]. Most of the firefly algorithm implementation uses 0 = 1, [0,1], and [0, ]. A firefly with the best light is obtained; therefore, the firefly is considered the optimum solution. The general procedures of the firefly algorithm is illustrated in Algorithm 1.

Data Collection
This section presents data collection for numerical experiments. The data collection consists of the total jobs and the total machines. The data necessary for the experiment are the operational time data and set up time data. The data about processing time is shown in Table 2. The data about set up time can be seen in Table 3. Furthermore, the data about energy consists of processing, idle, and set up energy statistics. The setup energy data is shown in Table 4. The data about processing energy can be seen in Table 5, while the data about idle energy is shown in Table 6.

Experimental Procedures
The research formulated 20 variations of the job. The experiment employed two parameters; iteration and population. The iteration and population parameter each consisted of three levels. There were 100, 200, and 500 levels in the iteration parameters, while the population parameters consisted of 100, 200, and 500 levels. The experiment was conducted nine times. The experiment results are presented in the form of recapitulation of energy consumption and time computation. The total energy consumption was acquired from the calculation using MATLAB software. The energy consumption and computation time in each iteration and population were recapitulated.

The Influence of Iteration and Population towards the Total Energy Consumed
This research shows that the more the iteration and population are, the more experiments need to be conducted to produce more solutions. The computation results of the energy consumption using the firefly algorithm are presented in Table 7. The optimum total energy consumption is acquired from iteration 500 with a population of 500. The values of the total energy consumed in each iteration and population are different. This result means that the number of iteration and population affects the total energy consumption. From energy consumed during idle period data, the more the iteration and population are, the energy produced is lower. The energy consumption values during the process and setup time in each iteration and population are similar. This result means that the number of iteration and population does not affect the value of energy consumption during processing and set up. The more the iteration and the population are, the more experiments need to be conducted, and the more solutions can be produced.

The Influence of Population and Iteration towards the Computation Time
The computation time from the experiment results in each iteration and population is presented in Fig. 3. The computation time data show that the more the iteration and the population are, the more computation time is required. Therefore, it can be concluded that the number of iteration and population impacts the computation time. This result means that the number of iteration shows the total experiments conducted. The number of population signifies the total solutions produced.

The Effect of Set-up Time Modification on Energy Consumption
The research analyzed the effect of changing the setup time on energy consumption. The analysis results on the setup time change on the consumption of energy are shown in Table 8 energy consumption and the setup energy but also affected the consumption of idle energy. In this case, decreasing the setup time would reduce idle energy consumption and vice versa. In this research, the change in the setup time value did not affect the process energy consumption value. Therefore, it can be concluded that based on the results of the research, each setup time change has a similar process energy consumption value.

Conclusion
This research experimented to solve HFSP problems using the firefly algorithm to minimize energy consumption. Implementing the procedures to solve HFSP problems with the firefly algorithm shows positive results, proving that an algorithm is an effective approach in minimizing energy consumption. Furthermore, the experiment results also show that total consumption of energy can be maintained when the number of iteration and population increases. Future research suggests that scheduling performance criteria using the firefly algorithm be developed for finding the solutions for multi-objective cases. Several other objective functions that have to be considered are the solutions to minimize delays.