## 2 Problem Description
\(EC_{1}\) is the energy consumption of all manufacturing machines during processing, and \(EC_{1}\) can be calculated as  
\[EC_{1}=\sum_{i=1}^{m}\sum_{j=1}^{|S_{i}|}\int_{0}^{C_{max}}\sum_{l=1}^{d}E_{ijl }y_{ijl}(t)dt \tag{1}\]  
where \(C_{max}\) is the maximum completion time; \(E_{ijl}\) indicates the energy consumption per unit time when \(M_{ij}\in S_{i}\) works at speed \(v_{l}\); and \(y_{ijl}(t)\) is a binary variable, where \(y_{ijl}(t)=1\) if the manufacturing machine \(M_{ij}\in S_{i}\) is in the working mode at time \(t\); otherwise, \(y_{ijl}(t)\) is equal to 0. \(EC_{2}\) is the energy consumption of all manufacturing machines during the stand-by period, and \(EC_{2}\) can be calculated as  
\[EC_{2}=\sum_{i=1}^{m}\sum_{j=1}^{|S_{i}|}\int_{0}^{C_{max}}\sum_{l=1}^{d} \mathrm{SE}_{ij}z_{ij}(t)dt \tag{2}\]  
where \(SE_{ij}\) indicates the energy consumption per unit time when \(M_{ij}\in S_{i}\) is in the stand-by mode; and \(z_{ijl}(t)\) is a binary variable, where \(z_{ij}(t)\) is 1 if \(M_{ij}\in S_{i}\) is in the stand-by mode at time \(t\); otherwise, \(z_{ij}(t)=0\). \(EC_{3}\) is the energy consumption of an assembly machine during the assembly process, and \(EC_{3}\) can be calculated as  
\[EC_{3}=\sum_{k=1}^{n}\int_{0}^{C_{max}}AE_{k}u_{k}(t)dt \tag{3}\]  
where \(AE_{k}\) is the energy consumption per unit time when assembly machine \(M_{a}\) is in the assembly mode; and \(u_{k}(t)\) is a binary variable, where \(u_{k}(t)=1\) if the assembly machine \(M_{a}\) is in working mode at time \(t\); otherwise, \(u_{k}(t)=0\). \(EC_{4}\) is the energy consumption of an assembly machine during the idle time, and \(EC_{4}\) can be calculated as  
\[EC_{4}=\int_{0}^{C_{max}}ASE\mu_{k}(t)dt \tag{4}\]where \(ASE\) is the energy consumption per unit time when \(M_{a}\) is in the stand-by mode; and \(\mu_{k}(t)\) is a binary variable, where \(\mu_{k}(t)=1\) if \(M_{a}\) is idle at time \(t\); otherwise, \(\mu_{k}(t)=0\). The EAHFSP contains three sub-problems: the scheduling sub-problem, for determining the processing and operation sequence for components and products; the machine assignment sub-problem, for allocating suitable machines for each operation; and the speed selection sub-problem, for selecting an appropriate speed for the selected machine. The EAHFSP aims to minimize the makespan and TEC simultaneously. The mathematical model is given as follows  
\[f_{1}=C_{max}=\underset{k=1,2,\cdots,n}{max}\{C_{k}\} \tag{5}\]  
\[f_{2}=TEC=EC_{1}+EC_{2}+EC_{3}+EC_{4} \tag{6}\]  
subject to  
\[a_{ri}\geq 0,\qquad\qquad\forall r,i \tag{7}\]  
\[b_{ri}-a_{ri}=\sum_{j=1}^{|\mathbb{S}_{i}|}\sum_{l=1}^{d}p_{rijl}\times y_{rijl },\qquad\forall r,i \tag{8}\]  
Figure 1:0  
Figure 1:1  
Figure 1:2  
Figure 1:3  
Figure 1:4  
where \(C_{k}\) is the completion time of product \(P_{k}\), which is the finishing time of the final assembly operation; \(a_{ri}\) indicates the starting time of processing stage \(i\) for component \(PP_{r}\); \(b_{ri}\) is the finishing time of processing stage \(i\) for component \(PP_{r}\); \(aa_{k}\) indicates the starting time of the assembly operation on product \(P_{k}\); and \(y_{rijl}\) is a binary variable, where \(y_{rijl}=1\) if \(M_{ij}\in S_{i}\) is working at speed \(v_{i}\); otherwise, \(y_{rijl}=0\). \(X_{rr^{\prime}ij}\in\{0,1\}\), where \(X_{rr^{\prime}ij}=1\) if component \(r\) is processed before \(r^{\prime}\) on \(M_{ij}\); and \(X_{kk^{\prime}}\in\{0,1\}\), \(X_{kk^{\prime}}=1\) if product \(P_{k}\) is assembled before \(P_{k^{\prime}}\) on \(M_{a}\). Objective Function (5) is the makespan, and Objective Function (6) indicates the total energy consumption during the manufacturing and assembly process.