## 3 ICC Algorithm Formulations  
The relationship between the customer costs and the load power can be obtained by the fitting method as a quadratic function:  
\[F_{i}(P_{Ri})=c_{i}+b_{i}P_{Ri}+a_{i}P_{Ri}^{2}, \tag{1}\]  
where \(F_{i}(P_{Ri})\) denotes the costs of the customer \(i\) and \(P_{Ri}\) denotes the output power of the customer \(i\). The total costs of customers participating in the DLC are written as following:  
\[F_{total}=\sum_{i=1}^{n}F_{i}(P_{Ri}), \tag{2}\]  
with the power balance constraint and customer power capacity limit constraint:  
\[P_{D}-\sum_{i=1}^{n}P_{Ri}=0, \tag{3}\]  
\[P_{Ri,\text{min}}\leq P_{Ri}\leq P_{Ri,\text{max}}, \tag{4}\]  
where \(P_{D}\) denotes the objective load power of the DLC. The objective of optimal power allocation is that the economic efficiency can be improved under the conditions of Equations (3) and (4). Figure 1: The overall flowchart of the proposed method. In the ICC algorithm, the definition of IC for each customer is defined as following:  
\[I_{F,i}=\frac{\partial F_{i}(P_{Ri})}{\partial P_{Ri}}=\lambda_{i},\quad i=1,2, \ldots,n. \tag{5}\]  
Selecting IC (also known as \(\lambda\)) as the consensus variable, and according to the first-order discrete consensus algorithm [21], the updating of \(\lambda\) for the non-dominated nodes can be formulated as following:  
\[\lambda_{i}[k+1]=\sum\limits_{j=1}^{n}d_{ij}\lambda[k],\quad i=1,2,\ldots,n, \tag{6}\]  
where \(d_{ij}\) is the \((i,j)\) entry of the row-stochastic matrix \(D_{n}\). It can be known from Equation (5) that the current power information of each customer can be obtained by the IC of the customer as following:  
\[P_{Ri}=\frac{\lambda_{i}-b_{i}}{2a_{i}}. \tag{7}\]  
In order to satisfy the power balance constraint (3), define \(\Delta P\) to indicate the mismatch between the objective load power of the DLC and the total output power of the customers as following:  
\[\Delta P=P_{D}-\sum\limits_{i=1}^{n}P_{Ri}. \tag{8}\]  
After introducing the mismatch, the update rule for the customer located at the dominant node is obtained as following:  
\[\lambda_{i}[k+1]=\sum\limits_{j=1}^{n}d_{ij}\lambda_{j}[k]+\varepsilon\Delta P,\quad i=1,2,\ldots,n, \tag{9}\]  
where \(\varepsilon\) is the convergence coefficient, which controls the convergence speed of the dominant node. The increases or decreases of \(\lambda\) will follow the sign of \(\Delta P\). If \(\Delta P>0\) (\(P_{D}>P_{R}\)), it means that the DLC needs to reduce the objective load power, so the current \(\lambda\) should be decreased; and vice versa. By following the update rules described by Equations (6) and (9), all the customers are able to converge to a common IC asymptotically. According to the Equations (4) and (7), the customer power capacity limit constraint also needs to be considered as following:  
\[\left\{ \begin{array}{ll}\lambda_{i}=\lambda_{i\_lower}&\quad\mbox{when} \quad\frac{\lambda_{i}-b_{i}}{2a_{i}}\leq P_{Ri,\min}\\ \lambda_{i}[k+1]=\sum\limits_{j=1}^{n}d_{ij}\lambda_{j}[k],&\quad\mbox{when} \quad P_{Ri,\min}\leq\frac{\lambda_{i}-b_{i}}{2a_{i}}\leq P_{Ri,\max}\\ \lambda_{i}=\lambda_{i\_upper},&\quad\mbox{when}\quad\frac{\lambda_{i}-b_{i}} {2a_{i}}\geq P_{Ri,\max}\end{array} \right.. \tag{10}\]  
Equations (5)-(9) are mathematical representations of the ICC algorithm, Equation (5) is used for consensus variable calculation, and Equations (6) and (9) represent consensus algorithm iterative processes. Figure 2 is a flowchart which represents the procedure of the ICC algorithm. The dominant node needs to make an adjustment for the power balance constraints as shown in Equation (3). If the total output power of customers reaches the objective load power of the DLC, the consensus algorithm is stopped, and each customer outputs power according to the current information. Otherwise, the consensus algorithm is continued. Thus, the optimal power allocation of customers can be realized based on the ICC algorithm [11].