<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Energy Res.</journal-id>
<journal-title>Frontiers in Energy Research</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Energy Res.</abbrev-journal-title>
<issn pub-type="epub">2296-598X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1078938</article-id>
<article-id pub-id-type="doi">10.3389/fenrg.2022.1078938</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Energy Research</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Distributed algorithm without iterations for an integrated energy system</article-title>
<alt-title alt-title-type="left-running-head">Tan and Liu</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fenrg.2022.1078938">10.3389/fenrg.2022.1078938</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Tan</surname>
<given-names>Jiaming</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/1731391/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Liu</surname>
<given-names>Xinying</given-names>
</name>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2068137/overview"/>
</contrib>
</contrib-group>
<aff>
<institution>Faculty of Electrical and Control Engineering</institution>, <institution>Liaoning Technical University</institution>, <addr-line>Huludao</addr-line>, <country>China</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1056181/overview">Fengji Luo</ext-link>, The University of Sydney, Australia</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2076348/overview">Yinliang Xu</ext-link>, Tsinghua University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1122261/overview">Dazhong Ma</ext-link>, Northeastern University, China</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Xinying Liu, <email>lxy66613998452017@163.com</email>
</corresp>
<fn fn-type="other">
<p>This article was submitted to Smart Grids, a section of the journal Frontiers in Energy Research</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>20</day>
<month>01</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2022</year>
</pub-date>
<volume>10</volume>
<elocation-id>1078938</elocation-id>
<history>
<date date-type="received">
<day>24</day>
<month>10</month>
<year>2022</year>
</date>
<date date-type="accepted">
<day>30</day>
<month>11</month>
<year>2022</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2023 Tan and Liu.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Tan and Liu</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>Existing energy management methods for integrated energy systems are mostly in distributed communication and computation now, need a large number of iterations, and each time of iteration needs lots of communication and computation. For this reason, on one hand, the iteration may cause energy-delay. On the other hand, iteration will significantly increase the communication and computation burden. The integrated energy systems contain a variety of devices and energy resources (including renewable energy resources), so the communication and computation burden is already very high. If the communication and computation cannot be solved very well, the cost functions of each device need to be much easier to ensure the operation of the system and their systematic error will be much larger. For this reason, the result of optimization will be much worse because of the accuracy of cost functions. The greatest challenge of this issue is to establish an algorithm without iteration. For handling this issue, first, we adopt the theoretical demonstration to prove that if all prices of all devices are the same, the optimization will be realized and the instantaneous price is the one-order derivative. (we assume the relationship between the operating cost and the energy flow of each device as the convex cost functions.) Second, we reshape all cost functions. Third, we change the function to the total of the foregoing functions in the directed annular path and adopt the total function of the hole system to solve the energy price. Last, we use the price to ensure their operating condition. Our theoretical demonstration has already proved the optimization, convergence, the plug and play performance, scalability, and the emergency scheduling performance of the annular partial differential algorithm (APDA).</p>
</abstract>
<kwd-group>
<kwd>annular communication</kwd>
<kwd>distributed algorithm</kwd>
<kwd>integrated energy system</kwd>
<kwd>iteration</kwd>
<kwd>optimization</kwd>
<kwd>we-energy</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>Recently, there were several papers on the concept of &#x201c;integrated energy system (IES)&#x201d; for handling problems related to utilizing sustainable and environmentally friendly renewable energy resources, renovating the energy utilization model, enhancing energy management, and securing system control (<xref ref-type="bibr" rid="B26">Wang et al., 2021</xref>; <xref ref-type="bibr" rid="B35">Zhou et al., 2021</xref>; <xref ref-type="bibr" rid="B5">Chen et al., 2022</xref>). The most prominent development regarding the IES is a framework that includes various energy types. During the transition from traditional single-energy systems to an IES, the most important issue that should be revisited is how to maximize social profits (<xref ref-type="bibr" rid="B17">Liu et al., 2022a</xref>). Accordingly, the energy management issue, which is one of the fundamental issues in power systems (<xref ref-type="bibr" rid="B32">Yang et al., 2022</xref>), should be revisited to achieve the envisioned IES concept.</p>
<p>Fundamentally, energy management is formulated as an optimization problem. Numerous methods have been adopted to address the optimization problem, which can be classified into two main categories: centralized approaches (CAs) and distributed approaches (DAs). The CA optimally dispatches various energy resources in different areas by running an integrated economic dispatch center over the entire IES. However, an IES is typically composed of too many distributed areas that may be operated by various energy operators; therefore, a centralized solution for the IES is impractical owing to both technical and administrative reasons. In addition, the CA depends on a strong centralized control center and numerous communication paths from that center, which can sharply increase computational costs and the likelihood of single-point failures. Moreover, the CA cannot ensure user privacy. To address these shortcomings, with the development of multi-agent systems, numerous scholars have adopted DAs to replace CAs. The design of a DA is inspired by the multi-agent theory and edge computing methods in the fields of computing and blockchain (<xref ref-type="bibr" rid="B28">Wei et al., 2021</xref>; <xref ref-type="bibr" rid="B7">Feng et al., 2022a</xref>; <xref ref-type="bibr" rid="B6">Feng et al., 2022b</xref>; <xref ref-type="bibr" rid="B18">Liu et al., 2022b</xref>; <xref ref-type="bibr" rid="B21">Mao et al., 2022</xref>; <xref ref-type="bibr" rid="B27">Wei et al., 2022</xref>). DAs aim to achieve multi-area integrated optimality in a distributed and coordinated fashion without revealing the private information regarding each area. Compared with CAs, DAs exhibit better robustness (<xref ref-type="bibr" rid="B29">Xing et al., 2015</xref>; <xref ref-type="bibr" rid="B12">Hua et al., 2018</xref>; <xref ref-type="bibr" rid="B30">Xu et al., 2019</xref>), scalability (<xref ref-type="bibr" rid="B2">Binetti et al., 1720</xref>; <xref ref-type="bibr" rid="B13">Huang et al., 2022</xref>; <xref ref-type="bibr" rid="B14">Kirli et al., 2022</xref>), resilience (<xref ref-type="bibr" rid="B1">Abessi and Jadid, 2021</xref>; <xref ref-type="bibr" rid="B8">Guo et al., 2021</xref>; <xref ref-type="bibr" rid="B22">Mishra et al., 2022</xref>), and privacy protection (<xref ref-type="bibr" rid="B36">Zhou et al., 1667</xref>), (<xref ref-type="bibr" rid="B37">Zhou et al., 2020</xref>). <xref ref-type="bibr" rid="B33">Zhang et al. (2017</xref>) proposed a distributed consensus algorithm that can be applied to energy management in a fully distributed manner for the first time. The novel distributed algorithm introduced in <xref ref-type="bibr" rid="B4">Chen et al., (2015</xref>) does not require projection and can control the underlying power flow. In addition, many scholars have integrated event-triggered theory with DAs to reduce redundant communications in the IES. <xref ref-type="bibr" rid="B25">Tan et al. (2021</xref>) and <xref ref-type="bibr" rid="B24">Tan (2022</xref>) investigated asynchronous communication DA systems with partial inputs. <xref ref-type="bibr" rid="B16">Liu et al. (2021</xref>) examined an event-triggered system with bipartite consensus-quantized control. From these studies, we can conclude that the DA is better suited to energy management because it disintegrates global computation into local computation and assigns the energy management problem to the energy subsystem and distributed energy device, which uses only local communication, computation, and control to achieve optimal operation. <xref ref-type="bibr" rid="B20">Ma et al. (2021</xref>) proposed a three-step-based graph partitioning algorithm to divide a power network into several groups according to the characteristics of power flow to adjust bus among the groups. <xref ref-type="bibr" rid="B10">He et al. (2017</xref>) studied the group work and big data and combined the power flow analysis and fault detection for the first time. However, the fault detection does not only fit for electrical power system, but the pipeline network also needs fault detection. <xref ref-type="bibr" rid="B11">Hu et al. (2022</xref>) studied the fault detection of the small leak location for intelligent pipeline. <xref ref-type="bibr" rid="B19">Ma et al. (2022</xref>) proposed a dual-predictive control method to handle the error issue. <xref ref-type="bibr" rid="B3">Chang et al. (2021</xref>) had already modeled the network constraint to avoid the power flow violating the limit.</p>
<p>The main idea behind the existing multi-agent theory and edge computing studies is that to optimally control a complex and large industrial system, the large system should be divided into small systems, which should be appropriately adopted to optimally control the large system. This approach is similar to dividing the smart grid into microgrids and dividing the multi-agent system into agents. Therefore, the IES must be divided as well. For handling this issue, <xref ref-type="bibr" rid="B31">Yang et al. (2020</xref>) proposed the concept of &#x201c;we-energy&#x201d; to divide an IES. As a subunit of the IES, we-energy is a small independent energy system coupled with various energy sources. These small energy systems are connected to each other through energy ports to form an IES. In addition, we-energies are significantly different from microgrids because they are deeply coupled systems of information, physics, energy, and economics. We-energy can play various roles in an IES, including but not limited to energy manufacturing, energy consumption, energy conversion hubs, and energy store hubs. In summary, this study adopts we-energy as a subsystem of IESs.</p>
<p>Although DA applications in IESs have already been developed significantly, these existing methods still have many limitations. First, an excessive number of iterations can aggravate the communication and computational burden. The reason for this is that the DA only disperses the communication and computational burden from the control center to the hole system; however, the total communication and computational burden remains exceedingly large because the existing DA approaches require iterations on many occasions. If the iterations waste too much time, the communication and computation costs become significant and the time wasted by the iteration may cause an energy delay. Second, the adoption of DAs in energy management is dependent predominantly on assumptions regarding the operating conditions of devices in an IES and well-tuned algorithm parameters. However, tuning certain parameters is extremely challenging. Third, except for several finite-step distributed algorithms, (<xref ref-type="bibr" rid="B34">Zhao et al., 2014</xref>); (<xref ref-type="bibr" rid="B9">Guo et al., 2017</xref>), most traditional decomposition methods and distributed algorithms are asymptotically convergent, resulting in a trade-off between the accuracy of a given algorithm and number of iterations (<xref ref-type="bibr" rid="B15">Lai et al., 2017</xref>).</p>
<p>Although existing DAs can disperse the communication and computation burden from the control center to every we-energy, the communication and computation burden is still in the IES. In addition, compared with traditional electrical power systems, the IES contains more energy types, more energy resources, and more energy loads. So the complexity of the IES is much higher than that of traditional electrical power systems, which will significantly increase the communication and computation burden. Also, that burden will do great harm to the IES. On one hand, if that burden is too large, the IES needs to consume enormous costs on communication and computation. Traditional electrical systems only dispatch energy costs and ignore communication and computation costs. However, the communication and computation cost is also very high, especially in complicated IESs. On the other hand, too much communication and computation will consume too much time. In a power&#x2013;heat&#x2013;gas IES, the time scale of power is much shorter than that of heat and gas. However, the complex of heat and gas in energy quality ( temperature of the water and calorific value of gas) and energy transmission is much higher than that of power. In the traditional electrical power system, we only need to dispatch power, so energy management is not very slow so that power may not be a delay. However, in the IES, we need to communicate and compute power, heat, and gas. So, the power time delay will happen more frequently.</p>
<p>To overcome these challenges, it is necessary to develop a distributed algorithm without iterations as it can considerably reduce communication and computational costs, has better accuracy, and is insensitive to parameters and initial values. First, each iteration needs to communicate and compute, and an iteration usually takes significant time. Consequently, the communication and computational costs in an algorithm with iterations is one hundred times less than those of an algorithm without iterations. Second, traditional algorithms with iterations are asymptotically convergent, which results in a trade-off between accuracy and number of iterations. Because the IES is a large system, a few unfit parameters can result in a strong energy mismatch. Third, the algorithms with iterations are sensitive to parameters and initial values because the result may lead to oscillation or divergence. However, the algorithm without iterations does not have this disadvantage.</p>
<p>To address these problems, we propose an algorithm without iterations called the annular partial differential algorithm (APDA) in this study. First, we depict a theoretical demonstration to prove that if all devices are priced the same, optimization can be realized, and instantaneous price becomes a one-order derivative. Second, we reshape all cost functions. We set the independent variable to the first derivative and dependent variable to the energy value. Third, we changed the function to the total of the foregoing functions in the directed annular path. Each agent must be computed only once. Fourth, we adjusted the total function of the hole system to set the energy price. Finally, we transmit the energy prices to all devices, and the devices can use this price point to ensure their operating conditions. Our theoretical demonstration has already proved that APDA reliably attains the optimal operating condition for an IES. The key contributions of this study are as follows:<list list-type="simple">
<list-item>
<p>1) APDA can avoid energy delays and significantly reduce the communication and computational burden of the IES. In existing DA applications, each iteration requires communication and computation. However, APDA does not require iterations; therefore, the communication and computational burden will be much less. In addition, the algorithm without iteration will be much quicker; thus, an energy delay because of the slow algorithms will never occur.</p>
</list-item>
<list-item>
<p>2) The APDA is far more accurate than existing algorithms. Existing decomposition methods and distributed algorithms are asymptotically convergent, resulting in a trade-off between the accuracy of a given algorithm and the number of iterations. However, the APDA does not suffer from this problem because it can accurately determine the optimization result in one communication and computation iteration.</p>
</list-item>
<list-item>
<p>3) The APDA does not depend on suitable parameters or initial values. Existing algorithms are sensitive to parameters and initial values because the results may lead to oscillation or divergence. However, the APDA does not suffer from this disadvantage.</p>
</list-item>
<list-item>
<p>4) Privacy protection in the APDA is much better than that in existing algorithms. Although existing distributed methods can protect user privacy to a certain degree, there are still some ratios, power outputs, or estimated prices that must be shared among neighboring agents. However, the APDA can protect all data, including the information presented below, among neighboring agents. In the APDA, there are no neighbor agents because all data in the APDA are cryptographic, and neighbor agents are meaningless.</p>
</list-item>
</list>
</p>
<p>
<xref ref-type="table" rid="T1">Table 1</xref> summarizes the performance of the APDA and traditional methodologies to underline the contribution of this study. <xref ref-type="table" rid="T2">Table 2</xref> summarizes the methods used in the APDA and whether the innovation of this study is original or not. The non-iterative mechanism of the APDA is summarized as follows:</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Contributions of different methods.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Method</th>
<th align="left">Privacy protection</th>
<th align="left">Need for iteration and pressure of communication and computation</th>
<th align="left">Solving numerous models</th>
<th align="left">Dependence on initial values</th>
<th align="left">Accuracy of energy management</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">Traditional DA approach <xref ref-type="bibr" rid="B9">Guo et al. (2017)</xref>
</td>
<td align="left">Protects some data. Cannot protect data among neighbor agents</td>
<td align="left">Requires considerable asynchronous communication; hence, the pressure of communication and computation is very high</td>
<td align="left">Needs to solve all models</td>
<td align="left">Depends on initial values</td>
<td align="left">Inaccurate</td>
</tr>
<tr>
<td align="left">Algorithm proposed in <xref ref-type="bibr" rid="B33">Zhang et al. (2017)</xref>
</td>
<td align="left">Protects all data</td>
<td align="left">Needs iteration; hence, the pressure of communication and computation is very high</td>
<td align="left">Needs to solve all models</td>
<td align="left">Depends on initial values</td>
<td align="left">Inaccurate</td>
</tr>
<tr>
<td align="left">APDA proposed in this study</td>
<td align="left">Protects all data</td>
<td align="left">Does not require iterations; hence, the pressure of communication and computation is exceedingly low</td>
<td align="left">Merges all model types into several models. In this article, 13 device types could be merged into two functions</td>
<td align="left">Does not depend on initial values</td>
<td align="left">Accurate</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>Innovation of this study.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Theory</th>
<th align="left">Annular communication path to privacy protection</th>
<th align="left">Does not require iteration</th>
<th align="left">Merge all model types into several models</th>
<th align="left">Adopt a first-order differential equation as the independent variable</th>
<th align="left">Accurate energy management</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left"/>
<td align="left">Not original</td>
<td align="left">Original</td>
<td align="left">Original</td>
<td align="left">Original</td>
<td align="left">Original</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The APDA transforms all cost functions into another function type. The independent variable of this function is the first-order differential, and the dependent variable is energy flow. The APDA accumulates the differentials of all orders into new functions <italic>via</italic> an annular communication path. The annular path can be used to ensure that the APDA can sum all differentials in a distributed manner. Accordingly, the high computational and communication pressure on the control center is overcome. The control center can utilize the total of these differentials to restore the hole functions. The independent variable of this function is the first-order differential, and the energy mismatch is the dependent variable. The number of hole functions corresponds to the number of energy types. The control center uses each hole function to set an independent variable for each energy type. These independent variables were regarded as the energy prices of the corresponding energy types. The control center relays the prices of each energy source using the communication path, and each device adjusts the operating conditions according to these prices. Under these circumstances, convergence and optimization are satisfied, and iteration is not required. A detailed introduction and proof of the APDA are presented below.</p>
<p>The presented APDA can significantly speed up the optimization algorithm and protect the user privacy effectively. Therefore, it is suitable for the IES, which requires high speed and good privacy protection. However, the APDA requires synchronous communication and large-scale communication simultaneously. Some changeable IESs are unfit because they require frequent dispatches. In addition, the APDA can only handle convex optimization, and an IES with non-convex devices is unsuitable for it. Therefore, the IES approaches depicted in <xref ref-type="bibr" rid="B31">Yang et al. (2020</xref>) and <xref ref-type="bibr" rid="B23">Tan and Li (2022</xref>) are suitable for the APDA, while the IESs presented in <xref ref-type="bibr" rid="B26">Wang et al. (2021</xref>) and <xref ref-type="bibr" rid="B6">Feng et al. (2022b</xref>) are not.</p>
</sec>
<sec id="s2">
<title>2 Models of IESs</title>
<p>The devices in we-energies are listed in <xref ref-type="table" rid="T3">Table 3</xref>.</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>Devices in each we-energy.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Device number<break/>
<inline-formula id="inf1">
<mml:math id="m1">
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>
</th>
<th align="center">Device type</th>
<th align="center">Device name</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">1</td>
<td rowspan="3" align="left">Renewable energy devices</td>
<td align="left">Wind-based power generator</td>
</tr>
<tr>
<td align="left">2</td>
<td align="left">Solar-based power generator</td>
</tr>
<tr>
<td align="left">3</td>
<td align="left">Solar-based heat device</td>
</tr>
<tr>
<td align="left">4</td>
<td align="left">Coal-based energy devices</td>
<td align="left">Coal-based CHP</td>
</tr>
<tr>
<td align="left">5</td>
<td rowspan="3" align="left">Energy conversion devices</td>
<td align="left">Power-to-gas device</td>
</tr>
<tr>
<td align="left">6</td>
<td align="left">Electric boiler</td>
</tr>
<tr>
<td align="left">7</td>
<td align="left">Gas-based CHP</td>
</tr>
<tr>
<td align="left">8</td>
<td rowspan="3" align="left">Energy storage device</td>
<td align="left">Power store device</td>
</tr>
<tr>
<td align="left">9</td>
<td align="left">Heat store device</td>
</tr>
<tr>
<td align="left">10</td>
<td align="left">Gas store device</td>
</tr>
<tr>
<td align="left">11</td>
<td rowspan="3" align="left">Energy load</td>
<td align="left">Power load</td>
</tr>
<tr>
<td align="left">12</td>
<td align="left">Heat load</td>
</tr>
<tr>
<td align="left">13</td>
<td align="left">Gas load</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Here, <inline-formula id="inf2">
<mml:math id="m2">
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> denotes the number of devices and <inline-formula id="inf3">
<mml:math id="m3">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> denotes the number of we-energies. The IES has three types of energy: power, heat, and gas. The vector <inline-formula id="inf4">
<mml:math id="m4">
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>R</mml:mi>
<mml:mn>3</mml:mn>
</mml:msup>
<mml:mrow>
<mml:mfenced open="|" close="" separators="|">
<mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula> has three dimensionalities that indicate the operating conditions (power&#x2013;heat&#x2013;gas input or output) of devices. The element <inline-formula id="inf5">
<mml:math id="m5">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the <inline-formula id="inf6">
<mml:math id="m6">
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>-th element in that vector. The power&#x2013;heat&#x2013;gas energy flow rate are <inline-formula id="inf7">
<mml:math id="m7">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf8">
<mml:math id="m8">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf9">
<mml:math id="m9">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>3</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, respectively. Additionally, the IES has a centralized power plant. Owing to the aforementioned reasons, the centralized power plant cannot be settled in we-energies. In addition, the centralized power plant should not be CHP because heat cannot be transmitted over long distances. The energy in the centralized power plants is exceedingly large. Thus, we can ignore the heat demand near the plant.</p>
<sec id="s2-1">
<title>2.1 Models and limits of the IES</title>
<p>Devices in the IES can be divided into two types: certain and uncertain devices. Devices that can be controlled are certain devices; for example, CHP and energy conversion devices are certain devices, whereas devices that cannot be controlled are uncertain devices. In the IES, the uncertain devices are renewable energy devices and terminal energy loads. It should be noted that uncertain devices do not have any operating cost functions because the operating cost for energy devices and terminal energy loads is considerably low. These devices have only an energy input or output value <inline-formula id="inf10">
<mml:math id="m10">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>. The limits for uncertain devices are<disp-formula id="e1">
<mml:math id="m11">
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:math>
<label>(1)</label>
</disp-formula>
</p>
<p>
<inline-formula id="inf11">
<mml:math id="m12">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the operating limit. Because the performance of uncertain devices including but not limited to lines and transformers is not infinite, we need to establish an operating limit.</p>
<p>The operating cost function and limits of CHP are<disp-formula id="e2">
<mml:math id="m13">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:msup>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msup>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x3b2;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3c7;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<p>where <inline-formula id="inf12">
<mml:math id="m14">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x3b2;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf13">
<mml:math id="m15">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c7;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent constants and <inline-formula id="inf14">
<mml:math id="m16">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is positive. We regard the energy conversion efficiency of gas or coal to power and heat as 100%. The constant values in Equation <xref ref-type="disp-formula" rid="e2">2</xref> and other equations determine the character of devices. The constant values affect the relationship between the operating cost and the rate of energies. The main motivation of the APDA is the scalability because the APDA suits all kinds of convex functions. How to match cost functions is not the emphasis of the APDA.</p>
<p>The limits are<disp-formula id="e3">
<mml:math id="m17">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mtext>ramp</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mtext>ramp</mml:mtext>
</mml:msubsup>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(3)</label>
</disp-formula>
<disp-formula id="e4">
<mml:math id="m18">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">e</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(4)</label>
</disp-formula>
<disp-formula id="e5">
<mml:math id="m19">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">e</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">g</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(5)</label>
</disp-formula>
<disp-formula id="e6">
<mml:math id="m20">
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mtext>down</mml:mtext>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:math>
<label>(6)</label>
</disp-formula>
</p>
<p>
<inline-formula id="inf15">
<mml:math id="m21">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mtext>down</mml:mtext>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf16">
<mml:math id="m22">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> indicate the operating limits of CHP, and <inline-formula id="inf17">
<mml:math id="m23">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mtext>ramp</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denotes the ramp limit of power. Because the output of&#x2019; CHP cannot change too fast, we should add a ramp limit. However, we only consider the ramp limit of power because the time-scale of heat is exceedingly large. In addition, the CHP also has a maximum operating limit and a start&#x2013;stop limit. The reason for the maximum operating limit is very easy to understand. However, what is the reason for the start&#x2013;stop limit? If a CHP stops operating, it is too hard to restart it. So we need to establish a start&#x2013;stop limit to keep the CHP in operation. <xref ref-type="bibr" rid="B33">Zhang et al. (2017</xref>) have already shown that the maximum operating limit and the start-&#x2013;stop limit for CHP should be linear as in <xref ref-type="disp-formula" rid="e4">(4)</xref> and <xref ref-type="disp-formula" rid="e5">(5)</xref>. <inline-formula id="inf18">
<mml:math id="m24">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">e</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf19">
<mml:math id="m25">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">g</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are positive constants. In addition, because the power and heat output transmission of CHP is not infinite, we establish limit <xref ref-type="disp-formula" rid="e6">(6)</xref>, and <inline-formula id="inf20">
<mml:math id="m26">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mtext>down</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf21">
<mml:math id="m27">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> indicate the transmission limits of CHP.</p>
<p>Natural gas is a fossil fuel; hence, we cannot produce it. Gas price is decided by other departments, and not by the IES.</p>
<p>The model and limits of energy storage devices are<disp-formula id="e7">
<mml:math id="m28">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msubsup>
<mml:mi>O</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>O</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>O</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
<p>It is worth noting that there are two energy values in the energy storage device. One is the energy that is stored in the energy storage device, for which we use <inline-formula id="inf22">
<mml:math id="m29">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> to express, and the other is the energy output (input) to (from) the IES, for which we adopt <inline-formula id="inf23">
<mml:math id="m30">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> to express. In addition, because if the energy in the storage device is too much or too little will reduce the service life of the device, each energy storage device has an optimization store value, and we adopt <inline-formula id="inf24">
<mml:math id="m31">
<mml:mrow>
<mml:msubsup>
<mml:mi>O</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> to express the optimization of energy storage value. So, the cost of the energy storage device is the loss of store optimization. <inline-formula id="inf25">
<mml:math id="m32">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf26">
<mml:math id="m33">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are constants and <inline-formula id="inf27">
<mml:math id="m34">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is negative. Thus, we obtain<disp-formula id="e8">
<mml:math id="m35">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:math>
<label>(8)</label>
</disp-formula>
</p>
<p>The limits are<disp-formula id="e9">
<mml:math id="m36">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi>in</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="normal">S</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:mrow>
</mml:msup>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi>out</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="normal">S</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:mrow>
</mml:msup>
</mml:msubsup>
<mml:mo>&#x7c;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>Not only the energy exchanged from the IES but also the energy stored in the energy storage devices has maximum and minimum limits, so there are four limits in one energy storage device. <inline-formula id="inf28">
<mml:math id="m37">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">i</mml:mi>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="normal">S</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:mrow>
</mml:msub>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf29">
<mml:math id="m38">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">o</mml:mi>
<mml:mi mathvariant="normal">u</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="normal">S</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:mrow>
</mml:msub>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> are the energy input and output limits, respectively; and <inline-formula id="inf30">
<mml:math id="m39">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf31">
<mml:math id="m40">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> indicate minimum and maximum energy store limits, respectively.</p>
<p>Furthermore, there is a coupling item of energy load because one load can choose more than one energy to realize its function. In this study, we considered that the power to gas devices and electric boilers are supplied by energy transformation devices that can change energy loads. It is worth mentioning that the energy transformation devices need to satisfy the energy input required to be a price-changeable energy, so gas-based CHPs are not classified under such devices. The energy load changing and its cost is given as<disp-formula id="e10">
<mml:math id="m41">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mi>a</mml:mi>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3b7;</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mo>&#x2206;</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mi>b</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="|" close="" separators="|">
<mml:mrow>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mo>&#x2206;</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mi>a</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:math>
<label>(10)</label>
</disp-formula>
</p>
<p>Essentially, we can adopt load of energy a to replace load of energy b. The energy conversion efficiency is <inline-formula id="inf32">
<mml:math id="m42">
<mml:mrow>
<mml:mi>&#x3b7;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, and the operating cost price is <inline-formula id="inf33">
<mml:math id="m43">
<mml:mrow>
<mml:mi mathvariant="normal">w</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>The cost function of the equivalent gas producer is<disp-formula id="e11">
<mml:math id="m44">
<mml:mrow>
<mml:msubsup>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mtext>DGP</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mtext>DGP</mml:mtext>
</mml:msubsup>
<mml:msubsup>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>DGP</mml:mtext>
<mml:mn mathvariant="italic">2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mtext>DGP</mml:mtext>
</mml:msubsup>
<mml:msubsup>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mtext>DGP</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mtext>DGP</mml:mtext>
</mml:msubsup>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<p>How to model the network limits? Because the information and the energy flow are disconnected in the APDA and the privacy protection in the APDA is entire, the energy flow in the APDA can choose every path, and each we-energy can link to every other we-energies. In other words, the adjacency matrix of the APDA is an all-one matrix. For this reason, the energy flow in the APDA is more free than that in existing distribution methods, so the possibility of energy violating the limit is much less in the APDA than in other distribution methods. The only two possibilities of that harm are as follows. on one hand, if the hole energy flow in the hole IES is very large, all networks cannot handle the energy, and the energy violating the limit may happen. On the other hand, if the energy input or output in one we-energy is large, the energy transmission will go wrong. The complex network can change the energy flow to another path in the network, but if too much energy will transmit from (to) one we-energy, the complex network will be meaningless. The two cases can be handled together. We can establish an energy output or input limit for each energy because the energy that the IES network can contain is much larger than the total absolute value of each we-energy limit. In addition, because the operation of each device is dependent on the energy price, we can change the energy limit to the price limit of each we-energy. Each we-energy will compute its two price limits by the island model before energy management. Then, if the dispatch result of the price is beyond the energy limit, the we-energy will stop dispatch and operate by its price limit. The IES will consider it as a device that cannot respond to dispatch.</p>
</sec>
</sec>
<sec id="s3">
<title>3 APDA and its advantages</title>
<p>Notably, the APDA is scalable. Models discussed previously only serve as examples. However, all types of IESs with convex models are suitable for the APDA. To this end, this study introduces the application of the APDA to all convex IES models except for the proposed model.</p>
<sec id="s3-1">
<title>3.1 Communication path</title>
<p>First, the communication path of the APDA is not a traditional centralized communication path or traditional distributed communication path. It is an annular-directed communication path from <xref ref-type="bibr" rid="B33">Zhang et al. (2017</xref>) shown in <xref ref-type="fig" rid="F1">Figure 1A&#x2013;C</xref>, which illustrates the traditional centralized and distributed IES. There are several advantages of the annular-directed communication path, of which the biggest advantage is that it is compatible with the APDA. The difference between the three communication paths is listed in <xref ref-type="table" rid="T4">Table 4</xref>.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>
<bold>(A)</bold>. Traditional centralized IES <bold>(B)</bold>. Traditional distributed IES <bold>(C)</bold>. Annular-directed IES.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g001.tif"/>
</fig>
<table-wrap id="T4" position="float">
<label>TABLE 4</label>
<caption>
<p>Devices in each we-energy.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left"/>
<th align="left">Communication and computation</th>
<th align="left">Sensitivity of one-point breakdown</th>
<th align="left">Privacy protection</th>
<th align="left">Compatibility with the APDA</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">Traditional centralized communication path</td>
<td align="left">Small but centralized on the control center</td>
<td align="left">Sensitive</td>
<td align="left">Protect nothing</td>
<td align="left">No</td>
</tr>
<tr>
<td align="left">Traditional distributed communication path</td>
<td align="left">Disperse to the hole system. However, the total is large</td>
<td align="left">Not sensitive</td>
<td align="left">Protect some data</td>
<td align="left">No</td>
</tr>
<tr>
<td align="left">Annular directed communication path</td>
<td align="left">Disperse to the hole system and the total is small</td>
<td align="left">Not sensitive</td>
<td align="left">Protect all data</td>
<td align="left">Yes</td>
</tr>
<tr>
<td align="left">Remark</td>
<td align="left">None</td>
<td align="left">None</td>
<td align="left">1</td>
<td align="left">None</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Remark 1: In traditional research energy ratios, energy input or output and energy prices had to be known among neighboring agents; hence, they could not completely protect privacy. However, in the annular communication in the APDA, all data are cryptographic, which ensures that all data are completely protected even if among neighbor agents, no information is known by each other. The reason behind this will be introduced in the proceeding sections.</p>
<p>Privacy protection in the IES means that designers should make information, including but not limited to energy input, energy output, energy store values, and parameters in one we-energy, unknown to other we-energies because they may be business competitors. The APDA only needs to transmit some parameters, so protecting parameters is the content of privacy protection in the APDA. Existing methods established some neighbor agents and then transmitted data between them and did not transmit data to non-neighbor agents to protect privacy. Although privacy protection in existing studies can protect users&#x2019; privacy to a certain degree, private data are still obtained by neighbor we-energies. However, in the annular-directed communication path of <xref ref-type="fig" rid="F1">Figure 1C</xref>, privacy protection can protect all data, including data between neighbor agents. In the annular-directed communication path, all we-energies can only get the summation of corresponding parameters before them in the annular path so they do not know the parameter values in every previous we-energy. Furthermore, we will establish some fictitious parameter values to protect the privacy of the first agent. By this method, all privacy will be protected so there are not any neighbor agents. It is worth noting that the cyber information communicating path for the APDA is a simple annular path. However, the energy transmitting path is not the circle. The cyber information communicating path only transmits information but not energy because if energies transmit in a simple circle, the energy transmission cost will be very high. After the running of the APDA, the balance of all energies will be realized. Then, how to transmit corresponding energies to corresponding we-energies will be an easy elementary math problem that does not need any algorithms. So, this article does not discuss the energy-transmitting path. However, the equivalent gas producer does not have the gas limit because it does not belong to the IES, although we regard it as a we-energy. It can transmit gas to corresponding places directly.</p>
</sec>
<sec id="s3-2">
<title>3.2 Model adjusting</title>
<p>For some IESs with a strong ability for computation and communication, adopting their model may be the best choice. However, for some IESs with a weak ability for computation and communication, the APDA needs to reduce the order of models to reduce communication and computation by using the method in <xref ref-type="bibr" rid="B15">Lai et al. (2017</xref>). We assume that the model order limit of the IES is 2.</p>
<p>If the function <inline-formula id="inf34">
<mml:math id="m45">
<mml:mrow>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is a polynomial function but the order is too high, we can adopt Chebyshev approximation to reduce the order, as shown below.</p>
<p>Herein, we introduce how one order can be reduced. If several orders need to be reduced, the APDA will reduce the order repeatedly until the order meets the standard. We assume that there is only one independent variable in the function. If there is more than one independent variable, the APDA will handle them sequentially.<disp-formula id="e12">
<mml:math id="m46">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">T</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">T</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:mo>;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">T</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>&#x2026;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">T</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:msub>
<mml:mi mathvariant="normal">T</mml:mi>
<mml:mi mathvariant="normal">n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">T</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
<disp-formula id="equ1">
<mml:math id="m47">
<mml:mrow>
<mml:mi mathvariant="normal">P</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="normal">a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mn>2</mml:mn>
<mml:mrow>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi mathvariant="normal">T</mml:mi>
<mml:mi mathvariant="normal">n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>where <inline-formula id="inf35">
<mml:math id="m48">
<mml:mrow>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the primitive function; <inline-formula id="inf36">
<mml:math id="m49">
<mml:mrow>
<mml:mi mathvariant="normal">P</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the new function; and <inline-formula id="inf37">
<mml:math id="m50">
<mml:mrow>
<mml:mi mathvariant="normal">a</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> indicates the coefficient of the highest order in <inline-formula id="inf38">
<mml:math id="m51">
<mml:mrow>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>If the function <inline-formula id="inf39">
<mml:math id="m52">
<mml:mrow>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is an exponential function or another convex function that is not primitive, we can fit it into a primitive function and handle it as a primitive function using the Lagrange interpolation polynomial, as shown below.</p>
<p>First, we select <inline-formula id="inf40">
<mml:math id="m53">
<mml:mtext>three</mml:mtext>
</mml:math>
</inline-formula> points on <inline-formula id="inf41">
<mml:math id="m54">
<mml:mrow>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, and we use independent variables to solve function variables. Subsequently, we solve <inline-formula id="inf42">
<mml:math id="m55">
<mml:mrow>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> as<disp-formula id="e13">
<mml:math id="m56">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mi mathvariant="normal">k</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munderover>
<mml:mstyle displaystyle="true">
<mml:mo>&#x220f;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi mathvariant="normal">m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:munderover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>
<disp-formula id="e14">
<mml:math id="m57">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mi mathvariant="normal">k</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munderover>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi mathvariant="normal">p</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mi mathvariant="normal">k</mml:mi>
</mml:munderover>
<mml:msub>
<mml:mi mathvariant="normal">y</mml:mi>
<mml:mi mathvariant="normal">p</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:mi mathvariant="normal">p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msubsup>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">x</mml:mi>
<mml:mi mathvariant="normal">k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>where <inline-formula id="inf43">
<mml:math id="m58">
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula> represents a point on <inline-formula id="inf44">
<mml:math id="m59">
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; <inline-formula id="inf45">
<mml:math id="m60">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the new polynomial function.</p>
<p>All theories about model adjusting can be found in <xref ref-type="bibr" rid="B19">Ma et al. (2022</xref>). Additionally, model adjusting is rarely observed. In most cases, models can satisfy the standard of the IES because the APDA can substantially reduce the communication and computational pressure.</p>
<p>Second, we solve the first-order partial differentials of the cost functions of each type of energy (considering other energy types as constants). Accordingly, we solve their inverse functions. These functions are named as <inline-formula id="inf46">
<mml:math id="m61">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mi mathvariant="normal">w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2,3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. The independent variables are the first-order partial differentials and the dependent variables are energy values. There may be more than one <inline-formula id="inf47">
<mml:math id="m62">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mi mathvariant="normal">w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> in one device. The number of <inline-formula id="inf48">
<mml:math id="m63">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mi mathvariant="normal">w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> indicates the energy types in the devices. Moreover, some devices do not have cost functions. Their operating conditions are unchangeable. Therefore, they cannot solve first-order partial differentials. The <inline-formula id="inf49">
<mml:math id="m64">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">f</mml:mi>
<mml:mi mathvariant="normal">w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> values of such devices are constant functions; the constant values represent their operating conditions. Additionally, we do not consider the energy transmission devices in this step. It is worth mentioning that the APDA must first reduce orders before changing function shapes. This is because if function shapes are changed before reducing orders, the errors will be much larger. Furthermore, this study shows only the circumstance that the order limit is 2. However, in practice, the order limit can be any value owing to the different performances of energy routers.</p>
<p>It is worth mentioning that if the order limit of <inline-formula id="inf50">
<mml:math id="m65">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is 2, then the high-order differential of <inline-formula id="inf51">
<mml:math id="m66">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> will be 0. However, if the order limit of <inline-formula id="inf52">
<mml:math id="m67">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is higher than 2, then the high-order differential of <inline-formula id="inf53">
<mml:math id="m68">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> will not be 0. However, the independent variable order of <inline-formula id="inf54">
<mml:math id="m69">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> will decrease with the increase of differential order of <inline-formula id="inf55">
<mml:math id="m70">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. If the independent variable order is less than &#x2013;5, we can regard the high-order differential of <inline-formula id="inf56">
<mml:math id="m71">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> as 0.</p>
</sec>
<sec id="s3-3">
<title>3.3 Main algorithm</title>
<p>The operations of the APDA are listed in <xref ref-type="table" rid="T5">Table 5</xref>; some complex operations are in the remarks.</p>
<table-wrap id="T5" position="float">
<label>TABLE 5</label>
<caption>
<p>APDA.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Step</th>
<th align="left">Operation</th>
<th align="left">Remark</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">1</td>
<td align="left">Initialize a <inline-formula id="inf57">
<mml:math id="m72">
<mml:mrow>
<mml:mtext>jj</mml:mtext>
<mml:mo>&#xd7;</mml:mo>
<mml:mtext>kk</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula> matrix <inline-formula id="inf58">
<mml:math id="m73">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and store <inline-formula id="inf59">
<mml:math id="m74">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> into the control center of the IES. Initialize energy price of all energy. <inline-formula id="inf60">
<mml:math id="m75">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf61">
<mml:math id="m76">
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. Solve the price limits of each we-energy</td>
<td align="left">1</td>
</tr>
<tr>
<td align="left">2</td>
<td align="left">Enter the <inline-formula id="inf62">
<mml:math id="m77">
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> th device of <inline-formula id="inf63">
<mml:math id="m78">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> th we-energy. Consider the energy price as the independent variable of the corresponding energy. Solve the function values and their partial differential value and high-order partial differential values. Subsequently, add them to corresponding elements of <inline-formula id="inf64">
<mml:math id="m79">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Then, <inline-formula id="inf65">
<mml:math id="m80">
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, repeat the process until all devices in that we-energy are handled</td>
<td align="left">2</td>
</tr>
<tr>
<td align="left">3</td>
<td align="left">If <inline-formula id="inf66">
<mml:math id="m81">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is not the last device of the we-energy, <inline-formula id="inf67">
<mml:math id="m82">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf68">
<mml:math id="m83">
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, return to step 2. Else, continue</td>
<td align="left">Nothing</td>
</tr>
<tr>
<td align="left">4</td>
<td align="left">Settle <inline-formula id="inf69">
<mml:math id="m84">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Then, adopt <inline-formula id="inf70">
<mml:math id="m85">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> to establish several systems of partial differential equations. (if Q is out of the price limit of one we-energy, let the we-energy operate at the limit, regard that we-energy as a device which cannot be dispatched and return to step 2). Determine a vector <inline-formula id="inf71">
<mml:math id="m86">
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Transmit <inline-formula id="inf72">
<mml:math id="m87">
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> to each we-energy using the annular path</td>
<td align="left">3</td>
</tr>
<tr>
<td align="left">5</td>
<td align="left">Adopt <inline-formula id="inf73">
<mml:math id="m88">
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> to ensure the operating optimal conditions of all devices. For some price-unchangeable energy, including gas, if the energy balance is mismatched, the IES needs to purchase them from other departments</td>
<td align="left">4</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Remark 1: Here, <inline-formula id="inf74">
<mml:math id="m89">
<mml:mtext>jj</mml:mtext>
</mml:math>
</inline-formula> denotes the price-changeable energy type. In this article, <inline-formula id="inf75">
<mml:math id="m90">
<mml:mtext>jj</mml:mtext>
</mml:math>
</inline-formula> is 2 because the power and heat price can be changed; however, the gas price cannot be changed. We should add some initialization values into <inline-formula id="inf76">
<mml:math id="m91">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and store <inline-formula id="inf77">
<mml:math id="m92">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> into the control center. The reason behind that will be introduced later. Moreover, <inline-formula id="inf78">
<mml:math id="m93">
<mml:mtext>kk</mml:mtext>
</mml:math>
</inline-formula> indicates the order limit. In this study, <inline-formula id="inf79">
<mml:math id="m94">
<mml:mtext>kk</mml:mtext>
</mml:math>
</inline-formula> is 2. The order limit analysis will be introduced in the proceeding sections.</p>
<p>Remark 2: The rows of <inline-formula id="inf80">
<mml:math id="m95">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represent devices with each single price-changeable energy. The model in this article comprises two rows, which correspond to power and heat. The first column of <inline-formula id="inf81">
<mml:math id="m96">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> contains the function values of <inline-formula id="inf82">
<mml:math id="m97">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> corresponding to energy. The second column of <inline-formula id="inf83">
<mml:math id="m98">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> contains the first-order partial differential of the corresponding independent variable in the first column. The APDA will add corresponding energy and corresponding partial into the corresponding place. It is worth mentioning that two or more different values can be added into one place. We can use the model in this study as an example.<disp-formula id="e15">
<mml:math id="m99">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="normal">Q</mml:mi>
<mml:mo>&#x2b;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mi>A</mml:mi>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi>B</mml:mi>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(15)</label>
</disp-formula>
<disp-formula id="e16">
<mml:math id="m100">
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2,8,11,4,7</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(16)</label>
</disp-formula>
<disp-formula id="e17">
<mml:math id="m101">
<mml:mrow>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2,8,11,4,7</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(17)</label>
</disp-formula>
<disp-formula id="e18">
<mml:math id="m102">
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>3,9,12,4,7</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(18)</label>
</disp-formula>
<disp-formula id="e19">
<mml:math id="m103">
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>3.9,12,4,7</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(19)</label>
</disp-formula>where <inline-formula id="inf84">
<mml:math id="m104">
<mml:mrow>
<mml:msup>
<mml:mi>Q</mml:mi>
<mml:mo>&#x2212;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> is the <inline-formula id="inf85">
<mml:math id="m105">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> before step 2.</p>
<p>Remark 3: First, the <inline-formula id="inf86">
<mml:math id="m106">
<mml:mrow>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> in step 4 should be settled. There are two <inline-formula id="inf87">
<mml:math id="m107">
<mml:mrow>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> s in the control center: first, we store an initialization <inline-formula id="inf88">
<mml:math id="m108">
<mml:mrow>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> in the control center in step 1, which we named <inline-formula id="inf89">
<mml:math id="m109">
<mml:mrow>
<mml:msup>
<mml:mi>Q</mml:mi>
<mml:mn>1</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>; second, we use the algorithm to compute a <inline-formula id="inf90">
<mml:math id="m110">
<mml:mrow>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and transmit it to the control center, which we named <inline-formula id="inf91">
<mml:math id="m111">
<mml:mrow>
<mml:msup>
<mml:mi>Q</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>.<disp-formula id="e20">
<mml:math id="m112">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi mathvariant="normal">Q</mml:mi>
<mml:mn>1</mml:mn>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi mathvariant="normal">Q</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>
</p>
<p>Subsequently, we establish <inline-formula id="inf92">
<mml:math id="m113">
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> functions. These functions are <inline-formula id="inf93">
<mml:math id="m114">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2,3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. We establish a system of partial differential equations as<disp-formula id="e21">
<mml:math id="m115">
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="|" close="" separators="|">
<mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:math>
<label>(21)</label>
</disp-formula>
</p>
<p>Accordingly, all <inline-formula id="inf94">
<mml:math id="m116">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> can be solved.</p>
<p>Subsequently, we should use these <inline-formula id="inf95">
<mml:math id="m117">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> to ensure energy balance. Because all function values of each <inline-formula id="inf96">
<mml:math id="m118">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denote the total energy in the IES, if all <inline-formula id="inf97">
<mml:math id="m119">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> values are 0, the energy balance is reached. However, that is not the optimization condition because the energy conversion is not considered. There are three circumstances that could be considered in this article</p>
<p>Circumstance 1: One price-changeable energy a changes to another price-changeable energy b.</p>
<p>Circumstance 2: One price-changeable energy a changes to one price-unchangeable energy b.</p>
<p>Circumstance 3: One price-unchangeable energy b changes to one price-changeable energy a.</p>
<p>In circumstance 1, we should solve these functions.<disp-formula id="e22">
<mml:math id="m120">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>
<disp-formula id="e23">
<mml:math id="m121">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mi>b</mml:mi>
</mml:msup>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(23)</label>
</disp-formula>where <inline-formula id="inf98">
<mml:math id="m122">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> indicates the independent variable of <inline-formula id="inf99">
<mml:math id="m123">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>; <inline-formula id="inf100">
<mml:math id="m124">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf101">
<mml:math id="m125">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi>b</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> are the <inline-formula id="inf102">
<mml:math id="m126">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> of energy a and b, respectively.</p>
<p>In circumstance 2, we should solve the following functions.<disp-formula id="e24">
<mml:math id="m127">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>
<disp-formula id="e25">
<mml:math id="m128">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msup>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(25)</label>
</disp-formula>where <inline-formula id="inf103">
<mml:math id="m129">
<mml:mtext>prb</mml:mtext>
</mml:math>
</inline-formula> indicates the energy price of b.</p>
<p>In circumstance 3, we are required to solve the following functions.<disp-formula id="e26">
<mml:math id="m130">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(26)</label>
</disp-formula>
<disp-formula id="e27">
<mml:math id="m131">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msup>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(27)</label>
</disp-formula>
</p>
<p>Other <inline-formula id="inf104">
<mml:math id="m132">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> without energy transformation are all 0.</p>
<p>Accordingly, we can solve these functions to work out all <inline-formula id="inf105">
<mml:math id="m133">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> of each <inline-formula id="inf106">
<mml:math id="m134">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and all conversion energies. We adopt each <inline-formula id="inf107">
<mml:math id="m135">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> of the corresponding energy as the energy prices and divide the energy conversion value to all energy transformation devices. We add all energy prices and divided the conversion energy value into <inline-formula id="inf108">
<mml:math id="m136">
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Remark 4: The optimization operating condition of each energy devices can be solved as<disp-formula id="e28a">
<mml:math id="m137">
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>W</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munderover>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:munderover>
<mml:mrow>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:math>
<label>(28a)</label>
</disp-formula>where <inline-formula id="inf109">
<mml:math id="m138">
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the cost function and <inline-formula id="inf110">
<mml:math id="m139">
<mml:mtext>prww</mml:mtext>
</mml:math>
</inline-formula> indicates the energy price of the <inline-formula id="inf111">
<mml:math id="m140">
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>-th energy. Furthermore, all conditions of conversion devices are in <inline-formula id="inf112">
<mml:math id="m141">
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Remarkably, the reason for placing a random initialized value into <inline-formula id="inf113">
<mml:math id="m142">
<mml:mrow>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> in the first step is to protect privacy. In the APDA, each device can only know the sum of the data; hence, they cannot know the data of each device. However, the second device can know the data of the first device because the total data are the data of the first device. Accordingly, we place an initialized value into <inline-formula id="inf114">
<mml:math id="m143">
<mml:mrow>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> in the first step to protect the data of the first device.</p>
</sec>
<sec id="s3-4">
<title>3.4 Demonstration of the proposed algorithm</title>
<p>First, we should prove some propositions.</p>
<p>Proposition 1: The cost price of energy is the differential of its cost function.</p>
<p>First, because all cost functions are convex, the energy cost price is dynamic. The average energy cost price between <inline-formula id="inf115">
<mml:math id="m144">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf116">
<mml:math id="m145">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> can be given as<disp-formula id="e28b">
<mml:math id="m146">
<mml:mrow>
<mml:mi mathvariant="italic">pr</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(28b)</label>
</disp-formula>
</p>
<p>If for all positive values <inline-formula id="inf117">
<mml:math id="m147">
<mml:mrow>
<mml:mi>&#x3b5;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf118">
<mml:math id="m148">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>&#x3b5;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, we can draw a conclusion that<disp-formula id="e29">
<mml:math id="m149">
<mml:mrow>
<mml:mi mathvariant="italic">pr</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(29)</label>
</disp-formula>
</p>
<p>Accordingly, the cost price on <inline-formula id="inf119">
<mml:math id="m150">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the differential of <inline-formula id="inf120">
<mml:math id="m151">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Proposition 2: If there is only one type of energy in the IES, the best operating condition of each device is that all first-order differentials are the same.</p>
<p>We assume another operating condition in the IES. Some devices named condition 2 with less cost based on the condition that all first-order differentials are the same, which is named condition 1. The energy balances are satisfied in conditions 1 and 2.</p>
<p>There are some devices in condition 2 with more energy than that in condition 1. To ensure energy balance, there are also some devices in condition 3 with less energy than that in condition 1. Accordingly, the devices with more energy consume more cost, and vice-versa. Conditions 2 and 3 collectively constitute another operating condition of the IES.</p>
<p>For conditions 1 and 2, we assume <inline-formula id="inf121">
<mml:math id="m152">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is energy in condition 1, <inline-formula id="inf122">
<mml:math id="m153">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is energy in condition 2. <inline-formula id="inf123">
<mml:math id="m154">
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf124">
<mml:math id="m155">
<mml:mrow>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> indicates all devices with more energy in condition 2. From the Lagrange mean value theorem, we can draw a conclusion that<disp-formula id="e30">
<mml:math id="m156">
<mml:mrow>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(30)</label>
</disp-formula>
</p>
<p>The cost between condition 1 and condition 2 is<disp-formula id="e31">
<mml:math id="m157">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mtext mathvariant="italic">more</mml:mtext>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:msup>
<mml:munder>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(31)</label>
</disp-formula>
</p>
<p>We name all the energy as <inline-formula id="inf125">
<mml:math id="m158">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and the smallest <inline-formula id="inf126">
<mml:math id="m159">
<mml:mrow>
<mml:msup>
<mml:munder>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> in <inline-formula id="inf127">
<mml:math id="m160">
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is <inline-formula id="inf128">
<mml:math id="m161">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mo>&#x2207;</mml:mo>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. Thus, we obtain<disp-formula id="e32">
<mml:math id="m162">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mtext mathvariant="italic">more</mml:mtext>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:msup>
<mml:munder>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mo>&#x2207;</mml:mo>
</mml:msub>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mo>&#x2207;</mml:mo>
</mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x3e;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(32)</label>
</disp-formula>
</p>
<p>For conditions 1 and 3, we assume <inline-formula id="inf129">
<mml:math id="m163">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is energy in condition 1, <inline-formula id="inf130">
<mml:math id="m164">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is energy in condition 3. <inline-formula id="inf131">
<mml:math id="m165">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mtext>mm</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf132">
<mml:math id="m166">
<mml:mtext>mm</mml:mtext>
</mml:math>
</inline-formula> indicates all devices with more energy in condition 3. From the Lagrange mean value theorem, we can draw a conclusion that<disp-formula id="e33">
<mml:math id="m167">
<mml:mrow>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:munder>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(33)</label>
</disp-formula>
</p>
<p>The lesser cost between condition 1 and condition 2 is given as<disp-formula id="e34">
<mml:math id="m168">
<mml:mrow>
<mml:mi mathvariant="italic">Cless</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:msup>
<mml:munder>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(34)</label>
</disp-formula>
</p>
<p>We name all less energy as <inline-formula id="inf133">
<mml:math id="m169">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, and the largest <inline-formula id="inf134">
<mml:math id="m170">
<mml:mrow>
<mml:msup>
<mml:munder>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> in <inline-formula id="inf135">
<mml:math id="m171">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is <inline-formula id="inf136">
<mml:math id="m172">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mo>&#x2207;</mml:mo>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. Thus, we obtain<disp-formula id="e35">
<mml:math id="m173">
<mml:mrow>
<mml:mi mathvariant="italic">Cless</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:msup>
<mml:munder>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mo>&#x2207;</mml:mo>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:munder>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
</mml:mstyle>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2286;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mo>&#x2207;</mml:mo>
</mml:mrow>
</mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x3c;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(35)</label>
</disp-formula>
</p>
<p>To ensure energy balance, <inline-formula id="inf137">
<mml:math id="m174">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, which yields<disp-formula id="e36">
<mml:math id="m175">
<mml:mrow>
<mml:mi mathvariant="italic">Cless</mml:mi>
<mml:mo>&#x3c;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mtext mathvariant="italic">more</mml:mtext>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(36)</label>
</disp-formula>
</p>
<p>Thus, the best operating condition for all devices require that all first-order differentials be the same. Proposition 2 stands correct.</p>
<p>Similarly, if the price of energy a is the same as that of energy b, the energy transformation is the optimal condition. Accordingly, the optimization is proved.</p>
<p>
<statement>
<p>Proposition 3: <inline-formula id="inf138">
<mml:math id="m176">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is a sum of <inline-formula id="inf139">
<mml:math id="m177">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>.<disp-formula id="equ2">
<mml:math id="m178">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mo>&#x22ef;</mml:mo>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ3">
<mml:math id="m179">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">Q</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mn mathvariant="italic">1</mml:mn>
</mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mn mathvariant="italic">2</mml:mn>
</mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mo>&#x22ef;</mml:mo>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ4">
<mml:math id="m180">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>n</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mo>&#x22ef;</mml:mo>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>Accordingly, <inline-formula id="inf140">
<mml:math id="m181">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is a sum of <inline-formula id="inf141">
<mml:math id="m182">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Therefore, the value of <inline-formula id="inf142">
<mml:math id="m183">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the energy mismatch. Accordingly, the convergence is proved.</p>
</statement>
</p>
</sec>
</sec>
<sec id="s4">
<title>4 Simulation results</title>
<p>The simulation results of this study are divided into five parts: 1) the running results of the APDA, 2) the running results of the existing iterative algorithm and subsequent comparison with the APDA (including the benchmark functions test for the APDA and the existing iterative algorithm), 3) the plug-and-play performance test of the APDA, 4) emergency power dispatch of the APDA, and 5) scalability of the APDA. We chose the iterative algorithm presented in <xref ref-type="bibr" rid="B3">Chang et al. (2021</xref>) as a comparative benchmark. To attain a more convincing comparison, the simulation platform, all device types, arguments and quantities, and loads of all energies are the same as those depicted in the literature (<xref ref-type="bibr" rid="B3">Chang et al., 2021</xref>) (only gas-based CHP is deleted because gas is very expensive currently; therefore, it is inadvisable to adopt gas to produce other energies. To make the comparison more convincing, gas-based CHP is not only deleted from the simulation results of the APDA but also from the simulation results of the existing iterative algorithm presented in (<xref ref-type="bibr" rid="B3">Chang et al., 2021</xref>)). The data are provided in the <xref ref-type="sec" rid="s10">Supplementary Material</xref>. It is worth noting that the data of the APDA and traditional algorithms are kept the same for comparison. The integrated energy system model of the APDA and that of the comparative algorithm are shown in <xref ref-type="fig" rid="F2">Figure 2</xref>. More details and data are available in literature (<xref ref-type="bibr" rid="B3">Chang et al., 2021</xref>) and will not be repeated here. It should be noted that the cyber information communication path for the APDA is a simple annular path. However, the energy transmission path is not circular. The cyber information communication path only transmits information but not energy because if energy is transmitted in a simple circle, the energy transmission cost will be very high. After running the APDA, the balance of all energies was achieved. Then, how to transmit corresponding energies to corresponding we-energies will be an easy elementary mathematical problem that does not require any algorithms. Therefore, this study does not discuss the energy transmission path. <xref ref-type="fig" rid="F2">Figure 2</xref> shows an energy transmission black box that replaces the energy transmission topology. In each we-energy, there is one control center, one wind generator, one solar generator, one solar heat device, one coal-based CHP, one electric boiler, one equivalent gas producer (only in we-energy 1), one power storage device, one heat store device, one gas store device, one power to gas device, and one electric boiler. All data are in the <xref ref-type="sec" rid="s10">Supplementary Material</xref>.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>IES model.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g002.tif"/>
</fig>
<p>The simulation result of the APDA is shown in <xref ref-type="fig" rid="F3">Figure 3</xref> (because the APDA does not require iterations, there are no convergence procedures for the APDA. It converges in one iteration.). The abscissas 1&#x2013;11 in <xref ref-type="fig" rid="F3">Figure 3</xref> represent the power rate of the wind generator, power rate of the solar generator, heat rate of the solar heat devices, gas rate of the equivalent gas producer (if there is no equivalent gas producer, that value is zero), power rate of the coal-based CHP, heat rate of the coal-based CHP, power rate of the power storage device, heat rate of the heat store device, gas rate of the gas store device, power rate of the electric boiler, and power rate of the power to gas device. The power, heat, and gas prices were 11.2198 cents, 8.4393 cents, and 7.6237 cents, respectively, per<inline-formula id="inf143">
<mml:math id="m184">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Additionally, the APDA requires only one iteration; thus, the algorithm is exceedingly fast and communication and computation burden is exceedingly low. Furthermore, the energy supply demand mismatches of power, heat, and gas are all 0. In addition, there were no parameters that were difficult to adjust. For the existing iterative algorithm (setting the price adjustment factor to <inline-formula id="inf144">
<mml:math id="m185">
<mml:mrow>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>8</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>), the convergence procedure with iterations of power&#x2013;heat&#x2013;gas prices and power&#x2013;heat&#x2013;gas supply demand mismatch are shown in <xref ref-type="fig" rid="F4">Figures 4</xref>&#x2013;<xref ref-type="fig" rid="F9">9</xref>, respectively (the Zeno coefficient is defined in <xref ref-type="bibr" rid="B23">Tan and Li, (2022</xref>). Because the Zeno coefficient is not related to the APDA and is only connected to a traditional algorithm for contrast experiments, it is not detailed here. The detail about the algorithm for contrast experiments is in the <xref ref-type="sec" rid="s10">Supplementary Material</xref>). The power, heat, and gas prices were 11.1620 cents, 8.3847 cents, and 7.6237 cents, respectively, per <inline-formula id="inf145">
<mml:math id="m186">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Additionally, this algorithm requires 50 iterations, which not only reduces the speed of the algorithm considerably but also significantly increases the communication and computational burden. Furthermore, the energy supply-demand mismatches of power, heat, and gas are 2,714 <inline-formula id="inf146">
<mml:math id="m187">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> less, 3,262 <inline-formula id="inf147">
<mml:math id="m188">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> less, and 0, respectively. In addition, the algorithm is highly sensitive to suitable factors. If we adjust the price adjustment factor to <inline-formula id="inf148">
<mml:math id="m189">
<mml:mrow>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, the power&#x2013;heat&#x2013;gas supply-demand mismatch will vibrate, as shown in <xref ref-type="fig" rid="F10">Figure 10</xref>, <xref ref-type="fig" rid="F11">Figure 11</xref>, and <xref ref-type="fig" rid="F12">Figure 12</xref>, and never reach the energy balance.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Simulation results of the APDA.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g003.tif"/>
</fig>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Convergence procedure of power price.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g004.tif"/>
</fig>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Convergence procedure of heat price.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g005.tif"/>
</fig>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Convergence procedure of gas price.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g006.tif"/>
</fig>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Convergence procedure of power supply-demand mismatch.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g007.tif"/>
</fig>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Convergence procedure of heat supply-demand mismatch.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g008.tif"/>
</fig>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Convergence procedure of gas supply-demand mismatch.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g009.tif"/>
</fig>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Power mismatch with larger factor.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g010.tif"/>
</fig>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Heat mismatch with larger factor.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g011.tif"/>
</fig>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>Gas mismatch with larger factor.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g012.tif"/>
</fig>
<p>In summary, both the APDA and traditional algorithm can unify all prices of one energy in each device. According to the theoretical demonstration presented in <xref ref-type="sec" rid="s3-4">Section 3.4</xref>, if all prices of one energy are unified, optimization can be achieved. Therefore, both the APDA and traditional algorithm can be optimized. However, the APDA can strictly realize the astringency of all energy mismatches to 0, but the traditional algorithm can only converge the power&#x2013;heat&#x2013;gas mismatch to 2,714&#xa0;<inline-formula id="inf149">
<mml:math id="m190">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> less, 3,262&#xa0;<inline-formula id="inf150">
<mml:math id="m191">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> less, and 0. Therefore, the APDA has better astringency than the traditional algorithms. In addition, because the APDA only requires one iteration, whereas the traditional algorithm requires 50 iterations, the communication and computational burden in the APDA is much less than that in the traditional algorithm. Accordingly, the APDA is much faster than the traditional algorithm; therefore, it can avoid the time delay better than traditional algorithms. Finally, the APDA is independent of suitable factors, whereas traditional algorithms rely heavily on them.</p>
<p>To test the plug-and-play performance of the APDA, we removed the last we-energy in the simulation platform. The simulation results are shown in <xref ref-type="fig" rid="F13">Figure 13</xref>. The abscissas 1&#x2013;11 in <xref ref-type="fig" rid="F13">Figure 13</xref> represent the same meaning as those presented in <xref ref-type="fig" rid="F3">Figure 3</xref>. <xref ref-type="fig" rid="F13">Figure 13</xref> shows that the APDA can operate normally without we-energy; therefore, the plug-and-play performance of the APDA is reliable.</p>
<fig id="F13" position="float">
<label>FIGURE 13</label>
<caption>
<p>Plug-and-play performance.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g013.tif"/>
</fig>
<p>It should be noted that the variations in power loads and fluctuations experienced by power devices are usually in the order of several seconds, while the heat and gas load variations in the IES are usually hourly. Thus, based on the hourly dispatch of all energies, an emergency strategy for power-only devices (including power in CHP) is required for emergency power scheduling. If power scheduling is required, the APDA operates with power-only devices. We increased the 50,000 <inline-formula id="inf151">
<mml:math id="m192">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> power ratio to test emergency power scheduling. The simulation result is presented in <xref ref-type="fig" rid="F14">Figure 14</xref>. The abscissas 1&#x2013;11 in <xref ref-type="fig" rid="F14">Figure 14</xref> represent the same values as those depicted in <xref ref-type="fig" rid="F3">Figure 3</xref>. From <xref ref-type="fig" rid="F14">Figure 14</xref>, we can conclude that the emergency power scheduling of the APDA is reliable.</p>
<fig id="F14" position="float">
<label>FIGURE 14</label>
<caption>
<p>Emergency power scheduling.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g014.tif"/>
</fig>
<p>As for testing the scalability of the IES, we have already established a large-scale system by adding the we-energy number from 5 to 15 to test the scalability of the proposed method. All data are in the <xref ref-type="sec" rid="s10">Supplementary Material</xref>. The simulation result is in <xref ref-type="fig" rid="F15">Figure 15</xref>. The abscissas 1&#x2013;10 in <xref ref-type="fig" rid="F15">Figure 15</xref> represent the power rate of the wind generator, power rate of the solar generator, heat rate of the solar heat devices, power rate of the coal-based CHP, heat rate of the coal-based CHP, power rate of the power storage device, heat rate of the heat store device, gas rate of the gas store device, power rate of the electric boiler, and power rate of the power to gas device. The gas rate of the equivalent gas producer is 11,221,474 <inline-formula id="inf152">
<mml:math id="m193">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. We do not put it into the figure because it is too large. However, the equivalent gas producer is not limited by the network limit because of the reason we have already introduced in <xref ref-type="sec" rid="s2">Section 2</xref>. From <xref ref-type="fig" rid="F15">Figure 15</xref>, we can conclude that the emergency power scheduling of the APDA is reliable.</p>
<fig id="F15" position="float">
<label>FIGURE 15</label>
<caption>
<p>Scalability performance.</p>
</caption>
<graphic xlink:href="fenrg-10-1078938-g015.tif"/>
</fig>
</sec>
<sec sec-type="conclusion" id="s5">
<title>5 Conclusion</title>
<p>In this study, an algorithm without iterations called the APDA was introduced for use in future IES applications. By comparing the currently proposed and traditional algorithms, we determine that the APDA only requires one communication and computation iteration, whereas the traditional algorithm requires 50 iterations. In addition, the APDA can strictly realize the astringency of all energy mismatches to 0. However, the traditional algorithm can only reduce the power&#x2013;heat&#x2013;gas mismatch to 2,714&#xa0;<inline-formula id="inf153">
<mml:math id="m194">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> less, 3,262&#xa0;<inline-formula id="inf154">
<mml:math id="m195">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> less, and 0. In addition, the APDA is independent of suitable factors, whereas traditional algorithms rely heavily on them. However, the APDA requires synchronous communication and large-scale communication simultaneously. Some changeable IES applications are unfit because they require frequent dispatches. In addition, the APDA can only handle convex optimization; accordingly, an IES with non-convex devices is unsuitable for it. Therefore, asynchronous communication without iteration and non-convex optimization in an IES needs to be further studied.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s6">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/<xref ref-type="sec" rid="s10">Supplementary Material</xref>; further inquiries can be directed to the corresponding author.</p>
</sec>
<sec id="s7">
<title>Author contributions</title>
<p>XL has corrected the format. Other study is carried out by JT.</p>
</sec>
<sec id="s8">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s9">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors, and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<sec id="s10">
<title>Supplementary material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/fenrg.2022.1078938/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/fenrg.2022.1078938/full&#x23;supplementary-material</ext-link>
</p>
<supplementary-material xlink:href="DataSheet1.PDF" id="SM1" mimetype="application/PDF" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Abessi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Jadid</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Internal combustion engine as a new source for enhancing distribution system resilience</article-title>. <source>J. Mod. Power Syst. Clean Energy</source> <volume>9</volume> (<issue>5</issue>), <fpage>1130</fpage>&#x2013;<lpage>1136</lpage>. <pub-id pub-id-type="doi">10.35833/mpce.2019.000246</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Binetti</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Davoudi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Lewis</surname>
<given-names>F. L.</given-names>
</name>
<name>
<surname>Naso</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Turchiano</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Distributed consensus-based economic dispatch with transmission losses</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>29</volume> (<issue>4</issue>), <fpage>1711</fpage>&#x2013;<lpage>1720</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2014.2299436</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Online distributed neurodynamic optimization for energy management of renewable energy grids</article-title>. <source>Int. J. Electr. Power &#x26; Energy Syst.</source> <volume>130</volume>, <fpage>106996</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijepes.2021.106996</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Lewis</surname>
<given-names>F. L.</given-names>
</name>
<name>
<surname>Feng</surname>
<given-names>E. N.</given-names>
</name>
<name>
<surname>Song</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Distributed optimal active power control of multiple generation systems</article-title>. <source>IEEE Trans. Ind. Electron.</source> <volume>62</volume> (<issue>11</issue>), <fpage>7079</fpage>&#x2013;<lpage>7090</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2015.2431631</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Yao</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Dynamic state estimation for integrated electricity-gas systems based on extended Kalman filter</article-title>[J]. <source>CSEE J. Power Energy Syst.</source> <volume>8</volume> (<issue>1</issue>), <fpage>293</fpage>&#x2013;<lpage>303</lpage>.</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Feng</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Pei</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Min-max cost optimization for efficient hierarchical federated learning in wireless edge networks</article-title>. <source>IEEE Trans. Parallel Distrib. Syst.</source> <volume>33</volume> (<issue>11</issue>), <fpage>1</fpage>&#x2013;<lpage>2700</lpage>. <pub-id pub-id-type="doi">10.1109/tpds.2021.3131654</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Feng</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Pei</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Heterogeneous computation and resource allocation for wireless powered federated edge learning systems</article-title>. <source>IEEE Trans. Commun.</source> <volume>70</volume> (<issue>5</issue>), <fpage>3220</fpage>&#x2013;<lpage>3233</lpage>. <pub-id pub-id-type="doi">10.1109/tcomm.2022.3163439</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Guo</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Ye</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Song</surname>
<given-names>W.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>Systematic assessment of cyber-physical security of energy management system for connected and automated electric vehicles</article-title>. <source>IEEE Trans. Ind. Inf.</source> <volume>17</volume> (<issue>5</issue>), <fpage>3335</fpage>&#x2013;<lpage>3347</lpage>. <pub-id pub-id-type="doi">10.1109/tii.2020.3011821</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Guo</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Tong</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Coordinated multi-area economic dispatch via critical region projection</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>32</volume> (<issue>5</issue>), <fpage>3736</fpage>&#x2013;<lpage>3746</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2017.2655442</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>He</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Ai</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Qiu</surname>
<given-names>R. C.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Piao</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>A big data architecture design for smart grids based on random matrix theory</article-title>. <source>IEEE Trans. Smart Grid</source> <volume>8</volume> (<issue>2</issue>), <fpage>674</fpage>&#x2013;<lpage>686</lpage>.</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Tu</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Small leak location for intelligent pipeline system via action-dependent heuristic dynamic programming</article-title>. <source>IEEE Trans. Ind. Electron.</source> <volume>69</volume> (<issue>11</issue>), <fpage>11723</fpage>&#x2013;<lpage>11732</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2021.3127016</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hua</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Hao</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Qin</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>A class of control strategies for energy internet considering system robustness and operation cost optimization</article-title>. <source>Energies</source> <volume>11</volume> (<issue>6</issue>), <fpage>1593</fpage>. <pub-id pub-id-type="doi">10.3390/en11061593</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Huang</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Wei</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Forecasting-aided state estimation based on deep learning for hybrid AC/DC distribution systems</article-title>[J]. <source>Applied Energy</source>, <volume>306</volume>, <fpage>118119</fpage>, <pub-id pub-id-type="doi">10.1016/j.apenergy.2021.118119</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kirli</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Couraud</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Robu</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Salgado-Bravo</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Norbu</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Andoni</surname>
<given-names>M.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Smart contracts in energy systems: A systematic review of fundamental approaches and implementations</article-title>. <source>Renew. Sustain. Energy Rev.</source> <volume>158</volume>, <fpage>112013</fpage>. <pub-id pub-id-type="doi">10.1016/j.rser.2021.112013</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lai</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhong</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Xia</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Kang</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Decentralized intraday generation scheduling for multiarea power systems via dynamic multiplier-based Lagrangian relaxation</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>32</volume> (<issue>1</issue>), <fpage>454</fpage>&#x2013;<lpage>463</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2016.2544863</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Liang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Antagonistic interactions-based adaptive event-triggered bipartite consensus quantized control for stochastic multiagent systems</article-title>. <source>IEEE Syst. J.</source>, <fpage>1</fpage>&#x2013;<lpage>12</lpage>. <pub-id pub-id-type="doi">10.1109/JSYST.2021.3116035</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Nonzero-sum game-based voltage recovery consensus optimal control for nonlinear microgrids system</article-title>. <source>IEEE Trans. Neural Netw. Learn. Syst.</source>, <fpage>1</fpage>&#x2013;<lpage>13</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2022.3151650</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Jan</surname>
<given-names>M. A.</given-names>
</name>
<name>
<surname>Lan</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Taherkordi</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Mobility-aware multi-hop task offloading for autonomous driving in vehicular edge computing and networks</article-title>. <source>IEEE Trans. Intell. Transp. Syst.</source>, <fpage>1</fpage>&#x2013;<lpage>14</lpage>. <pub-id pub-id-type="doi">10.1109/TITS.2022.3142566</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ma</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Xie</surname>
<given-names>X.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Dual-predictive control with adaptive error correction strategy for AC microgrids</article-title>. <source>IEEE Trans. Power Deliv.</source> <volume>37</volume> (<issue>3</issue>), <fpage>1930</fpage>&#x2013;<lpage>1940</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrd.2021.3101198</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ma</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Xie</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>A hierarchical event detection method based on spectral theory of multidimensional matrix for power system</article-title>. <source>IEEE Trans. Syst. Man. Cybern. Syst.</source> <volume>51</volume> (<issue>4</issue>), <fpage>2173</fpage>&#x2013;<lpage>2186</lpage>. <pub-id pub-id-type="doi">10.1109/tsmc.2019.2931316</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mao</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Dong</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Reconfigurable intelligent surface-assisted secure mobile edge computing networks</article-title>. <source>IEEE Trans. Veh. Technol.</source> <volume>71</volume> (<issue>6</issue>), <fpage>6647</fpage>&#x2013;<lpage>6660</lpage>. <pub-id pub-id-type="doi">10.1109/TVT.2022.3162044</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mishra</surname>
<given-names>D. K.</given-names>
</name>
<name>
<surname>Ghadi</surname>
<given-names>M. J.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Hossain</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Active distribution system resilience quantification and enhancement through multi-microgrid and mobile energy storage</article-title>. <source>Appl. Energy</source> <volume>311</volume>, <fpage>118665</fpage>. <pub-id pub-id-type="doi">10.1016/j.apenergy.2022.118665</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tan</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Annular directed distributed algorithm for energy internet</article-title>[J]. <source>International Transactions on Electrical Energy Systems</source>, (<issue>1</issue>), <fpage>7717605</fpage>, <pub-id pub-id-type="doi">10.1155/2022/7717605</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tan</surname>
<given-names>Jiaming.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Energy management without iteration&#x2014;a regional dispatch event-triggered algorithm for energy internet</article-title>. <source>Front. Energy Res.</source> <volume>10</volume> (<issue>2022</issue>), <fpage>908199</fpage>. <pub-id pub-id-type="doi">10.3389/fenrg.2022.908199</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tan</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Event-triggered synchronization of multiagent systems with partial input saturation</article-title>. <source>IEEE Trans. Control Netw. Syst.</source> <volume>8</volume> (<issue>3</issue>), <fpage>1406</fpage>&#x2013;<lpage>1416</lpage>. <pub-id pub-id-type="doi">10.1109/tcns.2021.3065667</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Gui</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Vehicle-vehicle energy interaction converter of electric vehicles: A disturbance observer based sliding mode control algorithm</article-title>. <source>IEEE Trans. Veh. Technol.</source> <volume>70</volume> (<issue>10</issue>), <fpage>9910</fpage>&#x2013;<lpage>9921</lpage>. <pub-id pub-id-type="doi">10.1109/tvt.2021.3105433</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wei</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Gu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Deng</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Xiao</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Ren</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>ABL-TC: A lightweight design for network traffic classification empowered by deep learning</article-title>. <source>Neurocomputing</source> <volume>489</volume>, <fpage>333</fpage>&#x2013;<lpage>344</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2022.03.007</pub-id>
</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wei</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Gu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Wan</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Multi-objective optimization for resource allocation in vehicular cloud computing networks</article-title>. <source>IEEE Trans. Intell. Transp. Syst.</source>, <fpage>1</fpage>&#x2013;<lpage>10</lpage>. <pub-id pub-id-type="doi">10.1109/TITS.2021.3091321</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xing</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Mou</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Fu</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Distributed bisection method for economic power dispatch in smart grid</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>30</volume> (<issue>6</issue>), <fpage>3024</fpage>&#x2013;<lpage>3035</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2014.2376935</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Ge</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Qi</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Y.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Optimization of an intelligent community hybrid energy system with robustness consideration</article-title>. <source>IEEE Access</source>, <volume>7</volume>, PP <fpage>58780</fpage>&#x2013;<lpage>58790</lpage>. <pub-id pub-id-type="doi">10.1109/ACCESS.2019.2914696</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Optimal energy operation strategy for we-energy of energy internet based on hybrid reinforcement learning with human-in-the-loop</article-title>. <source>IEEE Trans. Syst. Man. Cybern. Syst.</source> <volume>52</volume> (<issue>1</issue>), <fpage>32</fpage>&#x2013;<lpage>42</lpage>. <pub-id pub-id-type="doi">10.1109/tsmc.2020.3035406</pub-id>
</citation>
</ref>
<ref id="B32">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Tan</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Ruan</surname>
<given-names>G.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Short&#x2010;term electricity price forecasting based on graph convolution network and attention mechanism[J]</article-title>. <source>IET Renewable Power Generation</source>, <volume>16</volume>(<issue>12</issue>):<fpage>2481</fpage>-<lpage>2492</lpage>. <pub-id pub-id-type="doi">10.1049/rpg2.12413</pub-id>
</citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>D. W.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Distributed optimal energy management for energy internet</article-title>. <source>IEEE Trans. Ind. Inf.</source> <volume>13</volume> (<issue>6</issue>), <fpage>3081</fpage>&#x2013;<lpage>3097</lpage>. <pub-id pub-id-type="doi">10.1109/tii.2017.2714199</pub-id>
</citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhao</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Litvinov</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Zheng</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>A marginal equivalent decomposition method and its application to multi-area optimal power flow problems</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>29</volume> (<issue>1</issue>), <fpage>53</fpage>&#x2013;<lpage>61</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2013.2281775</pub-id>
</citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhou</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Tian</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Soft-switching high gain three-port converter based on coupled inductor for renewable energy system applications</article-title>. <source>IEEE Trans. Ind. Electron.</source> <volume>69</volume> (<issue>99</issue>), <fpage>1521</fpage>&#x2013;<lpage>1536</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2021.3060614</pub-id>
</citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhou</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chow</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Distributed power management for networked AC/DC microgrids with unbalanced microgrids</article-title>. <source>IEEE Trans. Ind. Inf.</source> <volume>16</volume> (<issue>3</issue>), <fpage>1655</fpage>&#x2013;<lpage>1667</lpage>. <pub-id pub-id-type="doi">10.1109/tii.2019.2925133</pub-id>
</citation>
</ref>
<ref id="B37">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhou</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Chow</surname>
<given-names>M. -Y.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Distributed event-triggered $H_\infty$ consensus based current sharing control of DC microgrids considering uncertainties</article-title>. <source>IEEE Trans. Ind. Inf.</source> <volume>16</volume> (<issue>12</issue>), <fpage>7413</fpage>&#x2013;<lpage>7425</lpage>. <pub-id pub-id-type="doi">10.1109/TII.2019.2961151</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>