## 3 Algorithm Description
### Amending
If \(\pi_{\Delta}[n]\) is disabled, we move \(\pi_{\Delta}[n]\) and \(\Upsilon[n]\) to the end of \(\pi_{\Delta}\) and \(\Upsilon\), respectively. We repeat this process until we find an enabled transition. Then, we fire the enabled transition, generate a new marking \(M_{n}\) (i.e., \(M_{n-1}[\pi_{\Delta}[n]>M_{n}\)), and move on to the next detection. After performing the iteration in Lines 4\(-\)10, we obtain a feasible \(\pi_{\Delta}{}^{*}\) and a new \(\Upsilon^{*}\), and we have \(M_{0}[\pi_{\Delta}{}^{*}>M_{E}\). After converting \(\pi_{\Delta}{}^{*}\) to a task permutation N*, we obtain a feasible individual \(\Delta^{*}=\{\aleph^{*};\ \Upsilon^{*}\}\) corresponding to a solution satisfying the precedence constraints. The effectiveness and computational complexity of Algorithm AM are established by the following proposition. Proposition 1: _Algorithm AM is effective and has polynomial time complexity._  
Proof of Proposition 1.: In (\(N,M_{0}\), \(\theta\)), each transition \(t_{q,h}\) can be fired exactly once under some state \(M\) before reaching the final marking \(M_{E}\). This means that there is at least one enabled transition under \(M\). Algorithm AM can always find an enabled transition through its iteration. Finally, \(M_{E}\) is reached, and a feasible transition sequence \(\pi_{\Delta}{}^{*}\) is obtained (i.e., \(M_{0}[\pi_{\Delta}{}^{*}>M_{E}\)). Thus, the solution \(\Delta^{*}\) generated from \(\pi_{\Delta}{}^{*}\) is feasible. The entire algorithm repeats \(v\) times. In the \(n\)-th iteration, at most (\(v-n\)) transitions are checked. Thus, the complexity of Algorithm AM is \(O(v^{2})\), i.e., Algorithm AM is polynomial. \(\square\)  
Example 3: _Figure 7 depicts the amending process of individual \(\Delta=\{\aleph;\ \Upsilon\}\) in Figure 4. The amended (\(N,M_{0}\), \(\theta\)) and transition sequence \(\pi_{\Delta}=t_{1,1}t_{2,8}t_{1,4}t_{1,5}t_{1,2}t_{1,3}t_{2,7}t_{1,6}\) are shown in Figure 7a. Starting with \(M_{0}\), we fire the enabled transition \(t_{1,1}\) and obtain a new marking \(M_{1}\) (i.e., \(M_{0}[t_{1,1}>M_{1}\)), as shown in Figure 7b. The fired transitions are marked in green. However, as the process continues, the second transition \(t_{2,8}\) becomes disabled under \(M_{1}\), shown in Figure 7c. Therefore, we move \(t_{2,8}\) and its corresponding task 2 to the end of \(\pi_{\Delta}\) and \(\Upsilon\), respectively, resulting in a new transition sequence \(\pi_{\Delta}{}^{{}^{\prime}}=t_{1,1}t_{1,4}t_{1,5}t_{1,2}t_{1,3}t_{2,7}t_{1,6}t _{2,8}\) and \(\Upsilon^{*}=\Diamond 2\), 5, 4, 1, 5, 7, 2\(>\). We then fire the next enabled transition \(t_{1,4}\) in \(\pi_{\Delta}{}^{{}^{\prime}}\) and obtain marking \(M_{2}\) (i.e., \(M_{1}[t_{1,4}>M_{2}\)), as shown in Figure 7d. After sequentially firing all remaining transitions, we reach the final marking \(M_{E}\), as shown in Figure 7e. Therefore, \(\pi_{\Delta}{}^{{}^{\prime}}\) is a feasible transition sequence from \(M_{0}\) to \(M_{E}\). Based on \(\pi_{\Delta}{}^{{}^{\prime}}\) and \(\Upsilon^{*}\), we can obtain a feasible individual \(\Delta^{*}=\{\aleph^{*};\ \Upsilon^{*}\}\), where \(\aleph^{*}=\Diamond 4\), 5, 2, 3, 7, 6, 8\(>\) and \(\Upsilon^{*}\) = <3, 2, 5, 4, 1, 5, 7, 2\(>\)._