<?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">1501577</article-id>
<article-id pub-id-type="doi">10.3389/fenrg.2025.1501577</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>Consider the master-slave game model of integrated energy system with step carbon trading and demand response</article-title>
<alt-title alt-title-type="left-running-head">Zhang and Zhang</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.1501577">10.3389/fenrg.2025.1501577</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Zhang</surname>
<given-names>Yi</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/2841122/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Zhang</surname>
<given-names>Zhezhou</given-names>
</name>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
</contrib-group>
<aff id="aff">
<institution>School of Economics and Management</institution>, <institution>Shanghai University of Electric Power</institution>, <addr-line>Shanghai</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/2104824/overview">Haifeng Qiu</ext-link>, Nanyang Technological University, Singapore</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/1583270/overview">Maneesh Kumar</ext-link>, Indian Institute of Technology Roorkee, India</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1839586/overview">Xinglei Liu</ext-link>, Xi&#x2019;an Jiaotong University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2859099/overview">Bin Xiong</ext-link>, Guangxi University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2860669/overview">Wu Ruiming</ext-link>, Shanghai Jiao Tong University, China</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Zhezhou Zhang, <email>93113611@qq.com</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>04</day>
<month>03</month>
<year>2025</year>
</pub-date>
<pub-date pub-type="collection">
<year>2025</year>
</pub-date>
<volume>13</volume>
<elocation-id>1501577</elocation-id>
<history>
<date date-type="received">
<day>25</day>
<month>09</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>31</day>
<month>01</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2025 Zhang and Zhang.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Zhang and Zhang</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 the context of deepening energy coupling and the high penetration of renewable energy, this paper proposes a master-slave game model incorporating comprehensive demand response and a stepped carbon trading mechanism. The goal is to optimize scheduling of demand response resources and fully leverage the flexibility of energy use within an integrated energy system while addressing conflicts of interest among multiple stakeholders, thereby enhancing trading revenue in Energy Markets while considering lower carbon emissions. Firstly, the basic structure of the integrated energy system is analyzed, and the decision-making entities are modeled. A stepped carbon pricing mechanism is introduced to constrain the carbon emissions of each entity, while comprehensive demand response is introduced on the user side to improve user economic benefits and energy use comfort. Secondly, an energy manager is designated as the leader, while energy suppliers, energy storage operators, and users act as followers, forming a master-slave game model to explore the interaction mechanisms among the entities. Finally, the model is solved using the differential evolution algorithm and the Cplex tool on the Matlab platform, resulting in an equilibrium solution. A case study is conducted using relevant data from a typical region in China, demonstrating that the scheduling of demand response resources are improved, and carbon emissions are reduced, thereby verifying the rationality and effectiveness of the proposed model. Profits of EMO, EGO, ESO and users have respectively increased 34%, 46%, 31% and 7%. The carbon emissions of the system have decreased 11%.</p>
</abstract>
<kwd-group>
<kwd>master-salve game</kwd>
<kwd>stepped carbon trading</kwd>
<kwd>integrated energy system</kwd>
<kwd>demand response</kwd>
<kwd>differential evolution</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>The fossil fuel-based energy consumption structure is one of the primary causes of global climate change, making the global energy transition an urgent task. Structural adjustments towards clean energy are an effective means to promote green development in the economy, environment, and society. Integrated Energy Systems (IES) break down the barriers between traditional energy subsystems, enabling the coordination of electricity, heat, gas, and cooling, thereby maximizing energy utilization and fostering sustainable energy development (<xref ref-type="bibr" rid="B6">Hongle et al., 2024</xref>).</p>
<p>Given the current context, there is increasing global emphasis on IES development, making integrated energy a research hotspot among scholars domestically and internationally. Some scholars have focused on IES modeling, laying the groundwork for research on system operation, evaluation, and scheduling. Shahidehpour et al. used singular perturbation theory to construct a dynamic IES model, facilitating the coordinated operation of gas, electric, and thermal systems (<xref ref-type="bibr" rid="B15">Shahidehpour et al., 2019</xref>). Peng et al. proposed a quantized event-driven IES simulation algorithm, improving the efficiency and accuracy of IES simulations (<xref ref-type="bibr" rid="B11">Peng et al., 2022</xref>). Hong et al. developed an optimal power-keeping model for electric-gas IES, effectively reducing the model scale and enhancing accuracy (<xref ref-type="bibr" rid="B4">Hong et al., 2023</xref>). Shuai et al. explored an algorithm based on state decomposition, improving flexibility of dispatch and energy efficiency (<xref ref-type="bibr" rid="B16">Shuai et al., 2022</xref>).</p>
<p>Optimizing IES scheduling is also a focal point for current scholars. Chong et al. established a two-stage optimization model for planning allocation and operational scheduling, exploring factors affecting the Integrated Benefit (IB) index and the optimal energy supply mode (<xref ref-type="bibr" rid="B3">Chongchao et al., 2023</xref>). Chen et al. proposed an improved multi-time-scale coordinated control strategy for IES based on a Hybrid Energy Storage System (HESS), analyzing the power response characteristics of various devices within IES across different time scales (<xref ref-type="bibr" rid="B2">Chenyun et al., 2023</xref>). Chen et al. considered the multi-energy coupling nature of IES and proposed an optimization model incorporating Demand Response (DR), enhancing economic efficiency and effectively promoting new energy absorption (<xref ref-type="bibr" rid="B1">Chen et al., 2024</xref>). Due to the volatility and randomness in renewable energy output and load demand, IES faces operational risks. Hui et al. proposed an optimized IES model considering multi-uncertainties, multi-energy coupling, and integrated demand response (IDR), which effectively ensures coordinated system operation, improves economic efficiency, and enhances system reliability (<xref ref-type="bibr" rid="B7">Hui et al., 2023</xref>). Hong et al. introduced a demand response (DR) mechanism based on the uncertainties of renewable energy, proposing an optimal planning method that balances the economic benefits and resilience of IES under extreme natural disasters by calculating the resilience marginal cost (<xref ref-type="bibr" rid="B5">Hongbo et al., 2023</xref>). Yun et al. constructed an IES optimization scheduling model based on the CVaR theory to predict energy demand, reduce IES operational risks, and simultaneously improve economic efficiency (<xref ref-type="bibr" rid="B26">Yunfei et al., 2022</xref>). Li et al. studied demand response in power systems against attacks (<xref ref-type="bibr" rid="B22">Yang S. et al., 2024</xref>).</p>
<p>The low-carbon aspect of IES is another key area of focus for scholars. Pei et al. introduced demand response and carbon trading mechanisms into IES optimized scheduling, proposing an optimal scheduling model incorporating combined cooling, heat, and power (CCHP) and carbon capture devices to achieve low-carbon economic operation of IES (<xref ref-type="bibr" rid="B10">Peihong et al., 2023</xref>). Xiao et al. applied a stepped carbon penalty response (SCPR) to IES, reducing IES operational carbon emissions and annual operating costs (<xref ref-type="bibr" rid="B20">Xiaohui et al., 2023</xref>). Ping et al. constructed an IES optimization scheduling model incorporating tiered carbon trading and hydrogen energy coupling, fully utilizing the clean characteristics of hydrogen energy to reduce carbon emissions and enhance the economic efficiency of IES operation (<xref ref-type="bibr" rid="B13">Pinghui et al., 2023</xref>).</p>
<p>IES operations often involve multiple stakeholders, and game theory is suitable for studying the interests among these parties. The master-slave game belongs to the dynamic non-cooperative game category, where the leader&#x2019;s decisions become constraints for the followers, who then respond accordingly. Yuan et al. treated IES vendors as leaders and each IES as followers, constructing a master-slave game model to study the dynamic pricing behavior of IES vendors and the operational optimization strategies of IES (<xref ref-type="bibr" rid="B25">Yuanyuan et al., 2022</xref>). Ke et al. used a master-slave game model to explore the relationships among energy retailers (ER), energy suppliers (ESs), and users, validating the proposed method&#x2019;s effectiveness through scenario analysis (<xref ref-type="bibr" rid="B8">Li et al., 2023</xref>). Mei et al. considered the collaborative incentives of carbon trading on the load side, establishing a one-master, multi-slave optimization model to explore trading strategies among multiple parties (<xref ref-type="bibr" rid="B9">Meijuan et al., 2024</xref>). The aforementioned studies on IES games focus on the interests among stakeholders without considering the impact of carbon emissions on each party.</p>
<p>Since the opening of the electricity market, scholars have focused on studying the participation of IES in the exchange of interests in the electricity market and enhancing the competitiveness of distributed energy, with less consideration given to fully utilizing demand side resources. Additionally, energy storage is a core component of IES, yet these studies overlook the role of energy storage operators as stakeholders. Based on the above background, this paper constructs a master-slave game model incorporating IES demand response and a stepped carbon pricing mechanism. The research content of this article is as follows:<list list-type="simple">
<list-item>
<p>1. Firstly, the basic structure of IES is introduced, and the decision-making entities are modeled, while also introducing the IDR to reflect user satisfaction with the use of electricity, heat, and cooling.</p>
</list-item>
<list-item>
<p>2. Secondly, a carbon trading mechanism is introduced, using stepped carbon price to reduce carbon emissions from the integrated energy system.</p>
</list-item>
<list-item>
<p>3. Subsequently, a one-master, multi-slave game model is constructed, with the Energy Management Operator (EMO) as the leader, and the Energy Generation Operator (EGO), Energy Storage Operator (ESO), and users as followers, to explore the interactive mechanisms among the entities.</p>
</list-item>
<list-item>
<p>4. The Differential Evolution Algorithm (DE) is used on the Matlab platform to solve the upper-level EMO model, while the Cplex tool is employed to solve the lower-level follower models, ultimately obtaining an equilibrium solution.</p>
</list-item>
<list-item>
<p>5. Finally, relevant data from a certain region in China is selected for case analysis, comparing the demand conditions for electricity, heat, and cooling during different periods, exploring the load changes before and after demand response, and optimizing the scheduling of the three types of energy. This verifies the model&#x2019;s validity and scientific accuracy, demonstrating the advantages of game optimization from both economic benefits and environmental costs perspectives.</p>
</list-item>
</list>
</p>
</sec>
<sec id="s2">
<title>2 Multi-entity modeling of integrated energy systems and stepped carbon pricing mechanism</title>
<sec id="s2-1">
<title>2.1 Integrated energy system framework</title>
<p>The integrated energy system can integrate various energy resources to solve the complexity of purchasing and managing energy resources separately. At the same time, under unified scheduling and management, it reduces energy loss and waste, thereby reducing the operating costs of enterprises. Integrated Energy Systems (IES) can simultaneously integrate electricity, heat, cooling, and gas. The system is equipped with energy storage devices to assist in balancing the supply and demand of these four types of energy, and includes energy conversion devices to enable flexible conversion between the four types of energy, maximizing the utilization of renewable energy. During system operation, the four types of energy units develop output plans based on their own operational characteristics, energy demands, and the price differences between various energies. IES uses energy conversion devices to achieve mutual conversion between various types of energy, enhancing the penetration rate of renewable energy. Unlike traditional power systems, IES includes multi-energy flow coupling. <xref ref-type="fig" rid="F1">Figure 1</xref> shows the IES architecture, which involves multiple energies such as electricity, heat, cooling, and gas. IES consists of an energy supply network, energy exchange links, and end use energy units.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Ies architecture and energy flow diagram.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g001.tif"/>
</fig>
<p>The IES energy supply equipment includes photovoltaic (PV), wind power (WT), and gas boilers (GB). The CCHP system typically consists of a gas turbine (GT), a heat recovery boiler (HRB), and an ice storage air conditioning system (ISAC). Energy storage equipment is composed of batteries (BT) and thermal storage tanks (HST).</p>
</sec>
<sec id="s2-2">
<title>2.2 Decision modeling of each entity</title>
<sec id="s2-2-1">
<title>2.2.1 Energy Management Operator</title>
<p>Energy Management Operator (EMO) is responsible for coordinating and planning energy resources. EMO utilizes electricity pricing mechanisms to flexibly adjust the buying and selling prices of energy based on actual conditions, guiding the output of energy supply units. The objective <inline-formula id="inf1">
<mml:math id="m1">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>EMO</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is to maximize profits, represented by the following <xref ref-type="disp-formula" rid="e1">function 1</xref>:<disp-formula id="e1">
<mml:math id="m2">
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>EMO</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<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:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mtext>user</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mtext>eso</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
<mml:mtext>emo</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf2">
<mml:math id="m3">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mtext>user</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the revenue from selling energy to users at time t; <inline-formula id="inf3">
<mml:math id="m4">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mtext>eso</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the revenue from selling energy to ESO at time t; <inline-formula id="inf4">
<mml:math id="m5">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the cost of purchasing energy from EGO at time t; <inline-formula id="inf5">
<mml:math id="m6">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">e</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the cost of external energy purchase at time t; <inline-formula id="inf6">
<mml:math id="m7">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
<mml:mtext>emo</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the additional carbon emission cost of external energy purchase at time t.<disp-formula id="e2">
<mml:math id="m8">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mtext>user</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
</mml:msub>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<p>
<xref ref-type="disp-formula" rid="e3">Equation 3</xref> describes the interests of eso in the formula <inline-formula id="inf7">
<mml:math id="m9">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf8">
<mml:math id="m10">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf9">
<mml:math id="m11">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the actual electricity, heating, and cooling loads of the user respectively; <inline-formula id="inf10">
<mml:math id="m12">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf11">
<mml:math id="m13">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf12">
<mml:math id="m14">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the prices of electricity, heat, and cooling energy sales respectively.<disp-formula id="e3">
<mml:math id="m15">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mtext>eso</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>P</mml:mi>
<mml:mmultiscripts>
<mml:mi>p</mml:mi>
<mml:mprescripts/>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:none/>
</mml:mmultiscripts>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf13">
<mml:math id="m16">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf14">
<mml:math id="m17">
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf15">
<mml:math id="m18">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent selling electricity, heating, and cooling power to ESO respectively. <inline-formula id="inf16">
<mml:math id="m19">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf17">
<mml:math id="m20">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf18">
<mml:math id="m21">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are the same as the above <xref ref-type="disp-formula" rid="e2">Equation 2</xref>. <xref ref-type="disp-formula" rid="e4">Equation 4</xref> is shown as follows:<disp-formula id="e4">
<mml:math id="m22">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf19">
<mml:math id="m23">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf20">
<mml:math id="m24">
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf21">
<mml:math id="m25">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent EMO&#x2019;s purchase of electricity, heating, and cooling power from EGO respectively. <inline-formula id="inf22">
<mml:math id="m26">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf23">
<mml:math id="m27">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf24">
<mml:math id="m28">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the price of purchasing electricity, heat, and cooling energy from EGO for EMO. <xref ref-type="disp-formula" rid="e5">Equation 5</xref> is shown as follows:<disp-formula id="e5">
<mml:math id="m29">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf25">
<mml:math id="m30">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf26">
<mml:math id="m31">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent EMO&#x2019;s purchase and sale prices of electricity to the grid respectively. <xref ref-type="disp-formula" rid="e6">Equation 6</xref> is shown as follows:<disp-formula id="e6">
<mml:math id="m32">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
<mml:mtext>emo</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mn>0</mml:mn>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf27">
<mml:math id="m33">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents average carbon emission trading price; <inline-formula id="inf28">
<mml:math id="m34">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>c</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents actual carbon emissions by emo; <inline-formula id="inf29">
<mml:math id="m35">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mn>0</mml:mn>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents initial carbon quota by emo.</p>
<p>EMO&#x2019;s purchase and sale of energy meet the following constraints <xref ref-type="disp-formula" rid="e7">Equations 7</xref>&#x2013;<xref ref-type="disp-formula" rid="e11">11</xref>:<disp-formula id="e7">
<mml:math id="m36">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mtext>gb</mml:mtext>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mtext>gs</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>
<disp-formula id="e8">
<mml:math id="m37">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>
<disp-formula id="e9">
<mml:math id="m38">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>
<disp-formula id="e10">
<mml:math id="m39">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>
<disp-formula id="e11">
<mml:math id="m40">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf30">
<mml:math id="m41">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf31">
<mml:math id="m42">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent upper and lower limits of heat sale prices; <inline-formula id="inf32">
<mml:math id="m43">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf33">
<mml:math id="m44">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent upper and lower limits of heat purchase price; <inline-formula id="inf34">
<mml:math id="m45">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf35">
<mml:math id="m46">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent upper and lower limits of cooling sale prices; <inline-formula id="inf36">
<mml:math id="m47">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf37">
<mml:math id="m48">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent upper and lower limits of cooling purchase price;</p>
</sec>
<sec id="s2-2-2">
<title>2.2.2 Energy Generation Operator</title>
<p>Energy Generation Operator (EGO) is responsible for managing various types of energy units. EGO optimizes the output of various energy units based on energy prices to maximize its own profits. <inline-formula id="inf38">
<mml:math id="m49">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>EGO</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is represented by the following <xref ref-type="disp-formula" rid="e12">function 12</xref>:<disp-formula id="e12">
<mml:math id="m50">
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>EGO</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<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:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>rd</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
<mml:mtext>ego</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>os</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf39">
<mml:math id="m51">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the revenue from selling energy at time t; <inline-formula id="inf40">
<mml:math id="m52">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>rd</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the cost of energy production at time t; <inline-formula id="inf41">
<mml:math id="m53">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
<mml:mtext>ego</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the carbon emission cost of energy supply at time t; <inline-formula id="inf42">
<mml:math id="m54">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>os</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the start/stop costs of various units at time t. <xref ref-type="disp-formula" rid="e13">Equations 13</xref>&#x2013;<xref ref-type="disp-formula" rid="e16">16</xref> is shown as follows:<disp-formula id="e13">
<mml:math id="m55">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>
<disp-formula id="e14">
<mml:math id="m56">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>rd</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>i</mml:mi>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>j</mml:mi>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>
<disp-formula id="e15">
<mml:math id="m57">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
<mml:mtext>ego</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>c</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mn>0</mml:mn>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>
<disp-formula id="e16">
<mml:math id="m58">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>os</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>i</mml:mi>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>l</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>l</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(16)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf43">
<mml:math id="m59">
<mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents number of thermal power units; <inline-formula id="inf44">
<mml:math id="m60">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents fixed cost of thermal power unit I; Boolean value <inline-formula id="inf45">
<mml:math id="m61">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf46">
<mml:math id="m62">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>l</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf47">
<mml:math id="m63">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent whether the thermal power unit i in time period t is in operation, startup, or shutdown status, represented by 0 and 1 respectively. The article segments and linearizes the operating cost function of thermal power units, <inline-formula id="inf48">
<mml:math id="m64">
<mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> the number of linearized segments; <inline-formula id="inf49">
<mml:math id="m65">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> the slope of the power generation cost representing the segment j of the thermal power unit i; <inline-formula id="inf50">
<mml:math id="m66">
<mml:mrow>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is a decision variable representing the output of the segment j of the thermal power unit i during time period t; <inline-formula id="inf51">
<mml:math id="m67">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents average carbon emission trading price; <inline-formula id="inf52">
<mml:math id="m68">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>c</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents actual carbon emissions; <inline-formula id="inf53">
<mml:math id="m69">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mn>0</mml:mn>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents initial carbon quota.; <inline-formula id="inf54">
<mml:math id="m70">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>l</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf55">
<mml:math id="m71">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the start-up and shutdown costs of the thermal power unit i respectively.</p>
<p>Thermal power units must meet the following constraints <xref ref-type="disp-formula" rid="e17">Equations 17</xref>&#x2013;<xref ref-type="disp-formula" rid="e23">23</xref>:<disp-formula id="e17">
<mml:math id="m72">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>l</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>
<disp-formula id="e18">
<mml:math id="m73">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>
<disp-formula id="e19">
<mml:math id="m74">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mi>max</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>
<disp-formula id="e20">
<mml:math id="m75">
<mml:mrow>
<mml:msubsup>
<mml:mi>w</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>min</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>w</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>max</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>
<disp-formula id="e21">
<mml:math id="m76">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>u</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>
<disp-formula id="e22">
<mml:math id="m77">
<mml:mrow>
<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:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>u</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>
<disp-formula id="e23">
<mml:math id="m78">
<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:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:munderover>
</mml:mstyle>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(23)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf56">
<mml:math id="m79">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>w</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf57">
<mml:math id="m80">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>l</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf58">
<mml:math id="m81">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent whether thermal power units i is in working, starting, or stopping state during time period t, if it is, it is 1; otherwise, it is 0; <inline-formula id="inf59">
<mml:math id="m82">
<mml:mrow>
<mml:msubsup>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>min</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf60">
<mml:math id="m83">
<mml:mrow>
<mml:msubsup>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the maximum and minimum output power of thermal power units i respectively; <inline-formula id="inf61">
<mml:math id="m84">
<mml:mrow>
<mml:msubsup>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the upper limit of the j section output of thermal power units i; <inline-formula id="inf62">
<mml:math id="m85">
<mml:mrow>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>u</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf63">
<mml:math id="m86">
<mml:mrow>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the uphill and downhill climbing rates of thermal power units i respectively; <inline-formula id="inf64">
<mml:math id="m87">
<mml:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>u</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf65">
<mml:math id="m88">
<mml:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the minimum on/off time of thermal power units i respectively; <inline-formula id="inf66">
<mml:math id="m89">
<mml:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf67">
<mml:math id="m90">
<mml:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent the initial start-up and shutdown times of thermal power units i.</p>
</sec>
<sec id="s2-2-3">
<title>2.2.3 Energy storage operator</title>
<p>The Energy Storage Operator (ESO) is responsible for managing energy storage equipment. ESO stores electric energy in BT and thermal energy in HST. To maximize profits, ESO stores energy when prices are low and discharges it when prices are high. The <xref ref-type="disp-formula" rid="e24">function 24</xref> is represented as:<disp-formula id="e24">
<mml:math id="m91">
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mtext>ESO</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<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:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf68">
<mml:math id="m92">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the revenue from discharging energy at time t; <inline-formula id="inf69">
<mml:math id="m93">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the revenue from discharging energy at time t. The specific expressions are shown in following equations <xref ref-type="disp-formula" rid="e25">Equations 25</xref>, <xref ref-type="disp-formula" rid="e26">26</xref>:<disp-formula id="e25">
<mml:math id="m94">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">d</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">d</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
<label>(25)</label>
</disp-formula>
<disp-formula id="e26">
<mml:math id="m95">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>c</mml:mi>
<mml:mtext>bt</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mtext>hst</mml:mtext>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
<label>(26)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf70">
<mml:math id="m96">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf71">
<mml:math id="m97">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represent the electricity and heat prices at time t; <inline-formula id="inf72">
<mml:math id="m98">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">d</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf73">
<mml:math id="m99">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">d</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represent the discharged energy from BT and HST at time t respectively; <inline-formula id="inf74">
<mml:math id="m100">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf75">
<mml:math id="m101">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represent the stored energy in BT and HST at time t respectively.</p>
<p>The state of charge and charging/discharging constraints of energy storage devices are as following <xref ref-type="disp-formula" rid="e1">Formulas 27</xref>&#x2013;<xref ref-type="disp-formula" rid="e31">31</xref>:<disp-formula id="e27">
<mml:math id="m102">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(27)</label>
</disp-formula>
<disp-formula id="e28">
<mml:math id="m103">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>D</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(28)</label>
</disp-formula>
<disp-formula id="e29">
<mml:math id="m104">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(29)</label>
</disp-formula>
<disp-formula id="e30">
<mml:math id="m105">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(30)</label>
</disp-formula>
<disp-formula id="e31">
<mml:math id="m106">
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
<label>(31)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf76">
<mml:math id="m107">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf77">
<mml:math id="m108">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represent the state of charge of the energy storage device e at time t and t-1 respectively; <inline-formula id="inf78">
<mml:math id="m109">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents maximum state of charge of the energy storage device e; <inline-formula id="inf79">
<mml:math id="m110">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>D</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> maximum discharge depth of the energy storage system; <xref ref-type="disp-formula" rid="e33">Equation 33</xref> is shown as follows: <inline-formula id="inf80">
<mml:math id="m111">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf81">
<mml:math id="m112">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represent energy storage device e at time t respectively; <inline-formula id="inf82">
<mml:math id="m113">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf83">
<mml:math id="m114">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>S</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represent the maximum allowable charging and discharging power of the energy storage device e respectively; <inline-formula id="inf84">
<mml:math id="m115">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf85">
<mml:math id="m116">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> the charging and discharging efficiency coefficients of energy storage devices respectively. <inline-formula id="inf86">
<mml:math id="m117">
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf87">
<mml:math id="m118">
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> are 0&#x2013;1 variables, describe whether the energy storage device is in a charging or discharging state at time t. If it is, take 1; otherwise, take 0. Both cannot be 1 at the same time.</p>
</sec>
<sec id="s2-2-4">
<title>2.2.4 Users and integrated demand response</title>
<p>The objective function for maximizing consumer surplus is expressed as <xref ref-type="disp-formula" rid="e1">Formula 32</xref>:<disp-formula id="e32">
<mml:math id="m119">
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>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:mrow>
<mml:mo>[</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
<label>(32)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf88">
<mml:math id="m120">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the utility function of user satisfaction from purchasing electricity and heat, described as a quadratic form. <xref ref-type="disp-formula" rid="e33">Equation 33</xref> is shown as follows:<disp-formula id="e33">
<mml:math id="m121">
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
<label>(33)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf89">
<mml:math id="m122">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf90">
<mml:math id="m123">
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf91">
<mml:math id="m124">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf92">
<mml:math id="m125">
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the preference coefficients of electrical energy consumption and thermal energy consumption respectively.</p>
<p>Demand response is a flexible tool for regulating the electricity market, which plays an important role in balancing electricity supply and demand, consolidating system stability, and promoting the consumption of renewable energy (<xref ref-type="bibr" rid="B27">Zhijie et al., 2024</xref>). In the traditional sense, demand response refers to the adjustment of power consumption habits by users on the demand side in response to incentives, compensation policies, or electricity price changes issued by power companies (<xref ref-type="bibr" rid="B17">Song et al., 2024</xref>). Demand response is generally divided into price-based and incentive-based categories (<xref ref-type="bibr" rid="B21">Yang J. et al., 2024</xref>). With the advancement of information technology, single-energy systems are gradually evolving into multi-energy systems, and demand response has evolved to include electricity, cooling, heating, and other forms of energy (<xref ref-type="bibr" rid="B12">Peng et al., 2021</xref>). IES demand response is an important means of encouraging interaction between demand-side resources and renewable energy (<xref ref-type="bibr" rid="B18">Songrui et al., 2022</xref>).</p>
<p>Fixed load refers to an electrical load whose power remains relatively constant over a period of time. Shiftable loads refers to the power supply time that can be adjusted according to the plan, and the overall load can be shifted. The energy load is composed of fixed loads <inline-formula id="inf93">
<mml:math id="m126">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> and shiftable loads <inline-formula id="inf94">
<mml:math id="m127">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, satisfying the following <xref ref-type="disp-formula" rid="e34">Equation 34</xref>:<disp-formula id="e34">
<mml:math id="m128">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(34)</label>
</disp-formula>
</p>
<p>Users can adjust their power consumption and timing based on electricity prices at different times, and shiftable loads <inline-formula id="inf95">
<mml:math id="m129">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> must satisfy the following constraints <xref ref-type="disp-formula" rid="e35">35</xref>, <xref ref-type="disp-formula" rid="e36">36</xref>:<disp-formula id="e35">
<mml:math id="m130">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(35)</label>
</disp-formula>
<disp-formula id="e36">
<mml:math id="m131">
<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:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(36)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf96">
<mml:math id="m132">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:msubsup>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the maximum value of shiftable load at time t; <inline-formula id="inf97">
<mml:math id="m133">
<mml:mrow>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the total amount of shiftable load over the entire period T, which remains unchanged before and after the demand response.</p>
<p>Thermal (cooling) loads are composed of fixed thermal (cooling) loads and reducible thermal (cooling) loads, satisfying the following <xref ref-type="disp-formula" rid="e37">Equations 37</xref>, <xref ref-type="disp-formula" rid="e38">38</xref>:<disp-formula id="e37">
<mml:math id="m134">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(37)</label>
</disp-formula>
<disp-formula id="e38">
<mml:math id="m135">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2264;</mml:mo>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(38)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf98">
<mml:math id="m136">
<mml:mrow>
<mml:msubsup>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>max</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the maximum value of reducible thermal (cooling) load at time t.</p>
</sec>
</sec>
<sec id="s2-3">
<title>2.3 Stepped carbon trading model</title>
<p>The goal of carbon trading policies is to stimulate the initiative of traditional units to reduce carbon emissions by adjusting carbon trading costs, thereby increasing the competitiveness of wind and solar power in the electricity market (<xref ref-type="bibr" rid="B14">Ruitian et al., 2022</xref>). A common method is to obtain carbon trading costs through a fixed carbon price, which is relatively convenient in terms of operation and settlement (<xref ref-type="bibr" rid="B24">Yongli et al., 2023</xref>). However, the carbon trading costs and operational decisions of most entities are affected by the carbon price, and the fixed carbon price model has limited incentives for entities to actively reduce emissions.</p>
<p>Unlike the usual carbon trading mechanism, the stepped carbon pricing mechanism divides the purchasing range into different intervals. As the volume of carbon emissions traded increases, the carbon price in the interval also rises. The stepped carbon trading cost <inline-formula id="inf99">
<mml:math id="m137">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is as following <xref ref-type="disp-formula" rid="e1">Formula 39</xref>:<disp-formula id="e39">
<mml:math id="m138">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mtext>&#x2003;</mml:mtext>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>L</mml:mi>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>L</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>L</mml:mi>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mn>2</mml:mn>
<mml:mi>L</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>3</mml:mn>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>3</mml:mn>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>3</mml:mn>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>3</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>3</mml:mn>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>L</mml:mi>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mn>3</mml:mn>
<mml:mi>L</mml:mi>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>4</mml:mn>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>4</mml:mn>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>6</mml:mn>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>L</mml:mi>
<mml:mtext>&#x2003;</mml:mtext>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
</mml:msub>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>4</mml:mn>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(39)</label>
</disp-formula>
</p>
<p>Where <inline-formula id="inf100">
<mml:math id="m139">
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the baseline carbon trading price; L represents the length of the carbon emission interval; <inline-formula id="inf101">
<mml:math id="m140">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the price increase; <inline-formula id="inf102">
<mml:math id="m141">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the total amount of carbon emission rights traded in IES.</p>
<p>The integrated energy system constructed in this article includes thermal power units, wind power units, and solar photovoltaic power units. Referring to the &#x201c;Management Measures for Carbon Emission Trading&#x201d;, carbon quotas are allocated to each subject of integrated energy system. The calculation formula is obtained by multiplying the unit carbon quota allocation coefficient with the power generation of the units, as following <xref ref-type="disp-formula" rid="e40">Equation 40</xref>:<disp-formula id="e40">
<mml:math id="m142">
<mml:mrow>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>F</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>W</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>P</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(40)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf103">
<mml:math id="m143">
<mml:mrow>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf104">
<mml:math id="m144">
<mml:mrow>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf105">
<mml:math id="m145">
<mml:mrow>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the carbon quotas of thermal power units, wind power units, and solar photovoltaic units during the t period respectively.</p>
<p>The entities in the integrated energy system can purchase excess carbon emission rights in the carbon market, avoid paying fines for excess carbon emissions, and also sell excess carbon quotas to obtain profits. The formula for calculating carbon trading costs is as following <xref ref-type="disp-formula" rid="e41">Equations 41</xref>&#x2013;<xref ref-type="disp-formula" rid="e44">44</xref>:<disp-formula id="e41">
<mml:math id="m146">
<mml:mrow>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>C</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>w</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>p</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(41)</label>
</disp-formula>
<disp-formula id="e42">
<mml:math id="m147">
<mml:mrow>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>F</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:msub>
<mml:mi>O</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(42)</label>
</disp-formula>
<disp-formula id="e43">
<mml:math id="m148">
<mml:mrow>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi mathvariant="normal">w</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>W</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:msub>
<mml:mi>O</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(43)</label>
</disp-formula>
<disp-formula id="e44">
<mml:math id="m149">
<mml:mrow>
<mml:msubsup>
<mml:mi>M</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>p</mml:mi>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>P</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:msub>
<mml:mi>O</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(44)</label>
</disp-formula>
</p>
<p>In the formula <inline-formula id="inf106">
<mml:math id="m150">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf107">
<mml:math id="m151">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf108">
<mml:math id="m152">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the carbon emissions generated by thermal power units, wind power units, and solar photovoltaic units during time period t respectively.</p>
</sec>
</sec>
<sec id="s3">
<title>3 Master-slave game structure</title>
<sec id="s3-1">
<title>3.1 Basic framework of the master-slave game</title>
<p>Game theory focuses on the interaction between multiple entities, exploring strategies to maximize the interests of each entity through modeling and quantifying information exchanges, constraints, <italic>etc.</italic>, Among them. In games, any action by one party will affect the other parties to varying degrees, potentially leading them to change their strategies. The actions of one party influence the interests of the other parties, prompting strategy adjustments, which in turn impact the original party&#x2019;s interests, resulting in conflicts of interest.</p>
<p>The master-slave game, a type of game theory, is dynamic. The entity with leadership advantages occupies a favorable position in the game, making decisions first, which serve as constraints for the followers. The followers then make decisions based on the leader&#x2019;s actions, and the leader updates their decision based on the followers&#x2019; responses.</p>
<p>The master-slave game relationship among IES entities proposed in this paper is shown in <xref ref-type="fig" rid="F2">Figure 2</xref>. The leader, Energy Management Operator (EMO), and followers, Energy Generation Operator (EGO), Energy Storage Operator (ESO), and users, aim to maximize their respective benefits while considering environmental benefits in their trading strategies. This improves their operational states, achieving economic and efficient energy supply and rational and scientific energy use. EMO plays a leading and coordinating role in the energy market, balancing power sources, loads, and storage, acting as an energy pool with input and output energy flows. EMO typically purchases electricity from EGO to supply to users. If the purchase quantity cannot meet the demand, EMO must pay more to purchase electricity externally and bear the additional carbon emission costs from the grid purchase. As the leader, EMO&#x2019;s advantage lies in utilizing pricing strategies to enhance the flexibility of distributed energy sources, making them more competitive in the energy market compared to traditional energy sources, and effectively incentivizing users to reasonably adjust their energy use. The core of EGO is CCHP, optimizing the output of each unit considering profits, fuel costs, and carbon trading costs. ESO formulates buying and selling strategies based on price information, which influences EGO&#x2019;s energy sales strategy and users&#x2019; demand response strategies through EMO. Conversely, adjustments by EGO and users also affect the strategies of ESO and users. On the user side, shiftable loads and reducible thermal (cooling) loads are introduced, allowing users to adjust their energy demand based on energy costs, comfort, and other factors. Changes in user energy use will impact the interests and strategies of other entities.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Master-slave game framework.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g002.tif"/>
</fig>
</sec>
<sec id="s3-2">
<title>3.2 Stackelberg equilibrium</title>
<p>The master-slave game described in this paper depicts how EGO, ESO, and users, as followers, optimize their actions based on the leader EMO&#x2019;s price decisions to achieve their optimal objectives. The Stackelberg model is as following formula:<disp-formula id="e45">
<mml:math id="m153">
<mml:mrow>
<mml:mi mathvariant="normal">G</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>;</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>;</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>;</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>;</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>;</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The master-slave game model consists of three elements: participants, decision variables, and utility. Participant refers to every decision-maker involved in the game. Decision variables refer to the actions taken by participants in the game process. Utility is used to measure the level of utility obtained by participants in a game. The model constructed in this paper includes four participants: one leader EMO and three followers EGO, ESO, and users. The decision variables are: buying and selling prices <inline-formula id="inf109">
<mml:math id="m154">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> will influence the decisions of each follower; output power of energy supply equipment <inline-formula id="inf110">
<mml:math id="m155">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> determines the energy supply; storage power of batteries and thermal storage tanks <inline-formula id="inf111">
<mml:math id="m156">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> determines the energy storage; shiftable electricity, heating, and cooling loads <inline-formula id="inf112">
<mml:math id="m157">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> from users determine the variable energy demand. The utility for each participant corresponds to the aforementioned objective functions. If none of the participants can unilaterally change their strategies to achieve higher profits, the game reaches equilibrium (<xref ref-type="bibr" rid="B25">Yuanyuan et al., 2022</xref>), referred to as the equilibrium solution <inline-formula id="inf113">
<mml:math id="m158">
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula>, satisfying the following <xref ref-type="disp-formula" rid="e45">Formula 45</xref>:<disp-formula id="e46">
<mml:math id="m159">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2265;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>G</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>O</mml:mi>
</mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext>&#x200a;</mml:mtext>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(45)</label>
</disp-formula>
</p>
</sec>
<sec id="s3-3">
<title>3.3 Solution method</title>
<p>
<xref ref-type="disp-formula" rid="e5">Formula 5</xref> is a nonlinear formula. This article linearizes the max and min functions by introducing two non negative auxiliary variables and using appropriate constraints to simulate them.<disp-formula id="e47">
<mml:math id="m160">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="e48">
<mml:math id="m161">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The rewritten equations are shown in <xref ref-type="disp-formula" rid="e46">Formulas 46</xref>&#x2013;<xref ref-type="disp-formula" rid="e49">49</xref>:<disp-formula id="e49">
<mml:math id="m162">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(46)</label>
</disp-formula>
<disp-formula id="e50">
<mml:math id="m163">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(47)</label>
</disp-formula>
<disp-formula id="e51">
<mml:math id="m164">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(48)</label>
</disp-formula>
<disp-formula id="e52">
<mml:math id="m165">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3e;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(49)</label>
</disp-formula>
</p>
<p>To simulate these conditions, we can use binary variables <inline-formula id="inf114">
<mml:math id="m166">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and corresponding linear inequalities and equations to replace these conditions. Assuming that <inline-formula id="inf115">
<mml:math id="m167">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is a binary variable, where <inline-formula id="inf116">
<mml:math id="m168">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> when <inline-formula id="inf117">
<mml:math id="m169">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2265;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, otherwise <inline-formula id="inf118">
<mml:math id="m170">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. M is a sufficiently large number.</p>
<p>Constraint condition is shown in <xref ref-type="disp-formula" rid="e50">Formulas 50</xref>&#x2013;<xref ref-type="disp-formula" rid="e54">54</xref>:<disp-formula id="e53">
<mml:math id="m171">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2265;</mml:mo>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(50)</label>
</disp-formula>
<disp-formula id="e54">
<mml:math id="m172">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>M</mml:mi>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:math>
<label>(51)</label>
</disp-formula>
<disp-formula id="e55">
<mml:math id="m173">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2264;</mml:mo>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(52)</label>
</disp-formula>
<disp-formula id="e56">
<mml:math id="m174">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2265;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3b4;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(53)</label>
</disp-formula>
<disp-formula id="e57">
<mml:math id="m175">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="&#x7c;">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(54)</label>
</disp-formula>
</p>
<p>In summary, the following linearized model is obtained is shown in <xref ref-type="disp-formula" rid="e55">Equation 55</xref>:<disp-formula id="e58">
<mml:math id="m176">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mi>p</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(55)</label>
</disp-formula>
</p>
<p>Traditional optimization methods require collecting various data from participants, such as equipment parameters, user preferences, and environmental factors, but some information in the electricity market is not publicly transparent (<xref ref-type="bibr" rid="B23">Yang et al., 2025</xref>). Therefore, this paper adopts the Differential Evolution (DE) algorithm and the Cplex solver to solve the proposed master-slaver game model. The DE algorithm is an algorithm based on genetic algorithms (GA) that can solve multi-objective optimization problems. It is a heuristic random search algorithm based on group differences. Compared with other algorithms (GA, SA), DE, it has fewer parameters and is simpler to compute, making it commonly used to solve optimization scheduling problems in the power sector. The approximation effect of differential evolution algorithm is more significant compared to genetic algorithm. Solving the model proposed in this article belongs to high-dimensional problems. Other algorithms have slow or even difficult convergence speed for high-dimensional problems.</p>
<p>The solving process includes five steps: initializing the population, population mutation, crossover to form a new population, selection, and termination (<xref ref-type="bibr" rid="B19">Wanxing et al., 2023</xref>). As shown in the <xref ref-type="fig" rid="F3">Figure 3</xref>, DE algorithm solution, initial data and parameters are first input in the upper-level, then an initial population a is generated, with the iteration count K &#x3d; 0. The lower-level uses the Cplex solver to calculate the optimal results for the followers, and the leader updates its decision based on the results, calculating its own utility F1. The population a forms a new population b through mutation and crossover, and the lower-level repeats the followers&#x2019; solution and recalculates its own utility F2. A selection process follows: if F2 is greater than F1, b is assigned to a and F2 to F1, otherwise, it is retained. Finally, judgment is made. If the iteration count K meets the requirement, the final result is output; otherwise, the mutation, crossover, and other steps are repeated.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Flowchart for solving equilibrium solutions.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g003.tif"/>
</fig>
</sec>
</sec>
<sec id="s4">
<title>4 Case study analysis</title>
<sec id="s4-1">
<title>4.1 Basic data for the case study</title>
<p>This paper conducts a case study analysis based on a typical region in China. The predicted curves for PV, wind power, and electric, thermal, and cooling loads in this region are shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. The PV generation period is from 6:00 to 18:00, mainly generating power from 9:00 to 14:00, while wind power generation is mostly from 19:00 to 24:00. The peak electricity demand occurs between 10:00 and 12:00 and 17:00 and 19:00, the peak thermal load demand between 20:00 and 22:00, and the cooling load peak between 11:00 and 16:00. The user preference coefficients for electricity, cooling, and heating are: Ve &#x3d; 1.5,ae &#x3d; 0.0009,Vh &#x3d; 1.1,ah &#x3d; 0.0011. Shiftable loads account for 20% of the total electric load, and adjustable cooling and heating loads account for 10% of the total cooling and heating loads. Other relevant IES parameters are listed in <xref ref-type="table" rid="T1">Table 1</xref>.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Predicted curves for various new energies and loads in a typical region.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g004.tif"/>
</fig>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>IES-related parameters.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Parameter</th>
<th align="center">Value</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Heat recovery efficiency</td>
<td align="center">0.84</td>
</tr>
<tr>
<td align="center">Heat exchange efficiency</td>
<td align="center">0.80</td>
</tr>
<tr>
<td align="center">Internal combustion engine power generation efficiency</td>
<td align="center">0.35</td>
</tr>
<tr>
<td align="center">Thermal storage capacity</td>
<td align="center">1,500&#xa0;KW</td>
</tr>
<tr>
<td align="center">Electric storage capacity</td>
<td align="center">2,000&#xa0;KW</td>
</tr>
<tr>
<td align="center">Cooling storage capacity</td>
<td align="center">2,000&#xa0;KW</td>
</tr>
<tr>
<td align="center">Peak electricity price</td>
<td align="center">1.25 yuan/kWh</td>
</tr>
<tr>
<td align="center">Flat electricity price</td>
<td align="center">0.80 yuan/kWh</td>
</tr>
<tr>
<td align="center">Off-peak electricity price</td>
<td align="center">0.40 yuan/kWh</td>
</tr>
<tr>
<td align="center">Preference coefficient Ve</td>
<td align="center">1.5</td>
</tr>
<tr>
<td align="center">Preference coefficient ae</td>
<td align="center">0.0009</td>
</tr>
<tr>
<td align="center">Preference coefficient Vh</td>
<td align="center">1.1</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s4-2">
<title>4.2 Results analysis</title>
<p>The purchase and sale pricing strategy of the upper-level EMO is shown in <xref ref-type="fig" rid="F5">Figure 5</xref>. The selling price of electricity is similar to the time of use price. The heating purchase prices are higher than the lower price limit. In <xref ref-type="fig" rid="F5">Figure 5A</xref>, the red and green dashed lines represent the time-of-use electricity price and the on-grid electricity price, respectively. EMO determines the pricing strategy within this range to provide EGO and users with more favorable prices than the grid. The electricity purchase price and load demand vary similarly at different times. The electricity prices are higher between 12:00&#x2013;13:00 and 22:00&#x2013;23:00, reaching 0.60 yuan/kWh and 0.63 yuan/kWh, respectively. During these periods, PV and wind power generation are higher, and the higher purchase price encourages more renewable energy generation, reducing the need to purchase electricity from the grid to increase profits. The trend in EMO&#x2019;s electricity sales prices is similar to the grid&#x2019;s time-of-use electricity prices, with higher prices between 11:00&#x2013;14:00 and 17:00&#x2013;21:00, reaching 1.25 yuan/kWh. In <xref ref-type="fig" rid="F5">Figure 5B</xref>, the red and green dashed lines represent the upper and lower limits of heating prices in North China, respectively. EMO similarly determines purchase and sale prices within this envelope. The heating sale prices reach the upper limit during multiple periods, such as 3:00&#x2013;4:00, 6:00&#x2013;9:00, 12:00&#x2013;14:00, 15:00&#x2013;16:00, and 20:00&#x2013;21:00. The heating purchase prices peak at 7:00&#x2013;8:00, 11:00&#x2013;12:00, and 22:00&#x2013;23:00.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Hourly Electricity and Thermal Price Curves. <bold>(A)</bold> Electricity price curve chart, <bold>(B)</bold> Thermal price curve chart.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g005.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F6">Figure 6</xref> shows the electric, thermal, and cooling load curves on the user side before and after demand response. The EL curve presents an M-shape and CL curve presents an N-shape. The TL curve shows a trend of low in the middle and high on both sides. From <xref ref-type="fig" rid="F6">Figure 6A</xref>, under the influence of electricity price incentives, the electric load curve before and after demand response shows a &#x201c;peak shaving and valley filling&#x201d; change, reducing the total electricity cost. Before demand response, the peak electric load occurred between 18:00 and 19:00, reaching 2050&#xa0;kW, with other peaks at 12:00&#x2013;13:00 and 22:00&#x2013;23:00, reaching 1857&#xa0;KW and 1867&#xa0;kW, respectively. The electric load valleys occurred between 0:00&#x2013;7:00 and 23:00&#x2013;24:00, with the lowest value being 847&#xa0;KW. After demand response, the peak value dropped to 1874&#xa0;kW, and the lowest value increased to 980&#xa0;kW, with a noticeable load shift. In <xref ref-type="fig" rid="F6">Figure 6B</xref>, the thermal load curve also achieved &#x201c;peak shaving and valley filling&#x201d;. Before demand response, peaks occurred at 2:00&#x2013;3:00 and 21:00&#x2013;22:00, reaching 1584&#xa0;KW and 1496&#xa0;kW, respectively. The period between 10:00&#x2013;17:00 showed a downward trend before rising, with a valley value of 1008&#xa0;KW. After optimization, the peak value dropped to 1433&#xa0;kW, and the valley value increased to 1087&#xa0;KW. <xref ref-type="fig" rid="F6">Figure 6C</xref> shows the cooling load curve, also exhibiting &#x201c;peak shaving and valley filling&#x201d;. Cooling demand was high between 8:00&#x2013;18:00 and low between 0:00&#x2013;6:00 and 23:00&#x2013;24:00. Before optimization, the peak cooling load occurred at 14:00&#x2013;15:00, reaching 1042&#xa0;kW, with a low demand of about 135&#xa0;KW between 0:00&#x2013;4:00 and 23:00&#x2013;24:00. Through demand response, the peak cooling load dropped to 922&#xa0;kW, and the valley value increased to 251&#xa0;KW. This proves that the optimization model proposed in this paper can reduce energy costs and improve energy economy while ensuring user comfort.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Load Curves. <bold>(A)</bold> Electric load curve chart, <bold>(B)</bold> Thermal load curve chart, <bold>(C)</bold> Cooling load curve chart.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g006.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F7">Figure 7</xref> shows the optimized scheduling of electricity, thermal, and cooling in the IES. Wind and PV power generation are low-carbon, so EGO prioritizes selling renewable energy to EMO. When the supply is insufficient, other gas-fired units are activated to supplement wind and PV shortfalls. For example, between 23:00&#x2013;6:00, the period of off-peak electricity prices is mainly covered by wind power. During periods of high electricity demand such as 10:00&#x2013;13:00 and 17:00&#x2013;22:00, wind and PV power are fully utilized, and gas-fired units increase output to make up for the missing energy, while surplus energy is stored in ESO&#x2019;s BT. During peak electricity demand periods such as 17:00&#x2013;19:00, EGO limits the output of gas-fired units to some extent after analyzing energy prices and operational costs. If EGO cannot meet the load demand, EMO will purchase electricity from the grid to make up for the shortfall. Gas turbines generate heat during power generation, which is proportional to the electricity generated. Utilizing waste heat can reduce heating costs. EMO encourages the gas boiler&#x2019;s output through pricing policies, and coordinating with the heat recovery boiler can effectively avoid penalties for heating interruptions, ensuring a stable heat supply. When the heat supply cannot be met, ESO compensates by releasing stored heat from HST during high-price periods. Cooling demand is relatively low, and ice storage air conditioners provide cooling through both air conditioning and ice melting modes, with air conditioning as the primary method. During peak cooling periods such as 8:00&#x2013;20:00, the ice storage air conditioning system will additionally activate the ice melting mode, and ESO&#x2019;s storage devices will supplement the cooling demand.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Energy Optimization Scheduling. <bold>(A)</bold> Electric energy optimization scheduling diagram, <bold>(B)</bold> Thermal energy optimization scheduling diagram, <bold>(C)</bold> Cold energy optimization scheduling diagram.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g007.tif"/>
</fig>
<p>After optimization, EMO reduces the amount of external electricity purchased, and ESO mitigates the output pressure on EGO units by charging during low-price periods and discharging during high-price periods, providing users with more affordable energy prices. This helps reduce EMO&#x2019;s external electricity purchase costs and users&#x2019; electricity costs. <xref ref-type="table" rid="T2">Table 2</xref> compares the profits of each IES entity and total carbon emissions before and after optimization. The introduction of stepped carbon trading has reduced IES carbon emissions by 11%. Higher carbon emissions will result in paying more expensive fees. It can be calculated from the <xref ref-type="table" rid="T2">Table 2</xref> that profits of EMO increase 34%. After optimization through the master-slave game model, energy supply and demand have reached a balance. There is no need to purchase electricity from external sources at high prices during peak periods, nor is there a need to sell surplus electricity at low prices during low periods. Profits of EGO increase 46%. After optimization EGO obtains more benefits through reasonable planning of power generation. Profits of ESO increase 31%. ESO purchases excess wind and photovoltaic power during low periods and sell it during peak periods to seek more profits. Profits of users increase 7%. By introducing a demand response mechanism, users have changed their electricity usage habits, resulting in increased revenue.</p>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>IES profits and carbon emissions.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center"/>
<th align="center">Before optimization</th>
<th align="center">After optimization</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">EMO/yuan</td>
<td align="center">7,765</td>
<td align="center">10,419</td>
</tr>
<tr>
<td align="center">EGO/yuan</td>
<td align="center">6,052</td>
<td align="center">8,832</td>
</tr>
<tr>
<td align="center">ESO/yuan</td>
<td align="center">308</td>
<td align="center">403</td>
</tr>
<tr>
<td align="center">Users/yuan</td>
<td align="center">17,760</td>
<td align="center">19,051</td>
</tr>
<tr>
<td align="center">Carbon emissions/t</td>
<td align="center">10.788</td>
<td align="center">9.571</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>
<xref ref-type="fig" rid="F8">Figure 8</xref> shows the comparison of power output of thermal power units before and after considering carbon trading. Without considering carbon trading, thermal power units output between 8:00&#x2013;23:00. After considering carbon trading, output is reduced between 2:00&#x2013;7:00. This is because the addition of carbon trading mechanisms requires thermal power units in the integrated energy system to pay more expensive fees for carbon emissions.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Comparison chart of thermal power units.</p>
</caption>
<graphic xlink:href="fenrg-13-1501577-g008.tif"/>
</fig>
</sec>
</sec>
<sec id="s5">
<title>5 Conclusions and insights</title>
<p>This paper incorporates comprehensive demand response and a stepped carbon trading mechanism to propose a master-slave game model for IES, where the Energy Manager acts as the leader and the Energy Operator, Energy Storage Operator, and users as followers. The model is solved using intelligent algorithms and solvers to achieve equilibrium, optimizing the operation of each entity. The following conclusions were drawn:<list list-type="simple">
<list-item>
<p>(1) The master-slave game model constructed in this paper considers users&#x2019; energy use experience, allowing users to plan their energy purchases reasonably based on their energy needs and preferences. This effectively reduces energy costs, improves user benefits and satisfaction, and better motivates users to use energy economically and rationally. Profits of EMO, EGO, ESO and users have respectively increased 34%, 46%, 31% and 7%.</p>
</list-item>
<list-item>
<p>(2) Introducing a demand response mechanism to effectively tap into the flexible operational potential of the load side in the integrated energy system, achieving peak shaving and valley filling and promoting the consumption of wind and photovoltaic power generation.</p>
</list-item>
<list-item>
<p>(3) Compared to a one-leader-one-follower model, this master-slave game model better enhances the economy of IES, balances the interests of all entities, and ensures the reliability of energy supply and the flexibility of energy use.</p>
</list-item>
<list-item>
<p>(4) The model considers the interaction between source-load-storage by having EMO issue price signals to incentivize EGO to prioritize wind and PV output, and coordinate with ESO to ensure timely consumption of renewable energy, while reducing the overall operational costs of IES.</p>
</list-item>
<list-item>
<p>(5) Introducing stepped carbon trading into the master-slave game model studies the decision-making behavior of each entity under a low-carbon background, balancing the economic benefits of IES with environmental costs, and achieving low-carbon optimized operations. The carbon emissions of the system have decreased 11%.</p>
</list-item>
</list>
</p>
<p>The case study proves that the master-slave game model constructed in this paper is conducive to solving interaction problems among multiple entities, and the equilibrium solution obtained provides reference value for decision-makers of each entity. With the development of IES, participating agents may be unwilling to share all information with other agents. Future research should focus on a series of issues related to incomplete information in IES and use game theory to promote rational decision-making.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s6">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding authors.</p>
</sec>
<sec sec-type="author-contributions" id="s7">
<title>Author contributions</title>
<p>YZ: Writing&#x2013;original draft. ZZ: Writing&#x2013;original draft.</p>
</sec>
<sec sec-type="funding-information" id="s8">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. This paper was funded by the National Social Science Foundation (Grant no. 19BGL003).</p>
</sec>
<sec sec-type="COI-statement" id="s9">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s10">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Sheng</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Jingtao</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Yizhou</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Zhinong</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Shu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Coordinated scheduling of integrated electricity, heat, and hydrogen systems considering energy storage in heat and hydrogen pipelines</article-title>. <source>J. Energy Storage</source> <volume>85</volume>, <fpage>111034</fpage>. <pub-id pub-id-type="doi">10.1016/J.EST.2024.111034</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chenyun</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Hongtao</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>An improved multi-timescale coordinated control strategy for an integrated energy system with a hybrid energy storage system</article-title>. <source>Appl. Energy</source> <volume>343</volume>, <fpage>121137</fpage>. <pub-id pub-id-type="doi">10.1016/j.apenergy.2023.121137</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chongchao</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Tai</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Hou</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Gu</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Multi-objective and two-stage optimization study of integrated energy systems considering P2G and integrated demand responses</article-title>. <source>Energy</source> <volume>270</volume> (<issue>2</issue>), <fpage>126846</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2023.126846</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hong</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Xiaoshuo</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Chang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Jin</surname>
<given-names>Q.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>A new power flow model for combined heat and electricity analysis in an integrated energy system</article-title>. <source>Appl. Therm. Eng.</source> <volume>219</volume> (<issue>PB</issue>), <fpage>119597</fpage>. <pub-id pub-id-type="doi">10.1016/j.applthermaleng.2022.119597</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hongbo</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Zipei</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Lv</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Optimal planning of an economic and resilient district integrated energy system considering renewable energy uncertainty and demand response under natural disasters</article-title>. <source>Energy</source> <volume>277</volume>, <fpage>127644</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2023.127644</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hongle</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Lizhong</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Tinajero</surname>
<given-names>G. D. A.</given-names>
</name>
<name>
<surname>Guan</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Yan</surname>
<given-names>Q.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>Dual-Stackelberg game-based trading in community integrated energy system considering uncertain demand response and carbon trading</article-title>. <source>Sustain. Cities Soc.</source> <volume>101</volume>, <fpage>105088</fpage>. <pub-id pub-id-type="doi">10.1016/j.scs.2023.105088</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hui</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Feiyu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zeng</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Optimal scheduling of regional integrated energy system considering multiple uncertainties and integrated demand response</article-title>. <source>Electr. Power Syst. Res.</source> <volume>217</volume> (<issue>2</issue>), <fpage>109169</fpage>. <pub-id pub-id-type="doi">10.1016/j.epsr.2023.109169</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>Ke</given-names>
</name>
<name>
<surname>Ye</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Distributed collaborative operation strategies in multi-agent integrated energy system considering integrated demand response based on game theory</article-title>. <source>Energy</source> <volume>273</volume> (<issue>1</issue>), <fpage>127137</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2023.127137</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Meijuan</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Jiahui</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Pengshuo</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Tinajero</surname>
<given-names>G. D. A.</given-names>
</name>
<name>
<surname>Guan</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Yan</surname>
<given-names>Q.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>Dual-Stackelberg game-based trading in community integrated energy system considering uncertain demand response and carbon trading</article-title>. <source>Sustain. Cities Soc.</source> <volume>101</volume>, <fpage>105088</fpage>. <pub-id pub-id-type="doi">10.1016/j.scs.2023.105088</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Peihong</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Hui</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Kang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Coordinated optimization scheduling operation of integrated energy system considering demand response and carbon trading mechanism</article-title>. <source>Int. J. Electr. Power Energy Syst.</source> <volume>147</volume> (<issue>6</issue>), <fpage>108902</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijepes.2022.108902</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Peng</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Shuang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Hao</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Jinyue</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Haoran</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jianzhong</surname>
<given-names>W.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Quantized event-driven simulation for integrated energy systems with hybrid continuous-discrete dynamics</article-title>. <source>Appl. Energy</source>, <fpage>307</fpage>. <pub-id pub-id-type="doi">10.1016/J.APENERGY.2021.118268</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Peng</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zixuan</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Guo</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Two-stage optimal operation of integrated energy system considering multiple uncertainties and integrated demand response</article-title>. <source>Energy</source> <volume>225</volume>, <fpage>120256</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2021.120256</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pinghui</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xin</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Flexibility operation for integrated energy system considering hydrogen energy under inertia characteristics and stepped carbon trading mechanism</article-title>. <source>Sustain. Cities Soc.</source> <volume>98</volume>, <fpage>104809</fpage>. <pub-id pub-id-type="doi">10.1016/j.scs.2023.104809</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ruitian</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Xiangyuan</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Fu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Low carbon optimal operation of integrated energy system based on carbon capture technology, LCA carbon emissions and ladder-type carbon trading</article-title>. <source>Appl. Energy</source> <volume>311</volume> (<issue>7</issue>), <fpage>118664</fpage>. <pub-id pub-id-type="doi">10.1016/j.apenergy.2022.118664</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shahidehpour</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Shen</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Ping</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Chong</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Zhiyi</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Xingyu</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Singular perturbation for the dynamic modeling of integrated energy systems</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>35</volume> (<issue>3</issue>). <pub-id pub-id-type="doi">10.1109/TPWRS.2019.2953672</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shuai</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Wei</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Jianzhong</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Hai</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Suhan</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Yue</surname>
<given-names>Z.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Dynamic energy flow analysis of the heat-electricity integrated energy systems with a novel decomposition-iteration algorithm</article-title>. <source>Appl. Energy</source>, <fpage>322</fpage>. <pub-id pub-id-type="doi">10.1016/J.APENERGY.2022.119492</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Song</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Mu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Kong</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Optimal scheduling of zero-carbon integrated energy system considering long-and short-term energy storages, demand response, and uncertainty</article-title>. <source>J. Clean. Prod.</source> <volume>435</volume>, <fpage>435140393</fpage>. <pub-id pub-id-type="doi">10.1016/j.jclepro.2023.140393</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Songrui</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Lihui</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Nie</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Trading strategy and benefit optimization of load aggregators in integrated energy systems considering integrated demand response: a hierarchical Stackelberg game</article-title>. <source>Energy</source> <volume>249</volume>, <fpage>123678</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2022.123678</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wanxing</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Rui</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Hui</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>K. P.</given-names>
</name>
<name>
<surname>Lan</surname>
<given-names>K. M.</given-names>
</name>
<name>
<surname>Ren</surname>
<given-names>Q.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <article-title>Optimal wind power generation system by honey badger algorithm with differential evolution strategies</article-title>. <source>Appl. Soft Comput.</source> <volume>149</volume>, <fpage>110953</fpage>. <pub-id pub-id-type="doi">10.1016/j.asoc.2023.110953</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xiaohui</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Zhonglian</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Mei</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Deng</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Wei</surname>
<given-names>S.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <article-title>Optimal configuration of improved integrated energy system based on stepped carbon penalty response and improved power to gas</article-title>. <source>Energy</source> <volume>263</volume> (<issue>52</issue>), <fpage>125985</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2022.125985</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Dou</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2024b</year>). <article-title>Distributed optimization of integrated energy system considering demand response and congestion cost allocation mechanism</article-title>. <source>Int. J. Electr. Power Energy Syst.</source> <volume>157</volume>, <fpage>157109865</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijepes.2024.109865</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Lao</surname>
<given-names>K.-W.</given-names>
</name>
<name>
<surname>Hui</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2024a</year>). <article-title>Secure distributed control for demand response in power systems against deception cyber-attacks with arbitrary patterns</article-title>. <source>IEEE Trans. Power Syst.</source> <volume>39</volume> (<issue>6</issue>), <fpage>7277</fpage>&#x2013;<lpage>7290</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrs.2024.3381231</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Lao</surname>
<given-names>K.-W.</given-names>
</name>
<name>
<surname>Hui</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Su</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Secure frequency regulation in power system: a comprehensive defense strategy against fdi, DoS, and latency cyber-attacks</article-title>. <source>Appl. Energy</source> <volume>380</volume>, <fpage>124772</fpage>.</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yongli</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Zhen</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Jingyan</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Du</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Qin</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>X.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <article-title>A Stackelberg game-based approach to transaction optimization for distributed integrated energy system</article-title>. <source>Energy</source> <volume>283</volume>, <fpage>128475</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2023.128475</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yuanyuan</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Huiru</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Research on dynamic pricing and operation optimization strategy of integrated energy system based on Stackelberg game</article-title>. <source>Int. J. Electr. Power Energy Syst.</source> <volume>143</volume> (<issue>1</issue>), <fpage>108446</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijepes.2022.108446</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yunfei</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Congshan</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Yan</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Hongjie</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Qingzhu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Xiaodan</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>A CVaR-based risk assessment method for park-level integrated energy system considering the uncertainties and correlation of energy prices</article-title>. <source>Energy</source>, <fpage>247</fpage>. <pub-id pub-id-type="doi">10.1016/J.ENERGY.2022.123549</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhijie</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Dawei</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Optimal operation of integrated energy systems considering energy trading and integrated demand response</article-title>. <source>Energy Rep.</source> <volume>11</volume>, <fpage>3307</fpage>&#x2013;<lpage>3316</lpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2024.03.010</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>