2,014
Views
5
CrossRef citations to date
0
Altmetric
Research Article

Single-machine scheduling with energy generation and storage systems

, ORCID Icon, ORCID Icon, &
Pages 7033-7052 | Received 15 Aug 2020, Accepted 21 Oct 2021, Published online: 21 Nov 2021

ABSTRACT

This paper considers a single-machine scheduling problem with sequence-dependent setup times and energy-generation and storage systems. Each job requires a sequence-dependent setup to be processed on the machine, and both setup and processing of the job require job-dependent amounts of energy. The energy consumed by the machine can be bought from an Electric Power Company (EPC) or generated by own Distributed Energy Resource (DER), such as solar photovoltaic or wind, and the energy can be stored in an Energy Storage System (ESS). The objective is to minimise the total cost, the sum of production cost depending on makespan and energy cost by considering energy usage from the EPC, DER and ESS. For the problem, a mathematical programming model is first derived by using period-based indexes. Then, a hybrid genetic algorithm, which adds appropriate idle times between jobs and determines an efficient energy schedule by storing some energy during less expensive periods into the ESS for later use in high-price periods, is developed. Finally, computational experiments show that the proposed algorithm provides effective solutions, and which component of the total cost affects the performance the most, how effective adding idle times between jobs is, and how much cost can be saved by having a DER and ESS.

1. Introduction

A significant proportion of energy used in manufacturing is currently generated through fossil fuels (Rahimifard, Seow, and Childs Citation2010). Although the current oil prices suggest an abundance of resources, increasing population and energy wastage put the world at risk of an energy crisis in the near future. Indeed, the European Union has started developing contingency plans to deal with foreseen disruptions to the energy supply, and the UN considers sustainable energy to be a crucial element of global development (UN Sustainable Development Citation2020). The manufacturing sector uses tremendous amounts of energy and produces a half of the world's CO2 emissions (OECD-IEA Citation2019); because of resource scarcity and increasing greenhouse gases from production processes, energy efficiency will become a major consideration for manufacturing in the foreseeable future.

To respond to this, there have been enormous efforts by energy suppliers as well as manufacturing companies in energy-intensive industry, such as steel, chemicals, and aluminium (Araceli, Peter, and Tiffany Citation2019). On the energy suppliers' side, Time-of-Use (ToU) tariffs on retail electricity prices are widely used to manage the balance between supply and demand and to improve the reliability and efficiency of electrical power grids. For example, as one of the largest electric energy companies in South Korea, Korea Electric Power Corporation (KEPCO), offers ToU plans that charge higher prices for peak hours and considerably lower prices otherwise. Table  shows ToU tariffs applied to a customer with the contract demand of 300 kW or more, high-voltage, and less than 500 hours of use, depending on the season and time. On the manufacturers' side, efforts include the growing use of renewable energy from Distributed Energy Resources (DERs) – such as solar photovoltaics (PV) or wind turbines – and the installation of an Energy Storage System (ESS). Recently, many manufacturing companies have started operating their own DERs and ESSs according to their production schedule in order to reduce energy costs and greenhouse gas emissions.

Table 1. An example of ToU tariff.

This paper considers a single-machine scheduling problem with sequence-dependent setup times together with energy-generation and storage systems. When switching from one job to another on a machine, a setup is required, and the setup time is sequence-dependent. Job processing and setup operations require a certain amount of (usually electrical) energy; a different amount of energy is required by each job, and a setup generally consumes less energy than job processes. The energy consumed by the machine can be bought from an Electric Power Company (EPC) or generated by the manufacturer's own DER. In addition, the energy from the EPC or DER can be stored in an ESS and used later when the electricity price is high (as in Figure ). The objective is to minimise the total cost, the sum of the production and energy costs. The production cost is computed with makespan multiplied by a unit production cost; the energy cost is the sum of the energy price from the EPC, a generation cost from the DER, and the charging and discharging costs of the ESS.

Figure 1. An illustration of the energy flow. An image that shows the energy flow in a production system with ESS, DER, and EPC.

Figure 1. An illustration of the energy flow. An image that shows the energy flow in a production system with ESS, DER, and EPC.

This work originated with research in a South Korean company that casts various automotive pistons. Molten aluminium alloy is poured into a mould with a hollow cavity of the desired shape for each piston before being solidified in a casting machine. Switching piston types requires a setup operation of several hours; the setup time depends on the piston type to be processed and the piston type previously processed on the same machine. A casting machine consumes a large amount of energy, and the energy consumption rate is different for each piston type (Salonitis et al. Citation2016). In the factory, there are several casting machines with different capacities, configurations, and functions, and almost all machines are already dedicated to specific product types according to special customer requirements, quality standards, and material types. Hence, a certain piston type can only be processed on a very limited number of certain machines – often only one or two. For example, most types of piston for BMW are only processed on a single machine in the company.

Another application can be found in a South Korean company that produces fan filter units (FFUs) used for purifying and supplying clean air in semiconductor and LCD manufacturing. Different aluminium alloy sheets go through clinching and riveting processes on a machine before being assembled with fans (by workers and robots) and packaged. The clinching and riveting machine requires a setup operation when changing products; the setup time depends on the tools used and the sizes of the previous and subsequent products. The machine's energy consumption for setups and processes also depends on products. The company consumes as much as 6000–8000 kW per day and has a solar PV power generation system with a capacity of 300 kWh. About 5–20% of the total energy used is provided by the DER, depending on the season. It also has an ESS to store the energy generated by the DER, or bought from the EPC when the electricity price is low, to be used during the peak-load price time. A simple example of a single machine with two jobs, denoted as Example 1, is provided in the supplementary material.

Literature review is presented in Section 2, and notations and a mathematical programming model are introduced in Section 3. Then a hybrid genetic algorithm (GA) is developed in Section 4, and computational experiments to evaluate the performance of the proposed heuristic is conducted in Section 5. Some concluding remarks and directions for future research are given in Section 6.

2. Literature review

There have been numerous papers on single-machine scheduling with sequence-dependent setup times (Ovacikt and Uzsoy Citation1994; Lee, Bhaskaran, and Pinedo Citation1997; Liao and Juan Citation2007). Recently, Vélez-Gallego, Maya, and Montoya-Torres (Citation2016) proposed a mixed integer programming (MIP) model and a beam search heuristic with release dates, and Mustu and Tamer (Citation2018) considered learning effects and sequence-dependent setup times simultaneously. A review on scheduling with sequence-dependent setup times can be found in Zhu and Wilhelm (Citation2006).

The previous papers on scheduling production systems mostly focus on increasing throughput, reducing lead times, or satisfying due dates. There have recently been a few papers that consider energy usage in scheduling problems. Yildirim and Mouzon (Citation2012) handled single-machine scheduling to minimise energy consumption and total completion time and proposed a multi-objective GA for deriving a set of non-dominated solutions. Shrouf et al. (Citation2014) proposed a mathematical model and a GA to minimise energy consumption costs for single-machine production scheduling. Gong et al. (Citation2015) examined a single-machine scheduling problem for minimising the energy cost without exceeding the due date and proposed a MIP model. Che, Zeng, and Lyu (Citation2016) addressed an energy-aware single-machine scheduling problem under the ToU electricity tariffs to minimise the total electricity cost with a given deadline. They proposed a MIP model and an efficient greedy insertion heuristic where jobs are inserted into the time periods with the minimum electricity cost. Che, Zhang, and Wu (Citation2017) considered a power-down mechanism in a single-machine scheduling problem where the machine can execute a power-down operation between two consecutive jobs. The objective is to minimise both total energy consumption and maximum tardiness. Wang et al. (Citation2016) examined energy-efficient single-machine scheduling for batch production in order to minimise makespan and total energy cost and proposed an exact ϵ-constraint method and two heuristic methods to obtain Pareto fronts. Aghelinejad, Ouazene, and Yalaoui (Citation2018) considered a single-machine scheduling problem to minimise the total energy cost. In the problem, three operating states, processing, shutdown, and idle, and two transitions for turning the machine on and off were assumed. Rubaiee and Yildirim (Citation2019) used an ant colony optimisation (ACO) algorithm for single-machine preemptive scheduling to minimise the total completion time and energy cost. Most papers on single-machine scheduling with energy have not considered sequence-dependent setup times or energy usage during setup operations. In addition, the DER or ESS has not been handled together with production scheduling.

There have also been some studies on energy-conscious scheduling for other machine configurations, such as parallel machines, flow shops, and job shops. Moon, Shin, and Park (Citation2013) considered unrelated parallel machine scheduling with time-dependent and machine-dependent electricity costs and proposed a hybrid GA combined with a blank job insertion algorithm. Moon and Park (Citation2014) addressed flexible job shop scheduling without setups in order to minimise the total production cost and electricity cost. Liu et al. (Citation2016) dealt with a multi-objective job shop scheduling problem to optimise energy consumption and production performance using a GA. Ding et al. (Citation2016) examined unrelated parallel machine scheduling under ToU electricity prices with an objective of minimising the total electricity cost with a given production deadline. Tang et al. (Citation2016) used the particle swarm optimisation (PSO) for energy-efficient dynamic scheduling of flexible flow shops to reduce energy consumption and makespan. Luo, Zhang, and Yushun (Citation2019) considered flexible job shops with variable processing speeds with grey wolf optimisation (GWO). Che, Zhang, and Wu (Citation2017) addressed the same problem in Ding et al. (Citation2016), updated the MIP model, and proposed a two-stage heuristic algorithm. Cheng, Chu, and Zhou (Citation2018) also improved the MIP formulation in Ding et al. (Citation2016) and compared the two models with CPLEX. Merkerts et al. (Citation2015) presented major challenges of combining scheduling and energy management, and Gahm et al. (Citation2016) and Gao et al. (Citation2020) reviewed papers on energy-efficient scheduling in manufacturing systems.

Most studies on machine scheduling with energy have tried to minimise energy consumption without considering changing electricity prices or to minimise the total energy cost under ToU tariffs. Many of them have used two objectives, production performance, such as makespan or tardiness, and energy efficiency, such as total energy consumption or energy cost, and developed heuristic algorithms. However, they have not considered setup operations or setup energy consumption as well as the DER or ESS. To the best of our knowledge, there was only one paper that assumed the DER and ESS in production scheduling, but it did not consider setups, and the energy from the DER is not stored in the ESS (Moon and Park Citation2014). They used constraint programming (CP) and MIP approaches to solve the problem.

Note that many studies have used a GA for scheduling problems because the GA is easy to understand and implement and shows acceptable performance in general. However, many previous studies only determine the job sequence with the various objectives, such as makespan, total completion time, and maximum lateness. Moreover, most works on energy-efficient scheduling problems assign jobs to certain periods and determine their sequence without considering the ESS or DER. Therefore, it is challenging to consider the ESS charging/discharging schedules and DER generation schedule in the GA. We hence propose a hybrid GA that can determine not only the assignment and sequence of jobs but also the ESS and DER schedules. The GA is suitable for representing a sequence of jobs on the single machine as a solution and for obtaining a good schedule by extracting important features of solutions and passing them down to the next generation while carrying a set of multiple solutions (Vallada and Ruiz Citation2011; May et al. Citation2015; Zhang and Chiong Citation2016). Other meta-heuristic algorithms, such as the PSO, artificial bee colony (ABC), gravitational search algorithm (GSA), and GWO, can also be used for the problem. However, sophisticated algorithm designs are required for obtaining ESS and DER schedules.

Three main contributions of this study are as follows. First, single machine scheduling, which considers setup energy consumptions, ESS, and DER simultaneously, is considered for the first time, and the corresponding mathematical programming model is presented. Second, a hybrid GA composed of an idle time generation algorithm, which appropriately inserts a certain amount of idle times before each job if it decreases the total cost, and an energy scheduling algorithm, which determines energy usage from the EPC, DER, and ESS is proposed. Third, various experiments are performed to show the effectiveness of the proposed algorithm, performance of the idle time generation algorithm, and efficiency of having the DER and ESS.

3. Problem description

There is a set of jobs J={1,,N} to be processed in a single machine, which is available at time 0. Job jJ requires processing on the single machine for uninterrupted pj time units, and a setup is conducted for sij time units when it is processed after job iJ. Let aj and bj denote the amount of energy required for processing and setup of job j, respectively. The total amount of energy spent by job j is equal to ajpj+bjsij. There is no energy consumption when the machine is idle. The time horizon is partitioned into T2 periods T={1=[τ0,τ1],,T=[τT1,τT]} where τ0=0, and Δt=τtτt1>0 is the duration of period t for t=1,,T. Note that the processing (or setup) of a job can be incurred across two or more adjacent periods. The actual processing (or setup) time of a job in period t denotes the amount of time in period t used for processing (or setup) of the job. Note that Δt, t, is usually 60 (minutes) in practice because the weather forecast or electricity price is provided in an hour unit.

A DER generation cost per kW in period t is denoted as gt, and the maximum amount of energy that can be generated from the DER in period t is represented with DER¯t. Note that gt is mostly the same regardless of period t, and DER¯t is predicted based on weather forecast. An ESS has the storage capacity of ESS¯, and an amount of energy stored in the ESS for all periods should be within the range of [αESS¯,βESS¯] due to an ESS operational efficiency issue where α,β[0,1],α<β. The maximum amount of energy that can be charged into or discharged from an ESS in a period is denoted as EC¯ or ED¯, respectively. Charging and discharging costs per kW are represented with c and d, respectively. It is assumed that charging and discharging in the ESS cannot occur at the same time (Moon and Park Citation2014). The parameters and decision variables in the problem are:

Parameters

pj=

processing time of job j.

sij=

setup time of job j after job i.

f=

production cost per unit time.

s¯j=

max0in sij.

SE¯j=

the maximum number of periods that a setup operation for job j can span.

PR¯j=

the maximum number of periods that a process of job j can span.

aj=

energy consumption rate per unit time required for a process of job j.

bj=

energy consumption rate per unit time required for a setup of job j.

et=

energy price per kW in period t.

gt=

DER generation cost per kW in period t.

c=

ESS charging cost per kW.

d=

ESS discharging cost per kW.

DER¯t=

DER maximum output in period t.

ESS¯=

ESS capacity.

EC¯=

the maximum amount of energy that can be charged into the ESS in a period.

ED¯=

the maximum amount of energy that can be discharged from the ESS in a period.

I0=

initial amount of energy stored in the ESS at time 0.

Δt=

duration of period t.

α=

coefficient for the minimum energy storage required for ESS efficiency.

β=

coefficient for the maximum energy storage required for ESS efficiency.

Decision Variables

Cmax=

makespan.

XSj,t=

actual setup time of job j in period t.

XPj,t=

actual processing time of job j in period t.

YSj,t=

1 if the setup of job j is incurred in period t, and 0 otherwise.

YPj,t=

1 if job j is processed in period t, and 0 otherwise.

δi,j=

1 if job i immediately precedes job j, and 0 otherwise.

ωt=

1 if any job is processed in period t, and 0 otherwise.

DUt=

amount of energy generated from the DER and then used directly without storage in period t.

DSt=

amount of energy stored into the ESS from the DER in period t.

EUt=

amount of energy used directly from the EPC in period t.

ESt=

amount of energy stored into the ESS from the EPC in period t.

Ct=

amount of energy charged into the ESS in period t.

Dt=

amount of energy discharged from the ESS in period t.

It=

amount of energy in the ESS that is carried from period t−1 to period t.

vt=

1 if the ESS is charged in period t, and 0 otherwise.

A mathematical programming model is now derived for the scheduling problem based on the previous models (Ding et al. Citation2016; Che, Zhang, and Wu Citation2017) by considering sequence-dependent setup times and the DER and ESS operations. (1) Minimize fCmax+t=1Tet(EUt+ESt)+gt(DUt+DSt)+cCt+dDt(1) (2) Subject tot=1TXSj,t=i=0Nsi,jδi,j,j=1,,N,(2) (3) t=1TXPj,t=pj,j=1,,N,(3) (4) XSj,ts¯jYSj,t,j=1,,N,t=1,,T,(4) (5) XPj,tpjYPj,t,j=1,,N,t=1,,T,(5) (6) j=1N(XSj,t+XPj,t)Δt,t=1,,T,(6) (7) h=t+2TYSj,hSE¯j(1YSj,t+YSj,t+1),j=1,,N,t=1,,T2,(7) (8) XSj,tΔt(YSj,t1+YSj,t+11),j=1,,N,t=2,,T1,(8) (9) h=t+2TYPj,hPR¯j(1YPj,t+YPj,t+1),j=1,,N,t=1,,T2,(9) (10) XPj,tΔt(YPj,t1+YPj,t+11),j=1,,N,t=2,,T1,(10) (11) XSj,t+XPj,tΔt(YSj,t1+YPj,t+11),j=1,,N,t=2,,T1,(11) (12) YSj,th=tTYPj,h,j=1,,N,t=1,,T,(12) (13) h=t+1TYSj,hSE¯j(1YPj,t)j=1,,N,t=1,,T1,(13) (14) YPj,th=tTYSi,h+(1δj,i),j=1,,N,i=1,,N,t=1,,T,(14) (15) h=t+1TYPj,hPR¯j(2YSi,tδj,i),j=1,,N,i=1,,N,t=1,,T1,(15) (16) i=0,ijNδi,j=1,j=1,,N,(16) (17) j=1,jiN+1δi,j=1,i=0,,N,(17) (18) iQjQδi,j|Q|1,QJ,|Q|2,(18) (19) Nωtj=1NYPj,t,t=1,,T,(19) (20) Cmaxτt1ωt+j=1N(XSj,t+XPj,t),t=1,,T,(20) (21) DUt+DStDER¯t,t=1,,T,(21) (22) CtESt+DSt,t=1,,T,(22) (23) CtESS¯It,t=,1,T,(23) (24) CtEC¯vt,t=1,,T,(24) (25) DtED¯(1vt),t=1,,T,(25) (26) It+1=It+CtDt,t=1,,T,(26) (27) αESS¯ItβESS¯,t=1,,T,(27) (28) DtIt,t=1,,T,(28) (29) j=1N(ajXPj,t+bjXSj,t)=DUt+EUt+Dt,t=1,,T,(29) (30) YSj,t,YPj,t,δi,j,ωt,vt{0,1},i=1,,N,j=1,,N,t=1,,T,(30) (31) XSj,t,XPj,t,DUt,DSt,EUt,ESt,Ct,Dt,It,0,j=1,,N,t=1,,T.(31)

The objective is to minimise the sum of the production cost, fCmax, and the energy cost from the EPC, t=1Tet(EUt+ESt), from the DER, t=1Tgt(DUt+DSt), and from the ESS, t=1T(cCt+dDt). Constraint (Equation2) ensures that the setup time of job j must be equal to sij when job i precedes job j, and Constraint (Equation3) makes the sum of actual processing times of job j that may span across multiple periods equal to pj. Constraints (Equation4) and (Equation5) restrict YSj,t and YPj,t to be 1 only if XSj,t and XPj,t are larger than 0, respectively. The sum of actual processing and setup times in each period should be less than or equal to Δt, as indicated by Constraint (Equation6).

Constraints (Equation7) to (Equation11) are used for consecutive processing of each job in multiple periods. When the setup or process of job j is performed in period t but not in period t + 1, there must be no setup or process for job j in all the other periods later than t + 1. Constraints (Equation7) and (Equation9) restrict such separate setups and processes, respectively. When the setup (or process) for job j is performed in period t−1 and also in period t + 1, the sum of actual setup times (or processing times) in period t should be equal to Δt, which is indicated by Constraint (Equation8) (or (Equation10)). Similarly, if a setup operation of job j is performed in period t−1 and its process is conducted in period t + 1, the sum of actual setup and processing times in period t should be equal to Δt as in Constraint (Equation11).

The process of job j can be performed only after its setup is completed, and the setup for job j cannot be conducted after its process, which are restricted by Constraints (Equation12) and (Equation13), respectively. Constraint (Equation14) indicates that when job j precedes job i, the setup for job i should be performed after the process of job j, and Constraint (Equation15) restricts the process of job j after period t + 1 when the setup for job i is performed in period t and δj,i is 1. Constraints (Equation16) and (Equation17) are used for each job to have one predecessor and one successor where jobs 0 and N + 1 are dummy jobs. The subtour in the job sequence is eliminated with Constraint (Equation18) where J is a set of jobs and Q is a subset of jobs. When sequence-dependent setup times are not considered, such subtour elimination is not needed. The makespan of a schedule is computed with Constraints (Equation19) and (Equation20). In Constraint (Equation19), ωt is determined, and τt1ωt, which is the sum of periods until period t−1, and the sum of actual setup and processing times in period t are added in Constraint (Equation20).

The last part of constraints, Constraints (Equation21) to (Equation29), is related to energy scheduling from the EPC, DER, and ESS. Constraint (Equation21) indicates that the amount of energy consumed directly by the machine and stored into the ESS from the DER should be less than or equal to the maximum amount of energy that can be generated from the DER. The amount of energy charged into the ESS cannot be larger than the sum of energy stored from the EPC and DER, and it should also be less than or equal to the energy left in the previous period subtracted from the storage capacity, which are ensured with Constraints (Equation22) and (Equation23), respectively. By using vt in Constraints (Equation24) and (Equation25), the ESS only either charges or discharges in each period. Constraint (Equation26) is the balance equation for the energy stored in the ESS. The energy storage level, It, should be within the range between αESS¯ and βESS¯ to avoid ESS performance degradation as shown in Constraint (Equation27). Constraint (Equation28) represents that the amount of energy that can be discharged from the ESS cannot be larger than the energy that the ESS has at the beginning of each period. The amount of energy used in period t on a machine is equal to the sum of energy directly used from the DER and EPC and discharged energy from the ESS, as in Constraint (Equation29). Constraints (Equation30) and (Equation31) show the ranges of decision variables.

With the proposed model, an optimal production schedule of all jobs and an energy schedule of the EPC, DER, and ESS can be obtained. The proposed model contains O(NT) decision variables whereas the time-indexed formulation requires O(NK) decision variables where K is the total time units. For one day schedule with a time unit of a minute, K is 1440, and it becomes 7200 for a week schedule whereas T is usually around 3 to 8 for pricing intervals and 24 (hours) at most for the ESS control for a day schedule.

The scheduling problem can be proven to be NP-hard even without considering energy usage because a single-machine scheduling problem with sequence-dependent setup times is equal to a travelling salesman problem, which is NP-hard (Pinedo Citation2012). Therefore, an efficient hybrid GA is proposed to obtain a job sequence, appropriate idle times between jobs, and energy supply plans. Note that the mathematical programming model has been proposed for formalising the problem and for the performance comparison with the hybrid GA (Section 5.2).

4. Hybrid genetic algorithm

If the production cost or the makespan is the only objective, processing jobs without any idle time between them dominates the schedules with an idle time. However, energy consumption for processes or setup operations of jobs may require intentional idle times between jobs to reduce the energy cost under ToU tariffs. Hence, it is required to determine not only a sequence of jobs by considering sequence-dependent setup times but also add appropriate idle times between jobs by considering energy consumption rates, energy prices in each period, and ESS charging and discharging schedules. Therefore, a hybrid GA which determines the sequence of jobs, idle times between them, and the energy charge/discharge schedule is applied for solving such a complicated scheduling problem.

The GA carries a set of multiple solutions, called a population, in each generation, and a solution is represented with a chromosome of size N. The population is evolved by creating new solutions through crossover and mutation operators and by forming a new population consisting of good solutions. The solutions carried into the next generation are usually determined by their fitness value, which is the objective value.

The overall idea of the proposed hybrid GA is to have a set of chromosomes indicating the sequence of jobs and then compute each fitness value by determining appropriate idle times between jobs and the energy charge/discharge schedule accordingly. Therefore, two algorithms for the idle times between jobs and energy schedules, respectively, are proposed and used within the hybrid GA. The crossover and mutation operators are then applied to the chromosomes, and the next generation is created based on the fitness values. Hence, the proposed hybrid GA mainly consists of three steps; (1) initial solution generation, (2) idle time generation while considering energy supply plans, (3) fitness value evaluation and evolution to the next generation; steps (2) and (3) are repeated multiple times, and the algorithm is terminated with a given time limit.

Three algorithms that sort jobs by considering the energy cost and makespan are proposed for the initial solution generation. Then the idle times between jobs are determined together with the energy schedule by computing the total energy cost. In detail, a certain unit of idle times is added before each job and the corresponding energy schedule is determined by comparing energy prices and generation costs in each period. Then the objective value is computed and the idle time with the smallest objective value is selected. Note that even if the idle time generation step is eliminated, the GA still provides a feasible solution, and a comparison of the proposed algorithm with and without the idle time generation is presented later.

We first explain the initial solution generation methods in Section 4.1 and then introduce the idle time generation algorithm in Section 4.2 and energy scheduling algorithm in Section 4.3. Section 4.4 presents the overall procedure of the hybrid GA.

4.1. Initial chromosomes

A chromosome in the GA is represented with a sequence of jobs, and a set of solutions (or chromosomes) is generated at the beginning. Three algorithms for initial solutions are proposed; (GreedyE) one considers energy consumption rates of jobs and assigns jobs spending a large amount of energy into the period with a small energy price; (MNEH) another applies the NEH algorithm, based on either makespan or the total cost without the ESS by considering sequence-dependent setup times; (GreedyM) the other selects the next job based on either the sequence-dependent setup times or the total cost without the ESS. Note that the proposed three algorithms are only used for determining a sequence of jobs, and they do not provide any assignment of jobs to periods or any energy schedule. The three algorithms are provided in detail.

From the three algorithms, 11 chromosomes are obtained; the GreedyE algorithm generates one chromosome whereas the MNEH and GreedyM algorithms create eight and two chromosomes, respectively. In the GreedyE algorithm, jobs are sorted according to their energy consumption, ajpj+bji,ijsijN1, with the assumption of the average setup time, i,ijsijN1 of job j. Then the job with the largest energy usage is assigned to the period with the smallest energy price as long as the duration of the corresponding period is not fully occupied with jobs previously assigned. In a similar way, jobs are selected by following the descending order of their energy consumption and are assigned to periods in ascending order of the energy cost.

A modified NEH algorithm, called MNEH, sorts jobs according to one of four priorities based on sequence-dependent setup times as presented in Step 1; the sum of setup times, the maximum setup time, the difference between the maximum and second maximum setup times, and the minimum setup time. Then for each job selected based on one of the priorities, a partial schedule is derived by choosing the best position of the job based on either the makespan or the total cost without the ESS. The GreedyM algorithm selects a job that can minimise the setup time or the total cost without the ESS when it is positioned last in a partial sequence of jobs. An example of initial solutions, denoted as Example 2, is provided in the supplementary material.

The total number of 11 chromosomes are generated with the proposed three algorithms, and more chromosomes are generated randomly to have a given population size, Np, which will be chosen between N and 2N through the preliminary experiments later. With Np chromosomes, idle times are determined, if needed, between jobs and energy schedules while minimising the total cost.

4.2. Idle time generation algorithm

In this subsection, an algorithm for adding idle times between jobs is proposed based on the sequence of jobs in a given chromosome, π. The basic idea of the algorithm is to compare the objective values by adding an idle time before each job from 0 to Δ, where Δ=maxt{1,,T}Δt, in increments of one (i.e. 0,1,,Δ), and then to choose a certain idle time before the job that provides the minimum total cost among (Δ+1)N schedules. Then, the algorithm adds the corresponding idle time before the job and further updates the idle times determined in the previous steps if it can decrease the objective value. Note that if adding an idle time only increases the total cost, the algorithm does not assign any idle time between jobs.

The total cost in the idle time generation algorithm indicates the objective value defined in Constraint (1), which includes not only the production cost but also the energy cost from the EPC, DER, and ESS. Hence, it requires an energy schedule whenever adding an idle time, and the algorithm for energy scheduling will be explained in the next subsection. Denote IT as a set of idle times between the j−1th job and the jth job, jπ, and BT as a set of binary values of N jobs in π, which indicates whether there is an idle time (> 0) before job j or not. Then TC(itm,IT) indicates an objective value obtained when adding an idle time as much as itm before the mth job in π with a given set, IT, for all the other jobs. Notations, C, m, and it in the algorithm, are used for indicating a minimum total cost obtained so far, the job before which an idle time is added, and an amount of idle time added, respectively. The following is the proposed idle time generation algorithm, IdleG algorithm, and an example of the algorithm, denoted as Example 3, is provided in the supplementary material.

4.3. Energy scheduling

Now, the energy scheduling algorithm is proposed to determine Ct, Dt for the ESS, DUt, DSt for the DER, and EUt, ESt for the EPC. Then TC(itm,IT) in Steps 3 and 6 in the IdleG algorithm can be computed with Constraint (1). When a certain period, t, requires a high energy cost, et, it might be beneficial to store some energy into the ESS before period t if it is not expensive. Hence, the underlying idea of the energy scheduling algorithm is to compare em and gm (m<t), and et and gt and then store energy as much as possible to the ESS from the cheaper source, either from the EPC or DER in period m by considering the predetermined Cm and Dt, ESS¯, EC¯, and ED¯. However, if et and gt are not expensive, the energy can be used directly from the EPC or DER in period t without using the ESS.

Let E be a set of energy prices in each period, E={e1,,eT}, and G be a set of generation costs of the DER in each period, G={g1,,gT}. e(t) and g(t) indicate the tth smallest energy cost in E and the tth smallest generation cost in G, respectively. EU is a set of amounts of energy directly used from the EPC in each period, EU={EU1,,EUT}. In addition, ELml is introduced, where ELml=Im+maxmk<l[t=mk(CtDt)], which represents the maximum level of energy stored in the ESS from period m to l−1 under a given energy charging/discharging schedule. It is used for computing the maximum available capacity of the ESS for charging in period m for later use in period l. The algorithm for energy scheduling, EnergyG, is explained as follows:

When a sequence of jobs and idle times between them are given, the algorithm first computes the required energy cost for each period in Step 1 without considering the ESS. In Step 2, the periods are sorted in non-decreasing order of the energy prices and generation costs. Then an energy schedule that determines amounts of energy used from the EPC or DER directly and used from the ESS by charging it in previous periods is determined from the period, denoted as l in Step 3, which has the largest total energy cost. Such energy schedules are derived by comparing the energy prices from the EPC and the generation costs from the ESS.

There are four cases in Step 4; First, when e(ke)<g(kg) and el<gl, it is beneficial to either charge the ESS from the EPC in period m for the energy usage in period l or use the energy directly from the EPC in period l depending on the energy prices in periods m and l. It is because the condition implies that the smallest energy price is less than the smallest generation cost and the energy price in period l is less than the generation cost in period l. Second, when e(ke)<g(kg) and elgl, it might be good to charge the ESS from the EPC in period m or directly use it from the DER in period l. If e(ke)g(kg) and el<gl, charging the ESS from the DER in period m or using the energy from the EPC in period l can be a good option. Finally, when e(ke)g(kg) and elgl, charging the ESS from the DER in period m or using the energy from the DER in period l is considered. The detailed explanation in Step 5 is as follows.

In Step 5-1, if em+c+d<el, which means that the sum of energy price in period m and the charging and discharging costs is less than the energy price in period l, an amount of energy, denoted as ACm, is stored into the ESS in period m for using it in period l. ACm should be determined by considering the required energy in period l, rl, the maximum charging capacity in period m, EC¯Cm, the maximum capacity of the ESS, βESS¯ELml, and the maximum discharging capacity in period l, ED¯Dl. However, if em+c+del, the energy is supplied from the EPC directly in period l. Note that rl in Step 1 indicates the total energy required in period l, and it is updated to the remaining energy that needs to be further fulfilled in Steps 5-1 to 5-4. Based on the updated rl, an amount of energy that needs to be stored in period m is determined. With the given sequence of jobs and idle times between jobs, the objective function of Constraint (1) can be obtained with the EnergyG algorithm.

In Step 5-2, if em+c+d<gl, a certain amount of energy from the EPC is stored into the ESS in period m. However, if em+c+d<el, an amount of energy, as much as min(rl,DER¯l), from the DER is directly used in period l and the insufficient energy is supplied from the EPC in period m. Otherwise, the energy is supplied from the DER and EPC in period l without using the ESS.

In Step 5-3, if gm+c+d<el, which means that the sum of the generation cost in period m and the charging and discharging costs is less than the energy price in period l, the energy from the DER is stored into the ESS in period m as much as ACm in Step 5-3. In this case, ACm is computed by considering rl, DER¯m, EC¯Cm, βESS¯ELml, and ED¯Dl. If gm+c+del, the energy is directly used from the EPC in period l.

In Step 5-4, if gm+c+d<gl, it is better to charge energy from the DER into the ESS in period m for the usage in period l because the generation cost in period l is larger than that in period m. In this case, ACm is computed with rl, DER¯m, EC¯Cm, βESS¯ELml, and ED¯Dl is stored into the ESS. If gm+c+d<el, the energy from the DER in period l is used as much as min(rl,DER¯l) in period l, and then the insufficient energy is supplied from the ESS by charging it from DER in period m as much as ACm. If gm+c+del, the energy from the DER and EPC is used in period l.

For all periods in T, Steps 4 to 6 are repeated, and the algorithm is terminated by finalising the energy schedule in Step 7. Note that the energy scheduling algorithm is applied in Steps 3 and 6 of the IdleG algorithm to determine an energy schedule and compute the total cost, TC(itm,IT), which includes ESS operations. The EnergyG algorithm stores a certain amount of energy in period m (<l) for period l. Therefore, the energy in period l cannot be used for the other periods (>l), which might decrease the efficiency of the algorithm.

An example of generating an energy schedule, denoted as Example 4, is provided in the supplementary material.

4.4. Overall procedure

An overall procedure of the proposed algorithm is illustrated in Figure . First, Np chromosomes, which consist of the first population, are generated; 11 chromosomes from the three algorithms (GreedyE, modified NEH, and GreedyM), and Np11 chromosomes from random generation (Random). Then the IdleG and EnergyG algorithms are applied to the population, and Np production and energy schedules are obtained. The fitness values of Np chromosomes in the population are then computed, and if the given time limit is not exceeded, the next population is generated through crossover and mutation operators applied to the current population.

Figure 2. An overall algorithm for energy-aware single-machine scheduling. An image that shows the overall algorithm for energy-aware single-machine scheduling consisting of ‘Algorithms for Initial Solutions’, ‘Population Generation’, ‘IdleG Algorithm’, ‘EnergyG Algorithm’, ‘Fitness Value Evaluation’, and ‘Crossover & Mutation’.

Figure 2. An overall algorithm for energy-aware single-machine scheduling. An image that shows the overall algorithm for energy-aware single-machine scheduling consisting of ‘Algorithms for Initial Solutions’, ‘Population Generation’, ‘IdleG Algorithm’, ‘EnergyG Algorithm’, ‘Fitness Value Evaluation’, and ‘Crossover & Mutation’.

A pair of chromosomes, called parents, are selected from the current population and generate two new chromosomes, called children or offspring, with a crossover operator. Fi denotes the fitness value of chromosome i, 1iNp, and a probability, PiF, PiF=lFlFilFlNp1 to chromosome i, is assigned to Fi, so that the chromosome with a small fitness value can be chosen with a high probability when generating children. Then a one-point crossover, where a point is randomly chosen on both parents' chromosomes and genes to the right of the point are swapped between the two chromosomes, is used. The one-point crossover has been widely used in the GA for scheduling problems (Vallada and Ruiz Citation2011; Chung and Kim Citation2016; Joo and Kim Citation2015). Also, several studies showed that the one-point crossover provided a good performance compared to other operators (Ali Asghar et al. Citation2019; Hasançebi and Erbatur Citation2000). Note that if the set of jobs in each side of the crossover point is different, the jobs, which occur twice after the crossover operation, are changed randomly to other ones that do not appear in the chromosome so that it contains all jobs as genes.

A chromosome can be selected multiple times in one population to generate the offspring, and 2γcNp chromosomes are newly generated through γcNp crossover operations where γc is a hyper-parameter to determine the crossover ratio. After that, a mutation operator that swaps two genes randomly in a child's chromosome is applied with the probability of γm.

Then Np chromosomes among Np+2γcNp chromosomes (Np original chromosomes and 2γcNp new chromosomes after the crossover and mutation operations) are selected with an elitism policy that chooses γeNp chromosomes with small fitness values and NpγeNp chromosomes based on PiF, 1iNp+2γcNpγeNp. Then a new set of population is composed, and the proposed algorithm is repeated until the time limit. Note that the selected chromosomes might be similar to ones chosen only with the small fitness values but sill can be different due to the probability feature of PiF.

5. Experimental results

The experiments of the proposed algorithm is performed for energy-aware single-machine scheduling with the DER and ESS to minimise the sum of production and energy costs. The algorithm is coded with JAVA programming language and run on a personal computer with Intel Core i7-9700 and 32 GB RAM. An optimal solution with the proposed mathematical model is obtained with GUROBI (Version 9.1.0).

5.1. Preliminary experiments

When N and T were larger than 20 and 12, respectively, there were some instances where GUROBI was not able to provide an optimal solution within an hour. Hence, N and T are set to 15 and 12, respectively, for determining hyper-parameters by comparing the objective value from the hybrid GA to an optimal solution from GUROBI. Δt is 60 minutes for all t, and pj and sij are randomly generated from the Uniform distribution U(25, 45) and U(1, 5), respectively, by considering the period, 720 minutes. The time unit is a minute. aj is also randomly generated between 3 and 6 kW per minute, and bj is set to aj1. EC¯ is equal to ED¯ and determined between 50 and 100 kW randomly. c and d are set to 10 KRW/kW, and ESS¯ is 300 kW with α of 0.2 and β of 0.9. et follows the ToU pricing during the summer in Table  by averaging the prices of the consecutive two hours so that 12 periods can be obtained. Hence, et, 1t12, is set to 56.1, 56.1, 56.1, 56.1, 82.55, 191.1, 150.1, 191.1, 50.1, 109, 109, and 82.55 KRW/kW starting from the midnight. gt is determined to be 60 KRW/kW for all t. DER¯t, 1t12, is selected from the Normal distribution, N(μ,σ), which is determined from the real data of the factory considered. N(μ,σ) for period t, 1t12, is set to be N(0,0), N(0,0), N(0,0), N(0,0), N(21.3,10.9), N(97.320.2), N(133.2,29.8), N(144.5,34.2), N(129.1,29.1), N(64.9,22.7), N(5.38,4.2), and N(0,0). The parameters used for the experiments have been selected from the previous studies and the factory we considered. The processing times, setup times, ESS¯, and DER¯t have been determined by considering the planning horizon and the real data of the factory. aj and bj have been selected from the machine energy consumption per hour in previous works (Moon, Shin, and Park Citation2013; Moon and Park Citation2014; Che, Zeng, and Lyu Citation2016). gt, c, and d have been chosen to reflect the proportion of the DER and ESS costs to the total energy in practice. The computation time limit of the proposed algorithm is set to 10 minutes. The production and energy cost changes are provided depending on the parameters.

The hyper-parameters, Np{1(=N),2(=2N)}, γc{0.5,0.7,0.9}, γe{0.5,0.7,0.9}, and γm {0.01,0.03,0.05}, are tested with f of 10 and 200 KRW/min to see the impact of the ratio of the production cost to energy cost on the performance of the algorithm. The production cost accounts for about 4-5 % and 35-40 % with f of 10 and 200 in the total cost, respectively. The cost from the ESS and DER mostly accounts for 10 % in the total cost. 10 instances are randomly generated for each parameter set, and the average objective value from running five times of the hybrid GA for one instance is compared to an optimal solution from GUROBI. Figure  shows the average gap, computed by (objectivefromtheproposedalgorithmoptimalsolution)×100optimalsolution, with f of 10 for each hyper-parameter set. The average gap over all hyper-parameter sets is 1.67 % with f of 10, and it is 1.06 % with f of 200. As can be seen in Figure , a small gap is usually obtained with Np of 1, γc of 0.5, γe of 0.5, and γm of 0.05. A similar pattern is found from the results with f of 200. Note that γm of 0.1, 0.2, and 0.3 was tested, but there was no significant difference in the gap. The average computation time of GUROBI is 1608 s and 724 s with f of 10 and 200, respectively. Hereafter, those parameter values are used to evaluate the performance of the algorithm further.

Figure 3. Preliminary experiments for setting parameters. Four graphs of preliminary experiments for parameter setting that show gaps according to population size, crossover ratio, elitism, and mutation rate, respectively.

Figure 3. Preliminary experiments for setting parameters. Four graphs of preliminary experiments for parameter setting that show gaps according to population size, crossover ratio, elitism, and mutation rate, respectively.

5.2. Comparison to optimal solutions

As can be seen in the preliminary experiments, the average gaps are less than 2 % with N of 15, which is very small. N is increased to 20, 25, and 30, each of which has pj randomly determined from U(20, 30), U(15, 25), U(10, 20), respectively, with T of 12. sij is randomly generated from U(1, 3) (setup type 1) or U(1, 5) (setup type 2), to see the impact of setup time ranges, and gt is set to 40 or 60 KRW/kW for all t to analyse the impact of the generation cost. All the other parameters are the same as in the preliminary experiments. The proposed GA is run for 10 minutes. Note that the number of jobs has been determined to show the efficiency of the proposed algorithm by comparing it to optimal solutions. GUROBI is able to provide optimal solutions for some instances with 20 jobs and no optimal solutions for 25 and 30 jobs within an hour, which will be shown in Table . In addition, the factory we consider produces 25 to 50 jobs on average in a half day.

Table 2. Comparison between GUROBI and hybrid GA.

Table  shows the results according to N, f, gt, and setup types (ST). 30 instances were generated for each problem, and the proposed hybrid GA was run 30 times for each instance. Then the average of 30 results is compared to the total cost from GUROBI with a time limit of 3600 s. Denote TCGRB and TChGA as the total cost (the objective value) from GUROBI and the proposed hybrid GA, respectively. PCGRB (ECGRB) and PChGA (EChGA) indicate the production (energy) cost from GUROBI and the proposed algorithm, respectively. The average gap in the fifth column of Table  is computed by (TChGA - TCGRB)× 100/TCGRB, and the standard deviation of the gaps from 30 instances is presented in the sixth column. The seventh column shows the average value of ‘standard deviation of the total cost×100/total cost’ from the proposed hybrid GA. The eighth and ninth columns, PR(GRB) and PR(hGA) in Table , show the production cost ratios, which are computed as PCGRB/TCGRB and PChGA/TChGA, respectively. The production and energy costs are compared from GUROBI and our algorithm with PC(GRB/hGA) and EC(GRB/hGA), which are computed by PCGRB/PChGA and ECGRB/EChGA, respectively. The average computation time of GUROBI by setting 3600 s for instances where optimal solutions are not found within an hour is represented in the twelfth column. The last two columns show the number of instances where optimal solutions were not found (NI_Optimal) and where even an initial solution was not found (NI_Initial) within an hour from GUROBI, respectively. The gaps were computed only for instances where initial solutions were found within an hour. Figure  shows the results from Table  for each of 20, 25, and 30 jobs. The x-axis indicates the combination of f/gt/ST, and the y-axis is the average gap in Figure .

Figure 4. Summary of comparison with 20, 25, and 30 jobs. A graph that shows the summary of comparison for 20, 25, and 30 jobs with various combinations of f, gt, and ST.

Figure 4. Summary of comparison with 20, 25, and 30 jobs. A graph that shows the summary of comparison for 20, 25, and 30 jobs with various combinations of f, gt, and ST.

It is observed in Table  that GUROBI was not able to find an optimal solution within an hour for all instances with 25 and 30 jobs from NI_Optimal. In addition, it did not even provide any solution with 30 jobs for the average of 19 instances of each problem, and such cases were excluded in computing the gap between the algorithm and GUROBI. It is worth noting that the average optimality gap of GUROBI, which is obtained when optimal solutions are not found within an hour, is 0.85, 2.21, and 3.77 % for 20, 25, and 30 jobs, respectively. Note that the performance evaluation of the hybrid GA for large-sized problems by relaxing the problem was not successful because the proposed mathematical model even without the subtour elimination constraint, Constraint (18), did not provide any feasible solution within an hour for 15 instances among 30 instances of 30 jobs on average.

In Table , the average gaps with 20, 25, and 30 jobs between our algorithm and GUROBI are 2.65, 2.87, and 2.07 %, respectively. There is no significant impact of the setup times on the average gaps. The results of 30 jobs in Table  should be used just for reference because most of the instances were not solved by GUROBI within an hour.

In Table  and Figure , it can be observed that the average gaps with gt of 40 are larger than those with gt of 60 in general. When gt is 40, generating the energy from the DER can be efficient than buying it from the EPC because the minimum et is 56.1. Hence, the energy scheduling for the ESS, DER, and EPC affects the performance more than the production schedule in this case. It is also observed that EC(GRB/hGA) in Table  is smaller with gt of 40 than that with gt of 60, which means that EChGA becomes closer to ECGRB in the case. The overall average gap and standard deviation of the gap for all jobs are 2.53 % and 1.19, respectively. The ratio of the standard deviation of the total cost to the total cost for all jobs is 0.61 %. The Wilcoxon signed-rank test with the total costs from the proposed algorithm and GUROBI for each parameter set in Table  (total 24 sets) has been conducted. The p values for 23 sets were larger than 0.05, and only one of them (25 jobs, f of 200, gt of 40, ST of 2) had the p value of 0.01. Therefore, it can be observed that there is no statistically significant difference between the total costs from the hybrid GA and GUROBI in most instances. The minimum total cost changes in each iteration of the proposed algorithm for an instance of 20, 25, and 30 jobs are presented in the supplementary material.

From Table  and Figure , it can be seen that gt affects the average gap more than other parameters. We have further performed the experiments with gt of 60 and 80, but the average gaps between gt of 20 and 40 and between gt of 60 and 80 were similar. Note that there is also no large difference even with a large f(>200).

5.3. Performance of the algorithm

The effectiveness of adding intentional idle times between jobs is evaluated by running the hybrid GA with and without the IdleG algorithm. Table  shows the cost ratio (cost from GA with IdleG/cost from GA without IdleG) for all elements in the total cost, which are the production cost, EPC cost, ESS cost, DER cost, as well as the total cost, with 20 jobs. Figure  shows the ratio graphs in Table . Note that the ratios are similar regardless of the number of jobs. It can be seen that the production cost is larger with the IdleG algorithm because idle times between jobs are added, but the EPC cost is smaller by delaying some jobs and using the DER and ESS efficiently. The IdleG algorithm significantly reduces the EPC cost when f is 10, which results in approximate 10 % reduction in the total cost. The ESS cost ratio is increased whereas the DER cost ratio is decreased as gt is changed from 40 to 60 as can be seen in Figure . This is because it can be better to use less energy from the DER and to use the ESS more frequently by saving energy from the EPC when gt is high. There is no large difference between setup types. When f is 200, most cost ratios are close to 1 because it is better to reduce idle times between jobs to minimise the production cost.

Figure 5. Evaluation of the IdleG algorithm. A graph that shows the impact of IdleG algorithm on the total cost, production cost, EPC cost, ESS cost, and DER cost with various combinations of f, gt, and ST.

Figure 5. Evaluation of the IdleG algorithm. A graph that shows the impact of IdleG algorithm on the total cost, production cost, EPC cost, ESS cost, and DER cost with various combinations of f, gt, and ST.

Table 3. Comparison of the hybrid GA with and without the IdleG algorithm with 20 jobs.

The final experiments are performed to see how much cost can be saved by having the ESS and DER. This analysis can be conducted with the proposed algorithm. N is set to 50 and 100, and T is set to 24 (one day, 1440 minutes) by reflecting the real factory schedule. pj and sij are randomly generated from U(15, 25) and U(1, 3) and from U(7, 12) and U(1, 2), respectively, for 50 and 100 jobs. The energy price during the summer in Table  is used. All the other parameters are the same with the previous experiments. 30 instances for each parameter set (f and gt) are generated with and without the ESS, DER and both of the ESS and DER. Then, the production cost, energy cost and total cost ratios are compared for three cases, with/without ESS, with/without DER, and with/without both.

In Table , the average ratio of the total cost for each case is 0.98, 0.83, and 0.80, respectively. When there is no ESS, the energy from the EPC and DER is directly used without storage, and hence, delaying some jobs may not provide good solutions. Hence, the production cost ratio is larger than 1 with f of 10. It is less than 1 when f becomes 200. If an ESS is used, some energy during inexpensive periods can be stored and used when the energy price is high. Therefore, if f is large, not delaying some jobs even during expensive periods can be beneficial with the ESS. However, if there is no ESS, it might be necessary to delay some jobs when the energy price is high. If there is no DER, all energy from the EPC needs to be used directly or to be stored in the ESS. The average energy cost ratio in the second case (with/without DER) is 0.81, which means that the energy cost can be saved as much as 19 % with the DER. When both of the ESS and DER are used, the average energy cost is reduced to 0.79. This cost saving comes from one day production, and it can be much larger when the period extends to a week and a month. Figure  shows the total cost of the schedules with and without both of the ESS and DER (wB, w/oB) depending on the number of jobs, f and gt (i.e. x-axis indicates N/f/gt). When f is 200, the average production cost and energy cost are increased by 18 % and 26 %, respectively, on average, compared to the case with the ESS and DER. Note that the amount of costs that can be saved by having the ESS and DER depends on the ESS capacity, ESS operating cost, DER maximum capacity, and DER generation cost. Companies that are considering to have a DER or ESS can use the proposed algorithm for analysing their effectiveness.

Figure 6. Comparison of schedules with and without ESS and DER. A graph that shows the impact of ESS and DER on the total cost with various combinations of N, f, and gt.

Figure 6. Comparison of schedules with and without ESS and DER. A graph that shows the impact of ESS and DER on the total cost with various combinations of N, f, and gt.

Table 4. Total cost analysis without ESS and DER.

6. Conclusion

A single-machine scheduling problem has been addressed, where processing and setups of jobs require a certain amount of energy, the energy can be obtained from the EPC and DER, and it can be stored in the ESS, with the objective of minimising the sum of production and energy costs. The mathematical programming model has been developed first, and then the hybrid GA has been proposed. The proposed algorithm consists of initial solution methods, the idle time generation algorithm which adds appropriate idle times between jobs by considering the total cost, and the energy scheduling algorithm that determines the energy usage from the EPC, DER, and ESS. The proposed algorithm has been evaluated with optimal solutions from GUROBI under various scenarios, and the gap was less than 3 % on average. The efficiency of the IdleG algorithm and of having the ESS and DER has been evaluated.

This research can be further extended by considering other manufacturing environments, such as parallel machines, flow shops or job shops. The different energy consumption of machines (unrelated or uniform parallel machines) can also be considered. In addition, the cost reduction with the DER and ESS may need to be further analysed to determine an appropriate capacity of the DER and ESS. Other methods, such as a reinforcement learning approach to determine idle times between jobs or a sequence of jobs, can be applied. Applying the advanced meta-heuristics, such as PSO, ABC, GSA, and GWO, by considering the DER and ESS can also be good future work.

Supplemental material

Supplemental Material

Download PDF (166.3 KB)

Disclosure statement

No potential conflict of interest was reported by the author(s).

Data Availability Statement

The data that support the findings of this study is available from the corresponding author, Jun-Ho Lee, upon reasonable request.

Additional information

Funding

This work was supported by the National Research Foundation of Korea Grant funded by the Korean Government [grant number NRF-2019S1A2A2031006].

Notes on contributors

Hyun-Jung Kim

Hyun-Jung Kim received the Ph.D. degree in Industrial and Systems Engineering from KAIST (Korea Advanced Institute of Science and Technology), Daejeon, Republic of Korea in 2013. She was a Postdoctoral Researcher in the Department of Industrial Engineering & Operations Research, University of California, Berkeley, and was an Assistant Professor in the Department of Systems Management Engineering, Sungkyunkwan University, Republic of Korea. She is now an Assistant Professor with the Department of Industrial & Systems Engineering, KAIST. Her research interests include modelling, scheduling, and control of production systems.

Eun-Seok Kim

Eun-Seok Kim is an Associate Professor in Operations Management at Queen Mary, University of London, United Kingdom. He has BSc, MSc and PhD degrees in Operational Research from KAIST (Korea Advanced Institute of Science and Technology), South Korea. Before joining Queen Mary, he was an Assistant/Associate Professor in Operations Management and Programme Leader in MSc Global Supply Chain Management at Middlesex University, United Kingdom. His main research interest falls within the field of operations and supply chain management specialising in combinatorial optimisation and scheduling theory. He is also interested in applications of operational research, especially optimisation, to various problem areas including telecommunication and actuarial science.

Jun-Ho Lee

Jun-Ho Lee received the B.S. and Ph.D. degrees from the Department of Industrial and Systems Engineering, KAIST (Korea Advanced Institute of Science and Technology), Daejeon, Republic of Korea, in 2008 and 2013, respectively. He was a Senior Researcher at Systems Engineering Team, Samsung Electronics, Republic of Korea, from 2013 to 2016, and was a Postdoctoral Researcher at the Department of Industrial and Systems Engineering, University of Wisconsin, Madison, WI, USA, from 2016 to 2017. He is currently an Assistant Professor with the School of Business, Chungnam National University, Republic of Korea. His research interests are in modelling, analysis, scheduling, and control of production and service systems.

Lixin Tang

Lixin Tang received the B.Eng. degree in industrial automation, the M.Eng. degree in systems engineering and the Ph.D. degree in control science and engineering from Northeastern University, Shenyang, China, in 1988, 1991, 1996, respectively. He is a member of Chinese Academy of Engineering, the Director of Key Laboratory of Data Analytics and Optimization for Smart Industry, Ministry of Education, China, and the Chair Professor of Centre for Industrial Intelligence and Systems Optimization, Northeastern University. His research interests cover industrial intelligence and systems optimisation theories and methods, including data analytics and machine learning, deep learning and evolutionary learning, reinforcement learning and dynamic optimisation, convex and sparse optimisation, integer and combinatorial optimisation, computational intelligence-based optimisation. Meanwhile, he applies the above theories to engineering applications in manufacturing, logistics and energy systems. He has published many papers in international journals such as Operations Research, Manufacturing & Service Operations Management, INFORMS Journal on Computing, IISE Transactions, Naval Research Logistics, et al. His paper published on IISE Transactions received the Best Applications Paper Award of 2017. He currently serves as an Associate Editor of IISE Transactions, IEEE Transactions on Evolutionary Computation, IEEE Transactions on Cybernetics, Journal of Scheduling, International Journal of Production Research, and Journal of the Operational Research Society. Meanwhile, he is on the Editorial Board of Annals of Operations Research, and serves as an Area Editor of the Asia-Pacific Journal of Operational Research.

Yang Yang

Yang Yang received the B.S. degree in automation from Northeastern University, Shenyang, China, and the Ph.D. degree in systems engineering from Northeastern University, Shenyang, China, in 2003 and 2010, respectively. She is currently an Associate Professor with Centre for Industrial Intelligence and Systems Optimization, Northeastern University. Her current research interests include production planning and scheduling, integer and combinatorial optimisation and engineering applications in manufacturing systems.

References

  • Aghelinejad, M., Y. Ouazene, and A. Yalaoui. 2018. “Production Scheduling Optimisation with Machine State and Time-dependent Energy Costs.” International Journal of Production Research 56 (16): 5558–5575.
  • Ali Asghar, R. H., V. Javad, S. Behzad, S. Arun Kumar, and E. Mohaned. 2019. “Extended Genetic Algorithm for Solving Open-shop Scheduling Problem.” Soft Computing 23: 5099–5116.
  • Araceli, F.-P., L. Peter, and V. Tiffany. 2019. “Industry: Tracking Clean Energy Progress”. https://www.iea.org/tcep/industry/.
  • Che, A., Y. Zeng, and K. Lyu. 2016. “An Efficient Greedy Insertion Heuristic for Energy-conscious Single Machine Scheduling Problem Under Time-of-Use Electricity Tariffs.” Journal of Cleaner Production 129: 565–577.
  • Che, A., S. Zhang, and X. Wu. 2017. “Energy-conscious Unrelated Parallel Machine Scheduling Under Time-of-use Electricity Tariffs.” Journal of Cleaner Production 156: 688–697.
  • Cheng, J., F. Chu, and M. Zhou. 2018. “An Improved Model for Parallel Machine Scheduling Under Time-of-use Electricity Price.” IEEE Transactions on Automation Science and Engineering 15 (2): 896–899.
  • Chung, B. D., and B. S. Kim. 2016. “A Hybrid Genetic Algorithm with Two-stage Dispatching Heuristic for a Machine Scheduling Problem with Step-deteriorating Jobs and Rate-modifying Activities.” Computers & Industrial Engineering 98: 113–124.
  • Ding, J.-Y., S. Song, R. Zhang, R. Chiong, and C. Wu. 2016. “Parallel Machine Scheduling Under Time-of-use Electricity Prices: New Models and Optimization Approaches.” IEEE Transactions on Automation Science and Engineering 13 (2): 1138–1154.
  • Gahm, C., F. Denz, M. Dirr, and A. Tuma. 2016. “Energy-Efficient Scheduling in Manufacturing Companies: A Review and Research Framework.” European Journal of Operational Research 248 (3): 744–757.
  • Gao, K., Y. Huang, A. Sadollah, and L. Wang. 2020. “A Review of Energy-efficient Scheduling in Intelligent Production Systems.” Complex & Intelligent Systems 6: 237–249.
  • Gong, X., T. D. Pessemier, W. Joseph, and L. Martens. 2015. “An Energy-Cost-Aware Scheduling Methodology for Sustainable Manufacturing.” Procedia CIRP 29: 185–190.
  • Hasançebi, O., and F. Erbatur. 2000. “Evaluation of Crossover Techniques in Genetic Algorithm Based Optimum Structural Design.” Computers and Structures 78: 435–448.
  • Joo, C. M., and B. S. Kim. 2015. “Hybrid Genetic Algorithms with Dispatching Rules for Unrelated Parallel Machine Scheduling with Setup Time and Productivity Availability.” Computers & Industrial Engineering 85: 102–109.
  • Lee, Y. H., K. Bhaskaran, and M. Pinedo. 1997. “A Heuristic to Minimize the Total Weighted Tardiness with Sequence-dependent Setups.” IIE Transactions 29 (1): 45–52.
  • Liao, C.-J., and H.-C. Juan. 2007. “An Ant Colony Optimization for Single-Machine Tardiness Scheduling with Sequence-dependent Setups.” Computers & Operations Research 34 (7): 1899–1909.
  • Liu, Y., H. Dong, N. Lohse, and S. Petrovic. 2016. “A Multi-objective Genetic Algorithm for Optimisation of Energy Consumption and Shop Floor Production Performance.” International Journal of Production Economics 179: 256–272.
  • Luo, S., L. Zhang, and F. Yushun. 2019. “Energy-efficient Scheduling for Multi-objective Flexible Job Shops with Variable Processing Speeds by Grey Wolf Optimization.” Journal of Cleaner Production234: 1365–1384.
  • May, G., B. Stahl, M. Taisch, and V. Prabhu. 2015. “Multi-objective Genetic Algorithm for Energy-Efficient Job Shop Scheduling.” International Journal of Production Research 53 (23): 7071–7089.
  • Merkerts, L., L. Harjunkoski, A. Lsaksson, S. Säynevirta, A. Saarela, and G. Sand. 2015. “Scheduling and Energy – Industrial Challenges and Opportunities.” Computers & Chemical Engineering 72 (2): 183–198.
  • Moon, J.-Y., and J. Park. 2014. “Smart Production Scheduling with Time-dependent and Machine-dependent Electricity Cost by Considering Distributed Energy Resources and Energy Storage.” International Journal of Production Research 52 (13): 3922–3939.
  • Moon, J.-Y., K. Shin, and J. Park. 2013. “Optimization of Production Scheduling with Time-dependent and Machine-dependent Electricity Cost for Industrial Energy Efficiency.” The International Journal of Advanced Manufacturing Technology 68 (1): 523–535.
  • Mustu, S., and E. Tamer. 2018. “The Single Machine Scheduling Problem with Sequence-dependent Setup Times and a Learning Effect on Processing Times.” Applied Soft Computing 71: 291–306.
  • OECD-IEA. 2019, “CO2 Emissions from Fuel Combustion 2019”, Statistics Report.
  • Ovacikt, I. M., and R. Uzsoy. 1994. “Rolling Horizon Algorithms for a Single-machine Dynamic Scheduling Problem with Sequence-dependent Setup Times.” International Journal of Production Research 32 (6): 1243–1263.
  • Pinedo, M. L.. 2012. Scheduling Theory, Algorithms, and Systems. New York, NY, USA: Springer.
  • Rahimifard, S., Y. Seow, and T. Childs. 2010. “Minimising Embodied Product Energy to Support Energy Efficient Manufacturing.” CIRP Annals – Manufacturing Technology 59 (1): 25–28.
  • Rubaiee, S., and M. B. Yildirim. 2019. “An Energy-aware Multiobjective Ant Colony Algorithm to Minimize Total Completion Time and Energy Cost on a Single-Machine Preemptive Scheduling.” Computers & Industrial Engineering 127: 240–252.
  • Salonitis, K., M. R. Jolly, B. Zeng, and H. Mehrabi. 2016. “Improvements in Energy Consumption and Environmental Impact by Novel Single Shot Melting Process for Casting.” Journal of Cleaner Production 137 (20): 1532–1542.
  • Shrouf, F., J. Ordieres-Meré, A. García-Sánchez, and M. Ortega-Mier. 2014. “Optimizing the Production Scheduling of a Single Machine to Minimize Total Energy Consumption Costs.” Journal of Cleaner Production 67 (15): 197–207.
  • Tang, D., M. Dai, M. A. Salido, and A. Giret. 2016. “Energy-efficient Dynamic Scheduling for a Flexible Flow Shop Using An Improved Particle Swarm Optimization.” Computers in Industry 81: 82–95.
  • UN Sustainable Development. 2020. https://www.un.org/sustainabledevelopment/energy/.
  • Vallada, E., and R. Ruiz. 2011. “A Genetic Algorithm for the Unrelated Parallel Machine Scheduling Problem with Sequence Dependent Setup Times.” European Journal of Operational Research 211 (3): 612–622.
  • Vélez-Gallego, M. C., J. Maya, and J. R. Montoya-Torres. 2016. “A Beam Search Heuristic for Scheduling a Single Machine with Release Dates and Sequence Dependent Setup Times to Minimize the Makespan.” Computers & Operations Research 73: 132–140.
  • Wang, C., C. Liu, Z.-H. Zhang, and L. Zheng. 2016. “Minimizing the Total Completion Time for Parallel Machine Scheduling with Job Splitting and Learning.” Computers & Industrial Engineering 97: 170–182.
  • Yildirim, M. B., and G. Mouzon. 2012. “Single-Machine Sustainable Production Planning to Minimize Total Energy Consumption and Total Completion Time Using a Multiple Objective Genetic Algorithm.” IEEE Transactions on Engineering Management 59 (4): 585–597.
  • Zhang, R., and R. Chiong. 2016. “Solving the Energy-efficient Job Shop Scheduling Problem: a Multi-objective Genetic Algorithm with Enhanced Local Search for Minimizing the Total Weighted Tardiness and Total Energy Consumption.” Journal of Cleaner Production 112: 3361–3375.
  • Zhu, X., and W. E. Wilhelm. 2006. “Scheduling and Lot Sizing with Sequence-dependent Setup: A Literature Review.” IIE Transactions 38: 987–1007.