【双层模型】考虑供需双侧的综合能源双层优化模型

目录

主要内容

内容研究

1.模型简介

[2 程序释义](#2 程序释义)

部分代码

运行结果

下载链接


主要内容

该程序实现一个综合能源系统的优化调度双层模型,上下层分别采用差分进化算法和规划算法进行求解。模型考虑了多种能源设备,包括燃气轮机、燃气锅炉、风电、光伏、储能设备等的协同运行,同时兼顾了能源供应商和用户的利益,需满足各种约束条件,包括设备出力约束、储能约束、负荷平衡约束等,以供应商和用户的收益、成本等为目标进行求解,同时考虑到负荷需求响应,通过分层模型将非线性求解模型转化为线性求解模型,实现了系统的经济和性能优化。程序采用matlab+cplex进行求解,注释清楚,有对应的文档说明,方便学习研究!

内容研究

1.模型简介

上层模型目标函数为:

为了便于理解,分块分析如下:

I3代表运营商售电收入,I4代表运营商售热收入,C_CCHP代表CCHP的运行成本,C_grid代表购电成本,FD代表储能的售电收益,FH代表售热能收益。

下层目标函数为:

逐项分析如下:

FU代表用户满意度,F5代表用户的购电,F6代表用户购热成本。

该目标的意思是用户满意度最高,用户购电和购热成本最低。

下层模型是采用规划算法结合cplex优化主体出力结果和目标值。

涉及到的约束主要有:

  • 设备出力约束
  • 设备爬坡约束
  • 热电功率平衡约束
  • 与电网交互约束
  • 用户侧热电储能约束
  • 用户侧负荷转移和削减约束

2 程序释义

程序包括的子程序较多,相互间的调用关系可参考下图:

具体每部分代码含义详见下载文件夹中说明文档。

部分代码

复制代码
%基础热负荷
dh=[1000,1010,1043,1155,1172,1197,1158,1060,923,880,910,830,785,730,700,730,810,820,810,910,950,1010,1030,1020];
%基础电负荷
de=[540,528,504,516,524,520,612,652,696,856,956,968,992,864,720,676,680,668,708,976,968,960,572,532];
de1=[408,404,372,392,396,388,448,448,460,524,620,780,764,768,612,628,620,632,660,868,864,848,448,404];
%风电出力
Pwt=[203,277,264,331,137,81,72,141,43,12,20,12,5,48,86,346,287,530,491,448,603,601,403,380];
%光伏出力
Ppv=[0,0,0,0,0,0,97,220,336,410,486,444,453,445,442,325,202,140,29,0,0,0,0,0];
%电网分时电价、上网电价
grid_fs=[0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.8,0.8,0.8,1.2,1.2,1.2,1.2,0.8,0.8,0.8,0.8,1.2,1.2,1.2,0.8];
grid_sw=[0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35];    
ch_min=[0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15,0.15];%热价下限
ch_max=[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5];%热价上限
Pice=sdpvar(1,24,'full');%电输出功率
Qgb=sdpvar(1,24,'full');%热输出功率
Pbuy=sdpvar(1,24,'full');%从电网购电电量
Psell=sdpvar(1,24,'full');%向电网售电电量
Pnet=sdpvar(1,24,'full');%交换功率
Temp_net=binvar(1,24,'full'); % 购|售电标志
le=sdpvar(1,24,'full');%可转移电负荷
lh=sdpvar(1,24,'full');%可转移热负荷
Pcharge=sdpvar(1,24,'full');UPcharge=binvar(1,24,'full');%  充电  
Pdischarge=sdpvar(1,24,'full');UPdischarge=binvar(1,24,'full');%  放电  
Hti=sdpvar(1,24,'full');UHti=binvar(1,24,'full');%充热
Hto=sdpvar(1,24,'full');UHto=binvar(1,24,'full');%放热
%用户偏好常系数
ve=1.5;
a_e=0.0009;
vh=1.1;
a_h=0.0011;
%燃气发电机、锅炉常数
ae=0.0013;
be=0.16;
ce=0;
ah=0.0005;
bh=0.11;
ch=0;
ce_ave=0.7;%平均电价约束
ch_ave=0.45;%平均热价约束
n_c=0.8;%热交换效率
n_ex=0.83;   %余热回收效率
n_ice=0.35;   %内燃机发电效率
​
%热储能
H_storage_max=1500; h_n=0.98;h_charge=0.98;h_discharge=1;%热储能容量/自损/充热/放热;
%电储能
E_storage_max=2000; e_n=1;e_charge=0.95;e_discharge=0.95;%电储能容量/自损/充电/放电;
bggin=1000;%%电储能

运行结果

下载链接

相关推荐
御控工业物联网4 小时前
厂区能源监控系统:网关赋能下的高效能源管理与环保监测
能源·能源监控系统·环保监测
高-老师4 小时前
基于LEAP模型在能源环境发展、碳排放建模预测及分析中实践应用
能源·温室气体·leap模型·能源排放
机器学习之心7 小时前
Transformer-BiGRU多变量时序预测(Matlab完整源码和数据)
深度学习·matlab·transformer·bigru
2401_835302488 小时前
佰力博科技与您探讨材料介电性能测试的影响因素
科技·能源·制造·材料工程
slandarer19 小时前
MATLAB | 绘图复刻(十九)| 轻松拿捏 Nature Communications 绘图
开发语言·matlab
安科瑞涂志1870211138220 小时前
破局新能源消纳难题!安科瑞智慧能源平台助力10KV配电网重构未来
重构·能源
【杨(_> <_)】1 天前
信号处理分析工具——时频分析(一)
算法·matlab·信号处理
XMAIPC_Robot1 天前
基于RK3568的多网多串电力能源1U机箱解决方案,支持B码,4G等
linux·fpga开发·能源·边缘计算
曹勖之1 天前
在MATLAB中使用自定义的ROS2消息
开发语言·matlab·机器人·ros·simulink·ros2
天天爱吃肉82181 天前
【十年技术演进深度解构:车载充电机(OBC)将成为新能源汽车的“能源大脑”】
python·嵌入式硬件·算法·汽车·能源