# Transfer Learning Based on Clustering Difference for Dynamic Multi-Objective Optimization
## 2 Background  
### Dynamic Multi-Objective Optimization Problems  
The mathematical form of dynamic multi-objective optimization of DMOPs is as follows [37]:  
\[\left\{\begin{array}{l}Minimize\;\;F(x,t)=\langle f_{1}(x,t),f_{2}(x,t), \ldots,f_{m}(x,t)\rangle\\ s.t.g_{i}(x,t)\leq 0,i=1,2,\ldots,p\\ h_{j}(x,t)=0,j=1,2,\ldots,q\end{array}\right. \tag{1}\]  
where \(x=\langle x_{1},x_{2},\ldots,x_{n}\rangle\) is the decision vector, \(t\) is a time or environment variable. \(f_{i}(x,t):\Omega\rightarrow\;\mathbb{R}(i=1,\ldots,M)\) and \(\Omega=[L_{1},U_{1}]\times[L_{2},U_{2}]\times\ldots\times[L_{n},U_{n}]\) are the lower and upper bounds of the \(i\)-decision variable, respectively. \(g_{i}(x,t)\leq 0,i=1,2,\ldots,p\) is the \(i\)-th inequality constraint, \(h_{j}(x,t)=0,j=1,2,\ldots,q\) is the \(j\)-th equality constraint. The purpose of solving the DMOP is to find a set of solutions in different times or environments, so that all objectives are as small as possible.  
**Definition 1** (Dynamic Decision Vector Domination [38]).: _At time \(t\), the decision vector \(x_{1}\) Pareto dominates another vector \(x_{2}\), expressed as \(x_{1}\succ x_{2}\), if and only if_  
\[\left\{\begin{array}{l}f_{i}(x_{1},t)\leq f_{i}(x_{2},t)\quad\forall i=1, \ldots,m\\ f_{i}(x_{1},t)\leq f_{i}(x_{2},t)\quad\exists i=1,\ldots,m.\end{array}\right. \tag{2}\]  
**Definition 2** (Dynamic Pareto-Optimal Set (DPS) [39]).: _If a decision vector \(x^{*}\) at time \(t\) satisfies_  
\[DPS=\left\{x^{*}\in\Omega|\exists x\in\Omega,x\succ_{t}x^{*}\right\} \tag{3}\]  
_For a fixed time window \(t\) and a decision vector \(x^{*}\in\Omega\), a decision vector \(x^{*}\) is said to be non-dominant if no other decision vector \(x\in\Omega\) dominates \(x^{*}\), and the dynamic Pareto-optimal set (DPS) is the set of all non-dominated solutions in the decision space._  
**Definition 3** (Dynamic Pareto-Optimal Front (DPF) [39]).: _DPF is the set of the corresponding objective vectors of the DPS, and_  
\[DPF=\left\{y^{*}|y^{*}=F(x^{*},t),x^{*}\in DPS\right\} \tag{4}\]  
Algorithm 1 is the main framework of DMOEA. After initializing the current generation of the population, the algorithm employs several strategies to respond to the environment when it changes. The initialized population is updated with the effective strategy, and the time window t is incremented by 1 to represent the next environmental change. In the next step, the i-th multi-objective problem is optimized for generation using a multi-objective evolutionary algorithm. SMOEA uses the updated population as the initial population. Finally, repeat the process if the stopping condition is not met.  
```
Input: The number of generations: \(g\); the time window: \(t\); Output: Optimal solution \(x^{*}\) at every time step;  Initialize population \(POR_{0}\); While stop criterion is not met do if change is detected, then  Update the population using some strategies: reuse memory, tune parameters, or predict solutions; \(t=t+1\); endif Optimize population with an MOEA for one generation and get optimal solution \(x^{*}\); endwhile \(g=g+1\); return\(x^{*}\)
```  
**Algorithm 1**The main frame of DMOEA.