1 Introduction

With the growing demand for energy, energy crisis has been aggravating in recent years. Energy reduction which has attracted wide attention has become a huge challenge to industrialization. Therefore, improving energy efficiency and developing green manufacturing has become a strategic principle of sustainable development for all countries. It is of great practical significance to reduce the energy consumption in manufacturing process to improve the competitiveness of enterprises.

According to the International Energy Outlook proposed by the US Energy Information Administration, delivered energy consumption in the industrial sector totaled 24.5 quadrillion Btu in 2013, representing approximately 34% of the total energy consumption delivered by the US (Schlosser et al. 2011). In China, the industrial sector consumes about half of the total electricity (Liu et al. 2014). Energy cost is continuously rising due to the rapid and ongoing growth of energy demand. In China, manufacturing enterprises consume approximately 50% of the national electricity energy (Liu et al. 2014). Moreover, energy consumption is one of the main reasons for the environment pollution due to the increasing amount of the green-house gas emissions, in particular, the carbon dioxide (CO2).(Liu et al. 2015).

In the past few years, a large number of scholars have studied the optimization of manufacturing scheduling. An improved hybrid multi-phase quantum particle swarm algorithm (Ning et al. 2016) is proposed to minimize the make span and solve the dynamic scheduling of flexible job-shop problems. Based on this model researchers developed the algorithm by proposing a hybrid encoding method to develop the efficiency and avoid the local optimization (Liang et al. 2018). In addition, solution methods for unexpected temporary shortage of some resources during the execution period of a project are considered (Zhang et al. 2018). For specific industries, scheduling problem based on the flexible job shop was designed as novel linear programming model (Safarzadeh et al. 2018a, b). For the purpose of efficiency and flexibility, the research at this stage did not take the energy consumption into account.

Considering of energy consumption, several researchers studied on specific process parameters in machining have been conducted to characterize and reduce energy consumption (Che et al. 2017a, b; Altıntaş et al. 2016; Gong et al. 2016; Shokrani et al. 2016; Schmidt et al. 2015). These researches developed the energy efficiency for specific process in milling or for process of specific component through certain method such as precise selection of cutting parameters. However, previous studies focused on specific energy at the machine level or spindle level, which is not the actual energy consumption in actual manufacturing process (Edem and Mativenga 2017; Zhong et al. 2016; Camposeco-Negrete et al. 2015). A model of resource scheduling was built in consideration of end-time, energy consumption and carbon emission (Fang et al. 2013). This model considered a multi-objective flow shop scheduling problem with traditional time-based objectives as well as energy-based objectives and investigated the computational performance. However, the computational complexity of the PFSPP problem remains open when there are two machines or more machines. To explore the potential for energy saving in manufacturing, a green scheduling problem was studied based on flow-shop, in which took the end-time and energy consumption into account (Mansouri et al. 2016). A mixed integer linear multi-objective optimization model and a heuristic algorithm were promoted to solve the scheduling problem with two-machine permutation flow shop. The analysis and efforts on energy efficiency improvement can take place at different levels, such as device/unit machine tool level, line/ cell/ multi-machine system, facility, multi-factory system and enterprise/ global supply chain level (Duflou et al. 2012). As a result, the improvement of specific energy efficiency at the machine level or spindle level is an optimization without overall consideration of the whole process.

Facing the new trend of smart manufacturing, factories are required to have a more flexible structure to finish producing customized products within the limited time and at a reasonable cost. To design an optimized plant layout and the production process in smart manufacturing, a framework of simulation-based approach was proposed and a procedure for the implementation of the proposed framework has been developed (Zhang, Wang, Wang et al. 2018a, b). To adapt to the new manufacturing mode, a knowledge generation mechanism which taking advantages of Map/ Reduce framework to handle large-scale data was presented to generate machining solutions in process planning (Yang et al. 2018). In smart manufacturing, an increasing number of manufacturing enterprises outsource manufacturing activities to subcontractors that are more professional to focus on the development of their core business. Service discovery and combinatorial optimization is more complex than other industries (Wang et al. 2017). Considering the energy-efficiency in smart manufacturing, an innovative cloud-terminal-based cyber-physical system architecture was presented (Li et al. 2018). This system consists of four levels: machine level, control level, data level and decision support level to integrate more optimization strategies and form a closed loop to reflect the real-time dynamic scenarios.

The price of electricity is an important parameter in the optimal problem of energy consumption. The price can vary during one day according to power load and the variation of power demand in smart grid. Therefore, a large number of scholars have focused on the optimization problem to balance the electricity supply and demand to improve energy efficiency. Demand Response Management (DRM) is one of the electricity strategies and mechanisms to balance the demand and supply in smart grid. DRM controls the energy consumption at the customer side and aims to improve efficiency of energy and reduce cost of the customers (Pecoraro et al. 2015; Mahmud and Sant 2017; Alves et al. 2016). Chai et al. (2013) studied the optimal problem of residential load scheduling which provided references to the resource scheduling in industrial sector. Complementally, the variation of electricity price was taken into account solving resource scheduling problem in smart grid. In the earlier stage, researchers had simplified the calculation of energy consumption and ignored the energy consumption curve in the actual production process.

Recently, researcher focused on the scheduling problems with multi-objective to minimize the electricity cost and develop the efficiency. Zhang et al. (2014) examined a flow shop scheduling problem with the objective of minimizing both the electricity cost and the carbon footprint and formulated a multi-objective mixed-integer linear programming (MILP) model for their problem. Sharma et al. (2015) investigated a multi-machine scheduling problem with variable processing speeds to minimize the electricity cost and environmental impact, and developed a simulated annealing algorithm. Che et al. (2017a, b) investigated an energy-conscious unrelated parallel machine scheduling problem under time-of-use electricity pricing scheme, in which the electricity price varies throughout a day. Along with the complication of the scheduling problems, the model and algorithm become more and more complicated. In order to make the model more practical, the price variation of energy should be taken into account when solving the energy-efficiency-oriented scheduling problem. At the same time, solving the scheduling problem in smart manufacturing is faced up with big data of manufacturing resources and tasks. To improve the computation efficiency, this paper put forward a mixed integer linear programming model to describe the scheduling problem based on the objective of energy consumption. A fast heuristic algorithm based on score ranking is designed to solve the MILP.

The remainder of this paper is organized as follows: Sect. 2 analyzes the Main factors affected on resource scheduling. In Sect. 3, resource scheduling problem is formulated as a constrained optimization problem, which objective function and constraint conditions are given and optimized. In Sect. 4, a fast heuristic algorithm based on scoring sorting, and linear programming relaxation techniques are presented to solve the problem. Numerical results are illustrated in Sect. 5. Finally, we draw conclusions in Sect. 6.

2 Analysis of the main factors effecting on resource scheduling

In smart manufacturing, manufacturing tasks ought to be assigned to different manufacturing resources over a given period of time to conclude a traction at a suitable price. To minimize the energy consumption, some factors that effect on resource scheduling are analyzed in this section.

The cost of energy The manufacturing resource would like to complete the manufacturing tasks at lower payment and sell the manufacturing service at higher price. To minimize the energy consumption, reducing the cost of energy is the primary objective of resource scheduling.

The restart time There are four working condition in manufacturing resource: initialization stage, processing stage, shutdown stage and no-load stage. The relationship of energy consumption and working condition is shown in Fig. 1. Extra energy consumption would be involved in the initialization stage when the manufacturing resource restarts. Nevertheless, it is not a rational choice to keep the manufacturing resource running in no-load stage which would consume more energy instead of the restart energy consumption. The optimal state of manufacturing resource is to keep the resource running with manufacturing task carried on to maximize profits. Thus, considering the energy which involved in the initialization stage or no-load stage is reasonable and logical.

Fig. 1
figure 1

The relationship of energy consumption and working condition

The feasible range of response time According to time sequence of the manufacturing task, there is a feasible time domain for resource scheduling to make sure that the antecedent sequence of the manufacturing task is finished and the consequent sequence would not start until the manufacturing task is ready for next procedure.

The technical standard Different from the scheduling in smart grid, the technical standard has influenced on resource scheduling when it is required in manufacturing process. The technical standard of manufacturing resources should satisfy the requirement of the customer to make sure that the manufacturing task could be completed in the stipulated time.

The preference options In manufacturing process, some tasks have certain requirement for environment, scale of resource and so on. When the customers of the manufacturing task and suppliers of manufacturing resource have a contract constraint, the resource scheduling process should consider this kind of preference option.

The mentioned above factors would be discussed in this article.

3 System model of resource scheduling

Given a set of available manufacturing resource (described as R, numbered as i) and a set of manufacturing tasks to be assigned (described as M, numbered as j and k) in a limited time segment (One cycle is divided into a time slot set described as H, numbered as t), the system model would be built in this section. For ease of presentation, we use resource instead of manufacturing resource and task instead of manufacturing task throughout this paper.

3.1 Objective function

The energy consumption could be described as the total electricity price in a limited time segment which could be described as follows:

$$\sum\limits_{{i=1}}^{r} {\sum\limits_{{j=1}}^{m} {\sum\limits_{{t=1}}^{h} {{p_t}{c_i}{X_{ijt}}} } }$$
(1)

where \({p_t}\) is the unit price of energy consumption. According to the TOU electricity pricing scheme in smart grid, the electricity price varies throughout a day; \({c_i}\) is quantification of energy consumption; \({X_{ijt}}\) is bivariate. When \({X_{ijt}}=1\), task j is under processing on resource i in time slot t; when \({X_{ijt}}=0\), task j is not on resource i in time slot t.

Considering the curve in Fig. 1, when the energy consumption of no-load stage is higher than the extra energy consumption caused in startup operation, it is reasonable to shut down machine tools to save energy; when extra energy consumption caused in startup operation is higher than the energy consumption of no-load stage (in other words, the no-load interval is short and frequent), resource would like to keep on working with no load and waiting for next tasks.

The extra energy consumption in restart stage could be described in Eq. (2).

$$\sum\limits_{{i=1}}^{r} {{a_i}\left\{ {{p_1}\sum\limits_{{j=1}}^{m} {{X_{ij1}}+\sum\limits_{{t=2}}^{h} {{p_t}\hbox{max} \left[ {\left( {\sum\limits_{{j=1}}^{m} {{X_{ijt}}} - \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}} } \right),0} \right]} } } \right\}}$$
(2)

where \({a_i}\) is extra energy consumption in restart time.

Since \(\sum\nolimits_{{j=1}}^{m} {{X_{ijt}}}\) and \(\sum\nolimits_{{j=1}}^{m} {{X_{ij(t - 1)}}}\) is bivariate, Eq. (2) could be rewritten as:

$$\sum\limits_{{i=1}}^{r} {{a_i}\left[ {{p_1}\sum\limits_{{j=1}}^{m} {{X_{ij1}}+\sum\limits_{{t=2}}^{h} {{p_t}\left( {\sum\limits_{{j=1}}^{m} {{X_{ijt}}} - \sum\limits_{{j=1}}^{m} {{X_{ijt}}} \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}} } \right)} } } \right]}$$
(3)

According to the Fortet inequality, \(\sum\limits_{{j=1}}^{m} {{X_{ijt}}} \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}}\)could be replaced by \({W_{it}}\). The mathematical characteristics of \({W_{it}}\). could be summarized in Eq. (4).

$$\begin{gathered} {W_{it}} \geq 0 \hfill \\ {W_{it}}=\sum\limits_{{j=1}}^{m} {{X_{ijt}}} \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}} \leq \sum\limits_{{j=1}}^{m} {{X_{ijt}}} \hfill \\ {W_{it}}=\sum\limits_{{j=1}}^{m} {{X_{ijt}}} \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}} \leq \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}} \hfill \\ {W_{it}}=\sum\limits_{{j=1}}^{m} {{X_{ijt}}} \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}} \geq \sum\limits_{{j=1}}^{m} {{X_{ijt}}+} \sum\limits_{{j=1}}^{m} {{X_{ij(t - 1)}}} - 1 \hfill \\ \end{gathered}$$
(4)

The total cost of energy consumption in this time segment could be easily obtained by combination of Eq. (1) and Eq. (3). The expression of total cost could be optimized as Eq. (5).

$$\sum\limits_{{i=1}}^{r} {\sum\limits_{{j=1}}^{m} {\sum\limits_{{t=1}}^{h} {{p_t}{c_i}{X_{ijt}}} } } +\sum\limits_{{i=1}}^{r} {{a_i}\left[ {{p_1}\sum\limits_{{j=1}}^{m} {{X_{ij1}}+\sum\limits_{{t=2}}^{h} {{p_t}\left( {\sum\limits_{{j=1}}^{m} {{X_{ijt}}} - {W_{it}}} \right)} } } \right]}$$
(5)

3.2 Constraint conditions

In the process of resource scheduling, there are constraints in the scheduling scheme which would be discussed in this part.

a. The feasibility of time domain

In the manufacturing process, each manufacturing task is constrained by the time sequence. The antecedent sequence should be finished before the certain task start and the consequent sequence could not process until the task is ready for next procedure. In this condition, there is a constraint of start time and end time for manufacturing processing described as follows:

$$\forall j \in M,\sum\limits_{{i=1}}^{r} {\sum\limits_{{t=1}}^{h} {t{S_{ijt}} \geq {B_j}} }$$
(6)
$$\forall j \in M,\sum\limits_{{i=1}}^{r} {\sum\limits_{{t=1}}^{h} {(t+\Delta {t_j} - 1){S_{ijt}} \leq {F_j}} }$$
(7)

where \({S_{ijt}}\) is also a binary variable. When \({S_{ijt}}=1\), task j is started on resource i in time slot t; On the contrary, task j is not started on resource i in time slot t; \({B_j}\) is the earliest time when task j could be started; \({F_j}\) is the latest time when task j must be finished; \(\Delta {t_j}\) is the time task j would take.

This constraint condition shown in Fig. 2.

Fig. 2
figure 2

Constraint condition of time domain

b. The feasibility of space

To avoid extra energy cost and time cost involved in the course of carriage, customers tend to choose less resource to satisfy their manufacturing requirement. Some procedures should be manufactured in the same resource for technical purpose. It is assumed in this paper that the manufacturing process have been divided to some tasks which could be undertaken by different resources properly in consideration of analysis discussed above and could not be divided further more. As an individual, task must satisfy the constraints of space which is described as follows:

$$\forall j \in M,\forall t \in H,\sum\limits_{{i=1}}^{r} {{X_{ijt}}} \leq 1$$
(8)

c. The feasibility of qualification

The precondition of resource allocation and scheduling is the qualification of resource could satisfy the requirement of customer. This feasibility condition would be described as follows:

$$\begin{gathered} \forall i \in R,\forall j \in M, \hfill \\ \forall t \in H:{N_j} \succ {V_i},{X_{ijt}}=0 \hfill \\ \end{gathered}$$
(9)

where \({N_j}\) is the qualification level of task j; \({V_i}\) is the qualification level of resource i.

d. The feasibility of initial state

Take time domain into consideration, it is known that a task could only be started once. This condition is shown as follows:

$$\forall j \in M,\;\sum\limits_{{i=1}}^{r} {\sum\limits_{{t=1}}^{h} {{S_{ijt}}{\text{=}}1} }$$
(10)

e. The feasibility of termination state

In consideration of the relationship between \({S_{ijt}}\) and \({X_{ijt}}\), task would be finished in \(\Delta t\) from \({t_0}\)(when \({S_{ijt}}=1\)), where \(\Delta t\) is the time that the resource would take in the manufacturing process. The equality described this condition is indicated below.

$$\begin{gathered} \forall i \in R,\forall j \in M, \hfill \\ \forall t \in H,{X_{ijt}}=\sum\limits_{{\tau =\hbox{max} \left\{ {1,t - \Delta t+1} \right\}}}^{t} {{S_{ij\tau }}} \hfill \\ \end{gathered}$$
(11)

4 Optimization solution of resource scheduling

4.1 Priority of resource scheduling problem

After mathematical modeling by constructing the objective function and constraint conditions, resource scheduling problem could be built up as mixed integer linear programming (MILP). MILP could be solved directly by the existing algorithm. However, based on the big data of resources and tasks that involved in the smart manufacturing process, it would be time-consuming in solution processing which is not suitable for the dynamic of smart manufacturing process. Meanwhile the algorithm could not jump over the local optimal solutions in consideration of the big data. To overcome these deficiencies, the priority of tasks are taken into account in resource scheduling.

In Sect. 3.2, the conditions give descriptions of the first four factors effecting on resource scheduling. The preference options would be discussed as a part of priority analysis in this section.

The priority are discussed under three conditions

  1. 1.

    The task which is more time-consuming would be of higher priority, the bigger \(\Delta t\), the higher priority the task would have in resource scheduling;

  2. 2.

    \(\forall j \in M\), after traversal of all feasible schemes which task j could adopt for processing, the number of feasible schemes could be described as \(Nu{m_{PSj}}\). The smaller the value of \(Nu{m_{PSj}}\) is, the higher priority the task would have in resource scheduling. As an exceptional value, when \(Nu{m_{PSj}}=0\), the task would not be taken into consideration in the resource scheduling;

  3. 3.

    When the task has more requirement for environment or scale of resource, it would be of higher priority, which could be described as inclination coefficient.

Considering of these factors effecting on the priority in resource scheduling, priority could be quantified by \(\omega\) which is shown as follows:

$${\omega _j}={E_j}\Delta {t_j}{e^{ - Nu{m_{PSj}}}}$$
(12)

where

\({E_j}\) is the inclination coefficient of task j.

4.2 Optimization algorithm of resource scheduling problem

The optimization heuristic algorithm of resource scheduling proposed in this article is shown in Table 1.

Table 1 The optimization algorithm

5 Simulation and analysis

Simulation results are fully illustrated in this section. For the purpose of our study, it is assumed that there are 3 conditions: 3 tasks with 3 unallocated resources; 6 tasks with 3 unallocated resources; 6 tasks; 10 tasks with 5 unallocated resources. The information of unallocated manufacturing tasks (such as qualification, start-time and end-time) is generated randomly by matlab according to the information of actual working conditions which is shown in Table 2. The same algorithm with the objective function redefined from minimum value to maximum is taken as a comparison as well as the existing Heuristic algorithm.

Table 2 The information of resources

The energy consumption would be presented as the spot price of electricity consumption. The historical data is adopted from Singapore Energy Market Company (March 15, 2016 from 8:00 to 13:30, the sampling frequency is once every half hour). The data is shown as follows:

[41.21, 45.49, 45.63, 47.32, 48.05, 50.00, 50.42, 50.00, 48.06, 47.34, 47.46, 49.47] (Unit: $/MWh).

The results of resource scheduling are shown in Figs. 3, 4 and 5.

Fig. 3
figure 3

The result of 3 tasks and 3 resources

Fig. 4
figure 4

The result of 6 tasks and 3 resources

Fig. 5
figure 5

The result of 10 tasks and 5 resources

Table 3 shows the savings in electricity costs relative to Max. On average, compared with Max, Heurisitic can save 25.6% of expenses in 5 resources scenario, 28.8% in 7 resources scenario and 31.0% in 9 resources scenario. Therefore, it can be concluded that heuristic algorithm can save a lot of electricity costs. In addition, Table 3 shows the similarity of the results of Heurisitic and the algorithm put forward in this paper. The electricity cost of Heurisitic in 5 resources scenario is 4.8% higher than that of our algorithm, 3.8% higher in 7 resources scenario and 5.2% higher in 9 resources scenario. The algorithm proposed in this work performances better in electricity cost than the traditional Heutisitic algorithm. As the number of resources and unallocated tasks grows which involved in the manufacturing scheduling problem, our algorithm saves more cost in electricity expenses. Finally, this chart lists the relevant data in all cases.

Table 3 The Comparison of average electricity cost savings and optimal gap in simulation experiment

To give an overall exposition of the algorithm proposed in this article, the variable range of electricity price in the TOU electricity pricing scheme would be discussed in the scenario of 10 tasks with 5 resources based on different algorithms as comparison. A traditional Heuristic algorithm is introduced to solve the MILP problem. The objective function of this fast Heuristic algorithm is changed as maximum function as another comparison. The variable range of energy price is presented as peak-to-average ratio of price (PAP for short). Different values of PAP are given in Fig. 6. The average values of price in four condition are same, but the peak and valley values of price depend on PAP.

Fig. 6
figure 6

Different values of PAP

With the increase of PAP, the cost in Max algorithm increases while the cost is reduced under the Min algorithm (the fast heuristic algorithm) and the traditional Heuristic algorithm. According to the curve in Fig. 7, the algorithm this article proposed performances better compared with the traditional Heuristic algorithm when the PAP is small. In other words, when the variable range of electricity price is small, the Heuristic algorithm could not give the optimum solution as well as the algorithm this article proposed. No matter how the electricity price changes, the algorithm this article proposed has stable performance.

Fig. 7
figure 7

The performance of different algorithms

6 Conclusions and future work

How to improve the energy-efficiency of resource scheduling is the crux of smart manufacturing. This paper takes the relationship of energy consumption and working condition into account based on the variable electricity price in smart grid. The system model is formed as a mixed integer linear programming problem based on the variable price of electricity and the restart time in manufacturing process, which is more pragmatic in smart manufacturing. To develop the computational efficiency, a fast algorithm based on score ranking is given. Considering of some priorities of resource scheduling problem under three conditions, priority could be quantified. The numerical simulation and result expound the complete process of the method proposed in this paper.

The relation between supply and demand of manufacturing tasks and resources has big influence on the scheduling problem for the purpose of developing the energy-efficiency, which has not been taken into account in this model. Future study is planned to analyze the interactive feedback between the suppliers and demanders of manufacturing resource. The strategy of both suppliers and demanders would have influence on the resource scheduling in real production process.