## 3 Developed Solution Approach
### Solution Representation and Construction
The processing sequences provided in Figure 2 for the sample DMOSP instance can be easily interpreted with the vector of vectors of permutations expressed as \(\mathbb{P}=(\Pi_{w}:w\in\mathcal{W})=(\Pi_{1},\Pi_{2},\Pi_{3},\Pi_{4},\Pi_{5})\), where \(\Pi_{1}=(\pi_{m_{1,1}},\pi_{m_{1,2}})=(\langle E1\rangle,\langle F1\to A1 \to D1\rangle)\), \(\Pi_{2}=(\pi_{m_{2,1}})=(\langle C2\to B2\rangle)\), \(\Pi_{3}=(\pi_{m_{3,1}})=(\langle A3\to C3\to F3\to D3\to E3\rangle)\), \(\Pi_{4}=(\pi_{m_{4,1}},\pi_{m_{4,2}})=(\langle E4\rangle,\langle A4\to B4\rangle)\), and \(\Pi_{5}=(\pi_{m_{5,1}})=(\langle C5\to F5\to B5\to F5\rangle)\), as in [29]. Similar to the upper string, moves or exchanges as part of the search procedures of a metaheuristic must be conducted only on elements within a sub-string, and inter sub-string moves are not allowed. In addition, moves on the machine separators in the form of changing positions also need to be considered. Such moves allow for changing the sets of assigned operations for the machines in a workstation. The decoding procedure of the proposed solution-representation scheme is based on assigning the earliest start time for each operation based on the given permutations by both strings. The pseudo-code in Algorithm 1 outlines its main steps. ```
1:functionVPB ChromosomeDecoder
2:Input:DMOSP instance and a VPB chromosome (\(\mathbb{C}=(\mathcal{S}_{J},\mathcal{S}_{W},\mathcal{P})\))
3:Output:Schedule \(\mathbb{S}\)
4: Construct \(\mathbb{T}=(\tau_{j}:j\in\mathcal{J})\) based on \(\mathcal{S}_{J}\)
5: Construct \(\mathbb{P}=(\Pi_{w}:w\in\mathcal{W})\) based on \(\mathcal{S}_{W}\) and \(\mathcal{P}\), where \(\Pi_{w}=(\pi_{m}:m\in M_{w})\)
6:\(\bar{a}_{m}=a_{m}\quad\forall m\in\mathcal{M}\)
7:\(\bar{r}_{j}=r_{j}\quad\forall j\in\mathcal{J}\)
8:\(\bar{o}_{j}=\) first operation in \(\tau_{j}\;\forall j\in\mathcal{J}\)
9:\(\mathbb{S}=\) empty schedule
10:do
11:\(bContine\) = \(flase\)
12:for every \(m\in\mathcal{M}\),
13:\(\bar{\theta}_{m}=\) first operation in \(\pi_{m}\)
14:if\(\bar{\theta}_{m}\
eq null\)and\(\bar{\theta}_{m}=\bar{o}_{j^{*}}\) for \(j^{*}\in\mathcal{J}\)then
15:\(\bar{o}=\bar{\theta}_{m}\)
16: Set start time of \(\bar{o}\), \(t(\bar{o})=\max(\bar{a}_{m},\bar{r}_{j^{*}})\)
17: Set completion time of \(\bar{o}\), \(c(\bar{o})=t(\bar{o})+d_{j^{*},m}\)
18: Add \(\bar{o}\) to \(\mathbb{S}\)
19:\(\bar{a}_{m}=\bar{r}_{j^{*}}=c(\bar{o})\)
20: Remove \(\bar{o}\) from \(\tau_{j^{*}}\)
21:\(\bar{o}_{j^{*}}=\) first operation in \(\tau_{j^{*}}\) or \(null\) if \(\tau_{j^{*}}\) is empty
22: Remove \(\bar{o}\) from \(\pi_{m}\)
23:\(bContine=true\)
24:break for loop
25:endif
26:endfor
27:while (\(bContine=true\))
28:if\(\pi_{m}\) is empty \(\forall m\in\mathcal{M}\)return\(\mathbb{S}\)
29:else return INFEASIBLE SCHEDULE
30:endfunction
```  
**Algorithm 1** Chromosome decoder for the proposed solution-representation scheme. Algorithm 1 starts by converting the given VPB chromosome into a solution pair, \((\mathbb{T},\mathbb{P})\), as demonstrated earlier. Then, three sets of variables are initialized. For every machine, \(m\), the variable \(\bar{a}_{m}\) refers to the time at which machine \(m\) is ready to process its next operation. For every job, \(j\), the variable \(\bar{r}_{j}\) refers to the time at which the job can start its next operation, while the variable \(\bar{o}_{j}\) refers to the job's next operation to be scheduled,based on its given order of visiting the workstations. Then, the main loop of the algorithm constructs the schedule by iteratively scanning the next operation to be scheduled based on the processing order for each machine. If the next operation to be scheduled for job \(j^{*}\) is found to be the same as the next operation to be scheduled for machine \(m\), that operation is added to the schedule after its start and completion times are determined, and the values of its corresponding machine's \(\bar{a}_{m}\) and job's \(\bar{r}_{j^{*}}\) and \(\bar{\delta}_{j^{*}}\) are updated. The loop continues until all operations are scheduled.