## 3 Proposed Approach  
This study proposes a comprehensive methodology to facilitate P2P energy trading among households with PV installations within a microgrid in South Korea. The primary objective of this approach is to integrate a progressive rate system to minimize costs for consumers, maximize revenue for prosumers, and optimize the overall usage of locally generated energy. The monthly energy generation and demand for three households for a 12-month period are considered. The energy cost calculation follows a progressive rate system, as shown in Table 1, where the unit price increases with higher consumption levels. The proposed approach involves employing MOEA/D to optimize the P2P energy trading framework. MOEA/D is a powerful approach used to solve multi-objective optimization problems. Unlike traditional evolutionary algorithms, MOEA/D decomposes a multi-objective problem into a set of single-objective sub-problems, each associated with a specific weight vector that represents a trade-off among objectives. This allows for a more efficient search process as it focuses on optimizing multiple objectives. The selection of MOEA/D for this study is based on its strengths in handling multi-objective optimization in complex environments, unlike traditional multi-objective algorithms such as NSGA-II, which focus on Pareto-front optimization without decomposition. MOEA/D comprises structured neighborhood sharing and crossover mutation processes that enable efficient exploration of trade-offs, making it ideal for optimizing multiple conflicting objectives in a regulated, multi-level pricing context. In MOEA/D, each individual in the population is represented by a decision vector. The algorithm maintains a population of individuals and evolves them through selection, crossover, and mutation operators. Each individual is evaluated based on its performance across multiple objectives, and a neighborhood structure is used to share information among individuals, which enhances convergence toward the Pareto front. The weight vectors can be generated to ensure a diverse representation of the objectives. A common approach is to distribute the weights uniformly in the objective space. If \(\lambda_{i}\) represents the weight vector for sub-problem \(i\), it can be defined as follows:  
\[\lambda_{i}=\left(\frac{1}{N}(i-1),\frac{1}{N}(N-i)\right),\quad\forall i=1,2, \ldots,N. \tag{1}\]  
The fitness of each individual can be evaluated based on its objectives. For an individual \(x\) and its associated weight vector \(\lambda\), the fitness can be computed as  
\[f_{i}(x)=\lambda_{i}^{T}f(x)\quad\text{for }i=1,2,\ldots,M. \tag{2}\] \begin{table}
\begin{tabular}{c c c} \hline \hline  & **Summer Season (1 July\(\sim\)31 August)** & \\ \hline
**Consumption Range** & **Demand charge (KRW/household)** & **Energy charge (KRW/kWh)** \\ \hline
1\(\sim\)300 kWh & 910 & 112.0 \\
301\(\sim\)450 kWh & 1600 & 206.6 \\
451 kWh\(\sim\) & 7300 & 299.3 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Electricity charges for different seasons. The neighborhood structure can be defined based on the distance between weight vectors. Two weight vectors \(\lambda_{i}\) and \(\lambda_{j}\) are considered neighbors if they are the closest in terms of Euclidean distance, and they are considered as  
\[d(i,j)=||\lambda_{i}-\lambda_{j}||^{2}. \tag{3}\]  
Crossover can be performed using techniques like blend crossover:  
\[y=(1-\alpha)x_{1}+\alpha x_{2}, \tag{4}\]  
where \(x_{1}\) and \(x_{2}\) are parent solutions and \(\alpha\) is a parameter controlling the spread of the offspring. Mutation can be defined as  
\[y=x+\text{N}(0,\sigma), \tag{5}\]  
where \(\text{N}(0,\sigma)\) represents Gaussian noise added to the individual \(x\). The algorithm proceeds through several generations, where in each generation, individuals are evaluated, offspring are generated, and non-dominated solutions are updated. The weight vectors are typically distributed uniformly to ensure a diverse representation of the Pareto front. This process is expressed in Algorithm 1.