# Multi-Class Freeway Congestion and Emission Based on Robust Dynamic Multi-Objective Optimization
## 3 Robust Dynamic Multi-Objective Optimization Problem in Freeway Traffic Congestion and Emission
### Robust Dynamic Nondominated Sorting Multi-Objective Genetic Algorithm RDNSGA-III
Specifically, the execution steps of the DFCM-RDNSGA-III algorithm are as follows:  
Step 1: Initialize the environment detection parameter, set the environmental detection counter \(t=1\), the maximum environmental detection times \(t_{max}\), and set \(bestpop_{final}=\varnothing\) to store the current environment information and corresponding optimal solutions. Step 2: Initialize the optimization process of the algorithm, or if \(t>1\) and the environment has changed, go to Step 3. Otherwise, copy the current population \(P_{1}\), and go to Step 11. Step 3: Initialize algorithm parameters, including the maximum iterations \(Gen_{max}\), the number of population \(pop\), the current generation \(gen=0\), the population \(P_{0}=\{x(1),\ldots,x(pop)\}\),  
Figure 1: Flow chart of the algorithm DFCM-RDNSGA-III. the nondominated solution set \(S_{t}=\varnothing\), the archive set \(D_{t}=\varnothing\), and the reference point set \(Z^{s}=\varnothing\). Step 4: Recombine, crossover and mutate the population \(P_{t}\) to generate the offspring population \(Q_{t}\), \(Q_{t}=Recombination(P_{t})+Mutation(P_{t})\). Step 5: Randomly select half of the solutions as the set \(D_{past}\) from the current archive set \(\{D_{t}\}\). Combine the parent population \(P_{t}\) and offspring population \(Q_{t}\) to generate the combined population \(R_{t}\), \(R_{t}=P_{t}\cup Q_{t}\cup D_{past}\). Step 6: Perform the nondominated sorting operation on the combined population \(R_{t}\), and generate the nondominated solution set \(R_{t}=\{F_{1},\ F_{2},\ F_{3},\ \ldots,F_{l},\ldots\}\). Perform nondominated sorting on the nondominated solution set \(R_{t}\) to obtain the set \(U_{t}\), \(U_{t}=\text{Non-dominated-sort}(R_{t})\), where \(F_{1},\ F_{2},\ F_{3},\ \cdots,F_{l},\cdots\) denotes the nondominated solution sets with nondomination level \(1,2\ldots,1,\ldots\), respectively, \(F_{1}\succ F_{2}\succ F_{3}\succ\cdots\succ F_{l}\succ\cdots\). Step 7: Generate nondominated solution set \(S_{t}\). Step 8: Generate the next generation population \(P_{t+1}\). If the number of solutions in \(S_{t}\) is exactly equal to \(N\), i.e., \(|S_{t}|=N\), the next generation of parent population \(P_{t+1}\) is generated directly, \(P_{t+1}=S_{t}\), and \(t=t+1\), go to Step 2; otherwise, construct \(P_{t+1}\) with \(F_{1},F_{2},\ldots,F_{l-1}\), i.e., \(P_{t+1}=\cup_{j=1}^{l-1}F_{j}\). The remaining \(K\) solutions need to be selected from the layer \(F_{l}\) according to the niche count, i.e., the number of solutions that the population \(P_{t+1}\) needs to be selected from \(F_{l}\) is \(K=N-|P_{t+1}|\). Step 9: Generate reference points according to the density fuzzy c-means clustering algorithm DFCM and construct the reference point set \(Z^{r}\). The specific process is described in sub-algorithm 1. Step 10: Associate the solutions in the solution set \(S_{t}\) with the reference points. Calculate the niche count of each reference point \(j\) in the reference point set \(Z^{r}\), select elements according to the niche count to construct the population \(P_{t+1}\), and select \(K\) solutions from \(F_{l}\) as set \(\{rest\}\) to join the population \(P_{t+1}\). The specific process is shown in sub-algorithm 2. Step 11: Reserve the existing population, randomly take out half of the solutions and store them in the archive set \(D_{t+1}\). Let \(gen=gen+1\). If \(gen<Gen_{max}\), return to step 4. If \(gen=Gen_{max}\), output the final solution set \(P_{final}\), and go to Step 12. Step 12: Save the current environment information and the final optimal solution \(P_{final}\) to the optimal solution set \(bestpop\), and add it to \(bestpop_{final}(t)\). Let \(t=t+1\); if \(t<t_{max}\), go to Step 2. If \(t=t_{max}\), output the final optimal solution set. (1) **Sub-algorithm 1**: Calculate the cluster centers of \(F_{l}\) and generate reference point set \(Z^{r}\) according to the algorithm DFCM. Step 1: Initialize the radius of neighborhood \(\varepsilon\), and the minimum number of samples \(MinPts\).