<?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">1510259</article-id>
<article-id pub-id-type="doi">10.3389/fenrg.2024.1510259</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>Optimal configuration of shared energy storage for industrial users considering lifetime and charge-discharge strategy coupling</article-title>
<alt-title alt-title-type="left-running-head">Wang et al.</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fenrg.2024.1510259">10.3389/fenrg.2024.1510259</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Wang</surname>
<given-names>Wendi</given-names>
</name>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2862650/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Wang</surname>
<given-names>Hongyan</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Sun</surname>
<given-names>Shaobin</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Cao</surname>
<given-names>Gang</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Wang</surname>
<given-names>Shufan</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Ji</surname>
<given-names>Ye</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
</contrib-group>
<aff>
<institution>Science and Technology Information Network Branch</institution>, <institution>Nanjing Suyi Industrial Co., Ltd.</institution>, <addr-line>Nanjing</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/1817317/overview">Zixuan Wang</ext-link>, North China Electric Power University, China</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/2868579/overview">Chutong Wang</ext-link>, North China Electric Power University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/993357/overview">Yue Zhou</ext-link>, Cardiff University, United Kingdom</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Wendi Wang, <email>sy584278874@163.com</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>17</day>
<month>12</month>
<year>2024</year>
</pub-date>
<pub-date pub-type="collection">
<year>2024</year>
</pub-date>
<volume>12</volume>
<elocation-id>1510259</elocation-id>
<history>
<date date-type="received">
<day>12</day>
<month>10</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>26</day>
<month>11</month>
<year>2024</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2024 Wang, Wang, Sun, Cao, Wang and Ji.</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Wang, Wang, Sun, Cao, Wang and Ji</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>With the development of renewable energy, energy storage has become one of the key technologies to solve the uncertainty of power generation and the disorder of power consumption and shared energy storage has become the focus of attention for its cost-effective characteristics. However, it is always difficult to quantify the coupling relationship between charge and discharge strategy and life expectancy in energy storage configuration. Based on this, this paper proposes an industrial user-side shared energy storage optimal configuration model, which takes into account the coupling characteristics of life and charge and discharge strategy. Firstly, the life loss model of lithium iron phosphate battery is constructed by using the rain-flow counting method. In order to further optimize the user-side shared energy storage configuration in the multi-user scenario, a two-layer model of energy storage configuration is built, and the Big M method and the Karush-Kuhn-Tucker (KKT) conditions are used to equivalently transform the constraints. Based on the predicted life of energy storage and the dichotomy method, the optimal energy storage configuration results are obtained. Comparing the energy cost of users under the three scenarios of no storage configuration, storage configuration according to fixed storage life, and storage configuration according to the model proposed in this paper, the results show that the proposed method can help accurately describe the energy storage model, increase the utilization rate of the power station, and improve the electricity economy of users.</p>
</abstract>
<kwd-group>
<kwd>shared energy storage configuration</kwd>
<kwd>rain-flow counting</kwd>
<kwd>life expectancy of energy storage</kwd>
<kwd>Shapley value method</kwd>
<kwd>bi-layer model</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Energy Storage</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>Since the 21st century, establishing low-carbon or even zero-carbon energy systems has become a global focus. Consequently, the application and proportion of renewable energy sources like wind, solar, and hydropower in the grid have gradually expanded. However, renewable energy production inherently exhibits intermittency, volatility, and randomness. When integrated on a large scale with power systems, these characteristics exacerbate the imbalance between supply and demand in generation and load, posing a threat to the safe and stable operation of power systems (<xref ref-type="bibr" rid="B2">Azhgaliyeva, 2019</xref>).</p>
<p>Energy storage, as a device capable of altering the spatial and temporal distribution of energy, is a key technology supporting the large-scale integration of renewable energy into the grid and promoting the green transition of energy. It can effectively mitigate the instability of renewable energy generation. With the development and application of energy storage, effective demand-side management can be realized, promoting the application of renewable energy and enhancing system operational stability, which will bring significant changes to power system planning, scheduling, and control <underline>(</underline>
<xref ref-type="bibr" rid="B4">Deguenon et al., 2023</xref>
<underline>)</underline>. The application of energy storage technology will permeate all aspects of power generation, transmission, distribution, and consumption, alleviating peak load power supply demands and improving the utilization rate of existing grid equipment and the operational efficiency of the grid. <xref ref-type="bibr" rid="B35">Zeng et al. (2024)</xref> considering shared energy storage and demand response, a power system interval optimization model based on shared energy storage and refined demand response is proposed. This model effectively enhances the utilization of energy storage and the economic operation of the system, achieving coordinated interaction among &#x201c;source-grid-load-storage.&#x201d; As a flexible resource, energy storage can be applied on the generation side (<xref ref-type="bibr" rid="B21">Wang et al., 2023</xref>; <xref ref-type="bibr" rid="B18">Song et al., 2023</xref>), grid side (<xref ref-type="bibr" rid="B26">Xie et al., 2022a</xref>), and user side (<xref ref-type="bibr" rid="B17">Qian et al., 2023</xref>), thereby achieving a coordinated unity of &#x201c;source-grid-load-storage.&#x201d;</p>
<p>As significant energy consumers, commercial and industrial (C&#x26;I) consumers can play a crucial role by enhancing their flexibility and participating in demand response initiatives. On-site renewable energy generation can reduce grid consumption, while energy storage systems (ESS) can store energy for later use, supporting variable generation and shifting demand. Both technologies, when integrated with demand response, can enhance flexibility and benefits (<xref ref-type="bibr" rid="B34">Yasmin et al., 2024</xref>). Installing energy storage systems effectively addresses uncertainties in renewable energy sources (RES) and load demands, ensuring the stable and efficient operation of industrial power systems (<xref ref-type="bibr" rid="B8">Jianwei et al., 2022</xref>). <xref ref-type="bibr" rid="B10">Kwon et al. (2017)</xref> proposed a demand-side electricity procurement approach to minimize energy costs for consumers. <xref ref-type="bibr" rid="B9">Krishnamurthy et al. (2018)</xref> introduced a stochastic optimization model to maximize user energy arbitrage, considering uncertainties in day-ahead loads and real-time prices. However, these models focus on optimizing standalone energy storage for single users.</p>
<p>The low cost and inefficiency of standalone systems hinder the development of energy storage (<xref ref-type="bibr" rid="B19">Tahir et al., 2022</xref>). This has led to the emergence of shared energy storage solutions (<xref ref-type="bibr" rid="B38">Zhu and Ouahada, 2021</xref>). <xref ref-type="bibr" rid="B23">Wang et al. (2024a)</xref> developed a new business model that allows multiple users within an industrial park to share leased energy storage, proposing a robust optimization framework. Their results show that shared leasing is significantly more economical than self-built storage. <xref ref-type="bibr" rid="B1">Aminlou et al. (2022)</xref> established a peer-to-peer (P2P) energy trading model in the context of shared battery energy storage systems (SBESS), which can save substantial costs for industrial towns.</p>
<p>Regarding the business models and pricing mechanisms of shared energy storage, <xref ref-type="bibr" rid="B39">Zhu et al. (2022)</xref> proposed a peer-to-peer (P2P) energy trading system, which integrates energy trading with energy management, enabling each prosumer to jointly manage its energy consumption, storage scheduling, and energy trading in a dynamic manner for smart communities consisting of a group of grid-connected prosumers with controllable loads, renewable generations and energy storage systems. <xref ref-type="bibr" rid="B40">Xu et al. (2023)</xref> designed a business model for shared energy storage operators providing deviation insurance services from the perspective of commercial insurance; <xref ref-type="bibr" rid="B31">Yang et al. (2023)</xref> considered the regulation demands from the power side and grid side, proposing a distributed shared energy storage operational model; <xref ref-type="bibr" rid="B11">Lai et al. (2022)</xref> presented a two-stage pricing mechanism between the coordinator operating the shared energy storage and the prosumers borrowing the shared capacity from the coordinator; <xref ref-type="bibr" rid="B36">Zhang et al. (2022)</xref> studied the equilibrium state of supply-demand flow in a peer-to-peer market model for residential shared energy storage units and proposes a method for service pricing and load dispatching. <xref ref-type="bibr" rid="B37">Zhang et al. (2024)</xref> addressed the interests of different entities in the operation of Energy Storage Systems and Integrated Energy Multi-Microgrid Alliances by proposing an optimization method based on Stackelberg game theory.</p>
<p>For the configuration and optimization of shared energy storage, <xref ref-type="bibr" rid="B20">Wang C. et al. (2022)</xref> categorized residential flexible loads based on different demand response patterns and establishes demand response models for various load types. <xref ref-type="bibr" rid="B27">Xie et al. (2022c)</xref> first proposed a community energy storage collaborative sharing model that includes multiple transaction types, then established a community shared energy storage scale and configuration model based on the cooperative game between community users and energy storage operators; based on this, the bilateral Shapley method (<xref ref-type="bibr" rid="B32">Yang et al., 2021</xref>) is applied, allocating the annual total cost based on the marginal expected costs brought by each user. For the profit distribution using the Shapley value method, <xref ref-type="bibr" rid="B3">Cremers et al. (2023)</xref> conducted a systematic review of the use of Shapley values in energy-related applications, as well as the literature on calculating or approximating them. They developed a new method for accurately calculating Shapley values by clustering producers and consumers into fewer demand profiles, making it applicable to communities with hundreds of agents. <xref ref-type="bibr" rid="B25">Wu et al. (2023)</xref> proposed a new profit distribution method based on Shapley values, focusing on cooperative fairness and encouraging alliance improvements. <xref ref-type="bibr" rid="B15">Pedrero et al. (2024)</xref> introduced Nested Shapley values as a new sharing mechanism that fairly allocates profits among members of large alliances, addressing the trade-off between fairness and scalability. In the area of energy storage scheduling, <xref ref-type="bibr" rid="B33">Yang et al. (2024)</xref> proposed a scheduling method based on multi-stage robust optimization to address the scheduling problems of energy storage systems and uncertain energy. <xref ref-type="bibr" rid="B16">Qian et al. (2024)</xref> considered the demand response of electric magnesium loads, an improved scenario-based typically distributed robust energy and reserve renewable energy system that significantly reduces the costs of day-ahead scheduling and rescheduling while enhancing operational economy without compromising the high reliability and safety of the Renewable Portfolio Standard (RPS). <xref ref-type="bibr" rid="B22">Wang K. Y. et al. (2022)</xref> presented a dual-layer optimization model for the configuration and scheduling of integrated energy systems in multi-microgrids, considering energy storage and demand response, to enhance renewable energy consumption and reduce carbon emissions.</p>
<p>However, the aforementioned literature focuses on using game theory to achieve the configuration of user/park shared energy storage, neglecting the impact of energy storage losses on configuration results (<xref ref-type="bibr" rid="B28">Xie et al., 2022b</xref>). In integrated configuration and scheduling models, the lifespan of energy storage and optimized charge/discharge strategies are highly coupled, significantly affecting the economic evaluation of energy storage over its entire lifecycle. Scholars have conducted relevant research on these issues. In literature (<xref ref-type="bibr" rid="B24">Wang et al., 2024b</xref>), the Rain-flow counting method (<xref ref-type="bibr" rid="B14">Pan et al., 2021</xref>) and iterative methods are used to quantify the impact of capacity loss on configuration. By offline calculating the health status of energy storage during each iteration, it is concluded that when the initial health status value reaches consistency at the beginning of each year, the iteration converges, resulting in optimal configuration outcomes. Although the above methods address some issues and make the economic configuration model of shared energy storage more precise, the physical significance of the iterative process is unclear, and the impact of charge/discharge strategies on expected lifespan and corresponding optimal configuration results is overlooked.</p>
<p>Therefore, this paper proposes an optimal configuration model for industrial user-side shared energy storage that considers the coupling characteristics of lifespan and charge/discharge strategies, based on cooperative game theory (<xref ref-type="bibr" rid="B13">Mao et al., 2022</xref>) and a business model for users to jointly configure energy storage. First, the Rain-flow counting method is used to solve the equivalent cycle count of the energy storage battery, obtaining a relevant model for calculating battery lifespan loss. Second, a bi-level model is constructed, with the upper-level objective of minimizing the total cost for the user group and the lower-level objective of minimizing the cost of purchasing electricity from the grid for the user group. Finally, the KKT conditions and Big-M method are used to transform the bi-level model, combined with a bisection method to iterate the expected lifespan of energy storage. Shapley value allocation model is applied to allocate the cost of multi-user alliance.</p>
</sec>
<sec id="s2">
<title>2 Equivalent life model of ESS</title>
<sec id="s2-1">
<title>2.1 Rain-flow counting method</title>
<p>The Rain-flow counting method was proposed by two British engineers in the 1950s. Its core idea is to decompose complex load curves into multiple load cycles, which are then used for fatigue life estimation. The Rain-flow counting method is a dual-parameter cycle memory model with clear physical significance. Therefore, it can also be used to predict the equivalent cycle life of batteries. The cycle life of a battery varies with different depths of discharge. By using the Rain-flow counting method, the number of charge-discharge cycles and their depths within a typical day for an energy storage battery can be calculated, which is then used for battery life estimation.</p>
<p>The rain-flow counting method is widely used in fatigue life analysis across various fields, such as materials science, and in recent years, it has also been applied to assess battery life (<xref ref-type="bibr" rid="B29">Xu et al., 2021</xref>). <xref ref-type="fig" rid="F1">Figure 1</xref> shows the SOC image after rotation, and the process for obtaining this image is as follows. First, the capacity change data is collected and plotted to create a curve. This curve is then rotated 90 degrees counterclockwise to fit the requirements of the Rain-flow counting method. The starting point on the curve is marked as the origin for simulating &#x201c;raindrops.&#x201d; As the simulation progresses, &#x201c;raindrops&#x201d; flow along the curve, and each time they reach a peak (or &#x201c;eave&#x201d;), it is checked whether they can fall. If a &#x201c;raindrop&#x201d; falls and is intercepted by another part of the curve, it continues to fall until it reaches either the maximum or minimum value of the curve, at which point it reverses direction. If the value at the endpoint differs from the starting point when the raindrop reaches the endpoint, it is considered that the cycle is divided into two half-cycles, with the division point at the maximum or minimum value of the complete curve. <xref ref-type="fig" rid="F1">Figure 1</xref> provides an example of calculating the number of cycles using the Rain-flow counting method.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Example of calculating the number of cycles of the rain-flow counting method.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g001.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F1">Figure 1</xref> shows the capacity change curve of a battery within 24&#xa0;h. The State of Charge (SOC) of the battery refers to the ratio of the remaining charge in the battery to the nominal capacity of the battery, usually expressed as a percentage. The Depth of Discharge (DOD) of period one is 0.3366, and period two is 0.8415.</p>
</sec>
<sec id="s2-2">
<title>2.2 Battery life loss model</title>
<p>It is generally considered that energy storage batteries are scrapped when their capacity drops below 80% of the initial capacity. The relationship between the cycle life of lithium iron phosphate batteries and the DOD is fitted based on the number of cycles N<sub>
<italic>ctf</italic>
</sub> at different DOD levels.<disp-formula id="e1">
<mml:math id="m1">
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="normal">A</mml:mi>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>B</mml:mi>
<mml:msubsup>
<mml:mi>n</mml:mi>
<mml:mi>k</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>C</mml:mi>
<mml:msubsup>
<mml:mi>n</mml:mi>
<mml:mi>k</mml:mi>
<mml:mn>3</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e1">Formula 1</xref> (Gao et al., 2013), A, B, and C are parameters related to the discharge depth DOD of the Shared Energy Station (SES); n<sub>k</sub> represents the number of cycles of the SES at a certain discharge depth <italic>D</italic>
<sub>
<italic>OD,i</italic>
</sub>.</p>
<p>If the DOD for the <italic>i</italic>-th charge-discharge cycle is <italic>D</italic>
<sub>
<italic>OD,i</italic>
</sub>, the equivalent cycle life can be expressed by <xref ref-type="disp-formula" rid="e2">Equation 2</xref> as:<disp-formula id="e2">
<mml:math id="m2">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<p>T<sub>
<italic>life</italic>
</sub> of the battery in the working cycle of the energy storage power station is:<disp-formula id="e3">
<mml:math id="m3">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.01</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:munderover>
</mml:mstyle>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>
</p>
<p>In the <xref ref-type="disp-formula" rid="e3">Equation 3</xref>, T<sub>
<italic>life</italic>
</sub> represents the equivalent cycle life.</p>
<p>Therefore, it is considered that the life loss of the energy storage battery is:<disp-formula id="e4">
<mml:math id="m4">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>
</p>
<p>In the <xref ref-type="disp-formula" rid="e4">Equation 4</xref>, when <italic>T</italic> &#x3d; 1, the battery is considered to be exhausted and needs to be scrapped.</p>
<p>When the calculation period is year, the equivalent cycle life of shared energy storage in 1&#xa0;year is the sum of days&#xa0;<italic>d</italic>:<disp-formula id="e5">
<mml:math id="m5">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mn>365</mml:mn>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e5">Equation 5</xref>, T<sub>
<italic>life, year</italic>
</sub> represents the equivalent cycle life of shared energy storage in 1&#xa0;year.</p>
<p>The estimated service life of shared energy storage is:<disp-formula id="e6">
<mml:math id="m6">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>
</p>
<p>In the <xref ref-type="disp-formula" rid="e6">Equation 6</xref>, <italic>T</italic>
<sub>
<italic>base</italic>
</sub> represents the cycle life of the energy storage battery under the typical day (in years).</p>
</sec>
</sec>
<sec id="s3">
<title>3 User-side SES configuration model</title>
<p>When users build their own energy storage stations under this business model, the system structure is shown in <xref ref-type="fig" rid="F2">Figure 2</xref> (<xref ref-type="bibr" rid="B30">Yan and Chen, 2022</xref>) The objective function of the user-side shared energy storage model focuses on the cost of electricity purchase and the construction and operation costs of the energy storage station. The model aims to minimize the total cost of user investment in the station and electricity purchase while achieving the lowest electricity purchase cost for the user.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>User-built shared energy storage system structure diagram.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g002.tif"/>
</fig>
<p>Therefore, a Bi-level model is established. The upper level aims to minimize the sum of user investment and electricity purchase costs, while the lower level aims to minimize the user&#x2019;s cost of purchasing electricity from the grid. Based on this, this section will establish a cost conversion model for the energy storage station using the Net Present Value (NPV) method and a bilevel model with the objective of minimizing user costs.</p>
<sec id="s3-1">
<title>3.1 Upper layer model</title>
<sec id="s3-1-1">
<title>3.1.1 Upper objective function</title>
<p>In the upper-level model, users need to consider the costs of constructing and operating the energy storage station. Since the construction investment cost of the energy storage station is a one-time investment, the time value of money must be taken into account.<disp-formula id="e7">
<mml:math id="m7">
<mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>W</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>v</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>12</mml:mn>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e7">Equation 7</xref>, <inline-formula id="inf1">
<mml:math id="m8">
<mml:mrow>
<mml:mi>W</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the number of typical days; <inline-formula id="inf2">
<mml:math id="m9">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denotes the number of days corresponding to the <italic>w</italic>-th typical day; <inline-formula id="inf3">
<mml:math id="m10">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>v</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the daily average investment and maintenance cost of the energy storage station; <inline-formula id="inf4">
<mml:math id="m11">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the electricity cost for users from the grid on a typical day; <inline-formula id="inf5">
<mml:math id="m12">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the monthly demand charge for users from the grid.</p>
<p>The daily average investment cost of the energy storage station is given by <xref ref-type="disp-formula" rid="e8">Equation 8</xref>:<disp-formula id="e8">
<mml:math id="m13">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>v</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mi>y</mml:mi>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>P</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>S</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>where <inline-formula id="inf6">
<mml:math id="m14">
<mml:mrow>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mi>y</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the present value annuity factor; <inline-formula id="inf7">
<mml:math id="m15">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>P</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the power cost of the energy storage station; <inline-formula id="inf8">
<mml:math id="m16">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>S</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the capacity cost of the energy storage station; <inline-formula id="inf9">
<mml:math id="m17">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf10">
<mml:math id="m18">
<mml:mrow>
<mml:msubsup>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> are the maximum charge/discharge power and maximum capacity of the energy storage station, respectively; <inline-formula id="inf11">
<mml:math id="m19">
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the number of typical days representing different electricity usage patterns within a year; <inline-formula id="inf12">
<mml:math id="m20">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the number of days corresponding to the typical day; <inline-formula id="inf13">
<mml:math id="m21">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the lifespan of the energy storage station in years; <inline-formula id="inf14">
<mml:math id="m22">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mi>n</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> denotes the iteration count; <inline-formula id="inf15">
<mml:math id="m23">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the initial expected lifespan, set to 5 years.</p>
<p>The present value annuity factor is given by:<disp-formula id="e9">
<mml:math id="m24">
<mml:mrow>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mi>y</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>&#x3b3;</mml:mi>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>&#x3b3;</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e9">Equation 9</xref>, <inline-formula id="inf16">
<mml:math id="m25">
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the annual interest rate of funds; <inline-formula id="inf17">
<mml:math id="m26">
<mml:mrow>
<mml:mi>&#x3b3;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the life cycle of the device.</p>
<p>Daily maintenance cost of energy storage power station:<disp-formula id="e10">
<mml:math id="m27">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e10">Equation 10</xref>, <inline-formula id="inf18">
<mml:math id="m28">
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the number of users; <inline-formula id="inf19">
<mml:math id="m29">
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the number of time periods; <inline-formula id="inf20">
<mml:math id="m30">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the power drawn by the <italic>i</italic>-th user from the energy storage station during period <italic>t</italic> on a typical day; <inline-formula id="inf21">
<mml:math id="m31">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the power charged by the <italic>i</italic>-th user to the energy storage station during period <italic>t</italic> on a typical day; <inline-formula id="inf22">
<mml:math id="m32">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the operation and maintenance cost paid by users when storing and retrieving electricity from the energy storage station.</p>
<p>The electricity cost for users purchasing electricity from the grid is given by:<disp-formula id="e11">
<mml:math id="m33">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22C5;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x22C5;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e11">Equation 11</xref>, <inline-formula id="inf23">
<mml:math id="m34">
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the electricity cost for users purchasing electricity from the grid; <inline-formula id="inf24">
<mml:math id="m35">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the power purchased from the grid by the <italic>i</italic>-th user during period <italic>t</italic> on a typical day.</p>
<p>The demand charge for users purchasing electricity from the grid is given by <xref ref-type="disp-formula" rid="e12">Equation 12</xref>:<disp-formula id="e12">
<mml:math id="m36">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x22C5;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>where <inline-formula id="inf25">
<mml:math id="m37">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the demand charge for users purchasing electricity from the grid; <inline-formula id="inf26">
<mml:math id="m38">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the monthly peak power demand for the <italic>i</italic>-th user on a typical day.</p>
<p>According to the demand charge payment rules, users only need to pay the demand charge based on the maximum load from the grid in that month, in addition to the basic electricity cost. The demand charge rate in China varies depending on the user type and typically ranges from 30 to 50 &#xa5;/kW.</p>
</sec>
<sec id="s3-1-2">
<title>3.1.2 Upper constraint</title>
<p>In configuring the energy storage station, constraints on user electricity purchases, station charge/discharge operations, and grid power flow need to be imposed to achieve a rational planning of the user-owned energy storage station business model.</p>
<p>Constraints on the charging and discharging power of the energy storage battery:<disp-formula id="e13">
<mml:math id="m39">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>
<disp-formula id="e14">
<mml:math id="m40">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>
<disp-formula id="e15">
<mml:math id="m41">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>
<disp-formula id="e16">
<mml:math id="m42">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(16)</label>
</disp-formula>
<disp-formula id="e17">
<mml:math id="m43">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>
<disp-formula id="e18">
<mml:math id="m44">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>D</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>
</p>
<p>In the above equations, <inline-formula id="inf27">
<mml:math id="m45">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the charging power of the energy storage station, <inline-formula id="inf28">
<mml:math id="m46">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the discharging power of the energy storage station, <inline-formula id="inf29">
<mml:math id="m47">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the charging status of the energy storage station as a binary variable (0 or 1), <inline-formula id="inf30">
<mml:math id="m48">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the discharging status of the energy storage station as a binary variable (0 or 1). <xref ref-type="disp-formula" rid="e15">Equation 15</xref> signifies that either <inline-formula id="inf31">
<mml:math id="m49">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> or <inline-formula id="inf32">
<mml:math id="m50">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> cannot be 1 at a given time, indicating that the battery cannot be charged and discharged simultaneously. <inline-formula id="inf33">
<mml:math id="m51">
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>D</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the estimated daily charging and discharging cycles of the energy storage battery, <inline-formula id="inf34">
<mml:math id="m52">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the ideal maximum depth of discharge for the battery. <xref ref-type="disp-formula" rid="e18">Equation 18</xref> imposes constraints on the daily depth of discharge and the number of cycles for economic reasons, which ensures that the energy storage will not over-charge or over-discharge within a day.</p>
<p>Constraints on the upper and lower limits of energy storage battery capacity:<disp-formula id="e19">
<mml:math id="m53">
<mml:mrow>
<mml:mn>10</mml:mn>
<mml:mo>%</mml:mo>
<mml:msubsup>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>90</mml:mn>
<mml:mo>%</mml:mo>
<mml:msubsup>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e19">Formula 19</xref>, <inline-formula id="inf35">
<mml:math id="m54">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> indicates the energy stored in the energy storage system at time t. This constraint implies that the maximum energy within the storage system at any given time cannot exceed 90% of the total capacity, and the minimum energy cannot fall below 10% of the total capacity.</p>
<p>The energy storage state constraint for t ESS is shown in <xref ref-type="disp-formula" rid="e20">Equation 20</xref>.<disp-formula id="e20">
<mml:math id="m55">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>
</p>
<p>In the above equation, <inline-formula id="inf36">
<mml:math id="m56">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf37">
<mml:math id="m57">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represent the charging and discharging efficiencies, respectively.</p>
<p>The constraint on the electricity flow between each user and SES:<disp-formula id="e21">
<mml:math id="m58">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>
<disp-formula id="e22">
<mml:math id="m59">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>
<disp-formula id="e23">
<mml:math id="m60">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
<label>(23)</label>
</disp-formula>
<disp-formula id="e24">
<mml:math id="m61">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>
<disp-formula id="e25">
<mml:math id="m62">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(25)</label>
</disp-formula>where <inline-formula id="inf38">
<mml:math id="m63">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the energy storage status of the <italic>i</italic>-th user, indicating whether the user is charging the energy storage station (taking values of binary), while <inline-formula id="inf39">
<mml:math id="m64">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the status of the <italic>i</italic>-th user drawing energy from the energy storage station (also taking values of binary). <xref ref-type="disp-formula" rid="e23">Equation 23</xref> signifies that <inline-formula id="inf40">
<mml:math id="m65">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf41">
<mml:math id="m66">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> cannot both be 1 simultaneously, meaning the <italic>i</italic>-th user cannot both charge from and discharge to the energy storage station at the same time.</p>
<p>The energy storage power balance constraint is shown in <xref ref-type="disp-formula" rid="e26">Equation 26</xref>.<disp-formula id="e26">
<mml:math id="m67">
<mml:mrow>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(26)</label>
</disp-formula>
</p>
<p>This constraint signifies that the total sum of the difference in energy exchange values between each user and the energy storage station must equal the change in energy stored in the battery during that time period.</p>
<p>The unidirectional power transmission constraint within the power grid:<disp-formula id="e27">
<mml:math id="m68">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(27)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e27">Formula 27</xref>, the power transmitted through the power grid should be a positive value and less than the maximum transmission capacity.</p>
</sec>
</sec>
<sec id="s3-2">
<title>3.2 Lower layer model</title>
<sec id="s3-2-1">
<title>3.2.1 Upper objective function</title>
<p>The lower objective considers the lowest cost of electricity for users and is expressed by <xref ref-type="disp-formula" rid="e28">Equation 28</xref> as:<disp-formula id="e28">
<mml:math id="m69">
<mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>W</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mo>&#x22C5;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>12</mml:mn>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(28)</label>
</disp-formula>
</p>
</sec>
<sec id="s3-2-2">
<title>3.2.2 Lower constraint</title>
<p>User power balance constraints:<disp-formula id="e29">
<mml:math id="m70">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>V</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(29)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e29">Equation 29</xref>, <inline-formula id="inf42">
<mml:math id="m71">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>V</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the solar power generation of the <italic>i</italic>-th user during time period t on a typical day, while <inline-formula id="inf43">
<mml:math id="m72">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the power load of the <italic>i</italic>-th user during time period t on a typical day. The purchased electricity by the user needs to balance with their own load, self-generated power, and the energy exchange with the station. <inline-formula id="inf44">
<mml:math id="m73">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the Lagrange multiplier corresponding to this constraint in the subsequent solving process.</p>
<p>The user&#x2019;s power purchasing constraint:<disp-formula id="e30">
<mml:math id="m74">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>grid</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>:</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(30)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e30">Equation 30</xref>, <inline-formula id="inf45">
<mml:math id="m75">
<mml:mrow>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the Lagrange multiplier corresponding to this inequality constraint in the subsequent solving process. This constraint implies that the power purchased by the <italic>i</italic>-th user during time period t on a typical day should not exceed the maximum power purchased from the grid for that typical day.</p>
<p>The peak shaving load constraint:<disp-formula id="e31">
<mml:math id="m76">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>V</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi mathvariant="italic">max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(31)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e31">Equation 31</xref>, <inline-formula id="inf46">
<mml:math id="m77">
<mml:mrow>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the peak shaving rate, and <inline-formula id="inf47">
<mml:math id="m78">
<mml:mrow>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the Lagrange multiplier corresponding to this inequality constraint.</p>
</sec>
</sec>
<sec id="s3-3">
<title>3.3 The cost allocation model based on the Shapley value method</title>
<p>The revenue distribution model uses the Shapley value method to fairly consider each member&#x2019;s contributions. This helps allocate assets appropriately. Specifically, this model utilizes the Shapley value method to distribute revenues among a coalition composed of <italic>n</italic> industrial users.</p>
<p>In the calculation process, the marginal contributions made by each member are taken into account, and the revenues are allocated to each member in a reasonable manner, allowing each member to receive corresponding benefits. For a coalition of <italic>n</italic> industrial users, the allocated revenue for user <italic>i</italic>, denoted as <italic>X</italic>
<sub>
<italic>i</italic>
</sub>, is given by:<disp-formula id="e32">
<mml:math id="m79">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c7;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munder>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
<mml:mo>&#x2282;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
</mml:mstyle>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="italic">!</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>!</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>!</mml:mo>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>&#x3c5;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mo>&#x222a;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3c5;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>Q</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(32)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e32">Equation 32</xref>: <italic>X</italic>
<sub>
<italic>i</italic>
</sub> represents the allocated revenue for user <italic>i</italic>; <italic>Q</italic> is any sub-coalition formed by the total coalition excluding user <italic>i</italic>; <inline-formula id="inf48">
<mml:math id="m80">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the total coalition; <inline-formula id="inf49">
<mml:math id="m81">
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula> is the individual coalition formed independently by user <italic>i</italic>; <inline-formula id="inf50">
<mml:math id="m82">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">Q</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula> is the number of users in the sub-coalition; <inline-formula id="inf51">
<mml:math id="m83">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula> is the number of users in the total coalition; and <italic>v</italic> is the total revenue. The revenue distribution must satisfy the condition that the total revenue of the coalition remains unchanged before and after the distribution, as shown in <xref ref-type="disp-formula" rid="e33">Equation 33</xref>:<disp-formula id="e33">
<mml:math id="m84">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c7;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3c5;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(33)</label>
</disp-formula>
</p>
</sec>
</sec>
<sec id="s4">
<title>4 The solution process of the configuration model</title>
<sec id="s4-1">
<title>4.1 Upper layer model processing</title>
<p>In the upper-level model, the non-linear constraints arising from the multiplication of binary (0&#x2013;1) variables and linear variables are handled using the Big-M method for <xref ref-type="disp-formula" rid="e13">Equations 13</xref>&#x2013;<xref ref-type="disp-formula" rid="e17">17</xref> and <xref ref-type="disp-formula" rid="e21">Equations 21</xref>&#x2013;<xref ref-type="disp-formula" rid="e25">25</xref> (<xref ref-type="bibr" rid="B6">Ding et al., 2020</xref>). The processed equations are shown in <xref ref-type="disp-formula" rid="e34">Equations 34</xref>&#x2013;<xref ref-type="disp-formula" rid="e41">41</xref>.<disp-formula id="e34">
<mml:math id="m85">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(34)</label>
</disp-formula>
<disp-formula id="e35">
<mml:math id="m86">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>M</mml:mi>
</mml:mrow>
</mml:math>
<label>(35)</label>
</disp-formula>
<disp-formula id="e36">
<mml:math id="m87">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(36)</label>
</disp-formula>
<disp-formula id="e37">
<mml:math id="m88">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>M</mml:mi>
</mml:mrow>
</mml:math>
<label>(37)</label>
</disp-formula>
<disp-formula id="e38">
<mml:math id="m89">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(38)</label>
</disp-formula>
<disp-formula id="e39">
<mml:math id="m90">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>M</mml:mi>
</mml:mrow>
</mml:math>
<label>(39)</label>
</disp-formula>
<disp-formula id="e40">
<mml:math id="m91">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(40)</label>
</disp-formula>
<disp-formula id="e41">
<mml:math id="m92">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>M</mml:mi>
</mml:mrow>
</mml:math>
<label>(41)</label>
</disp-formula>
</p>
</sec>
<sec id="s4-2">
<title>4.2 Lower layer model processing</title>
<p>Due to the dual-level structure of the model under study, it is necessary to appropriately handle the lower-level model to ensure it serves as a constraint for the upper-level model. In this process, we employ the KKT conditions, which are crucial for obtaining the optimal solution in nonlinear programming. By introducing the KKT conditions, even in the face of optimization problems with inequality constraints, we can still utilize the Lagrange multiplier method to continue the solution process, thereby ensuring the accuracy and effectiveness of the model.</p>
<p>The specific steps are as follows:</p>
<p>The lower-level objective function and constraints, along with their Lagrange multipliers, are multiplied to form the Lagrange function, as shown in <xref ref-type="disp-formula" rid="e42">Equation 42</xref>:<disp-formula id="e42">
<mml:math id="m93">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mi>L</mml:mi>
<mml:mo>&#x3d;</mml:mo>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>W</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>12</mml:mn>
<mml:msub>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>a</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi mathvariant="italic">max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(42)</label>
</disp-formula>
</p>
<p>The variables present in the lower-level objective function are differentiated to create new equality constraint conditions, which is shown in <xref ref-type="disp-formula" rid="e43">Equation 43</xref>:<disp-formula id="e43">
<mml:math id="m94">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mo>&#x22C5;</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>12</mml:mn>
<mml:mo>&#x22C5;</mml:mo>
<mml:msub>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x22C5;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>5</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x22C5;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22C5;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi mathvariant="italic">max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(43)</label>
</disp-formula>
</p>
<p>The modified inequality constraint conditions from the original lower-level model are retained and become the new constraint conditions of the transformed single-level model, as shown in <xref ref-type="disp-formula" rid="e44">Equations 44</xref>&#x2013;<xref ref-type="disp-formula" rid="e46">46</xref>:<disp-formula id="e44">
<mml:math id="m95">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:mo>&#x22a5;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>grid</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(44)</label>
</disp-formula>
<disp-formula id="e45">
<mml:math id="m96">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x22a5;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>grid</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(45)</label>
</disp-formula>
<disp-formula id="e46">
<mml:math id="m97">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x22a5;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi mathvariant="italic">max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>V</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(46)</label>
</disp-formula>
</p>
<p>The rewritten inequality constraint conditions from the previous step need to be processed using the Big-M method, <inline-formula id="inf52">
<mml:math id="m98">
<mml:mrow>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mi>n</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is sufficiently large constants, <inline-formula id="inf53">
<mml:math id="m99">
<mml:mrow>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mi>n</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> are binary (0&#x2013;1) variables. The resulting processed constraint conditions are given by <xref ref-type="disp-formula" rid="e47">Equations 47</xref>&#x2013;<xref ref-type="disp-formula" rid="e52">52</xref>:<disp-formula id="e47">
<mml:math id="m100">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(47)</label>
</disp-formula>
<disp-formula id="e48">
<mml:math id="m101">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>grid</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">min</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(48)</label>
</disp-formula>
<disp-formula id="e49">
<mml:math id="m102">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(49)</label>
</disp-formula>
<disp-formula id="e50">
<mml:math id="m103">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>grid</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(50)</label>
</disp-formula>
<disp-formula id="e51">
<mml:math id="m104">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(51)</label>
</disp-formula>
<disp-formula id="e52">
<mml:math id="m105">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi mathvariant="italic">max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>V</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi mathvariant="italic">max</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(52)</label>
</disp-formula>
</p>
</sec>
<sec id="s4-3">
<title>4.3 The solution process for SES configuration considering the coupling of lifespan and charge-discharge</title>
<p>In MATLAB simulation software, a dual-layer model for shared energy storage configuration, composed of minimizing total user cost and minimizing user electricity cost, is constructed. The CPLEX 12.10.0 solver is employed for optimization. To determine the optimal battery life, binary search can be used to repeatedly test midpoints within a known range. This approach allows for quick identification of the best lifespan. The ultimate goal of this method is to reduce the number of tests and increase efficiency (<xref ref-type="bibr" rid="B5">Ding et al., 2023</xref>). The solution process, as illustrated in <xref ref-type="fig" rid="F3">Figure 3</xref>, is detailed as follows:<list list-type="simple">
<list-item>
<p>Step 1: Users intending to participate in the shared energy storage project are identified. Historical load data for each user is analyzed, and the load profiles for typical days within a year are extracted.</p>
</list-item>
<list-item>
<p>Step 2: A dual-layer model for energy storage optimization is established to optimize the capacity and maximum charge-discharge power of the energy storage system. The total annual operational cost for all users throughout the lifespan of the energy storage system is calculated.</p>
</list-item>
<list-item>
<p>Step 3: Using the energy storage data configured in Step 2, the equivalent cycle life of the battery in the energy storage station is calculated by applying the Rain-flow counting method. The calculated results are compared with the expected battery life under the configuration model in Step 2, and if the condition for iterative convergence is met and the configuration is accepted by all users, the shared energy storage is configured accordingly. Otherwise, proceed to Step 4.</p>
</list-item>
<list-item>
<p>Step 4: Due to the irrationality of the configuration model, the configured result is not feasible. Employing the bisection method, the expected battery life is adjusted towards the result obtained from the Rain-flow counting method in Step 3 to obtain a new expected lifespan. Based on this new expected lifespan, Step 2 is repeated to obtain a new optimal configuration result. The comparative process is repeated until the final configuration result is obtained.</p>
</list-item>
</list>
</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Energy storage configuration flow chart with lifetime and charge-discharge coupling.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g003.tif"/>
</fig>
<p>The specific solution flow chart is shown in <xref ref-type="fig" rid="F3">Figure 3</xref>.</p>
</sec>
</sec>
<sec id="s5">
<title>5 Case studies</title>
<sec id="s5-1">
<title>5.1 Parameters Setting</title>
<p>The case study is oriented towards a multi-user energy storage project consisting of three users. The industrial time-of-use electricity prices, as shown in <xref ref-type="table" rid="T1">Table 1</xref>, are based on the price list for commercial users represented by State Grid Zhejiang Electric Power Company. The demand charge is 48 &#xa5;/kWh, collected on a monthly basis. The number of battery cycles at different DODs is referenced in <xref ref-type="table" rid="T1">Table 1</xref>. The energy storage battery selected is a lithium iron phosphate battery, and the number of battery cycles at different DODs is referenced in <xref ref-type="table" rid="T1">Table 1</xref> (<xref ref-type="bibr" rid="B12">Gao et al., 2013</xref>). Time-of-Use (Tou) Prices for industrial and commercial users is referenced in <xref ref-type="table" rid="T2">Table 2</xref>. The unit cost for user investment in energy storage station construction and unit capacity cost are referenced from the literature (<xref ref-type="bibr" rid="B12">Liu et al., 2021</xref>), with values of 1,000 &#xa5;/kW and 1,200 &#xa5;/kWh, respectively. Considering the time value of money, the annual interest rate is 4%. Users are responsible for the operation and maintenance costs of their self-built power stations, calculated as follows: each time there is an electricity flow between a user and the station, the user is required to pay an operational fee of 0.05 &#xa5;/kWh. The expected lifespan of the station is initialized to 5 years. The lower limit for the state of charge of the energy storage is 0.1, and the upper limit is 0.9. The initial state of charge and the state of charge at the final time period satisfy the continuity constraint of the energy storage device state. The number of typical days is 1.</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Cycle life of lithium iron phosphate battery at different DOD.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">DOD</th>
<th align="center">Number of battery cycles</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">100%</td>
<td align="center">3669.064</td>
</tr>
<tr>
<td align="center">80%</td>
<td align="center">4406.474</td>
</tr>
<tr>
<td align="center">60%</td>
<td align="center">5080.935</td>
</tr>
<tr>
<td align="center">40%</td>
<td align="center">5953.237</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>TOU prices for industrial and commercial users.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Period</th>
<th align="center">Time</th>
<th align="center">Electricity price (&#xa5;/kWh)</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Peak hour</td>
<td align="center">12:00&#x2013;13:00</td>
<td align="center">1.4028</td>
</tr>
<tr>
<td rowspan="2" align="center">Peak period</td>
<td align="center">9:00&#x2013;11:00</td>
<td rowspan="2" align="center">0.9644</td>
</tr>
<tr>
<td align="center">14:00&#x2013;16:00</td>
</tr>
<tr>
<td rowspan="3" align="center">Valley period</td>
<td align="center">1:00&#x2013;8:00</td>
<td rowspan="3" align="center">0.4145</td>
</tr>
<tr>
<td align="center">17:00&#x2013;19:00</td>
</tr>
<tr>
<td align="center">19:00&#x2013;24:00</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5-2">
<title>5.2 Configuration result analysis</title>
<sec id="s5-2-1">
<title>5.2.1 Initial configuration result</title>
<p>When the expected service life of the battery is initialized to 5 years, the model yields the following results: The optimal capacity of the energy storage station is 1018.2328&#xa0;kWh, with a maximum charge and discharge power of 150.71&#xa0;kW. The total cost for the user group is &#xa5;66209617.2443, and the total cost for electricity purchase by the user group is &#xa5;65916347.7008.</p>
<p>The charge and discharge status of the energy storage station at this time is shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. Energy storage tends to charge during off-peak hours, such as from midnight to 8 a.m., and then discharge during peak demand periods to reduce user load and engage in peak-valley arbitrage. However, it has also been observed that users are not very willing to participate in peak shaving with energy storage. This is due to the relatively short lifespan of energy storage systems and the significant daily investment required.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Charge and discharge of the energy storage station with a battery life of 5 years.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g004.tif"/>
</fig>
</sec>
<sec id="s5-2-2">
<title>5.2.2 Life iteration process</title>
<p>Based on the preset battery life, the battery charge and discharge status are shown in <xref ref-type="fig" rid="F4">Figure 4</xref>, and it is input into the battery life degradation model for calculation. The battery cycling within a typical day consists of two full cycles and one-half cycle, with the battery&#x2019;s charge and discharge depth being:<disp-formula id="equ1">
<mml:math id="m106">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.0162</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ2">
<mml:math id="m107">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.0997</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ3">
<mml:math id="m108">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.6830</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The calculated equivalent cycle life of the battery is 6.362 years. Using the bisection method, the preset battery life is updated to obtain the new battery life:<disp-formula id="equ4">
<mml:math id="m109">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>5.681</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The optimization model configuration process for the energy storage system is repeated. The total number of iterations is 13, and the iteration data for the battery life is shown in <xref ref-type="fig" rid="F5">Figure 5</xref>.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Battery life iteration details.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g005.tif"/>
</fig>
</sec>
<sec id="s5-2-3">
<title>5.2.3 Analysis and comparison of optimal configuration results</title>
<p>When the battery service life is 12.72 years, the operational results of the multi-user shared energy storage dual-layer model are as follows: The optimal capacity for the energy storage station for this year is 106507.5029&#xa0;kWh, and the optimal maximum charge and discharge power for the energy storage station is 11694.06&#xa0;kW. The total cost for the user group&#x2019;s annual grid electricity purchases is &#xa5;47134790.454, and the total annual electricity cost for the user group is &#xa5;60772021.6139. <xref ref-type="fig" rid="F6">Figure 6</xref> depict the grid electricity purchases by the typical daily users after updating the battery service life.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Power purchase of users after battery life renewal.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g006.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F7">Figures 7</xref>&#x2013;<xref ref-type="fig" rid="F9">9</xref> illustrate the charge and discharge status of electricity between the user group and ESS.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>User 1&#x2019;s power access after battery life renewal.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g007.tif"/>
</fig>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>User 2&#x2019;s power access after battery life renewal.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g008.tif"/>
</fig>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>User 3&#x2019;s power access after battery life renewal.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g009.tif"/>
</fig>
<p>Compared with the initial configuration results, it is evident that there has been no change in the overall electricity purchasing strategy within the user group. In contrast, the capacity and power of the energy storage system have increased significantly. This is due to the extended lifespan, which has been raised from 5 years to 12.72 years after iteration, resulting in a substantial reduction in the daily investment for the energy storage system. Consequently, users are more inclined to deploy larger capacity and power storage devices. Furthermore, thanks to the increased capacity and power, the current monthly demand charges are lower compared to the initial configuration results. The most notable changes are as follows:</p>
<p>In the optimal configuration results, User 1 purchases less electricity during the 9:00&#x2013;16:00 period, with a purchase of 3375.4&#xa0;kW at 11:00, compared to 3896.1&#xa0;kW at other times. In the initial configuration, User 2 does not purchase electricity at 10:00, buying 5362&#xa0;kW from 11:00 to 12:00, while in the optimal configuration, User 2 purchases 810.1&#xa0;kW at 10:00 and nothing at 11:00. Additionally, User 2 does not purchase electricity from 11:00 to 16:00, but increases purchases during off-peak hours to 5169.14kW, except for a purchase of 443.62&#xa0;kW at 20:00, storing the excess electricity in the station from 1:00 to 8:00 and 17:00 to 24:00. User 3 purchases less electricity during the 9:00&#x2013;16:00 period and at 20:00, with all other periods at 6133.53&#xa0;kW.</p>
<p>Under a reasonable electricity management strategy among users, User 2&#x2019;s cost reduction measure of not purchasing electricity during peak and high-demand periods has been more thoroughly implemented. This strategy not only ensures that User 2 does not incur high electricity purchase costs during peak demand periods but also optimizes the overall electricity usage pattern, further reducing the collective electricity costs for the entire user community. The charge and discharge situation of the station after updating the battery life is shown in <xref ref-type="fig" rid="F10">Figure 10</xref> Overall, compared to the initial configuration, the energy storage station shows a stronger desire to participate in load regulation. It has greater capacity and power, significantly enhancing its ability to shave peaks and fill valleys, as well as its capability for demand reduction, resulting in more noticeable benefits.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Charging and discharging of the power station after battery life renewal.</p>
</caption>
<graphic xlink:href="fenrg-12-1510259-g010.tif"/>
</fig>
<p>Compared to the configuration results with the preset 5-year battery life, the updated battery exhibits a reduced number of charge and discharge cycles, with the cycling period consisting of two cycles.<disp-formula id="equ5">
<mml:math id="m110">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.0044</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ6">
<mml:math id="m111">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.7946</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>Overall, the energy storage station&#x2019;s charging activity from 1:00 to 8:00 and 17:00 to 24:00 prepares for load reduction from 9:00 to 16:00.</p>
<p>
<xref ref-type="table" rid="T3">Table 3</xref> provides a comparison between the initial configuration results and the optimal configuration results.</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>Comparison of configuration results.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Optimization index</th>
<th align="center">Initial configuration result</th>
<th align="center">Optimal configuration result</th>
<th align="center">No ESS configured</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Rated power/kW</td>
<td align="center">150.71</td>
<td align="center">11694.06</td>
<td align="center">0</td>
</tr>
<tr>
<td align="center">Optimal capacity/kWh</td>
<td align="center">1,018.2328</td>
<td align="center">106507.5029</td>
<td align="center">0</td>
</tr>
<tr>
<td align="center">User purchase cost/&#xa5;</td>
<td align="center">6.59 &#xd7; 107</td>
<td align="center">4.71 &#xd7; 107</td>
<td align="center">6.63 &#xd7; 107</td>
</tr>
<tr>
<td align="center">Total user cost/&#xa5;</td>
<td align="center">6.62 &#xd7; 107</td>
<td align="center">6.08 &#xd7; 107</td>
<td align="center">6.63 &#xd7; 107</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>From the data in the table, it is evident that both before and after updating the battery life in the configuration of the shared energy storage station, the electricity costs for users have decreased compared to when the system was not configured.</p>
<p>Considering the energy losses in the station&#x2019;s batteries, the required station capacity should increase. With the station&#x2019;s service life updated to 12.72 years, the annual construction cost per year decreases. The increase in the station&#x2019;s charge and discharge power signifies an improved utilization rate, leading to a further reduction in users&#x2019; electricity costs compared to the initial configuration results, resulting in a significant overall cost reduction for the users.</p>
<p>Based on <xref ref-type="table" rid="T3">Table 3</xref>, the total costs of cooperative energy storage configurations for the three industrial user types in different combinations all satisfy the Super additivity condition. This indicates that by forming a cooperative alliance, the three industrial user types achieve cost reductions, resulting in cooperative surplus and consequently, excess profits.</p>
<p>According to <xref ref-type="table" rid="T4">Table 4</xref>, it is evident that the total costs for the three industrial user types through cooperative energy storage configuration are lower than the total costs without energy storage and those of individual energy storage configurations. Compared to not having energy storage, the total cost for Industrial User 1 decreases by approximately 2.39 million yuan, for Flat User 2 by approximately 2.13 million yuan, and for Industrial User 3 by approximately 1.12 million yuan, indicating a significant reduction in total costs for each user. It is apparent that this distribution result satisfies both collective rationality and individual rationality.</p>
<table-wrap id="T4" position="float">
<label>TABLE 4</label>
<caption>
<p>Cost allocation based on the Shapley value method.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Energy storage Configuration type</th>
<th align="center">Cost for User 1. (&#xa5; &#xd7; 10<sup>5</sup>)</th>
<th align="center">Cost for User 2. (&#xa5; &#xd7; 10<sup>5</sup>)</th>
<th align="center">Cost for User 3. (&#xa5; &#xd7; 10<sup>5</sup>)</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Unconfigured storage</td>
<td align="center">2,419</td>
<td align="center">2,381</td>
<td align="center">1,831</td>
</tr>
<tr>
<td align="center">Independent Storage</td>
<td align="center">2,192</td>
<td align="center">2,179</td>
<td align="center">1,738</td>
</tr>
<tr>
<td align="center">Shared Storage</td>
<td align="center">2,190</td>
<td align="center">2,168</td>
<td align="center">1,719</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Based on the above, it can be concluded that the possibility and stability of forming a cooperative alliance among the three industrial user types are ensured.</p>
</sec>
</sec>
</sec>
<sec sec-type="conclusion" id="s6">
<title>6 Conclusion</title>
<p>The configuration of shared energy storage needs to be adjusted according to the actual situation of the construction project in the region. Therefore, there is a necessity to discuss the issue of energy storage station configuration considering the capacity loss of the energy storage system. This paper optimizes the configuration of shared energy storage for multiple users, taking into account the factor of battery capacity loss during the configuration process. The calculation of battery degradation can iteratively update the device&#x2019;s life cycle for energy storage projects, thereby obtaining the most economical, environmentally friendly, reasonable, and practical optimal energy storage station configuration.<list list-type="simple">
<list-item>
<p>1) The Rain-flow counting method is utilized to decompose the battery capacity change curve, and the decomposed important parameters are used for life cycle calculation. A battery life degradation calculation model is established using specified parameters of lithium iron phosphate batteries.</p>
</list-item>
<list-item>
<p>2) The objective is to minimize the total cost of energy storage project construction and electricity usage for all users within a year, considering both the optimal electricity cost for all users and the overall optimal cost of energy storage project construction and electricity usage. A bi-level model is established to achieve the lowest total cost under the condition of optimal electricity cost. In the solution process, the Big-M method and KKT conditions are used to handle the model, ultimately transforming the nonlinear programming problem into a mixed-integer linear programming problem.</p>
</list-item>
<list-item>
<p>3) The results of the bi-level model configuration are updated with the battery life degradation model. Through multiple iterations of optimizing the shared energy storage configuration, the charging and discharging of the shared energy storage device becomes more reasonable. The extension of the shared energy storage device&#x2019;s lifespan not only reduces the waste of power resources and construction materials but also creates more collective economic benefits for multiple users.</p>
</list-item>
<list-item>
<p>4) For the alliance cost of multiple users, a Shapley value allocation model is established for fair distribution. By analyzing and comparing the costs of different users without energy storage configuration and with independent energy storage configuration, the superiority of multiple-user cooperative configuration of shared energy storage is verified, providing assurance for the maintenance and long-term stability of the cooperative alliance.</p>
</list-item>
</list>
</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s7">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding author.</p>
</sec>
<sec sec-type="author-contributions" id="s8">
<title>Author contributions</title>
<p>WW: Conceptualization, Methodology, Writing&#x2013;review and editing, Writing&#x2013;original draft. HW: Writing&#x2013;review and editing. SS: Writing&#x2013;review and editing. GC: Writing&#x2013;original draft. SW: Writing&#x2013;original draft. YJ: Writing&#x2013;original draft.</p>
</sec>
<sec sec-type="funding-information" id="s9">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. Financially supported by the Science and Technology Project of Provincial Management Industry Unit of State Grid Jiangsu Electric Power Co., Ltd. (Project No. JC2024003). The funder was not involved in the study design, collection, analysis, interpretation of data, the writing of this article, or the decision to submit it for publication.</p>
</sec>
<sec sec-type="COI-statement" id="s10">
<title>Conflict of interest</title>
<p>Authors WW, HW, SS, GC, SW, and YJ were employed by Nanjing Suyi Industrial Co., Ltd.</p>
</sec>
<sec sec-type="ai-statement" id="s12">
<title>Generative AI statement</title>
<p>The author(s) declare that no Generative AI was used in the creation of this manuscript.</p>
</sec>
<sec sec-type="disclaimer" id="s11">
<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>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Aminlou</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Mohammadi-Ivatloo</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Zare</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Razzaghi</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Anvari-Moghaddam</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Peer-to-peer decentralized energy trading in industrial town considering central shared energy storage using alternating direction method of multipliers algorithm</article-title>. <source>IET Renew. Power Gener.</source> <volume>16</volume>, <fpage>2579</fpage>&#x2013;<lpage>2589</lpage>. <pub-id pub-id-type="doi">10.1049/rpg2.12490</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Azhgaliyeva</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Energy storage and renewable energy deployment: empirical evidence from OECD countries</article-title>. <source>Innov. Solutions Energy Transitions</source> <volume>158</volume>, <fpage>3647</fpage>&#x2013;<lpage>3651</lpage>. <pub-id pub-id-type="doi">10.1016/j.egypro.2019.01.897</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Cremers</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Robu</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Andoni</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Norbu</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Flynn</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Efficient methods for approximating the Shapley value for asset sharing in energy communities</article-title>. <source>Appl. Energy</source> <volume>331</volume>, <fpage>120328</fpage>. <pub-id pub-id-type="doi">10.1016/j.apenergy.2022.120328</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Deguenon</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Yamegueu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Kadri</surname>
<given-names>S. M.</given-names>
</name>
<name>
<surname>Gomna</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Overcoming the challenges of integrating variable renewable energy to the grid: a comprehensive review of electrochemical battery storage systems</article-title>. <source>J. Power Sources</source> <volume>580</volume>, <fpage>233343</fpage>. <pub-id pub-id-type="doi">10.1016/j.jpowsour.2023.233343</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ding</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Hao</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Xia</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>A Stackelberg Game-based robust optimization for user-side energy storage configuration and power pricing</article-title>. <source>Energy</source> <volume>283</volume>, <fpage>128429</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2023.128429</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ding</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Optimal configuration of hybrid energy storage in integrated energy system</article-title>. <source>Energy Rep.</source> <volume>6</volume>, <fpage>739</fpage>&#x2013;<lpage>744</lpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2020.11.137</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Hui</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2013</year>). <article-title>Energy analysis of cycle life for lithium iron phosphate batteries used in energy storage</article-title>. <source>China Electr. Power Eng. J.</source> <volume>33</volume>, <fpage>41</fpage>&#x2013;<lpage>45</lpage>. <pub-id pub-id-type="doi">10.13334/j.0258-8013.pcsee.2013.05.016</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jianwei</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Fangjie</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Haoyu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Yi</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Pengcheng</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Configuration optimization and benefit allocation model of multi-park integrated energy systems considering electric vehicle charging station to assist services of shared energy storage power station</article-title>. <source>J. Clean. Prod.</source> <volume>336</volume>, <fpage>130381</fpage>. <pub-id pub-id-type="doi">10.1016/j.jclepro.2022.130381</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Krishnamurthy</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Uckun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Thimmapuram</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Botterud</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Energy storage arbitrage under day-ahead and real-time price uncertainty</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>33</volume>, <fpage>84</fpage>&#x2013;<lpage>93</lpage>. <pub-id pub-id-type="doi">10.1109/TPWRS.2017.2685347</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kwon</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Ntaimo</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Gautam</surname>
<given-names>N.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Optimal day-ahead power procurement with renewable energy and demand response</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>32</volume>, <fpage>3924</fpage>&#x2013;<lpage>3933</lpage>. <pub-id pub-id-type="doi">10.1109/TPWRS.2016.2643624</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lai</surname>
<given-names>S. Y.</given-names>
</name>
<name>
<surname>Qiu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Tao</surname>
<given-names>Y. C.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Individualized pricing of energy storage sharing based on discount sensitivity</article-title>. <source>IEEE Trans. Industrial Inf.</source> <volume>18</volume>, <fpage>4642</fpage>&#x2013;<lpage>4653</lpage>. <pub-id pub-id-type="doi">10.1109/TII.2021.3119953</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Dai</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Configuration and investment benefit analysis of decentralized shared energy storage for multiple types of industrial users</article-title>. <source>Electr. Power Autom. Equip.</source> <volume>21</volume>, <fpage>256</fpage>&#x2013;<lpage>264</lpage>. <pub-id pub-id-type="doi">10.16081/j.epae.202110004</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mao</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xiaotong</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Chunyun</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Aihua</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Xudong</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Multivariable coordinated nonlinear gain droop control for PV-battery hybrid DC microgrid access system via a T-S fuzzy decision approach</article-title>. <source>IEEE Access</source> <volume>10</volume>, <fpage>89414</fpage>&#x2013;<lpage>89427</lpage>. <pub-id pub-id-type="doi">10.1109/ACCESS.2022.3201149</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pan</surname>
<given-names>C. Y.</given-names>
</name>
<name>
<surname>Tao</surname>
<given-names>S. Y.</given-names>
</name>
<name>
<surname>Fan</surname>
<given-names>H. T.</given-names>
</name>
<name>
<surname>Shu</surname>
<given-names>M. Y.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Y. J.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Multi-objective optimization of a battery-supercapacitor hybrid energy storage system based on the concept of cyber-physical system</article-title>. <source>Electronics</source> <volume>10</volume>, <fpage>1801</fpage>. <pub-id pub-id-type="doi">10.3390/electronics10151801</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pedrero</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Pisciella</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Granado</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Fair investment strategies in large energy communities: a scalable Shapley value approach</article-title>. <source>Energy</source> <volume>295</volume>, <fpage>131033</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2024.131033</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Qian</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Cai</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Hao</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Meng</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Improved typical scenario-based distributionally robust co-dispatch of energy and reserve for renewable power systems considering the demand response of fused magnesium load</article-title>. <source>Front. Energy Res.</source> <volume>12</volume>. <pub-id pub-id-type="doi">10.3389/fenrg.2024.1401080</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Qian</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Gong</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>W.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Research on nash game model for user side shared energy storage pricing</article-title>. <source>Sci. Rep.</source> <volume>13</volume>, <fpage>16099</fpage>. <pub-id pub-id-type="doi">10.1038/s41598-023-43254-z</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Song</surname>
<given-names>X. L.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>H. Q.</given-names>
</name>
<name>
<surname>Fan</surname>
<given-names>L. R.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Pe&#xf1;a-Mora</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Planning shared energy storage systems for the spatio-temporal coordination of multi-site renewable energy sources on the power generation side</article-title>. <source>Energy</source> <volume>282</volume>, <fpage>128976</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2023.128976</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tahir</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Park</surname>
<given-names>D.-H.</given-names>
</name>
<name>
<surname>Park</surname>
<given-names>S.-S.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>R.-Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Optimal ESS size calculation for ramp rate control of grid-connected microgrid based on the selection of accurate representative days</article-title>. <source>Int. J. Electr. Power and Energy Syst.</source> <volume>139</volume>, <fpage>108000</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijepes.2022.108000</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Ge</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Research on user-side flexible load scheduling method based on greedy algorithm</article-title>. <source>Energy Rep.</source> <volume>8</volume>, <fpage>192</fpage>&#x2013;<lpage>201</lpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2022.10.352</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Xiong</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Guo</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Distributed shared energy storage scheduling based on optimal operating interval in generation-side</article-title>. <source>Sustain. Energy Grids and Netw.</source> <volume>34</volume>, <fpage>101026</fpage>. <pub-id pub-id-type="doi">10.1016/j.segan.2023.101026</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>K. Y.</given-names>
</name>
<name>
<surname>Liang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Jia</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X. Y.</given-names>
</name>
<name>
<surname>Du</surname>
<given-names>H. D.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>X. P.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Configuration-dispatch dual-layer optimization of multi-microgrid-integrated energy systems considering energy storage and demand response</article-title>. <source>Front. Energy Res.</source> <volume>10</volume>. <pub-id pub-id-type="doi">10.3389/fenrg.2022.953602</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2024a</year>). <article-title>Incorporate robust optimization and demand defense for optimal planning of shared rental energy storage in multi-user industrial park</article-title>. <source>Energy</source> <volume>301</volume>, <fpage>131721</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2024.131721</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Fang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Yan</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2024b</year>). <article-title>Optimal configuration of shared energy storage in industrial park considering full-cycle economic benefits in electricity market environment</article-title>. <source>Automation Electr. Power Syst.</source> <volume>48</volume>, <fpage>129</fpage>&#x2013;<lpage>138</lpage>. <pub-id pub-id-type="doi">10.7500/AEPS20230717009</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Zhu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Shi</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Guo</surname>
<given-names>W.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <article-title>Modified Shapley value-based profit allocation method for wind power accommodation and deep peak regulation of thermal power</article-title>. <source>IEEE Trans. Industry Appl.</source> <volume>59</volume>, <fpage>276</fpage>&#x2013;<lpage>288</lpage>. <pub-id pub-id-type="doi">10.1109/TIA.2022.3208866</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xie</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zheng</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2022a</year>). <article-title>Research on the transaction mode and mechanism of grid-side shared energy storage market based on blockchain</article-title>. <source>Energy Rep.</source> <volume>8</volume>, <fpage>224</fpage>&#x2013;<lpage>229</lpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2021.11.044</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xie</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Yao</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Cha</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>Y.</given-names>
</name>
<etal/>
</person-group> (<year>2022c</year>). <article-title>A cooperative game-based sizing and configuration of community-shared energy storage</article-title>. <source>Energies</source> <volume>15</volume>, <fpage>8626</fpage>. <pub-id pub-id-type="doi">10.3390/en15228626</pub-id>
</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xie</surname>
<given-names>Y. L.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2022b</year>). <article-title>Research on shared energy storage configuration considering energy storage battery capacity attenuation</article-title>. <source>Guangdong Electr. Power</source> <volume>35</volume>, <fpage>25</fpage>&#x2013;<lpage>32</lpage>. <pub-id pub-id-type="doi">10.3969/j.issn.1007-290X.2022.005.003</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Study on the economic benefits of retired electric vehicle batteries participating in the electricity markets</article-title>. <source>J. Clean. Prod.</source> <volume>286</volume>, <fpage>125414</fpage>. <pub-id pub-id-type="doi">10.1016/j.jclepro.2020.125414</pub-id>
</citation>
</ref>
<ref id="B40">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Pricing method of shared energy storage bias insurance service based on large number theorem</article-title>. <source>J. Energy Storage</source> <volume>69</volume>, <fpage>107726</fpage>. <pub-id pub-id-type="doi">10.1016/j.est.2023.107726</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yan</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Review on business mode and pricing mechanism for shared energy storage</article-title>. <source>Autom. Electr. Power Syst.</source> <volume>46</volume>, <fpage>178</fpage>&#x2013;<lpage>191</lpage>. <pub-id pub-id-type="doi">10.7500/AEPS20220219003</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Y. H.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>J. H.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>She</surname>
<given-names>L. H.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <article-title>Distributed shared energy storage double-layer optimal configuration for source-grid Co-optimization</article-title>. <source>PROCESSES</source> <volume>11</volume>, <fpage>2194</fpage>. <pub-id pub-id-type="doi">10.3390/pr11072194</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>Hu</surname>
<given-names>G. Q.</given-names>
</name>
<name>
<surname>Spanos</surname>
<given-names>C. J.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Optimal sharing and fair cost allocation of community energy storage</article-title>. <source>IEEE Trans. Smart Grid</source> <volume>12</volume>, <fpage>4185</fpage>&#x2013;<lpage>4194</lpage>. <pub-id pub-id-type="doi">10.1109/TSG.2021.3083882</pub-id>
</citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Zhu</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Cui</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Su</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Research on regulation method of energy storage system based on multi-stage robust optimization</article-title>. <source>Energy</source> <volume>121</volume>, <fpage>807</fpage>&#x2013;<lpage>820</lpage>. <pub-id pub-id-type="doi">10.32604/ee.2023.028167</pub-id>
</citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yasmin</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Amin</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Shah</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Barton</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>A survey of commercial and industrial demand response flexibility with energy storage systems and renewable energy</article-title>. <source>Sustain.</source> <volume>16</volume>, <fpage>731</fpage>. <pub-id pub-id-type="doi">10.3390/su16020731</pub-id>
</citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zeng</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Gong</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xiao</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Liang</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>Research on interval optimization of power system considering shared energy storage and demand response</article-title>. <source>J. Energy Storage</source> <volume>86</volume>, <fpage>111273</fpage>. <pub-id pub-id-type="doi">10.1016/j.est.2024.111273</pub-id>
</citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>W. Y.</given-names>
</name>
<name>
<surname>Zheng</surname>
<given-names>B. S.</given-names>
</name>
<name>
<surname>Wei</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>L. J.</given-names>
</name>
<name>
<surname>Mei</surname>
<given-names>S. W.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Peer-to-peer transactive mechanism for residential shared energy storage</article-title>. <source>Energy</source> <volume>246</volume>, <fpage>123204</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2022.123204</pub-id>
</citation>
</ref>
<ref id="B37">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Research on operation optimization of energy storage power station and integrated energy microgrid alliance based on Stackelberg game</article-title>. <source>Energy</source> <volume>121</volume>, <fpage>1209</fpage>&#x2013;<lpage>1221</lpage>. <pub-id pub-id-type="doi">10.32604/ee.2024.046141</pub-id>
</citation>
</ref>
<ref id="B38">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Ouahada</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>A distributed real-time control algorithm for energy storage sharing</article-title>. <source>Energy Build.</source> <volume>230</volume>, <fpage>110478</fpage>. <pub-id pub-id-type="doi">10.1016/j.enbuild.2020.110478</pub-id>
</citation>
</ref>
<ref id="B39">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Ouahada</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Abu-Mahfouz</surname>
<given-names>A. M.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Peer-to-peer energy trading in smart energy communities: a lyapunov-based energy control and trading system</article-title>. <source>IEEE access</source> <volume>10</volume>, <fpage>42916</fpage>&#x2013;<lpage>42932</lpage>. <pub-id pub-id-type="doi">10.1109/access.2022.3167828</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>