考虑区域多能源系统集群协同优化的联合需求侧响应模型(matlab代码)

该程序复现《考虑区域多能源系统集群协同优化的联合需求侧响应模型》文献模型,程序的核心是对多个区域级多能源系统互联系统进行多目标优化,并且考虑联合需求侧响应,以多个区域多能源系统运行总成本最小、碳排放最小为目标,建立多区域电气热(冷)互联系统多目标优化模型,和原文的区别是:多目标求解原文献用的是NSGA_Ⅱ算法,但是程序采用的是混合整数规划算法,即直接采用yalmip求解器进行求解,程序步骤清晰,不仅给出了多目标求解代码,同时给出了单目标求解代码,采用matlab+yalmip(cplex或gurobi)进行求解,必要注释清晰,方便学习!

  • 区域多能源系统用户激励模型

该部分用户激励模型和常规的需求侧响应区别不大,采用可削减、可转移和可替代负荷作为需求响应变量,并且该三类负荷满足调节比例限制,该部分成本在程序中以约束的形式表达,但是实际上尽量选取变量直接计算的方式更为妥当。对应的程序代码如下:

复制代码
C=[C,  0<=Ekexuejian1,Ekexuejian1<=0.1*E_load1D ];%需求响应  公式(2)
C=[C,  0<=Ekexuejian2,Ekexuejian2<=0.1*E_load2D ]; 
C=[C,  0<=Ekexuejian3,Ekexuejian3<=0.1*E_load3D ];
C=[C,  -0.1*E_load1D<=Ekepingyi1,Ekepingyi1<=0.1*E_load1D ];
C=[C,  -0.1*E_load2D<=Ekepingyi2,Ekepingyi2<=0.1*E_load2D ];
C=[C,  -0.1*E_load3D<=Ekepingyi3,Ekepingyi3<=0.1*E_load3D ];
C=[C,  sum(Ekepingyi1)==0 ];
C=[C,  sum(Ekepingyi2)==0 ];
C=[C,  sum(Ekepingyi3)==0 ];
C=[C,  0<=Eketidai1,Eketidai1<=0.1*E_load1D ];
C=[C,  0<=Eketidai2,Eketidai2<=0.1*E_load2D ];
C=[C,  0<=Eketidai3,Eketidai3<=0.1*E_load3D ];
C=[C,  Eketidai1==Gketidai1*10 ];  %10是单位m3体积的天然气热值36MJ
C=[C,  Eketidai2==Gketidai2*10 ];  %10是单位m3体积的天然气热值36MJ
C=[C,  Eketidai3==Gketidai3*10 ];  %10是单位m3体积的天然气热值36MJ
​
%%  需求侧响应补偿成本  公式(1)
F_IDSR = sdpvar(1,1);           
C=[C,F_IDSR==0.432*sum(abs(Ekexuejian1)+abs(Ekexuejian2)+abs(Ekexuejian3))+0.060*sum(abs(Ekepingyi1)+abs(Ekepingyi2)+abs(Ekepingyi3))/2+0.120*sum(abs(Eketidai1)+abs(Eketidai2)+abs(Eketidai3)) ];
​
  • 目标函数

3 程序结果

相关推荐
haogexiaole27 分钟前
贪心算法python
算法·贪心算法
希望201741 分钟前
图论基础知识
算法·图论
m0_713541841 小时前
systemverilog如何解决不能使用变量索引来进行位选择的范围指定
算法·systemverilog
七牛云行业应用1 小时前
深度解析强化学习(RL):原理、算法与金融应用
人工智能·算法·金融
和编程干到底1 小时前
数据结构 栈和队列、树
数据结构·算法
tyatyatya1 小时前
MATLAB中进行视觉检测入门教程
开发语言·matlab·视觉检测
纪元A梦1 小时前
贪心算法在GNN邻域采样问题中的深度解析
算法·贪心算法
宇钶宇夕1 小时前
西门子 S7-200 SMART PLC 核心指令详解:从移位、上升沿和比较指令到流水灯控制程序实战
运维·算法·自动化
爱编程的化学家2 小时前
代码随想录算法训练营第十一天--二叉树2 || 226.翻转二叉树 / 101.对称二叉树 / 104.二叉树的最大深度 / 111.二叉树的最小深度
数据结构·c++·算法·leetcode·二叉树·代码随想录
tqs_123452 小时前
redis zset 处理大规模数据分页
java·算法·哈希算法