## 2 Materials and Methods
### Mathematical Model  
Symbolic notes:  
\(j\): Job index, \(1\leq j\leq n\).  
\(i\): Processing machine index, \(1\leq I\leq m\).  
\(k\): AGV vehicle index, \(1\leq k\leq a\).  
\(h\): AGV docking position index, \(1\leq h\leq b\).  
\(u^{p}\): The cost of each AGV.  
\(u^{d}\): Unit distance cost of travel distance.  
\(n^{c}\): Number of charging piles.  
\(n\): Number of jobs.  
\(m\): Number of processing machines.  
Figure 2: Illustration of the AGV scheduling problem in the pulsating assembly flow shop.  
\(a\): The number of AGVs.  
\(b\): The number of AGV stops.  
\(n^{ums}\): Number of three-dimensional garage parking spaces.  
\(n^{bf}\): Number of parking spaces in the finished product cache area.  
\(n^{m}\): Number of parking spaces per processing machine.  
\(\alpha\): Unit tardiness penalty.  
\(N=\{\)1,2,\(\ldots\),\(n\) : The set of jobs.  
\(M=\{\)1,2,\(\ldots\),\(m\) : The set of processing machines.  
\(A=\{\)1,2,\(\ldots\),\(a\) }: AGV set.  
Parameters  
\(t^{p}_{j\,:\,j}\): The processing time of workpiece \(j\) on machine \(i\).  
\(t^{m}_{\hbar 1\,\,h2}\): Transport time of vehicles between stops.  
Decision variables:  
\(t^{C}_{j\,:\,j}\): The completion time of job \(j\) on machine \(i\).  
\(t^{C}_{n\,\,m}\): The completion time of the last process of the last job.  
\(x_{ijk}\): If AGV \(k\) transports workpiece \(i\) to machine \(j\), then \(x_{ijk}=1\); otherwise \(x_{ijk}=0\).  
\(s^{k}_{s\,\,i}\): The moving distance of AGV \(k\) from the standby position to the pickup position.  
\(s^{k}_{s\,\,i}\): The moving distance of AGV \(k\) from the pickup position to the delivery position.  
\(t^{k}_{s\,\,i}\): The movement time of AGV \(k\) from the delivery position to the standby position.  
\(t^{k}_{s\,\,i}\): The movement time of AGV \(k\) from the standby position to the pickup position.  
\(t^{k}_{l\,\,l}\): The movement time of AGV \(k\) from the pickup position to the delivery position.  
\(t^{k}_{u\,\,s}\): The movement time of AGV \(k\) from the delivery position to the standby position  
\(\tau_{nrow}\): AGV current position sequence.  
\(\tau_{target}\): AGV target position sequence.  
\(\tau_{standby}\): AGV is currently in a standby state sequence.  
Objective function:  
\[minF(i,j,a)=\alpha\times t^{C}_{n\,\,m}+\sum_{j=1}^{n}\sum_{i=1}^{m}\sum_{k=1} ^{a}x_{ijk}\times u^{d}\times\left(s^{k}_{s\,\,l}+s^{k}_{l\,\,u}+s^{k}_{u\,\,s }\right)+a\times u^{v} \tag{1}\]  
The objective function of the PAFSP_AGV problem is given by Equation (1), which minimizes the sum of production delay cost, AGV transportation cost, and AGV usage cost.  
Constraint conditions:  
\[\sum_{j=1}^{n}\sum_{k=1}^{a}x_{ijk}=n,\forall i\in M \tag{2}\]  
The transportation of all workpieces by AGVs to each processing machine is ensured by Equation (2).  
\[\sum_{i=1}^{m}\sum_{k=1}^{a}x_{ijk}=m,\forall j\in N \tag{3}\]  
The constraint in Equation (3) ensures that each workpiece is moved by AGVs to all processing machines.  
\[\sum_{j=1}^{n}\sum_{i=1}^{m}x_{ijk}\geq 1,\forall k\in A \tag{4}\]  
The constraint in Equation (4) ensures that each AGV participates in processing and transportation.  
\[t^{C}_{j\,\,i}\geq max\Big{\{}t^{C}_{j-1\,\,i}+t^{C}_{j\,\,i-1}\Big{\}}+t^{k}_ {s\,\,l}+t^{k}_{l\,\,u}+t^{p}_{j\,\,i} \tag{5}\]The constraint in Equation (5) limits the completion time of job \(j\) on machine \(i\).  
\[b=n^{c}+n^{wms}+n^{bf}+n^{m} \tag{6}\]  
The constraint in Equation (6) specifies the number of stops for AGVs.