文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《考虑多能互补灵活性和用户低碳意愿的区域综合能源系统鲁棒优化调度》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》

论文与完整源程序_电网论文源程序的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/liang674027206/category_12531414.html

电网论文源程序-CSDN博客电网论文源程序擅长文章解读,论文与完整源程序,等方面的知识,电网论文源程序关注python,机器学习,计算机视觉,深度学习,神经网络,数据挖掘领域.https://blog.csdn.net/LIANG674027206?type=download

这篇文章的标题指出了它所关注的主题和目标。让我们逐步解读:

  1. 区域综合能源系统

    • 这指的是一个在地区范围内整合了多种能源资源和能源设施的系统,以满足该地区的能源需求。这种系统通常包括传统能源(如电力、燃气)以及可再生能源(如太阳能、风能)和能源存储设施。
  2. 考虑多能互补灵活性

    • 文章将考虑多种不同类型的能源,这些能源可以相互补充和交叉利用。这种灵活性意味着系统可以根据需要动态地调整能源来源,以最大程度地满足需求并提高系统的可靠性和效率。
  3. 用户低碳意愿

    • 考虑到用户对减少碳排放和环境保护的愿望。这表明系统的设计和优化将考虑到用户的偏好和目标,例如将尽可能多地利用清洁能源,降低碳排放。
  4. 鲁棒优化调度

    • 文章将提出一种优化调度方法,以确保系统在面对各种不确定性和挑战时能够保持稳健性和鲁棒性。这意味着系统的设计将考虑到可能的变化和风险,并采取相应的措施来应对这些变化,以确保系统的性能和可靠性。

综合来看,这篇文章将关注在区域范围内建立综合能源系统,并通过考虑多种能源类型、用户偏好以及鲁棒的优化调度方法来实现系统的高效、可靠和环保运行。

摘要:为了解决区域综合能源系统(regional integrated energy system, RIES)中由于新能源出力不确定性和多能负荷波动所导致的灵活性不足问题,本文提出了一种考虑多能互补灵活性和用户低碳意愿的鲁棒优化方法。首先,计及新能源出力与负荷的共同影响,通过净负荷波动来刻画RIES电力子系统灵活性需求。为了计及用户低碳意愿对新能源消纳的影响,分别构建用户购买普通和零碳电能的效用函数。考虑多能耦合设备的灵活备用容量,建立包含多能灵活性供需平衡约束的目标为RIES总运行成本最小及用户总效用最大的三层鲁棒优化调度模型。引入设备最优运行区间对模型内时间耦合约束进行解耦,并采用KKT (Karush-Kuhn- Tucker)条件和嵌套列与约束生成(nested column and constraints generation, NC&CG)算法进行求解。算例分析表明,本文所提模型可提升RIES运行的灵活性,促进新能源消纳,实现了RIES的低碳经济运行。

这篇摘要涵盖了一种解决区域综合能源系统(RIES)中灵活性不足问题的鲁棒优化方法。以下是摘要的主要要点的解读:

  1. 问题背景

    • 提到了RIES中存在的问题,即由于新能源出力的不确定性和多能负荷波动,导致系统灵活性不足。这可能是因为新能源如风能和太阳能的波动性,以及用户需求的变化。
  2. 方法提出

    • 本文提出了一种鲁棒优化方法,以解决上述问题。这种方法考虑到了多种因素,包括多能互补灵活性和用户低碳意愿。
  3. 灵活性需求刻画

    • 通过净负荷波动来描述RIES电力子系统的灵活性需求,将新能源出力与负荷的共同影响纳入考虑。
  4. 用户低碳意愿建模

    • 构建了用户购买普通和零碳电能的效用函数,以捕捉用户对低碳能源的偏好和需求。
  5. 三层鲁棒优化调度模型

    • 建立了一个包含多能灵活性供需平衡约束的三层鲁棒优化调度模型,其目标是在最小化RIES总运行成本和最大化用户总效用之间找到平衡。
  6. 求解方法

    • 引入设备最优运行区间,对模型内时间耦合约束进行解耦。使用KKT条件和NC&CG算法进行求解,这些方法在优化问题中常被用于处理复杂约束和非线性问题。
  7. 算例分析结果

    • 文中指出经过算例分析,提出的模型可以提升RIES运行的灵活性,促进新能源消纳,实现低碳经济运行。

综合来看,该研究提供了一个综合性的优化方法,通过考虑多个因素,包括用户偏好、新能源波动性和系统灵活性,来改善区域综合能源系统的运行效率和可持续性。

关键词:    区域综合能源系统;运行灵活性;优化调度;用户低碳意愿;鲁棒优化;

当解读这些关键词时,我们可以从摘要中获得更深入的理解:

  1. 区域综合能源系统

    • 这是一个系统级别的能源架构,通常包括多种能源类型(如电力、热能、气体等),以及能源生产、传输、储存和消费等各个环节。它旨在优化能源利用、提高能源效率,并在地区范围内实现可持续的能源供应。
  2. 运行灵活性

    • 这指的是能源系统适应外部变化(如负荷波动、新能源出力波动等)的能力。在这种情况下,灵活性可能包括能源的调整、储存、分配等方面的灵活性,以满足系统的需求。
  3. 优化调度

    • 这是指通过对能源系统中各种资源(如发电机、储能设备、能源消耗设备等)进行优化分配和调度,以最大化系统效益、降低成本、满足用户需求等目标。
  4. 用户低碳意愿

    • 这是指用户对使用低碳能源的偏好或意愿。在能源系统中,用户的低碳意愿可能影响他们对不同能源类型的选择、对能源价格的反应等。
  5. 鲁棒优化

    • 这是指在面对系统参数不确定性或外部变化时,能够保持优化性能的一种优化方法。在能源系统中,鲁棒优化方法可以使系统更具适应性,降低因外部变化而导致的损失。

综合来看,这些关键词反映了摘要中所讨论的主题:在区域综合能源系统中,通过优化调度和考虑用户低碳意愿,提高系统的运行灵活性,并采用鲁棒优化方法应对外部变化,从而实现系统的高效、可持续运行。

仿真算例:

本文构建的min-max-min两阶段三层鲁棒优化 模型可以得到最恶劣情况分布下的最优灵活调度 方案。该模型以从上级能源网的购能成本、各设备 运维成本、弃风弃光惩罚成本、设备灵活性供应成 本和提供灵活性调节服务的补偿收益的总成本最 小,以及负荷侧用户购买普通电能和零碳电能用户 总效用最优为目标函数。在第1阶段min问题中得 到各设备的最优运行区间和在上级能源网中的能 源购买量并传递给第2阶段;在第2阶段的max 问题中以第1阶段得到的各类设备最优运行区间和 能源购买量为基础,得到电力灵活性需求的最恶劣 场景,即RIES运行总成本最大的情景;最后的第 2阶段min问题是基于上述2个问题的优化结果, 以RIES运行总成本最小为目标,确定各设备的实 际出力和向上、向下灵活性供应容量,以及用户侧 对普通电能和零碳电能的购买量。本文以包含CHP机组、GT机组、P2G机组、 EB机组、储能设备以及风电、光伏等设备的RIES 为例。算例中各设备参数见附录E表A1,电网分 时电价和气价见附录E图A3,风机和光伏的出力 曲线如附录E图A4所示。本文是在Intel (R) Core (TM) i5-10210U CPU和16GB内存的环境下进行测 试,在MATLAB平台上采用Yalmip工具箱,并采 用商业求解器Gurobi进行求解。

仿真程序复现思路:

以下是对该文章仿真的复现思路,以及使用MATLAB语言表示的伪代码:

  1. 建立模型

    • 根据文章描述的min-max-min两阶段三层鲁棒优化模型,首先需要在MATLAB中建立相应的数学优化模型。可以使用Yalmip工具箱来建立优化模型。
  2. 定义变量

    • 在模型中定义各个设备的运行状态变量、能源购买量变量、用户购买量变量等。
  3. 设置约束条件

    • 根据文章描述的目标函数和约束条件,设置模型中各个设备的运行区间约束、能源供需平衡约束、用户侧电能购买量约束等。
  4. 设置目标函数

    • 根据文章描述的目标函数,将总成本最小化以及用户总效用最大化作为目标函数。
  5. 求解优化问题

    • 使用商业求解器Gurobi对建立的优化模型进行求解,得到第一阶段min问题的解,即各设备的最优运行区间和能源购买量。
  6. 传递解到第二阶段

    • 将第一阶段的解传递给第二阶段的max问题,作为基础。
  7. 解决第二阶段问题

    • 在第二阶段的max问题中,以第一阶段得到的各类设备最优运行区间和能源购买量为基础,得到电力灵活性需求的最恶劣场景。
  8. 最终优化

    • 最后的第二阶段min问题是基于上述两个问题的优化结果,以RIES运行总成本最小为目标,确定各设备的实际出力和向上、向下灵活性供应容量,以及用户侧对普通电能和零碳电能的购买量。

以下是MATLAB伪代码示例:

% 假设有三个设备:CHP机组、GT机组、P2G机组
n1 = 10; % CHP机组数
n2 = 8;  % GT机组数
n3 = 5;  % P2G机组数% 假设有两种类型的电能:普通电能、零碳电能
num_energy_types = 2;% 定义设备运行状态变量
x1 = sdpvar(n1, 1); % CHP机组
x2 = sdpvar(n2, 1); % GT机组
x3 = sdpvar(n3, 1); % P2G机组% 定义能源购买量变量
energy_purchase = sdpvar(num_energy_types, 1);% 设置约束条件
Constraints = [];
% 设备运行区间约束
Constraints = [Constraints, x1 >= xmin1, x1 <= xmax1, ...]; % CHP机组
Constraints = [Constraints, x2 >= xmin2, x2 <= xmax2, ...]; % GT机组
Constraints = [Constraints, x3 >= xmin3, x3 <= xmax3, ...]; % P2G机组
% 能源供需平衡约束
Constraints = [Constraints, sum(energy_purchase) == demand]; % 总需求等于总购买量
% 用户侧电能购买量约束
Constraints = [Constraints, energy_purchase >= 0]; % 购买量非负% 设置目标函数
Cost_CHP = compute_cost_CHP(x1); % 计算CHP机组成本
Cost_GT = compute_cost_GT(x2);   % 计算GT机组成本
Cost_P2G = compute_cost_P2G(x3); % 计算P2G机组成本
Cost_energy_purchase = compute_cost_energy_purchase(energy_purchase); % 计算能源购买成本
Objective = Cost_CHP + Cost_GT + Cost_P2G + Cost_energy_purchase;% 求解优化问题
options = sdpsettings('solver','gurobi','verbose',0);
optimize(Constraints, Objective, options);% 获取结果
x1_opt = value(x1);
x2_opt = value(x2);
x3_opt = value(x3);
energy_purchase_opt = value(energy_purchase);% 显示结果
disp('CHP机组最优运行状态:');
disp(x1_opt);
disp('GT机组最优运行状态:');
disp(x2_opt);
disp('P2G机组最优运行状态:');
disp(x3_opt);
disp('能源购买量:');
disp(energy_purchase_opt);

在这个示例中,我们假设了设备的运行状态变量、能源购买量变量,并设置了相应的约束条件和目标函数。在求解过程中,我们使用了Gurobi求解器,并通过设置选项来控制求解过程的输出。最后,我们获取了优化结果,并将其显示出来。

在实际应用中,需要根据具体问题的特点来调整变量定义、约束条件和目标函数,并确保算法的正确性和有效性。

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》

论文与完整源程序_电网论文源程序的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/liang674027206/category_12531414.html

电网论文源程序-CSDN博客电网论文源程序擅长文章解读,论文与完整源程序,等方面的知识,电网论文源程序关注python,机器学习,计算机视觉,深度学习,神经网络,数据挖掘领域.https://blog.csdn.net/LIANG674027206?type=download

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/524955.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记录汇川:IO隔离编程

IO隔离&#xff1a;方便程序修改 无论是输入点坏了还是输出点坏了&#xff0c;或者人为接错线&#xff0c;或者对调点&#xff0c;我们只需要更改IO隔离得输入输出就可以了。方便。 停止按钮外接常闭&#xff0c;里面也使用常闭&#xff0c;为了断线检测功能(安全)&#xff…

数字孪生10个技术栈:数据传输的四个问题

大家好&#xff0c;我是贝格前端工场&#xff0c;上期讲了数据采集的八个方式&#xff0c;数据采集之后就要进行数据的处理&#xff0c;本期继续分享&#xff0c;大家如有数字孪生或者数据可视化的需求&#xff0c;可以联络我们。 一、什么是数据处理 在数字孪生中&#xff0c…

复试人工智能前沿概念总结

1.大模型相关概念&#xff08;了解即可&#xff09; 1.1 GPT GPT&#xff0c;全称为Generative Pre-training Transformer&#xff0c;是OpenAI开发的一种基于Transformer的大规模自然语言生成模型。GPT模型采用了自监督学习的方式&#xff0c;首先在大量的无标签文本数据上进…

Unity中PICO实现 隔空取物 和 接触抓取物体

文章目录 前言一、隔空取物1、XR Grab Interactable2、调节扔出去时的相关系数3、用手柄射线指向需要抓取的物体后&#xff0c;按下侧边扳机键即可抓取 二、接触抓取物体1、替换手柄上抓取物体的脚本2、在手柄上添加 接触抓取物体的脚本3、在手柄上添加碰撞盒触发器4、在需要抓…

CODESYS如何插入功能块(梯形图调用FB FC)

CODESYS更多内容大家可以查看CODESYS专栏系列文章,这篇博客我们介绍大家在调用FB FC时候的一些基础知识。 1、插入带有EN/ENO的空运算符 2、选择调用FB 3、直径拖拽FB 没有EN/ENO接口 4、运行测试 CODESYS完整位置式PID算法原代码请参考下面文章链接: CODESYS位置式PID完整…

二分应用的小坑———折半查找

啊!啊!啊!啊!啊!!! 太久没有写代码了 虽热很久没有写代码和博客了&#xff0c;但是功底还是在的 今天打算写一点数据结构的排序部分一点一点落实下来&#xff0c;但是 写着写着卡壳了&#xff0c;以下是没有debug的代码 #include <iostream> #include<bits/stdc.h&g…

QMT量化交易软件的优势

前言 在之前的文章中&#xff0c;我介绍了QMT的基本概念&#xff0c;并围绕miniQMT的基础用法&#xff0c;进行了讲解&#xff0c;本篇文章&#xff0c;我将重点讨论QMT相较于其他量化软件的优势。 优势一&#xff1a;免费 目前市面上&#xff0c;大部分量化交易软件&#x…

图形库实战丨C语言扫雷小游戏(超2w字,附图片素材)

目录 效果展示 游玩链接&#xff08;无需安装图形库及VS&#xff09; 开发环境及准备 1.VS2022版本 2.图形库 游戏初始化 1.头文件 2.创建窗口 3.主函数框架 开始界面函数 1.初始化 1-1.设置背景颜色及字体 1-2.处理背景音乐及图片素材 1-3.处理背景图位置 2.选…

深度学习相关概念及术语总结

目录 1.CNN2.RNN3.LSTM4.NLP5.CV6.正向传播7.反向传播8.sigmoid 函数9.ReLU函数10.假设函数11.损失函数12.代价函数 1.CNN CNN 是卷积神经网络&#xff08;Convolutional Neural Network&#xff09;的缩写。卷积神经网络是一种深度学习模型&#xff0c;专门用于处理具有网格状…

LeetCode---387周赛

题目列表 3069. 将元素分配到两个数组中 I 3070. 元素和小于等于 k 的子矩阵的数目 3071. 在矩阵上写出字母 Y 所需的最少操作次数 3072. 将元素分配到两个数组中 II 一、将元素分配到两个数组中I 直接按照题目要求进行模拟即可&#xff0c;代码如下 class Solution { p…

upload-labs通关记录

文章目录 前言 1.pass-012.pass-023.pass-034.pass-045.pass-056.pass-067.pass-078.pass-089.pass-0910.pass-1011.pass-1112.pass-1213.pass-1314.pass-1415.pass-1516.pass-1617.pass-1718.pass-1819.pass-19 前言 本篇文章记录upload-labs中&#xff0c;所有的通过技巧和各…

【MATLAB】MATLAB转C/C++语言并部署到VS2019

首先将你要转换的代码保存 function [outputArg1, outputArg2] test(inputArg1,inputArg2)print(inputArg1inputArg2)outputArg1double(inputArg1inputArg2);outputArg2double(inputArg1*inputArg2); end在APP中找到MATLAB Coder 选择保存的文件 C/C中需要给变量定义类型&…