<?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">1535211</article-id>
<article-id pub-id-type="doi">10.3389/fenrg.2025.1535211</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>Data-driven industrial park microgrids robust optimization method</article-title>
<alt-title alt-title-type="left-running-head">Ru 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.2025.1535211">10.3389/fenrg.2025.1535211</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Ru</surname>
<given-names>Chuanhong</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2906181/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Li</surname>
<given-names>Lei</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Lu</surname>
<given-names>Ji</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Jiang</surname>
<given-names>Beini</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>State Grid TaiZhou Power Supply Company</institution>, <addr-line>Taizhou</addr-line>, <country>China</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>State Grid ZheJiang Electric Power Corporation</institution>, <addr-line>Hangzhou</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/558033/overview">ZhaoYang Dong</ext-link>, City University of Hong Kong, Hong Kong SAR, 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/2277306/overview">Qianzhi Zhang</ext-link>, Cornell University, United States</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1603165/overview">Jun Yang</ext-link>, Northeastern University, China</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Chuanhong Ru, <email>15271023788@163.com</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>28</day>
<month>08</month>
<year>2025</year>
</pub-date>
<pub-date pub-type="collection">
<year>2025</year>
</pub-date>
<volume>13</volume>
<elocation-id>1535211</elocation-id>
<history>
<date date-type="received">
<day>27</day>
<month>11</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>06</day>
<month>08</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2025 Ru, Li, Lu and Jiang.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Ru, Li, Lu and Jiang</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>In order to accurately describe the impact of the volatility and randomness of renewable energy output power on the operation of industrial park microgrids, a data-driven robust optimization method for industrial park microgrids is proposed. Firstly, based on the traditional interval set, the uncertain parameters of renewable energy output are modeled using a polyhedral set. Then, an ellipsoidal uncertainty set is established using historical data of renewable energy output. By connecting high-dimensional ellipsoidal vertices, a data-driven convex hull polyhedron set is established. Then, the uncertain parameters are better enveloped by scaling the convex hull set. A data-driven robust optimization model for industrial park microgrid was further established, and the column and constraint (C&#x26;CG) generation algorithm was used to solve the model. Finally, simulation comparisons were conducted through examples, and the results showed that the data-driven industrial park microgrids robust optimization method can reduce conservatism and improve the robustness of optimization results, demonstrating the effectiveness of the proposed method.</p>
</abstract>
<kwd-group>
<kwd>industrial park microgrids</kwd>
<kwd>data-driven</kwd>
<kwd>robust optimization</kwd>
<kwd>convex hull set</kwd>
<kwd>column and constraint generation algorithm</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Smart Grids</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>With the increasingly prominent environmental and climate issues caused by excessive reliance on traditional fossil fuels, accelerating energy transition and sustainable development on a global scale has become a widely accepted consensus (<xref ref-type="bibr" rid="B8">Farh et al., 2024</xref>). To address the challenges of energy supply diversity and the intermittency of renewable energy sources, the industrial park microgrids featuring complementary and coupled forms of multiple energy supplies has emerged (<xref ref-type="bibr" rid="B12">Ishaq and Dincer, 2024</xref>). However, due to the instability of renewable energy outputs, power generation is affected by various factors such as climate, weather, and seasons, leading to significant fluctuations in power supply. These fluctuations can potentially trigger instability or even collapse of the industrial park microgrids, posing significant challenges to its safety and stability (<xref ref-type="bibr" rid="B18">Poodeh et al., 2025</xref>).</p>
<p>Existing research on the industrial park microgrids operation planning focuses on energy utilization efficiency and enhancing system stability. For instance, in <xref ref-type="bibr" rid="B3">Arooj (2024)</xref>, system stability is improved by adopting demand-side response under the premise of considering flexible resources. In <xref ref-type="bibr" rid="B20">Rezazadeh and Avami (2024)</xref>, a comprehensive energy system with detailed power-to-gas conversion and carbon cycling is established through the utilization of the carbon trading market. In <xref ref-type="bibr" rid="B19">Rahman et al. (2025)</xref>, the grid partitioning of the integrated energy system is optimized by taking into account the characteristics of the load, thereby achieving cost reduction. Synthesizing these studies, there is a noticeable lack of consideration given to the uncertainty of renewable energy output.</p>
<p>To address the issue of uncertainty in renewable energy output, existing uncertainty optimization methods are mainly categorized into two types: stochastic optimization methods (<xref ref-type="bibr" rid="B6">Davidsdottir et al., 2024</xref>; <xref ref-type="bibr" rid="B21">Son and Kim, 2024</xref>; <xref ref-type="bibr" rid="B2">Aliasghar et al., 2022</xref>) and robust optimization methods (<xref ref-type="bibr" rid="B24">Vulusala and Madichetty, 2018</xref>; <xref ref-type="bibr" rid="B22">Stewart and Bingham, 2016</xref>). Robust optimization methods typically use a set-based approach to describe the distribution range of uncertain parameters. Unlike stochastic methods, robust optimization does not require the probability distribution of uncertain parameters and avoids the high-dimensional problems introduced by numerous scenarios. Consequently, it has gained increasing attention in the optimal operation of industrial park microgrids.</p>
<p>To enhance the reliability of robust optimization results and describe the correlations among uncertain parameters, recent studies have employed historical data of uncertain variables to explore the relationships between the variations of random variables, leading to the proposal of data-driven uncertainty sets (<xref ref-type="bibr" rid="B23">Sulaiman et al., 2024</xref>; <xref ref-type="bibr" rid="B9">Freitas et al., 2007</xref>; <xref ref-type="bibr" rid="B11">Ibraheemi and Janabi, 2024</xref>). For instance (<xref ref-type="bibr" rid="B25">Zhang et al., 2024a</xref>), constructed the uncertainty of photovoltaic power generation using historical data from smart meters and phasor measurement units to solve the problem of voltage regulation (<xref ref-type="bibr" rid="B26">Zhang et al., 2024b</xref>). constructed an uncertainty set using historical vehicle travel data to analyze the impact of large-scale transportation electrification on power systems (<xref ref-type="bibr" rid="B14">Lorca and Sun, 2015</xref>). established a polyhedral uncertainty set based on historical wind power data for economic dispatch modeling, analysis, and optimization (<xref ref-type="bibr" rid="B13">Jalilvand-Nejad et al., 2016</xref>). Proposed a correlated polyhedral uncertainty set model by bending the boundaries of a polyhedral set through mathematical analysis, building on the polyhedral set approach (<xref ref-type="bibr" rid="B10">Hamed and Rasoul, 2021</xref>). further refined the approach of <xref ref-type="bibr" rid="B13">Jalilvand-Nejad et al. (2016)</xref> by constructing a generalized correlated polyhedral uncertainty set model, allowing the polyhedral set to better envelop the range of uncertain parameters (<xref ref-type="bibr" rid="B7">Degefa et al., 2015</xref>). Constructed an ellipsoidal set to describe photovoltaic (PV) output and proposed an affine adjustable robust optimization strategy for active distribution networks. Although the ellipsoidal set effectively considers the correlations among uncertain parameters, its nonlinear structure increases the difficulty of solving the model. While <xref ref-type="bibr" rid="B14">Lorca and Sun (2015)</xref>, <xref ref-type="bibr" rid="B13">Jalilvand-Nejad et al. (2016)</xref>, <xref ref-type="bibr" rid="B10">Hamed and Rasoul (2021)</xref>, and <xref ref-type="bibr" rid="B7">Degefa et al. (2015)</xref> consider the correlations within the uncertainty sets, the broader coverage of the uncertainty sets they establish can lead to increased conservatism in decision-making.</p>
<p>In addition to polyhedral and ellipsoidal sets, another common method is constructing uncertainty sets based on extreme scenarios. In <xref ref-type="bibr" rid="B16">Moradian et al. (2024)</xref> and <xref ref-type="bibr" rid="B1">Akter et al. (2025)</xref>, historical data is first selected to form the uncertainty set. Then, extreme scenarios are identified based on the historical data, and convex hull sets are constructed from these scenarios. An appropriate scaling factor is introduced to cover all historical data, and finally, a robust optimization model based on extreme scenarios is established. The method in <xref ref-type="bibr" rid="B4">Ayene and Yibre (2024)</xref> and <xref ref-type="bibr" rid="B5">Bifei et al. (2022)</xref> does not predefine the shape of the uncertainty set but represents it as the convex hull of historical scenarios. These studies have made improvements regarding the conservativeness of polyhedral sets. However, although the uncertainty sets based on extreme scenarios can address the conservatism issue, they have a large number of vertices, making them difficult to solve. Therefore, this paper proposes a data-driven convex hull uncertainty set model. This model can not only reduce the conservatism of the solution but also decrease the difficulty of solving.</p>
<p>Against this research backdrop, considering the lack of attention to uncertain energy inputs in industrial park microgrids, this paper proposes a data-driven robust optimization method for industrial park microgrids. First, traditional polyhedral set modeling is conducted based on interval sets. Then, ellipsoidal sets are constructed based on historical scenarios, and the vertices of the ellipsoids are connected to form convex hull polyhedral sets. Finally, the constructed convex hull set is scaled to cover all historical scenarios. Furthermore, the data-driven convex hull model is embedded into the robust optimization model of the industrial park microgrids. The effectiveness of iu-the proposed method is verified through a case study of an integrated energy system in a specific region.</p>
<p>This paper will mainly make contributions in the following aspects:<list list-type="simple">
<list-item>
<p>1. In view of the current situation that the integrated energy system insufficiently considers the injection of uncertain energy sources, a data-driven robust optimization method for industrial park microgrids is proposed.</p>
</list-item>
<list-item>
<p>2. Aiming at the deficiencies of traditional uncertain set modeling, traditional polyhedron set modeling is first carried out on the interval set. Then, an elliptical set is constructed based on historical scenarios. Subsequently, the vertices of the ellipse are connected to construct a convex hull polyhedron set, and all historical scenarios are covered by scaling, thus establishing a unique data-driven modeling method.</p>
</list-item>
<list-item>
<p>3. The well-constructed data-driven convex hull set model is successfully embedded into the robust optimization model of the industrial park microgrids. Moreover, with the help of an example of an industrial park microgrid in a certain region, the effectiveness of the proposed method is verified.</p>
</list-item>
</list>
</p>
<p>The rest of this article is organized as follows: <xref ref-type="sec" rid="s2">Section 2</xref> introduces the different uncertain set modeling. The industrial park microgrid optimization model is introduced in <xref ref-type="sec" rid="s3">Section 3</xref>. In <xref ref-type="sec" rid="s4">Section 4</xref>, the specific objective function and constraints is presented. <xref ref-type="sec" rid="s5">Section 5</xref> studies the robust optimization method for microgrid in industrial park. Finally, <xref ref-type="sec" rid="s6">Section 6</xref> concludes.</p>
</sec>
<sec id="s2">
<title>2 Uncertain set modeling</title>
<sec id="s2-1">
<title>2.1 Traditional uncertain set modeling</title>
<p>In this paper, the budget uncertainty set <italic>U</italic> is used to express the range of fluctuations in the magnitude of PV as well as wind power output. The specific expression is shown in <xref ref-type="disp-formula" rid="e1">Equation 1</xref>:<disp-formula id="e1">
<mml:math id="m1">
<mml:mrow>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>z</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>z</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>PV</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">f</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mo>&#x394;</mml:mo>
<mml:msup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>PV</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mi>z</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>WT</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">f</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mo>&#x394;</mml:mo>
<mml:msup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>WT</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mi>z</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>where <inline-formula id="inf1">
<mml:math id="m2">
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf2">
<mml:math id="m3">
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denote the actual magnitude of output at the moment t for PV and wind power, respectively; <inline-formula id="inf3">
<mml:math id="m4">
<mml:mrow>
<mml:msubsup>
<mml:mi>z</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf4">
<mml:math id="m5">
<mml:mrow>
<mml:msubsup>
<mml:mi>z</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the actual output levels of PV and wind power generation at the moment <italic>t</italic> respectively. <inline-formula id="inf5">
<mml:math id="m6">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>PV</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">f</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf6">
<mml:math id="m7">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>WT</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">f</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the predicted power output levels of PV and wind energy at the moment t respectively; <inline-formula id="inf7">
<mml:math id="m8">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>PV</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf8">
<mml:math id="m9">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>WT</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> denote the maximum fluctuation values of PV and wind power generation, respectively; <inline-formula id="inf9">
<mml:math id="m10">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the vector set of PV and wind power output; <inline-formula id="inf10">
<mml:math id="m11">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> stands for the vector set of uncertain variables in PV and wind power generation.</p>
<p>When there is no spatiotemporal correlation between uncertain variables, to better represent the range of variation of uncertain variables, this paper first characterizes them using traditional box sets and polyhedral sets, as shown below.</p>
<sec id="s2-1-1">
<title>2.1.1 Box set</title>
<p>The specific expression for a box set can be given as:<disp-formula id="e2">
<mml:math id="m12">
<mml:mrow>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x7c;</mml:mo>
<mml:mi>&#x3b2;</mml:mi>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mtext>down</mml:mtext>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>&#x3b2;</mml:mi>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mtext>up</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>where <inline-formula id="inf11">
<mml:math id="m13">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the dimension of the uncertain variable; <inline-formula id="inf12">
<mml:math id="m14">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mtext>down</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf13">
<mml:math id="m15">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mtext>up</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the maximum and minimum values of the uncertain variables, with values set to 1 and &#x2212;1, respectively; <inline-formula id="inf14">
<mml:math id="m16">
<mml:mrow>
<mml:mi>&#x3b2;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, which is the adjustment coefficient used to regulate the conservativeness of the uncertain set, is set to <inline-formula id="inf15">
<mml:math id="m17">
<mml:mrow>
<mml:mfenced open="(" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>From <xref ref-type="disp-formula" rid="e2">Equation 2</xref>, it can be seen that the box set is merely an interval representation of the uncertain variable, and under normal circumstances, the values are often taken at the boundaries. However, since the extreme conditions corresponding to the boundary values have a lower probability of occurrence, the box set fails to accurately represent most other cases. Therefore, a polyhedral set is often required.</p>
</sec>
<sec id="s2-1-2">
<title>2.1.2 Polyhedral set</title>
<p>The specific expression is shown in <xref ref-type="disp-formula" rid="e3">Equation 3</xref>:<disp-formula id="e3">
<mml:math id="m18">
<mml:mrow>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="|" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3b2;</mml:mi>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mtext>down</mml:mtext>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>&#x3b2;</mml:mi>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mtext>up</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>i</mml:mi>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>where <inline-formula id="inf16">
<mml:math id="m19">
<mml:mrow>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the uncertainty of the polyhedral set of uncertain variables, used to constrain the range of uncertainty of the polyhedral set. When the uncertain variables are two-dimensional, the envelope ranges of the polyhedral sets corresponding to different matrices <inline-formula id="inf17">
<mml:math id="m20">
<mml:mrow>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> are illustrated as shown in <xref ref-type="fig" rid="F1">Figure 1</xref>.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>The impact of uncertainty on polyhedral sets.</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g001.tif">
<alt-text content-type="machine-generated">Graph depicting polyhedral uncertainty sets for different values of &#x393; in a coordinate plane with axes labeled \( z_1 \) and \( z_2 \). Three nested diamond-shaped regions are shown: white for &#x393; &#x3d; 0.5, gray for &#x393; &#x3d; 1, and black for &#x393; &#x3d; 1.5.</alt-text>
</graphic>
</fig>
</sec>
</sec>
<sec id="s2-2">
<title>2.2 Data-driven modeling of uncertain set</title>
<p>When there is spatiotemporal correlation among uncertain parameters, envelope lines can be adopted to represent different sets based on the scatter plots formed by the historical data of uncertain renewable energy output. <xref ref-type="fig" rid="F2">Figure 2</xref> illustrates the difference in envelope ranges when using box sets and ellipsoid sets.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>The envelope range of an uncertain set. <bold>(a)</bold> Box set. <bold>(b)</bold> Ellipsoid set.</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g002.tif">
<alt-text content-type="machine-generated">Scatter plots comparing two data sets labeled \(Z_1\) and \(Z_2\). Image (a) shows a box set with data points within a square outline. Image (b) displays an ellipsoid set with points encircled by a dotted ellipse. Both plots contain blue data points and are on similar axes from -1.5 to 1.5.</alt-text>
</graphic>
</fig>
<p>As can be seen in <xref ref-type="fig" rid="F2">Figure 2a</xref>, the box set envelopes all possible outcomes of distributed PV and wind power generation. However, due to the inherent spatiotemporal correlation of distributed PV at different times and locations, the PV output data predominantly clusters around the <italic>y &#x3d; x</italic> and <italic>y &#x3d; &#x2212;x</italic> function lines. In this scenario, using a box set to describe the uncertainty of PV output may lead to overly conservative optimization solutions, since the box set not only encompasses all possible fluctuations but also covers areas with low probability of occurrence, which are essentially blank spaces. Therefore, it is necessary to adopt a more suitable modeling approach for uncertain sets.</p>
<sec id="s2-2-1">
<title>2.2.1 Ellipsoid set</title>
<p>The specific expression is shown in <xref ref-type="disp-formula" rid="e4">Equation 4</xref>:<disp-formula id="e4">
<mml:math id="m21">
<mml:mrow>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x7c;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3a3;</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>where <inline-formula id="inf18">
<mml:math id="m22">
<mml:mrow>
<mml:mi mathvariant="bold-italic">c</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the center point of a high-dimensional ellipsoid, while <inline-formula id="inf19">
<mml:math id="m23">
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a3;</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> is a positive definite matrix indicating the offset direction of the high-dimensional ellipsoid relative to the coordinate axes.</p>
<p>As illustrated in <xref ref-type="fig" rid="F2">Figure 2b</xref>, the ellipsoid set, similar to the box set, envelopes all possible outcomes of distributed power generation. Unlike the box set, however, the ellipsoid set reduces the envelopment of blank areas with low probability of fluctuation occurrence, thereby decreasing the conservativeness of the decision results. However, due to the quadratic form of the ellipsoid set&#x2019;s expression, it introduces complexity in the robust optimization process, increasing the difficulty of the solution.</p>
</sec>
<sec id="s2-2-2">
<title>2.2.2 Generalized convex hull set</title>
<p>Building upon this (<xref ref-type="bibr" rid="B16">Moradian et al., 2024</xref>), proposed a generalized convex hull set, which not only effectively reduces the conservativeness of optimization outcomes but also avoids the introduction of quadratic forms during the modeling process. Thus, based on <xref ref-type="bibr" rid="B16">Moradian et al. (2024)</xref>, this paper constructs a data-driven uncertain set, with the modeling process illustrated in <xref ref-type="fig" rid="F3">Figure 3</xref>.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>The modeling process for the convex hull uncertainty set (parts <bold>(a&#x2013;d)</bold> illustrate key transformation steps).</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g003.tif">
<alt-text content-type="machine-generated">Diagram illustrating the transformation of a data set. Panel (a) shows an ellipsoid with blue points. Panel (b) depicts the original set rotated and translated into a convex hull. Panel (c) scales the set, displaying coordinates transformations. Panel (d) rotates and translates the scaled set into a new position. Labels indicate the ellipsoid set, original convex hull, and scaling convex hull.</alt-text>
</graphic>
</fig>
<p>Step (1): Firstly, construct a high-dimensional ellipsoidal uncertainty set that covers all historical data fluctuations with minimal volume, as illustrated in <xref ref-type="fig" rid="F3">Figure 3a</xref>. The specific representation is given by <xref ref-type="disp-formula" rid="e5">Equation 5</xref>, which is:<disp-formula id="e5">
<mml:math id="m24">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x7c;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3a3;</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>
</p>
<p>Step (2): On the basis of the original high-dimensional ellipsoid, perform an orthogonal decomposition of the positive definite matrix <inline-formula id="inf20">
<mml:math id="m25">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3a3;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> into matrix <inline-formula id="inf21">
<mml:math id="m26">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3a3;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mi mathvariant="bold-italic">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">J</mml:mi>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mi mathvariant="bold-italic">J</mml:mi>
<mml:mi mathvariant="bold-italic">P</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Rotate and translate the existing ellipsoid so that its center coincides with the origin of the coordinate axes, as shown by the green dashed line in <xref ref-type="fig" rid="F3">Figure 3b</xref>. At this point, the high-dimensional ellipsoidal uncertainty set becomes <inline-formula id="inf22">
<mml:math id="m27">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, which is shown in <xref ref-type="disp-formula" rid="e6">Equation 6</xref>:<disp-formula id="e6">
<mml:math id="m28">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x7c;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:msup>
<mml:mi mathvariant="bold-italic">J</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>
<disp-formula id="e7">
<mml:math id="m29">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>where <inline-formula id="inf23">
<mml:math id="m30">
<mml:mrow>
<mml:mi mathvariant="bold-italic">J</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is a diagonal matrix, denoted as <inline-formula id="inf24">
<mml:math id="m31">
<mml:mrow>
<mml:mi mathvariant="bold-italic">J</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mtext>diag</mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2026;</mml:mo>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; <italic>P</italic> is a transformation matrix, representing the offset angle of the matrix.</p>
<p>Given the diagonal matrix <inline-formula id="inf25">
<mml:math id="m32">
<mml:mrow>
<mml:mi mathvariant="bold-italic">J</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, the coordinates of the vertices <inline-formula id="inf26">
<mml:math id="m33">
<mml:mrow>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> of the transformed high-dimensional ellipsoid are shown in <xref ref-type="disp-formula" rid="e8">Equation 8</xref>:<disp-formula id="e8">
<mml:math id="m34">
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msub>
</mml:msub>
</mml:msqrt>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
</mml:msqrt>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>where <inline-formula id="inf27">
<mml:math id="m35">
<mml:mrow>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the weight coefficient of the <italic>i</italic>-th vertex.</p>
<p>Step (3): Due to the high-dimensional linear polyhedral set obtained from step 2, a small number of data points fall outside the envelope. Therefore, a scaling process is necessary for the original set, as shown by the solid lines in <xref ref-type="fig" rid="F3">Figure 3c</xref>. After scaling, the vertices of the high-dimensional linear polyhedron are shown in <xref ref-type="disp-formula" rid="e9">Equation 9</xref>:<disp-formula id="e9">
<mml:math id="m36">
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:msqrt>
<mml:mo>&#x2026;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
</mml:msqrt>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
</mml:msqrt>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>At this point, the scaled high-dimensional linear polyhedral uncertainty set <inline-formula id="inf28">
<mml:math id="m37">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is shown in <xref ref-type="disp-formula" rid="e10">Equation 10</xref>:<disp-formula id="e10">
<mml:math id="m38">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="|" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<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:mrow>
<mml:mn>2</mml:mn>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<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:mrow>
<mml:mn>2</mml:mn>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>where <inline-formula id="inf29">
<mml:math id="m39">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the scaling factor, used to adjust the conservativeness of the high-dimensional linear polyhedral envelope range. The calculation method for <inline-formula id="inf30">
<mml:math id="m40">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is detailed in <xref ref-type="bibr" rid="B16">Moradian et al. (2024)</xref>, thus there exists a minimum <inline-formula id="inf31">
<mml:math id="m41">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> that ensures the scaled polyhedral set precisely envelops all possible data points. The derivation process of <inline-formula id="inf32">
<mml:math id="m42">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is shown in <xref ref-type="sec" rid="s14">Supplementary Appendix SA1</xref>. Consequently, the valid range for <inline-formula id="inf33">
<mml:math id="m43">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is <inline-formula id="inf34">
<mml:math id="m44">
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula>, and the polyhedral sets formed by different values of <inline-formula id="inf35">
<mml:math id="m45">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> are illustrated in <xref ref-type="fig" rid="F4">Figure 4</xref>.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>The range of convex hull sets under different values of k.</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g004.tif">
<alt-text content-type="machine-generated">Scatter plot with blue points and multiple polygons centered on the origin. Polygons represent different convex polyhedrons: solid black for \( k_{\text{min}} \), solid grey for \( k&#x3d;1 \), dashed for \( k&#x3d;[0,1] \), and dotted for \( k&#x3d;[1, k_{\text{min}}] \). The box set is in a bold black outline. Axes labeled \( Z_1 \) and \( Z_2 \) from \(-1.5\) to \(1.5\).</alt-text>
</graphic>
</fig>
<p>The scaling factor influences the degree to which the convex hull set envelops data points. When <inline-formula id="inf36">
<mml:math id="m46">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, the convex hull set, formed by connecting the ellipsoid&#x2019;s endpoints, does indeed envelop all historical PV output points. However, it fails to fully account for certain extreme scenarios, which, while reducing the conservativeness of the optimization outcomes, compromises the system&#x2019;s robustness. By gradually increasing the scaling factor of the convex hull set until it equals <inline-formula id="inf37">
<mml:math id="m47">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, the set now fully encompasses all historical output points. Unlike the box set, it minimally envelops blank areas, thus, while decreasing the conservativeness of the optimization results, it enhances the robustness of the outcomes simultaneously.</p>
<p>Step (4): Rotate and translate the scaled high-dimensional linear polyhedron so that it conforms to the original data points&#x2019; range. From <xref ref-type="disp-formula" rid="e7">Equation 7</xref>, it is known that after rotation and translation, the high-dimensional linear polyhedral uncertainty set <inline-formula id="inf38">
<mml:math id="m48">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is shown in <xref ref-type="disp-formula" rid="e11">Equation 11</xref>:<disp-formula id="e11">
<mml:math id="m49">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">U</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">R</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="|" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<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:mrow>
<mml:mn>2</mml:mn>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>k</mml:mi>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msup>
<mml:msub>
<mml:mi mathvariant="bold-italic">z</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<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:mrow>
<mml:mn>2</mml:mn>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<p>In summary, when the box set is used to describe the fluctuation of photovoltaic output, because it is an interval set, as shown in the black box square box line in <xref ref-type="fig" rid="F4">Figure 4</xref>. Although it completely envelopes all the possibilities of photovoltaic output, due to the existence of a large number of blank areas, the results obtained by using this set are conservative to a certain extent. When the convex hull set is used, it is shown in the color diamond box in <xref ref-type="fig" rid="F4">Figure 4</xref>. Since it is connected by the endpoints of the elliptical set and the polyhedron set obtained by scaling, it has a good ability to describe the historical output points of the photovoltaic, and reduces the envelope of the blank area while completely enveloping. This solves the disadvantage of high conservatism brought by the box set.</p>
</sec>
</sec>
</sec>
<sec id="s3">
<title>3 Industrial park microgrid optimization modeling</title>
<sec id="s3-1">
<title>3.1 Industrial park microgrid system</title>
<p>The power-to-gas industrial park microgrid system is an integrated system that combines electricity, thermal energy, and gas energy, typically involving various energy conversion and utilization technologies, aiming to achieve efficient energy utilization and complementarity.</p>
<p>The typical power-to-gas industrial park microgrid system established in this paper consists of the following components, and the industrial park microgrid system diagram is shown in <xref ref-type="fig" rid="F5">Figure 5</xref>.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Industrial park microgrid system diagram.</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g005.tif">
<alt-text content-type="machine-generated">Diagram illustrating an energy system network with connections for electricity, gas, thermal, and cooling loads. Components include Wind Turbine (WT), Photovoltaic (PV), Energy Storage (ES), Electricity Grid (EG), Microturbine (MR), Gas Turbine (GT), Heat Pump (HFC), Absorption Chiller (AC), Electric Chiller (EC), Heat Exchanger (EH), and Cooling Systems (CS). Lines indicate different types of load connections among components.</alt-text>
</graphic>
</fig>
<p>Renewable energy facilities, including solar photovoltaic (PV) systems and wind turbine generation (WT) systems, which primarily convert renewable energy such as solar and wind power into electricity to supply electric loads; energy storage facilities, including battery energy storage systems (ES), heat storage systems (HS), and cold storage systems (CS), which not only provide energy to the system but also store excess energy for future use; heating equipment, such as gas boilers (GB) and excess heat boilers (EH); cooling equipment, such as absorption refrigerators (AC); and various energy conversion equipment, including gas turbines (GT), electroliers (EG), methane reactors (MR), hydrogen storage tanks (CH), hydrogen fuel cells (HFC), and electric chillers (EC).</p>
</sec>
<sec id="s3-2">
<title>3.2 Demand-side response model</title>
<p>In order to better accommodate clean energy and enhance the stability and economic efficiency of the system, a demand-side response model needs to be established on the load side. The model is constructed as follows:<disp-formula id="e12">
<mml:math id="m50">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3be;</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>cur</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>cur</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
<disp-formula id="e13">
<mml:math id="m51">
<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:mi>T</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>cur</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<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:mi>T</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>
<disp-formula id="e14">
<mml:math id="m52">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>cur</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>cur</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>cur</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>
<disp-formula id="e15">
<mml:math id="m53">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>cur</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mtext>peak</mml:mtext>
</mml:msup>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>t</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>T</mml:mi>
<mml:mtext>peak</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mtext>valley</mml:mtext>
</mml:msup>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mi>t</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>T</mml:mi>
<mml:mtext>valley</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>where <inline-formula id="inf39">
<mml:math id="m54">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3be;</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the price elasticity coefficient at the moment <inline-formula id="inf40">
<mml:math id="m55">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>; <inline-formula id="inf41">
<mml:math id="m56">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the change in the demand-side load before and after the response is implemented at the moment <inline-formula id="inf42">
<mml:math id="m57">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>; <inline-formula id="inf43">
<mml:math id="m58">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the change in the demand-side electricity price before and after the response is implemented at the moment <inline-formula id="inf44">
<mml:math id="m59">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>; <inline-formula id="inf45">
<mml:math id="m60">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">D</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf46">
<mml:math id="m61">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>cur</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> respectively represent the electricity price before and after the demand side response is applied at the moment <inline-formula id="inf47">
<mml:math id="m62">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>; <inline-formula id="inf48">
<mml:math id="m63">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>cur</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf49">
<mml:math id="m64">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>cur</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> respectively represent the upper and lower limits of the electricity price before and after the demand side response are applied at the moment <inline-formula id="inf50">
<mml:math id="m65">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>; <inline-formula id="inf51">
<mml:math id="m66">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mtext>peak</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf52">
<mml:math id="m67">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mtext>valley</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represent the peak and valley power before the demand-side response is implemented; <inline-formula id="inf53">
<mml:math id="m68">
<mml:mrow>
<mml:msup>
<mml:mi>T</mml:mi>
<mml:mtext>peak</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf54">
<mml:math id="m69">
<mml:mrow>
<mml:msup>
<mml:mi>T</mml:mi>
<mml:mtext>valley</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> respectively represent the time periods of peak and valley power after the demand-side response is implemented. <xref ref-type="disp-formula" rid="e12">Equation 12</xref> defines the elastic relationship between electricity price and load. <xref ref-type="disp-formula" rid="e13">Equation 13</xref> ensures the balance of total electricity consumption before and after the response. <xref ref-type="disp-formula" rid="e14">Equation 14</xref> defines the value range of electricity price. <xref ref-type="disp-formula" rid="e15">Equation 15</xref> defines the peak and valley values of electricity price. The modeling of thermal load response follows the same logic.</p>
</sec>
<sec id="s3-3">
<title>3.3 IDR model</title>
<p>However, the demand-side response model only focuses on making response strategies for a single type of demand-side resource, in the power-to-gas industrial park microgrid system, due to the coordinated operation of multiple energy forms and equipment, the demand-side response model is difficult to coordinate the operation of multiple types of energy and equipment, an efficient adjustment model is needed to manage and optimize the operation of the system. Therefore, this paper adopts the Integrated Demand Response (IDR) model.<disp-formula id="e16">
<mml:math id="m70">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mtext>IDR</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(16)</label>
</disp-formula>
<disp-formula id="e17">
<mml:math id="m71">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>where <inline-formula id="inf55">
<mml:math id="m72">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mtext>IDR</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the change of load when the system adopts the IDR model, <inline-formula id="inf56">
<mml:math id="m73">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the IDR reserve capacity of the load at the moment <inline-formula id="inf57">
<mml:math id="m74">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf58">
<mml:math id="m75">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the maximum value of the IDR load. <xref ref-type="disp-formula" rid="e16">Equation 16</xref> defines the range of load change, and <xref ref-type="disp-formula" rid="e17">Equation 17</xref> specifies the conditions that the load reserve capacity must satisfy.</p>
</sec>
</sec>
<sec id="s4">
<title>4 Objective function and constraints</title>
<sec id="s4-1">
<title>4.1 Objective function</title>
<p>In this paper, we consider the electricity-gas multi-energy complementary microgrid model that minimizes the integrated cost of energy purchase cost, operation and maintenance cost, IDR cost, and standby cost, and is shown in <xref ref-type="disp-formula" rid="e18">Equation 18</xref>:<disp-formula id="e18">
<mml:math id="m76">
<mml:mrow>
<mml:mi>min</mml:mi>
<mml:mtext> </mml:mtext>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>buy</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>main</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>SP</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>
<xref ref-type="disp-formula" rid="e19">Equations 19</xref>&#x2013;<xref ref-type="disp-formula" rid="e22">22</xref> respectively demonstrate the calculation methods for energy purchase cost, operation and maintenance cost, Integrated Demand Response (IDR) cost, and standby cost.<disp-formula id="e19">
<mml:math id="m77">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>buy</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi>T</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:msup>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:msup>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">g</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">G</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>where <inline-formula id="inf59">
<mml:math id="m78">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>buy</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the cost of energy purchased by the system from the higher grid as well as from the gas grid; <inline-formula id="inf60">
<mml:math id="m79">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the power of interaction between the system and the grid at time t. A positive value indicates that power is purchased from the grid, while a negative value indicates that power is sold to the grid; <inline-formula id="inf61">
<mml:math id="m80">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">G</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the natural gas purchased by the system at time t; <inline-formula id="inf62">
<mml:math id="m81">
<mml:mrow>
<mml:msubsup>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf63">
<mml:math id="m82">
<mml:mrow>
<mml:msubsup>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">g</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the price of the electricity and natural gas, respectively, at the time of purchase at time t; and <inline-formula id="inf64">
<mml:math id="m83">
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the price of the electricity at the time of sale.<disp-formula id="e20">
<mml:math id="m84">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>main</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi>T</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msup>
<mml:mi>c</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>where <inline-formula id="inf65">
<mml:math id="m85">
<mml:mrow>
<mml:msup>
<mml:mi>c</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> denotes the number of O&#x26;M coefficients of the <italic>n</italic>th device; <inline-formula id="inf66">
<mml:math id="m86">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denotes the output of the <italic>n</italic>th device at time <italic>t</italic>.<disp-formula id="e21">
<mml:math id="m87">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>SP</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi>T</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mtext>sp</mml:mtext>
<mml:mo>&#x2b;</mml:mo>
</mml:msubsup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mtext>sp</mml:mtext>
<mml:mo>&#x2212;</mml:mo>
</mml:msubsup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>where <inline-formula id="inf67">
<mml:math id="m88">
<mml:mrow>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mtext>sp</mml:mtext>
<mml:mo>&#x2b;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf68">
<mml:math id="m89">
<mml:mrow>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mtext>sp</mml:mtext>
<mml:mo>&#x2212;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denote the upward and downward standby cost coefficients of the grid; <inline-formula id="inf69">
<mml:math id="m90">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf70">
<mml:math id="m91">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denote the upward and downward standby capacity of the grid at time <italic>t</italic>, respectively.<disp-formula id="e22">
<mml:math id="m92">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi>T</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msub>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>where <inline-formula id="inf71">
<mml:math id="m93">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denotes the cost factor when the user participates in IDR.</p>
</sec>
<sec id="s4-2">
<title>4.2 Constraint condition</title>
<sec id="s4-2-1">
<title>4.2.1 Energy balance constraints</title>
<p>The expression for the electrical power balance of the system is shown in <xref ref-type="disp-formula" rid="e23">Equation 23</xref>:<disp-formula id="e23">
<mml:math id="m94">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EG</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>HFCE</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>GTE</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>GT</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>ES</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>ES</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EC</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>cur</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mtext>IDR</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(23)</label>
</disp-formula>where <inline-formula id="inf72">
<mml:math id="m95">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EG</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf73">
<mml:math id="m96">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf74">
<mml:math id="m97">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf75">
<mml:math id="m98">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf76">
<mml:math id="m99">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>ES</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf77">
<mml:math id="m100">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>ES</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf78">
<mml:math id="m101">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EC</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> indicate the size of the electrolyzer, hydrogen storage tank, distributed wind power, distributed photovoltaic, battery storage, electric refrigeration machine at the moment <italic>t</italic> to consume or send out the size of the electric energy; <inline-formula id="inf79">
<mml:math id="m102">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>GT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> indicates that the gas turbine at the moment <italic>t</italic> of the size of the gas-to-electricity power; <inline-formula id="inf80">
<mml:math id="m103">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>HFCE</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> indicates that the electric efficiency of the hydrogen fuel cell; <inline-formula id="inf81">
<mml:math id="m104">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>GTE</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> indicates that the gas turbine gas-to-electricity efficiency.</p>
<p>The gas balance expression for the system is shown in <xref ref-type="disp-formula" rid="e24">Equation 24</xref>:<disp-formula id="e24">
<mml:math id="m105">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">G</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>MR</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>MR</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>GT</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>GB</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>where <inline-formula id="inf82">
<mml:math id="m106">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>MR</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the amount of natural gas injected into the system by the methane reactor at the moment <italic>t</italic>; <inline-formula id="inf83">
<mml:math id="m107">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>GB</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the amount of natural gas consumed by the gas boiler at the moment <italic>t</italic>; and <inline-formula id="inf84">
<mml:math id="m108">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>MR</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the natural gas generation efficiency of the methane generator.</p>
<p>The heat balance expression of the system is shown in <xref ref-type="disp-formula" rid="e25">Equation 25</xref>:<disp-formula id="e25">
<mml:math id="m109">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>EH</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EH</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>HS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>HS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">H</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(25)</label>
</disp-formula>where <inline-formula id="inf85">
<mml:math id="m110">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EH</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the thermal power produced by the waste heat boiler at the moment <italic>t</italic>; <inline-formula id="inf86">
<mml:math id="m111">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>HS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf87">
<mml:math id="m112">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>HS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the thermal power issued or stored in the heat storage tank at the moment <italic>t</italic> respectively; <inline-formula id="inf88">
<mml:math id="m113">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">H</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the thermal load of the system at the moment <italic>t</italic>; <inline-formula id="inf89">
<mml:math id="m114">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>EH</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the heat production efficiency of the waste heat boiler.</p>
<p>The cold balance expression of the system is shown in <xref ref-type="disp-formula" rid="e26">Equation 26</xref>:<disp-formula id="e26">
<mml:math id="m115">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>AC</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>AC</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>EC</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EC</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">C</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(26)</label>
</disp-formula>where <inline-formula id="inf90">
<mml:math id="m116">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>AC</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the cold energy power issued by the absorption chiller at the moment <italic>t</italic>; <inline-formula id="inf91">
<mml:math id="m117">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf92">
<mml:math id="m118">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CS</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the cold energy power issued or stored in the cold storage tank at the moment <italic>t</italic>, respectively; <inline-formula id="inf93">
<mml:math id="m119">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">C</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the cold load of the system at the moment <italic>t</italic>; <inline-formula id="inf94">
<mml:math id="m120">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>AC</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf95">
<mml:math id="m121">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>EC</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represent the refrigeration efficiency of the absorption chiller, respectively.</p>
</sec>
<sec id="s4-2-2">
<title>4.2.2 Energy coupling constraints</title>
<p>Electricity - gas conversion mainly includes two aspects of electricity hydrogen and hydrogen methanization, the system of electricity - gas conversion coupling constraints expression is shown in <xref ref-type="disp-formula" rid="e27">Equation 27</xref>:<disp-formula id="e27">
<mml:math id="m122">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>EG</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EG</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>MR</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(27)</label>
</disp-formula>where <inline-formula id="inf96">
<mml:math id="m123">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>EG</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the efficiency of the electrolyzer to convert gas; <inline-formula id="inf97">
<mml:math id="m124">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the amount of hydrogen input to the hydrogen storage tank at the moment <italic>t</italic>. The system heat-cooling conversion is mainly to convert part of the system heat power into cold power.</p>
<p>The heat-cooling conversion is mainly to convert part of the input thermal power of the system into cold power, and the expression of the coupling constraints of heat-cooling conversion of the system is as follows<disp-formula id="e28">
<mml:math id="m125">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>HFCH</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>GB</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>GB</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>GT</mml:mtext>
</mml:msup>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>GT</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>AC</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>EH</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(28)</label>
</disp-formula>where <inline-formula id="inf98">
<mml:math id="m126">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>HFCH</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the thermal efficiency of the hydrogen fuel cell, <inline-formula id="inf99">
<mml:math id="m127">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>GB</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf100">
<mml:math id="m128">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mtext>GT</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represent the thermal efficiency of the gas boiler and gas turbine respectively.</p>
</sec>
<sec id="s4-2-3">
<title>4.2.3 Operation constraints of energy supply equipment</title>
<p>The operation constraints of each device in the system are expressed as <xref ref-type="disp-formula" rid="e29">Equations 29</xref>, <xref ref-type="disp-formula" rid="e30">30</xref> <disp-formula id="e29">
<mml:math id="m129">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(29)</label>
</disp-formula>
<disp-formula id="e30">
<mml:math id="m130">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(30)</label>
</disp-formula>where <inline-formula id="inf101">
<mml:math id="m131">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf102">
<mml:math id="m132">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the upper and lower limits of the <italic>n</italic>-th equipment output, <inline-formula id="inf103">
<mml:math id="m133">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf104">
<mml:math id="m134">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the upper and lower limits of the <italic>n</italic>th equipment output change in the neighboring time period.</p>
</sec>
<sec id="s4-2-4">
<title>4.2.4 Energy storage operation constraints</title>
<p>
<disp-formula id="e31">
<mml:math id="m135">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(31)</label>
</disp-formula>
<disp-formula id="e32">
<mml:math id="m136">
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<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>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(32)</label>
</disp-formula>
<disp-formula id="e33">
<mml:math id="m137">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>min</mml:mi>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>max</mml:mi>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(33)</label>
</disp-formula>
<disp-formula id="e34">
<mml:math id="m138">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>T</mml:mi>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(34)</label>
</disp-formula>where <inline-formula id="inf105">
<mml:math id="m139">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denotes the size of energy stored in the <italic>m-</italic>th storage device at the moment <italic>t</italic>, <inline-formula id="inf106">
<mml:math id="m140">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf107">
<mml:math id="m141">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denote the maximum charging and discharging power of the <italic>m-</italic>th storage device at the moment <italic>t</italic>, <inline-formula id="inf108">
<mml:math id="m142">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf109">
<mml:math id="m143">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> denote the charging and discharging efficiency of the <italic>m-</italic>th storage device, <inline-formula id="inf110">
<mml:math id="m144">
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf111">
<mml:math id="m145">
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denote the charging and discharging state of the <italic>m-</italic>th storage device at the moment <italic>t</italic>, respectively. <xref ref-type="disp-formula" rid="e31">Equations 31</xref>&#x2013;<xref ref-type="disp-formula" rid="e34">34</xref> sequentially define the dynamic change relationship of the stored energy of energy storage devices, the constraints on charging/discharging power and status, the limitation on the range of stored energy, and the closed - loop condition for the stored energy at the start and end of the period, regulating the operation process of the energy storage system.</p>
</sec>
<sec id="s4-2-5">
<title>4.2.5 Hydrogen storage tank operation constraints</title>
<p>Similar to the battery energy storage, the hydrogen storage tank can also be regarded as an energy storage device.<disp-formula id="e35">
<mml:math id="m146">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(35)</label>
</disp-formula>
<disp-formula id="e36">
<mml:math id="m147">
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<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>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(36)</label>
</disp-formula>
<disp-formula id="e37">
<mml:math id="m148">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>min</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>max</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(37)</label>
</disp-formula>
<disp-formula id="e38">
<mml:math id="m149">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>T</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(38)</label>
</disp-formula>where <inline-formula id="inf112">
<mml:math id="m150">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the amount of hydrogen stored in the hydrogen storage tank at the moment <italic>t</italic>, <inline-formula id="inf113">
<mml:math id="m151">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf114">
<mml:math id="m152">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the maximum hydrogen filling and discharging capacities of the hydrogen storage tank at the moment <italic>t</italic>, <inline-formula id="inf115">
<mml:math id="m153">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf116">
<mml:math id="m154">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represent the hydrogen filling and discharging efficiency of the hydrogen storage tank, <inline-formula id="inf117">
<mml:math id="m155">
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf118">
<mml:math id="m156">
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the hydrogen filling and discharging energy state of the hydrogen storage tank at the moment <italic>t</italic>. <xref ref-type="disp-formula" rid="e35">Equations 35</xref>&#x2013;<xref ref-type="disp-formula" rid="e38">38</xref> sequentially define the dynamic change of hydrogen storage amount in hydrogen storage tanks, the constraints on hydrogen charging/discharging power and status, the range of hydrogen storage amount, and the periodic closed-loop condition.</p>
</sec>
<sec id="s4-2-6">
<title>4.2.6 Power exchange constraints in large power grids</title>
<p>
<disp-formula id="e39">
<mml:math id="m157">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(39)</label>
</disp-formula>
<disp-formula id="e40">
<mml:math id="m158">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2265;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(40)</label>
</disp-formula>where <inline-formula id="inf119">
<mml:math id="m159">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf120">
<mml:math id="m160">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> respectively represent the upper and lower limits of power exchange with the large power grid. <xref ref-type="disp-formula" rid="e39">Equation 39</xref> defines the upper limit of the power exchange combined with the upward reserve, and <xref ref-type="disp-formula" rid="e40">Equation 40</xref> specifies the lower limit of the power exchange after deducting the upward reserve.</p>
</sec>
<sec id="s4-2-7">
<title>4.2.7 Constraint on reserve capacity</title>
<p>In order to ensure the reasonable reserve capacity of the system, the constraints are set as <xref ref-type="disp-formula" rid="e41">Equations 41</xref>&#x2013;<xref ref-type="disp-formula" rid="e43">43</xref>.</p>
<p>
<disp-formula id="e41">
<mml:math id="m161">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(41)</label>
</disp-formula>
<disp-formula id="e42">
<mml:math id="m162">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(42)</label>
</disp-formula>
<disp-formula id="e43">
<mml:math id="m163">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2265;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(43)</label>
</disp-formula>where <inline-formula id="inf121">
<mml:math id="m164">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf122">
<mml:math id="m165">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> respectively represent the maximum values of upward and downward reserves, and <inline-formula id="inf123">
<mml:math id="m166">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the minimum value of downward reserves.</p>
</sec>
<sec id="s4-2-8">
<title>4.2.8 Constraint on output of renewable energy</title>
<p>The constraints of renewable energy are as <xref ref-type="disp-formula" rid="e44">Equations 44</xref>, <xref ref-type="disp-formula" rid="e45">45</xref>.</p>
<p>
<disp-formula id="e44">
<mml:math id="m167">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(44)</label>
</disp-formula>
<disp-formula id="e45">
<mml:math id="m168">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(45)</label>
</disp-formula>
</p>
</sec>
</sec>
</sec>
<sec id="s5">
<title>5 Robust optimization method for microgrid in industrial park</title>
<sec id="s5-1">
<title>5.1 Robust optimization model establishment</title>
<p>Let the renewable energy constraint variable of the system be vector <inline-formula id="inf124">
<mml:math id="m169">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>RE</mml:mtext>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; the constraint variable of energy storage equipment be vector <inline-formula id="inf125">
<mml:math id="m170">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>ES</mml:mtext>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; the constraint variable of energy supply equipment be vector <inline-formula id="inf126">
<mml:math id="m171">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; the operation constraint variable of hydrogen storage tank be vector <inline-formula id="inf127">
<mml:math id="m172">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>in</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>CH</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>out</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; the energy purchase constraint variable be vector <inline-formula id="inf128">
<mml:math id="m173">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>SP</mml:mtext>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">G</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>sp</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; and the IDR constraint variable be vector <inline-formula id="inf129">
<mml:math id="m174">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mtext>IDR</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. Then, the matrix form of the robust optimization model for the microgrid in the industrial park established in this paper is as <xref ref-type="disp-formula" rid="e46">Equation 46</xref>.<disp-formula id="e46">
<mml:math id="m175">
<mml:mrow>
<mml:mtable class="aligned">
<mml:mtr>
<mml:mtd columnalign="left"/>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:munder>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:munder>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi mathvariant="bold-italic">U</mml:mi>
</mml:mrow>
</mml:munder>
<mml:munder>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold-italic">y</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:msup>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>.</mml:mo>
<mml:mtext> </mml:mtext>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi mathvariant="bold-italic">A</mml:mi>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="bold-italic">d</mml:mi>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">a</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left"/>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi mathvariant="bold-italic">G</mml:mi>
<mml:mi mathvariant="bold-italic">y</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="bold-italic">h</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">E</mml:mi>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">M</mml:mi>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(46)</label>
</disp-formula>where <inline-formula id="inf130">
<mml:math id="m176">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf131">
<mml:math id="m177">
<mml:mrow>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> are the decision variables of the model, and <inline-formula id="inf132">
<mml:math id="m178">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the uncertain variable. Among them, the first-stage decision variables <inline-formula id="inf133">
<mml:math id="m179">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf134">
<mml:math id="m180">
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>ch</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf135">
<mml:math id="m181">
<mml:mrow>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>dis</mml:mtext>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the charging and discharging states of the <italic>m</italic>-th energy storage system; the second-stage decision variable is <inline-formula id="inf136">
<mml:math id="m182">
<mml:mrow>
<mml:mi mathvariant="bold-italic">y</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>RE</mml:mtext>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>ES</mml:mtext>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mi mathvariant="normal">E</mml:mi>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>CH</mml:mtext>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>SP</mml:mtext>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext>IDR</mml:mtext>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>; the second-stage uncertain variable is <inline-formula id="inf137">
<mml:math id="m183">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>PV</mml:mtext>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x223c;</mml:mo>
</mml:mover>
<mml:mi>t</mml:mi>
<mml:mtext>WT</mml:mtext>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. The constant matrix <inline-formula id="inf138">
<mml:math id="m184">
<mml:mrow>
<mml:mi mathvariant="bold-italic">A</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the coefficient matrix related to the decision variable <inline-formula id="inf139">
<mml:math id="m185">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. The column vector <inline-formula id="inf140">
<mml:math id="m186">
<mml:mrow>
<mml:mi mathvariant="bold-italic">d</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is a constant and represents the coefficient vector related to the decision variable <inline-formula id="inf141">
<mml:math id="m187">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. The constant matrices <inline-formula id="inf142">
<mml:math id="m188">
<mml:mrow>
<mml:mi mathvariant="bold-italic">G</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf143">
<mml:math id="m189">
<mml:mrow>
<mml:mi mathvariant="bold-italic">E</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represent the coefficient matrices related to the decision variable <inline-formula id="inf144">
<mml:math id="m190">
<mml:mrow>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. The column vector <inline-formula id="inf145">
<mml:math id="m191">
<mml:mrow>
<mml:mi mathvariant="bold-italic">h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is a constant vector and represents the coefficient vector related to the decision variable <inline-formula id="inf146">
<mml:math id="m192">
<mml:mrow>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. The constant matrix <inline-formula id="inf147">
<mml:math id="m193">
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the coefficient matrix related to the uncertain variable <inline-formula id="inf148">
<mml:math id="m194">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula id="inf149">
<mml:math id="m195">
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the feasible region of the continuous variable <inline-formula id="inf150">
<mml:math id="m196">
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula> when <inline-formula id="inf151">
<mml:math id="m197">
<mml:mrow>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is given. <inline-formula id="inf152">
<mml:math id="m198">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the objective function of the second stage, corresponding to <xref ref-type="disp-formula" rid="e19">Equations 19</xref> and <xref ref-type="disp-formula" rid="e47">47</xref> corresponds to the constraint condition related to the first-stage variable <inline-formula id="inf153">
<mml:math id="m199">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>; (47-b) corresponds to the constraint condition related to the second-stage variable <inline-formula id="inf154">
<mml:math id="m200">
<mml:mrow>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>For a two-stage robust optimization model like <xref ref-type="disp-formula" rid="e47">Equation 47</xref>, since it contains both continuous variables and integer variables, and the second stage of the model contains uncertain parameter <inline-formula id="inf155">
<mml:math id="m201">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, it cannot be directly solved. Therefore, this paper uses method <inline-formula id="inf156">
<mml:math id="m202">
<mml:mrow>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mo>&#x26;</mml:mo>
<mml:mtext>CG</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula> (<xref ref-type="bibr" rid="B17">Nayak et al., 2025</xref>; <xref ref-type="bibr" rid="B15">Michos et al., 2024</xref>) to transform it into a master-slave problem for solution. Among them, the master problem is to solve the integrated energy optimization model with the minimum comprehensive cost under the worst case; the sub-problem is to first solve the integer solution of the master problem (such as the charging and discharging state of the energy storage battery), and then optimize the remaining continuous variables to minimize the comprehensive cost obtained by the system under the worst case.</p>
</sec>
<sec id="s5-2">
<title>5.2 C&#x26;CG iterative solution method</title>
<p>The master-slave problem corresponding to <xref ref-type="disp-formula" rid="e47">Equation 47</xref> is modeled as<disp-formula id="e47">
<mml:math id="m203">
<mml:mrow>
<mml:mtext>MP</mml:mtext>
<mml:mn>1</mml:mn>
<mml:mo>:</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:munder>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>u</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b7;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>.</mml:mo>
<mml:mtext> </mml:mtext>
<mml:mi mathvariant="bold-italic">A</mml:mi>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="bold-italic">d</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mspace width="1.3333em"/>
<mml:mrow>
<mml:mi mathvariant="bold-italic">G</mml:mi>
<mml:msup>
<mml:mi mathvariant="bold-italic">y</mml:mi>
<mml:mi>l</mml:mi>
</mml:msup>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="bold-italic">h</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">E</mml:mi>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">M</mml:mi>
<mml:msup>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mi>l</mml:mi>
</mml:msup>
<mml:mtext> </mml:mtext>
<mml:mo>&#x2200;</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mspace width="1.3333em"/>
<mml:mrow>
<mml:mi>&#x3b7;</mml:mi>
<mml:mo>&#x2265;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:msup>
<mml:mi mathvariant="bold-italic">y</mml:mi>
<mml:mi>l</mml:mi>
</mml:msup>
<mml:mtext> </mml:mtext>
<mml:mo>&#x2200;</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(47)</label>
</disp-formula>
<disp-formula id="e48">
<mml:math id="m204">
<mml:mrow>
<mml:mtext>SP</mml:mtext>
<mml:mn>1</mml:mn>
<mml:mo>:</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:munder>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi mathvariant="bold-italic">U</mml:mi>
</mml:mrow>
</mml:munder>
<mml:munder>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>u</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:msup>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">y</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>.</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mi mathvariant="bold-italic">G</mml:mi>
<mml:mi mathvariant="bold-italic">y</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi mathvariant="bold-italic">h</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">E</mml:mi>
<mml:msup>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x2a;</mml:mo>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">M</mml:mi>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>:</mml:mo>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(48)</label>
</disp-formula>
</p>
<p>The main problem MP1 corresponding to <xref ref-type="disp-formula" rid="e48">Equation 48</xref> is solved first, at this point, MP1 belongs to the mixed-integer second-order cone programming problem. After solving the first-stage variable solution <inline-formula id="inf157">
<mml:math id="m205">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x2a;</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> corresponding to MP1 and the auxiliary variable <inline-formula id="inf158">
<mml:math id="m206">
<mml:mrow>
<mml:mi>&#x3b7;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> introduced in <inline-formula id="inf159">
<mml:math id="m207">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> iterations, which is <inline-formula id="inf160">
<mml:math id="m208">
<mml:mrow>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mo>&#x26;</mml:mo>
<mml:mtext>CG</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula>-cut. Then, the variable solution <inline-formula id="inf161">
<mml:math id="m209">
<mml:mrow>
<mml:mi mathvariant="bold-italic">x</mml:mi>
<mml:mo>&#x2a;</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> derived in the first stage is brought into the second stage subproblem SP1 to find the worst-case scenario <inline-formula id="inf162">
<mml:math id="m210">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mi>l</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> , where <italic>l</italic> is the number of historical iterations and <italic>k</italic> is the number of current iterations. Finally, the worst-case scenario <inline-formula id="inf163">
<mml:math id="m211">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mi>l</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> solved in the second stage is brought into the main problem MP1 of the first stage and iterated. Where the last three constraints of <xref ref-type="disp-formula" rid="e48">Equation 48</xref> are the set of optimal and feasible cut planes resulting from the previous <italic>k</italic> iterations, respectively. <inline-formula id="inf164">
<mml:math id="m212">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the dyadic variable of the subproblem constraints.</p>
<sec id="s5-2-1">
<title>5.2.1 Sub-problem solution method</title>
<p>
<xref ref-type="disp-formula" rid="e49">Equation 49</xref> is a max-min optimization problem, therefore, in this paper, the pairwise theorem is used to convert the inner min problem of <xref ref-type="disp-formula" rid="e49">Equation 49</xref> into its pairwise form to merge it into a maximization problem, which is shown in the form of <xref ref-type="disp-formula" rid="e50">Equation 50</xref>.<disp-formula id="e49">
<mml:math id="m213">
<mml:mrow>
<mml:mtable class="aligned">
<mml:mtr>
<mml:mtd columnalign="left"/>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:munder>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">h</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">M</mml:mi>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">E</mml:mi>
<mml:mi mathvariant="bold-italic">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>.</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">N</mml:mi>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left"/>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
<mml:mi>b</mml:mi>
</mml:msup>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(49)</label>
</disp-formula>in <xref ref-type="disp-formula" rid="e50">Equation 50</xref>, there exists a bilinear term <inline-formula id="inf165">
<mml:math id="m214">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> , which is solved here by using the outer approximation of the bilinear term. The master problem MP2 and subproblem SP2 are obtained as shown in <xref ref-type="disp-formula" rid="e51">Equations 51</xref> and <xref ref-type="disp-formula" rid="e52">52</xref>.<disp-formula id="e50">
<mml:math id="m215">
<mml:mrow>
<mml:mtext>SP</mml:mtext>
<mml:mn>2</mml:mn>
<mml:mo>:</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:munder>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">h</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">M</mml:mi>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">E</mml:mi>
<mml:mi mathvariant="bold-italic">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>.</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">N</mml:mi>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mspace width="1.3333em"/>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
<mml:mi>b</mml:mi>
</mml:msup>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(50)</label>
</disp-formula>
<disp-formula id="e51">
<mml:math id="m216">
<mml:mrow>
<mml:mtext>MP</mml:mtext>
<mml:mn>2</mml:mn>
<mml:mo>:</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:munder>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">h</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold-italic">E</mml:mi>
<mml:mi mathvariant="bold-italic">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold-italic">&#x3b2;</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>.</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">N</mml:mi>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mspace width="1.3333em"/>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
<mml:mi>b</mml:mi>
</mml:msup>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mspace width="1.3333em"/>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b2;</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:msup>
<mml:mi>G</mml:mi>
<mml:mi>m</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mo>&#x2200;</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(51)</label>
</disp-formula>where MP2 and SP2 are used to solve the upper and lower bounds of <xref ref-type="disp-formula" rid="e38">Equation 38</xref>, respectively, <inline-formula id="inf166">
<mml:math id="m217">
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the number of historical iterations, and <inline-formula id="inf167">
<mml:math id="m218">
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the number of current iterations. An auxiliary variable <inline-formula id="inf168">
<mml:math id="m219">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b2;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is introduced to replace the bilinear term in the original equation, and a bilinear term exists in <xref ref-type="disp-formula" rid="e52">Equation 52</xref> <inline-formula id="inf169">
<mml:math id="m220">
<mml:mrow>
<mml:msup>
<mml:mi>G</mml:mi>
<mml:mi>m</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Therefore, it is necessary to use the outer approximation method for linearization, and the linearization formula is shown in (53).<disp-formula id="e52">
<mml:math id="m221">
<mml:mrow>
<mml:msup>
<mml:mi>G</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="bold-italic">&#x3c0;</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:msup>
<mml:mi mathvariant="bold-italic">u</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
<label>(52)</label>
</disp-formula>
</p>
</sec>
</sec>
</sec>
<sec id="s6">
<title>6 Example analysis</title>
<p>This section is validated using the IEEE-RTS 24 node example system. To reflect the planning requirements of the power generation and transmission system, the load will be increased by 1.4 times. At the same time, 400 MW wind farms were connected at nodes 3, 6, 15, 18, and 23, respectively. According to <xref ref-type="disp-formula" rid="e28">Equation 28</xref>, the predicted wind power output value is about 115 MW, and the fluctuation of wind power output is &#xb1;30% of the predicted value. The typical value of sub transient reactance for all units is 0.1 (standard value). This example has two voltage levels, namely, 138 kV and 230 kV, and the maximum allowable current of the circuit breaker is 31.5 kA and 35 kA, respectively. The abandonment cost and load shedding cost are $150/(MWh) and $5,000/(MWh) respectively. This article considers <italic>N</italic>-1 random faults in power generation and transmission, and the convergence threshold of the C&#x26;CG algorithm <italic>&#x3b6;</italic> Set to 0.001.</p>
<sec id="s6-1">
<title>6.1 Example setting</title>
<p>In order to verify the effectiveness of the data-driven industrial park microgrids robust optimization method established in this paper, this section cites a 24-h operation example of an industrial park in Hubei Province for verification. The equipment installed in the industrial park includes wind power, photovoltaic, gas boiler and waste heat boiler. Absorption chillers, gas turbines, electroliers, methane reactors, hydrogen storage tanks, hydrogen fuel cells, electric chillers, energy storage systems, etc. Among them, the wind power, photovoltaic prediction and load size of the system are shown in <xref ref-type="fig" rid="F6">Figure 6</xref>. The operating parameters of each device are shown in. The operating parameters of each device are shown in Schedule A1. According to the calculation method given in (<xref ref-type="bibr" rid="B10">Hamed and Rasoul, 2021</xref>), the value <inline-formula id="inf170">
<mml:math id="m222">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> here is 1.22.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Renewable energy forecast output and load size.</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g006.tif">
<alt-text content-type="machine-generated">Line graph showing various power and load measures over 24 hours. Electric load is highest, peaking around 11,000 kW. Cooling load varies, peaking at 5,000 kW. Thermal load fluctuates between 4,000 and 6,000 kW. Wind power forecasting hovers around 2,000 kW, while PV forecast remains roughly constant at 1,000 kW.</alt-text>
</graphic>
</fig>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Operation parameters of each device.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Device type</th>
<th align="center">Device parameters</th>
<th align="center">Value</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="2" align="center">EG</td>
<td align="center">Transformation efficiency</td>
<td align="center">0.8</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.01</td>
</tr>
<tr>
<td rowspan="5" align="center">CH</td>
<td align="center">Capacity (kWh)</td>
<td align="center">20,000</td>
</tr>
<tr>
<td align="center">Charging and discharging efficiency</td>
<td align="center">0.95</td>
</tr>
<tr>
<td align="center">Upper and lower limits of gas charging and discharging power (kW)</td>
<td align="center">4,000</td>
</tr>
<tr>
<td align="center">Initial gas volume</td>
<td align="center">10,000</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.01</td>
</tr>
<tr>
<td rowspan="3" align="center">GT</td>
<td align="center">Electrical transformation efficiency</td>
<td align="center">0.26</td>
</tr>
<tr>
<td align="center">Thermal transformation efficiency</td>
<td align="center">0.68</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.03</td>
</tr>
<tr>
<td rowspan="2" align="center">GB</td>
<td align="center">Operational efficiency</td>
<td align="center">0.1</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.8</td>
</tr>
<tr>
<td rowspan="2" align="center">AC</td>
<td align="center">Operational efficiency</td>
<td align="center">0.8</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.03</td>
</tr>
<tr>
<td rowspan="2" align="center">EH</td>
<td align="center">Operational efficiency</td>
<td align="center">0.8</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.025</td>
</tr>
<tr>
<td rowspan="2" align="center">EC</td>
<td align="center">Operational efficiency</td>
<td align="center">3</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.03</td>
</tr>
<tr>
<td rowspan="5" align="center">ES</td>
<td align="center">Capacity (kWh)</td>
<td align="center">5,000</td>
</tr>
<tr>
<td align="center">Charging and discharging efficiency</td>
<td align="center">0.9</td>
</tr>
<tr>
<td align="center">Upper and lower limits of charging and discharging power (kW)</td>
<td align="center">2,000</td>
</tr>
<tr>
<td align="center">State of charge at start&#x201d;</td>
<td align="center">0</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.02</td>
</tr>
<tr>
<td rowspan="5" align="center">CS</td>
<td align="center">Capacity (kWh)</td>
<td align="center">5,000</td>
</tr>
<tr>
<td align="center">Charging and discharging efficiency</td>
<td align="center">0.9</td>
</tr>
<tr>
<td align="center">Upper and lower limits of charging and discharging power (kW)</td>
<td align="center">1,000</td>
</tr>
<tr>
<td align="center">Initial capacity (kWh)</td>
<td align="center">0</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.02</td>
</tr>
<tr>
<td rowspan="5" align="center">HS</td>
<td align="center">Capacity (kWh)</td>
<td align="center">5,000</td>
</tr>
<tr>
<td align="center">Charging and discharging efficiency</td>
<td align="center">0.9</td>
</tr>
<tr>
<td align="center">Upper and lower limits of charging and discharging power (kW)</td>
<td align="center">1,000</td>
</tr>
<tr>
<td align="center">Initial capacity</td>
<td align="center">1,000</td>
</tr>
<tr>
<td align="center">Operation and maintenance cost (Yuan/kWh)</td>
<td align="center">0.02</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s6-2">
<title>6.2 Result analysis and verification</title>
<sec id="s6-2-1">
<title>6.2.1 The influence of scaling factor k on the optimization results</title>
<p>The impact of the scaling factor on the robust optimization of the industrial park microgrid is shown in <xref ref-type="table" rid="T2">Table 2</xref>. The size of the scaling factor determines the extent to which the constructed convex hull set covers historical data. As seen from <xref ref-type="table" rid="T2">Table 2</xref>, with the increase of the scaling factor, the system&#x2019;s operational cost gradually decreases, while the energy purchase cost continues to increase. This is because the increase in the scaling factor expands the envelope range of the convex hull uncertainty set over the historical output data, meaning that the fluctuation range of renewable energy output becomes larger, making the worst-case scenario more likely to occur. When volatile renewable energies such as distributed photovoltaics and wind power continuously inject into the distribution network, in order to maintain supply-demand balance and reduce disturbances caused by the injection of uncertain energy, the system needs to filter out a large portion of the power injected by distributed photovoltaics and wind power. This leads to a reduction in the maintenance cost of photovoltaic and wind power equipment, and as a result, the overall operational cost decreases. Meanwhile, since the injection of distributed energy is reduced, more injection power from the grid is needed to meet the system&#x2019;s electricity supply, thereby gradually increasing the energy purchase cost. Reserve cost refers to the margin cost incurred to account for the system&#x2019;s response to possible random events and depends on the system&#x2019;s contingency plan for the worst-case scenario. Therefore, regardless of changes in the scaling factor, the reserve cost shows little variation. Similar to the reserve cost, the IDR (Interruptible Demand Response) cost is an added cost to enhance the system&#x2019;s stability margin. When the scaling factor is less than or equal to 1, the convex hull set does not envelop the extreme worst-case conditions, and thus the IDR cost remains unchanged. However, when the scaling factor exceeds 1, the convex hull set covers all possible scenarios, including the worst-case scenario. To improve the overall efficiency of the system, users need to appropriately shed load, which results in an increase in IDR cost.</p>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>The effect of scaling factor k on various costs.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Various costs/dollar</th>
<th align="left">
<italic>k</italic> &#x3d; 0.4</th>
<th align="left">
<italic>k</italic> &#x3d; 0.6</th>
<th align="left">
<italic>k</italic> &#x3d; 0.8</th>
<th align="left">
<italic>k</italic> &#x3d; 1.0</th>
<th align="left">
<italic>k</italic> &#x3d; 1.2</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="2" align="left">Operation and maintenance cost</td>
<td align="left">238</td>
<td align="left">236</td>
<td align="left">234</td>
<td align="left">232</td>
<td align="left">231</td>
</tr>
<tr>
<td align="left">44.1</td>
<td align="left">62.2</td>
<td align="left">79.4</td>
<td align="left">96.7</td>
<td align="left">21.6</td>
</tr>
<tr>
<td rowspan="2" align="left">Energy purchase cost</td>
<td align="left">152</td>
<td align="left">153</td>
<td align="left">155</td>
<td align="left">156</td>
<td align="left">157</td>
</tr>
<tr>
<td align="left">071.9</td>
<td align="left">636.1</td>
<td align="left">202.1</td>
<td align="left">768</td>
<td align="left">816.3</td>
</tr>
<tr>
<td rowspan="2" align="left">Standby cost</td>
<td align="left">864</td>
<td align="left">864</td>
<td align="left">864</td>
<td align="left">864</td>
<td align="left">864</td>
</tr>
<tr>
<td align="left">0</td>
<td align="left">0</td>
<td align="left">0</td>
<td align="left">0</td>
<td align="left">0</td>
</tr>
<tr>
<td rowspan="2" align="left">IDC cost</td>
<td align="left">298</td>
<td align="left">298</td>
<td align="left">298</td>
<td align="left">298</td>
<td align="left">304</td>
</tr>
<tr>
<td align="left">92.5</td>
<td align="left">92.5</td>
<td align="left">92.5</td>
<td align="left">92.5</td>
<td align="left">24.5</td>
</tr>
<tr>
<td rowspan="2" align="left">Total cost</td>
<td align="left">214</td>
<td align="left">215</td>
<td align="left">217</td>
<td align="left">218</td>
<td align="left">220</td>
</tr>
<tr>
<td align="left">448.5</td>
<td align="left">830.8</td>
<td align="left">214</td>
<td align="left">597.2</td>
<td align="left">002.4</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s6-2-2">
<title>6.2.2 The influence of robust adjustment coefficient &#x3b2; on the optimization results</title>
<p>
<xref ref-type="fig" rid="F7">Figure 7</xref> demonstrates the influence of the robust adjustment coefficient &#x3b2; on the results of the robust optimization of the industrial park microgrid. From the figure, it can be seen that as the robust adjustment coefficient increases, each of the costs changes more or less, except for the standby cost, which is unaffected by system changes, which stays constant at $8640. When the robust adjustment coefficient of the system is small, the uncertain energy injected into the system at this time will be approximated as deterministic energy, the various equipment of the system will operate stably, and the photovoltaic and wind power equipment of the system will operate at full efficiency, so the operation and maintenance cost is the largest, and at the same time, due to the injection of the deterministic energy, the system purchased energy from the port decreases, so the system&#x2019;s purchased energy cost is the smallest, and with the increase in the robust adjustment coefficient, this uncertainty energy injection will rise and the amount of energy purchased by the system from the port will keep on rising, which in turn leads to the rise of the system&#x2019;s energy purchase cost and the decrease of the O&#x26;M cost. For the IDR cost, when <inline-formula id="inf171">
<mml:math id="m223">
<mml:mrow>
<mml:mi>&#x3b2;</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>0.7</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, the envelope always fails to cover the extreme conditions for both the boxed set and the convex packet set with different deflation multiples, so the IDR cost always stays the same; while when &#x3b2; is large, at this time, when the deflation multiples <inline-formula id="inf172">
<mml:math id="m224">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, the convex packet set will completely envelope the worst case when the deflation multiples are large, which will increase the IDR cost at this time, but due to the fact that the boxed set can not accurately envelope the distribution of the uncertain parameters, resulting in the blank area of the envelope. Region, resulting in more blank regions in the envelope, so the boxed set corresponds to the largest IDR cost compared to the convex packet set.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Influence of robust adjustment coefficient &#x3b2; on each cost. <bold>(a)</bold> Influence of robust adjustment coefficient &#x3b2; on O&#x26;M costs. <bold>(b)</bold> Influence of the robust adjustment coefficient &#x3b2; on the cost of purchased energy. <bold>(c)</bold> Influence of the robust adjustment coefficient &#x3b2; on standby costs. <bold>(d)</bold> Influence of the robust adjustment coefficient &#x3b2; on IDR costs. <bold>(e)</bold> Influence of the robust adjustment coefficient &#x3b2; on total costs.</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g007.tif">
<alt-text content-type="machine-generated">Three line graphs illustrate the influence of robust adjustment coefficient &#x3B2; on costs. (a) Shows operation and maintenance costs decreasing with increasing coefficients and different \(k\) values. (b) Depicts energy costs rising with increasing coefficients, varying by \(k\) values. (c) Exhibits steady standby costs across coefficients, with minor differences for various \(k\) values. Graph (d) and (e) illustrate the impact of the robust adjustment coefficient &#x3B2; on IDR costs and total costs, respectively. Both graphs feature lines for k values of 0.4, 0.6, 0.8, 1, and 1.2, with a separate line for the box set. The y-axis shows IDR cost in yuan, while the x-axis shows the adjustment coefficient. Both graphs display a consistent cost until a sharp increase occurs from 0.8 to 1 in the adjustment coefficient.</alt-text>
</graphic>
</fig>
<p>As the robust adjustment coefficient increases, the magnitude of the change in the cost of purchased energy and O&#x26;M cost will remain stable when the convex packet ensemble is used, specifically, when the deflation multiplier increases from 0.4 to 1.2, the magnitude of the change in the cost of purchased energy and O&#x26;M cost will be stabilized at the time when the robust adjustment coefficient is equal to 0.3, 0.4, 0.6, 0.7, and 0.8, which is related to the renewable energy equipment&#x2019;s power output situation. When &#x3b2; is small, the system is poorly adapted to the renewable energy perturbation and the cost does not change much no matter what kind of ensemble is used, on the contrary, when &#x3b2; is large, the system is better adapted to the distributed PV perturbation. However, when the convex packet ensemble is used, the envelope range of the convex packet ensemble is different due to different deflation multiples. When the deflation multiplier <inline-formula id="inf173">
<mml:math id="m225">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.4</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, the envelope range of the convex packet ensemble is also smaller. In this case, changing the size of the robust regulation coefficient &#x3b2; will not significantly affect the renewable energy output size, so the effect of changing &#x3b2; to a certain extent on the renewable energy output will be minimal. However, when the deflation facto <inline-formula id="inf174">
<mml:math id="m226">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, the convex packet uncertainty set will encompass all the historical data, so it will be adjusted accordingly to the increase of the robust regulation coefficient &#x3b2;, which will affect the size of the renewable energy output. Since the purchased energy cost of the system accounts for a large proportion of the total cost, the trend of the total cost of the system is similar to that of the purchased energy cost.</p>
</sec>
<sec id="s6-2-3">
<title>6.2.3 The influence of the three aggregations on individual costs</title>
<p>The effects of the three uncertainty sets on each cost are further compared when the deflation multiplier <inline-formula id="inf175">
<mml:math id="m227">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>min</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, the robust adjustment coefficient <inline-formula id="inf176">
<mml:math id="m228">
<mml:mrow>
<mml:mi>&#x3b2;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, and the uncertainty <inline-formula id="inf177">
<mml:math id="m229">
<mml:mrow>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.9</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> are used, as shown in <xref ref-type="table" rid="T3">Table 3</xref>. From <xref ref-type="table" rid="T3">Table 3</xref>, it can be seen that when different sets are used, the total cost of using the convex packet set is lower than that of the box set and the polyhedral set, except that the standby cost remains basically the same. This is due to the fact that when there is spatio-temporal correlation of the uncertain parameters, the convex packet ensemble can change the envelope range of the convex packet ensemble by deflation to make it fit the distribution region of the uncertain parameters better, which enhances the robustness of the system and reduces the conservatism. On the other hand, the polyhedral set changes the envelope of the polyhedral set by changing the uncertainty, and in order to encompass the historical data of all renewable energy outputs, the polyhedral set needs to increase the uncertainty, which enables the expansion of the envelope of the polyhedral set in an untargeted manner, although this enhances the robustness of the solution results, but over-expansion for the sake of a few scenarios of the data increases the conservatism of the solution instead. The boxed ensemble, on the other hand, is a preliminary characterization of the uncertain parameter distribution range, and therefore the conservativeness and robustness of the solution results are the worst.</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>The influence of the three aggregations on individual costs.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Various costs/$</th>
<th align="left">Cassette set</th>
<th align="left">Polyhedral set (%change)</th>
<th align="left">Convex packet ensemble (%change)</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">Operation and maintenance cost</td>
<td align="left">22927.4</td>
<td align="left">22984.8 (&#x2b;0.25%)</td>
<td align="left">23121.6 (&#x2b;1.24%)</td>
</tr>
<tr>
<td align="left">Energy purchase cost</td>
<td align="left">159509.5</td>
<td align="left">159044.5 (&#x2212;0.29%)</td>
<td align="left">157816.3 (&#x2212;1.06%)</td>
</tr>
<tr>
<td align="left">standby costs</td>
<td align="left">8,640</td>
<td align="left">8,640 (0.00%)</td>
<td align="left">8,640 (0.00%)</td>
</tr>
<tr>
<td align="left">IDR costs</td>
<td align="left">30497.7</td>
<td align="left">30497.7 (0.00%)</td>
<td align="left">30424.5 (&#x2212;0.24%)</td>
</tr>
<tr>
<td align="left">system cost</td>
<td align="left">221574.6</td>
<td align="left">221,167 (&#x2212;0.18%)</td>
<td align="left">220002.4 (&#x2212;0.71%)</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s6-2-4">
<title>6.2.4 Output of each device in three pools</title>
<p>
<xref ref-type="fig" rid="F8">Figure 8</xref> gives the output of each device at the electric power balance under the three uncertainty sets. From the figure, it can be seen that in the multi-energy complementary microgrid system, the individual devices coordinate with each other and work together to maintain the electric power balance. In the PV big hairy time period (12&#x2013;16 h), the system purchases the lowest electric power from the ports, the polyhedral ensemble is the second, and the box ensemble is the most when the convex packet ensemble is used, which is the same as the conclusion obtained in the previous paper, and further verifies that the use of the convex packet ensemble enhances the robustness of the solution results and reduces the conservatism.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Output of each device under three aggregations. <bold>(a)</bold> Output of Cassette set equipment. <bold>(b)</bold> Output of polyhedral set equipment. <bold>(c)</bold> Outputs of the convex packet ensemble.</p>
</caption>
<graphic xlink:href="fenrg-13-1535211-g008.tif">
<alt-text content-type="machine-generated">Three bar charts showing power output over 24 hours for different equipment configurations: (a) Cassette set, (b) Polyhedral set, and (c) Convex packet ensemble. Each chart includes categories like electric coolers, PV output, wind power, and grid interaction. Power size is measured in kilowatts on the y-axis.</alt-text>
</graphic>
</fig>
</sec>
<sec id="s6-2-5">
<title>6.2.5 Computational efficiency analysis</title>
<p>To verify the computational efficiency of the convex hull uncertainty set, we supplemented simulation analyses comparing the convex hull set method with scenario-based stochastic optimization in the revised manuscript. The comparative results are shown in the table below.</p>
<p>As shown in <xref ref-type="table" rid="T4">Table 4</xref>, when handling problems of the same scale, the convex hull set method proposed in this paper exhibits significant computational efficiency advantages over scenario-based stochastic optimization. Even as the problem scale increases, the convex hull set method still outperforms scenario-based stochastic optimization in computational efficiency.</p>
<table-wrap id="T4" position="float">
<label>TABLE 4</label>
<caption>
<p>Comparative analysis of optimization methods.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th rowspan="2" align="left">Comparison item</th>
<th colspan="2" align="left">Scheduling cycle: 24 h</th>
<th colspan="2" align="left">Scheduling cycle: 72 h</th>
</tr>
<tr>
<th align="left">Convex hull set</th>
<th align="left">Scenario-based stochastic optimization</th>
<th align="left">Convex hull set</th>
<th align="left">Scenario-based stochastic optimization</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">Scheduling time/s</td>
<td align="left">25</td>
<td align="left">65</td>
<td align="left">42</td>
<td align="left">97</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
</sec>
<sec sec-type="conclusion" id="s7">
<title>7 Conclusion</title>
<p>In this paper, a research model of the industrial park microgrids robust optimization method based on data-driven is constructed and solved by C&#x26;CG algorithm. Finally, by comparing the industrial park microgrids robust optimization methods under different sets, the simulation results show that:<list list-type="simple">
<list-item>
<p>1. Compared with the interval set which can only take extreme conditions at the boundary, the polyhedron set has a better envelope for the range of uncertain parameters, which makes the operation result more robust.</p>
</list-item>
<list-item>
<p>2. When the robust adjustment coefficient is the same, the total system cost of using the convex hull set is 0.71% lower than that of the box set and 0.53% lower than that of the polyhedron set. For the convex hull set with different scaling multiples, this not only increases the envelope of the region with higher distribution of uncertain parameters, but also reduces the envelope of the blank region with low probability. Therefore, compared with the polyhedral set, the industrial park microgrids robust optimization method using the convex hull set is less conservative and more robust.</p>
</list-item>
</list>
</p>
<p>In the future, we will explore the comparative analysis between convex hull sets and advanced data-driven methods such as distributionally robust optimization and machine learning-based uncertainty sets, with a view to providing more comprehensive and forward-looking research results for the field of multi-energy microgrid optimization.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s8">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/<xref ref-type="sec" rid="s14">Supplementary Material</xref>, further inquiries can be directed to the corresponding author.</p>
</sec>
<sec sec-type="author-contributions" id="s9">
<title>Author contributions</title>
<p>CR: Investigation, Methodology, Writing &#x2013; original draft. LL: Investigation, Methodology, Writing &#x2013; original draft. JL: Validation, Writing &#x2013; review and editing. BJ: Validation, Writing &#x2013; review and editing.</p>
</sec>
<sec sec-type="funding-information" id="s10">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research and/or publication of this article. This work is supported by Science and Technology Project of State Grid Zhejiang Electric Power Co., Ltd. (No. 5211TZ230002).</p>
</sec>
<sec sec-type="COI-statement" id="s11">
<title>Conflict of interest</title>
<p>Authors CR, JL, and BJ were employed by State Grid TaiZhou Power Supply Company.</p>
<p>Author LL was employed by State Grid ZheJiang Electric Power Corporation.</p>
<p>The authors declare that this study received funding from State Grid Zhejiang Electric Power Co. The funder participated in the research design phase. During this phase, combining the actual operation requirements of industrial park microgrids, it put forward relevant suggestions on the research direction (e.g., the industrial load characteristics that need to be focused on in microgrid robust optimization) and the practicality of the technical framework.</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>
<p>Any alternative text (alt text) provided alongside figures in this article has been generated by Frontiers with the support of artificial intelligence and reasonable efforts have been made to ensure accuracy, including review by the authors wherever possible. If you identify any issues, please contact us.</p>
</sec>
<sec sec-type="disclaimer" id="s13">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<sec sec-type="supplementary-material" id="s14">
<title>Supplementary Material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/fenrg.2025.1535211/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/fenrg.2025.1535211/full#supplementary-material</ext-link>
</p>
<supplementary-material xlink:href="DataSheet1.docx" id="SM1" mimetype="application/docx" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Akter</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Rahman</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Islam</surname>
<given-names>R. M.</given-names>
</name>
<name>
<surname>Sheikh</surname>
<given-names>M. R. I.</given-names>
</name>
<name>
<surname>Hossain</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Attack-resilient framework for wind power forecasting against civil and adversarial attacks</article-title>. <source>Electr. Power Syst. Res.</source> <volume>238</volume>, <fpage>238111065</fpage>&#x2013;<lpage>111065</lpage>. <pub-id pub-id-type="doi">10.1016/j.epsr.2024.111065</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Aliasghar</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Baseem</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Navid</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Guest editorial: introduction to the special section on application of advanced machine/deep learning in electrical power and energy systems (VSI-mlep)</article-title>. <source>Comput. Electr. Eng.</source>, <fpage>102</fpage>. <pub-id pub-id-type="doi">10.1016/j.compeleceng.2022.108245</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Arooj</surname>
<given-names>Q.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>FedWindT: Federated learning assisted transformer architecture for collaborative and secure wind power forecasting in diverse conditions</article-title>. <source>Energy</source> <volume>309</volume>, <fpage>133072</fpage>&#x2013;<lpage>133072</lpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2024.133072</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ayene</surname>
<given-names>M. S.</given-names>
</name>
<name>
<surname>Yibre</surname>
<given-names>M. A.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Wind power prediction based on deep learning models: the case of adama wind farm</article-title>. <source>Heliyon</source> <volume>10</volume> (<issue>21</issue>), <fpage>e39579</fpage>. <pub-id pub-id-type="doi">10.1016/j.heliyon.2024.e39579</pub-id>
<pub-id pub-id-type="pmid">39559238</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bifei</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Haoyong</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Xiaodong</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Two-stage robust optimization dispatch for multiple microgrids with electric vehicle loads based on a novel data-driven uncertainty set</article-title>. <source>Int. J. Electr. Power Energy Syst.</source>, <fpage>134</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijepes.2021.107359</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Davidsdottir</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>&#xc1;sgeirsson</surname>
<given-names>I. E.</given-names>
</name>
<name>
<surname>Fazeli</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Gunnarsdottir</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Leaver</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Shafiei</surname>
<given-names>E.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>Integrated energy systems modeling with multi-criteria decision analysis and stakeholder engagement for identifying a sustainable energy transition</article-title>. <source>Energies</source> <volume>17</volume> (<issue>17</issue>), <fpage>4266</fpage>. <pub-id pub-id-type="doi">10.3390/en17174266</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Degefa</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Lehtonen</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Millar</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Alah&#xe4;iv&#xe4;l&#xe4;</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Saarij&#xe4;rvi</surname>
<given-names>E.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Optimal voltage control strategies for day-ahead active distribution network operation</article-title>. <source>Electr. Power Syst. Res.</source> <volume>127</volume>, <fpage>12741</fpage>&#x2013;<lpage>12752</lpage>. <pub-id pub-id-type="doi">10.1016/j.epsr.2015.05.018</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Farh</surname>
<given-names>H. M. H.</given-names>
</name>
<name>
<surname>Shamma&#x27;a</surname>
<given-names>A. A. A.</given-names>
</name>
<name>
<surname>Alaql</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Omotoso</surname>
<given-names>H. O.</given-names>
</name>
<name>
<surname>Alfraidi</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Mohamed</surname>
<given-names>M. A.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Optimization and uncertainty analysis of hybrid energy systems using monte carlo simulation integrated with genetic algorithm</article-title>. <source>Comput. Electr. Eng.</source> <volume>120</volume> (<issue>PC</issue>), <fpage>109833</fpage>. <pub-id pub-id-type="doi">10.1016/j.compeleceng.2024.109833</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Freitas</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Asada</surname>
<given-names>N. E.</given-names>
</name>
<name>
<surname>Zobaa</surname>
<given-names>F. A.</given-names>
</name>
<name>
<surname>McConnach</surname>
<given-names>J. S.</given-names>
</name>
</person-group> (<year>2007</year>). <article-title>Policy and economic issues of electrical power and energy systems</article-title>. <source>Int. J. Glob. Energy Issues</source> <volume>27</volume> (<issue>3</issue>), <fpage>253</fpage>&#x2013;<lpage>261</lpage>. <pub-id pub-id-type="doi">10.1504/ijgei.2007.014347</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hamed</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Rasoul</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>A new correlated polyhedral uncertainty set for robust optimization</article-title>. <source>Comput. Industrial Eng.</source>, <fpage>157</fpage>. <pub-id pub-id-type="doi">10.1016/j.cie.2021.107346</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ibraheemi</surname>
<given-names>A. Z.</given-names>
</name>
<name>
<surname>Janabi</surname>
<given-names>A. S.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Sustainable energy: advancing wind power forecasting with grey wolf optimization and GRU models</article-title>. <source>Results Eng.</source> <volume>24</volume>, <fpage>102930</fpage>&#x2013;<lpage>102930</lpage>. <pub-id pub-id-type="doi">10.1016/j.rineng.2024.102930</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ishaq</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Dincer</surname>
<given-names>I.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Development of a novel renewable energy-based integrated system coupling biomass and H2S sources for clean hydrogen production</article-title>. <source>Renew. Energy</source> <volume>237</volume> (<issue>PC</issue>), <fpage>121642</fpage>. <pub-id pub-id-type="doi">10.1016/j.renene.2024.121642</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jalilvand-Nejad</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Shafaei</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Shahriari</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Robust optimization under correlated polyhedral uncertainty set</article-title>. <source>Comput. Industrial Eng.</source>, <fpage>92</fpage>. <pub-id pub-id-type="doi">10.1016/j.cie.2015.12.006</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lorca</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>X. A.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Adaptive robust optimization with dynamic uncertainty sets for multi-period economic dispatch under significant wind</article-title>. <source>IEEE Trans. Power Systems: A Publ. Power Eng. Soc.</source> <volume>30</volume> (<issue>4</issue>), <fpage>1702</fpage>&#x2013;<lpage>1713</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2014.2357714</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Michos</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Catthoor</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Foussekis</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Kazantzidis</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Ultra-short-term wind power forecasting in complex terrain: a physics-based approach</article-title>. <source>Energies</source> <volume>17</volume> (<issue>21</issue>), <fpage>5493</fpage>. <pub-id pub-id-type="doi">10.3390/en17215493</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Moradian</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Gharbia</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Nezhad</surname>
<given-names>M. M.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Enhancing the accuracy of wind power projections under climate change using geospatial machine learning models</article-title>. <source>Energy Rep.</source>, <fpage>123353</fpage>&#x2013;<lpage>123363</lpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2024.09.007</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nayak</surname>
<given-names>K. A.</given-names>
</name>
<name>
<surname>Sharma</surname>
<given-names>C. K.</given-names>
</name>
<name>
<surname>Bhakar</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Tiwari</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Probabilistic online learning framework for short-term wind power forecasting using ensemble bagging regression model</article-title>. <source>Energy Convers. Manag.</source> <volume>323</volume> (<issue>PA</issue>), <fpage>119142</fpage>. <pub-id pub-id-type="doi">10.1016/j.enconman.2024.119142</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Poodeh</surname>
<given-names>S. M.</given-names>
</name>
<name>
<surname>Hooshmand</surname>
<given-names>A. R.</given-names>
</name>
<name>
<surname>Khah</surname>
<given-names>S. M.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Reliability-constrained configuration optimization for integrated power and natural gas energy systems: a stochastic approach</article-title>. <source>Reliab. Eng. Syst. Saf.</source> <volume>254</volume>, <fpage>110600</fpage>. <pub-id pub-id-type="doi">10.1016/j.ress.2024.110600</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rahman</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jacob</surname>
<given-names>A. R.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Multi-timescale power system operations for electrolytic hydrogen generation in integrated nuclear-renewable energy systems</article-title>. <source>Appl. Energy</source> <volume>377</volume> (<issue>PA</issue>), <fpage>124346</fpage>. <pub-id pub-id-type="doi">10.1016/j.apenergy.2024.124346</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rezazadeh</surname>
<given-names>A. A.</given-names>
</name>
<name>
<surname>Avami</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>An integrated policy approach for sustainable decarbonization pathways of energy system in a city under climate change scenarios</article-title>. <source>Energy Policy</source> <volume>195</volume>, <fpage>114394</fpage>. <pub-id pub-id-type="doi">10.1016/j.enpol.2024.114394</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Son</surname>
<given-names>G. Y.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>Y. S.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Optimal planning and operation of integrated energy systems in South Korea: introducing a novel ambiguity set based distributionally robust optimization</article-title>. <source>Energy</source> <volume>307</volume>, <fpage>132503</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2024.132503</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Stewart</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Bingham</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Electrical power and energy systems for transportation applications</article-title>. <source>Energies</source> <volume>9</volume> (<issue>7</issue>), <fpage>545</fpage>. <pub-id pub-id-type="doi">10.3390/en9070545</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sulaiman</surname>
<given-names>H. M.</given-names>
</name>
<name>
<surname>Mustaffa</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Saari</surname>
<given-names>M. M.</given-names>
</name>
<name>
<surname>Abas</surname>
<given-names>M. F.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Wind power forecasting with metaheuristic-based feature selection and neural networks</article-title>. <source>Clean. Energy Syst.</source> <volume>9</volume>, <fpage>100149</fpage>. <pub-id pub-id-type="doi">10.1016/j.cles.2024.100149</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Vulusala</surname>
<given-names>V. S.</given-names>
</name>
<name>
<surname>Madichetty</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Application of superconducting magnetic energy storage in electrical power and energy systems: a review</article-title>. <source>Int. J. Energy Res.</source> <volume>42</volume> (<issue>2</issue>), <fpage>358</fpage>&#x2013;<lpage>368</lpage>. <pub-id pub-id-type="doi">10.1002/er.3773</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Bu</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Guo</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2024a</year>). <article-title>Tractable data enriched distributionally robust chance-constrained conservation voltage reduction</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>39</volume> (<issue>1</issue>), <fpage>821</fpage>&#x2013;<lpage>835</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2023.3244895</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Y. S.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>You</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2024b</year>). <article-title>A data-aided robust approach for bottleneck identification in power transmission grids for achieving transportation electrification ambition: a case study in New York state</article-title>. <source>Adv. Appl. Energy</source> <volume>14</volume>, <fpage>100173</fpage>. <pub-id pub-id-type="doi">10.1016/j.adapen.2024.100173</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>