Matlab|计及源-荷双重不确定性的虚拟电厂/微网日前随机优化调度

目录

主要内容   

1.1 场景生成及缩减

1.2 随机优化调度

程序结果:


主要内容   

程序主要做的是一个虚拟电厂或者微网单元的日前优化调度模型,考虑了光伏出力和负荷功率的双重不确定性,采用随机规划法处理不确定性变量,构建了虚拟电厂随机优化调度模型。具体来看,首先是基于蒙特卡洛算法,对预测的光伏以及负荷曲线进行场景生成,然后基于快概率距离快速消除法进行削减,直至削减至5个场景,然后采用随机调度的方法,对多场景下的虚拟电厂调度策略进行优化调度。

程序中燃气轮机、储能部分模型以及随机优化算法也是和下述文档一致。

1.1 场景生成及缩减

clc
clear
close all
​
%% 光伏场景生成以及削减
%生成负荷场景并削减%
%负荷出力预测均值E
Ww=[0  0  0  0  0  0  3.8  3.9  4.5  5.2  6.5  7.3  7.4  7.2  7.4  6.5  5.5  4.8  0  0  0  0  0  0];
% Ww=[0,0,0,0,0,1,2.5,4,5,5.5,5.8,5.7,5.5,5.3,5.1,5,3.8,2.5,1.2,0,0,0,0,0];
​
W=0.3*Ww
%取标准差为负荷出力预测值E的5%-20%,这里x=E*10%
l=W*0.1;
Ws=[];
%生成一个负荷场景,E+x*randn(1,24),其中randn(1,24)为生成随机数的标准正态分布
m=200; %生成m个场景
for i=1:m
s=W+l.*randn(1,24);
Ws=[Ws;s];
end
​
figure(1)
[ss,gg]=meshgrid(1:200,1:24 );
plot3(ss,gg,Ws,'-');
grid
xlabel('场景');
ylabel('时刻');
zlabel('负荷功率');
title('负荷场景生成图');
% legend('负荷曲线1','负荷曲线2 ','负荷曲线3 ','负荷曲线4 ')
​
​
Ws_d=Ws; %定义削减后的场景
%场景削减
pi=1/m*ones(m,1); %蒙特卡罗生成的场景为等概率场景,建立每个场景的概率向量
%计算负荷场景Ws中每对场景的几何距离x
x=zeros(m,m); 
for i=1:m
    for j=1:m
            x(i,j)=sum(abs(Ws(i,:)-Ws(j,:)));
    end
end
​
%计算每个场景与剩余场景的概率距离之和y
y=zeros(m,1);
for i=1:m
y(i)=1/m*sum(x(i,:));
end
k=length(y);
​
%不断削减场景,直到剩余5个场景
while(k>5)
d=find(y==min(y)); %选定与剩余场景的概率距离之和最小的场景
x_2=x+100*eye(k); %构造新的x,以便找出风电场景Ws中与场景d几何距离最小的场景r
r=find(x_2(d,:)==min(x_2(d,:)));
pi(r)=pi(r)+pi(d); %将d场景的概率加到r场景上
%在负荷场景中删除d场景
pi(d)=[]; 
Ws_d(d,:)=[];
x(d,:)=[];
x(:,d)=[];
y(d)=[];
k=length(y);
end
​
figure(2)
[ss,gg]=meshgrid(1:5,1:24 );
plot3(ss,gg,Ws_d,'-');
grid
xlabel('场景');
ylabel('时刻');
zlabel('风机出力值');
title('场景削减图');

得到场景生成和缩减结果:

1.2 随机优化调度

模型中最核心的是随机优化模型的构建和处理,采用非预期运行约束处理随机优化问题,其中传统机组随机优化模型如下:

非预期约束是如何处理随机优化问题的呢?国内一些文献也是采用该类方法,如下所示,非预期约束也就是为了限定在风电、光伏以及其他因素存在的情况下,有且只有一种状态是被用在日前调度模型里的。

摘自《交直流混合配电网多阶段随机优化调度模型_裴蕾》
%主要内容:考虑光伏、负荷的不确定性,实现虚拟电厂的随机优化
%模型中,考虑了燃气轮机、储能,光伏,负荷四种单元,并考虑可以并网
clc
clear
close all
ppv=[0,0,0,0,0,0,1.34060681352041,1.13391651200680,1.40252116109929,1.74124103883023,1.49174914115029,2.53240793479920,2.04065972732231,2.35828237099756,1.55809477900388,1.64805990357317,1.87064383698464,1.29603798576622,0,0,0,0,0,0;0,0,0,0,0,0,1.18358196815285,1.20530370391118,1.35854372362592,1.32447876876720,1.70829563301966,2.51396807020581,1.87219733041650,1.51045430771326,2.14995685962274,2.36901954872155,1.49939386631594,1.24439925735197,0,0,0,0,0,0;0,0,0,0,0,0,1.01175119002517,1.31035724158009,1.08516736148552,1.94136887715302,1.93148023426153,2.08839059797124,2.16179304729596,1.66329638481645,2.26989483226563,2.44265872929522,1.36505525184415,1.44002086391399,0,0,0,0,0,0;0,0,0,0,0,0,1.04539328775374,1.03998113428866,1.18246929195709,1.69424435782838,1.64461569874716,2.06924213909286,2.43963602014925,1.68729987832366,1.87805529528869,1.51992087170733,2.01158827571321,1.29724518700574,0,0,0,0,0,0;0,0,0,0,0,0,1.32311860610225,1.28695117820334,1.34520597073109,1.46724609252811,1.74247560818882,1.72276716702525,2.57775664860191,1.79578137388444,2.66126270645276,2.15099361545381,1.66252664174142,1.63885764533067,0,0,0,0,0,0];
pload=[[0.431807609584421,0.486148921643357,0.721272534818094,0.898346267079082,0.944425724763714,0.541378372225899,0.882373258746104,1.56831193839750,1.86281649971011,1.99584713547466,2.19733700575767,2.29773449997527,2.47099246563420,1.66872324677400,1.77591203172356,1.32477944622446,1.95414778150622,1.54974896023576,1.74359932022130,1.44846182755801,0.955252219886710,1.25160480095078,1.49222676285844,0.682744656361740;0.483635538027688,0.495506878187239,0.714763198577902,0.799435561018225,1.01952146263562,0.800604394686264,0.945961336073563,1.28885742430358,1.90848488028237,2.10268787259155,1.91839575715085,1.85220123265328,2.17764591245376,1.78073710542207,1.73239834633622,1.42351956423826,2.03383140201547,2.58777879153454,1.89810311996295,1.45544594829551,1.11733457030710,0.835193945440698,1.45888556170521,0.737906988149361;0.475566682884608,0.538938919866738,0.694384127185758,0.948064145000996,0.869283322295024,0.693421312226079,1.24531781162386,1.18155825364294,2.24893779918531,2.22929790054771,1.91247902153441,1.60109975699407,2.04025369591884,1.62927362526231,1.94798019608120,1.30811995960382,1.92258374438264,2.34731329057125,1.88682790373556,1.82091112812632,0.761274726486709,1.14465406229059,1.66887813069703,0.687295849991400;0.506197427493947,0.555237638826251,0.711932167351328,0.723600759144382,1.04613991322447,0.658159592550928,1.07636853878386,1.06165890483766,2.06902267439968,2.48488721178039,2.34092228143214,2.63450984929863,2.35352014698963,2.08958282274750,1.65408992214257,1.54410971082492,1.94697999777118,1.92406941886044,2.00023938323277,2.10124494602628,1.04036325929128,0.984006134878927,1.94126189741016,0.651136186886876;0.504831465058796,0.522880453611977,0.805416372257449,0.776866377863578,1.09776915278538,0.499517330314076,0.895214516450348,1.27340524098249,1.51733245769139,1.46096552221328,2.35562457523011,1.98343189442592,1.73365278725908,1.98502985411742,2.00458112949663,1.35148256752316,1.86202305372752,2.23007113968369,1.56324879332238,1.57649124469752,0.995615716738264,1.11287433329993,1.96306488103865,0.572126166745211]];
%% 定义变量
%%定义市场购电电价以及售电电价
xb=[630,630,630,630,630,630,1020,1020,1020,1520,1520,1520,1520,1520,1020,1020,1020,1520,1520,1520,1020,1020,630,630];
xs1=[100,100,100,100,100,100,380,380,380,800,800,800,800,800,380,380,380,800,800,800,380,380,100,100];
xs=1.05*xs1;
%% 定义燃气轮机参数
a=600;%固定开机费用
kcp=100;%分段线性化费用
sconv=100;%启停费用
gtmax=3.31;%出力上限
gtmin=1.3;%最小出力值
ramp=1.5;%爬坡率
%% 定义储能参数
gescmax=1;%充电功率上限
gesdmax=1;%放电功率上限
sessmax=4;%蓄电量上限
sessmin=0;%蓄电量最小值
uesc=0.95;%充电效率
uesd=0.95;%放电效率
kil=[500,700,800];%中断负荷补偿费用
%% 其他输入参数
pmgmax=20;%最大交易量
%负荷值
% pload=[1.5  1.8  2.3  2.8  3.2  2.1  3.3  4.2  5.9  6.8  7.5  7.2  7.1  6.5  5.9  4.8  5.6  6.8  6.8  6.2  3.3  3.6  5.4  2.4];
% %光伏出力
% ppv=[0  0  0  0  0  0  3.8  3.9  4.5  5.2  6.5  7.3  7.4  7.2  7.4  6.5  5.5  4.8  0  0  0  0  0  0];
​
%% 定义变量sdpvar/binvar
umob=binvar(1,24);%是否购电
umos=binvar(1,24);%是否售电
umospf=binvar(5,5,24)
umobpf=binvar(5,5,24)
pmgb=sdpvar(1,24);%市场购电量
pmgs=sdpvar(1,24);%市场售电量
pmgbpf=sdpvar(5,5,24);
pmgspf=sdpvar(5,5,24);
xconv=binvar(1,24);%燃气轮机工作状态变量
yconv=binvar(1,24);%燃气轮机启停状态变量
xconvpf=binvar(5,5,24);
yconvpf=binvar(5,5,24);
pmt=sdpvar(1,24);%燃气轮机出力
pmtpf=sdpvar(5,5,24);
gesc=sdpvar(1,24);%储能充电功率
gesd=sdpvar(1,24);%储能放电功率
sess=sdpvar(1,24);%蓄电池蓄电量
gescpf=sdpvar(5,5,24);
gesdpf=sdpvar(5,5,24);
sesspf=sdpvar(5,5,24);
​
%% 约束条件
C=[];%初始化约束
%% 燃气轮机出力约束
for p=1:5
    for f=1:5
        for t=1:24
          C=[C,
          xconvpf(p,f,t)*gtmin<=pmtpf(p,f,t)<=xconvpf(p,f,t)*gtmax ,%出力上下限约束
          ];
        end
    end
end
% 
for p=1:5
    for f=1:5
       C=[C,
           pmtpf(p,f,1)<=ramp,%初始爬坡约束
           xconvpf(p,f,1)<=yconvpf(p,f,1),%初始启停约束
       ]; 
    end
end
​
% 
for p=1:5
    for f=1:5
        for t=2:24
        C=[C,
        -ramp<=pmtpf(p,f,t)-pmtpf(p,f,t-1)<=ramp,%爬坡率约束
        xconvpf(p,f,t)-xconvpf(p,f,t-1)<=yconvpf(p,f,t), %工作状态约束 
         ];  
        end
    end
end

程序结果:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vscode插件开发-发布插件

安装vsce vsce是“Visual Studio Code Extensions”的缩写&#xff0c;是一个用于打包、发布和管理VS Code扩展的命令行工具。 确保您安装了Node.js。然后运行&#xff1a; npm install -g vscode/vsce 您可以使用vsce轻松打包和发布扩展&#xff1a; // 打包插件生成name…

欧盟通过全球首个重磅人工智能监管法案,预计5月生效

以下文章来源&#xff1a;华尔街见闻 欧盟的AI法案于周三获得欧盟议会批准&#xff0c;预计将于5月生效。届时&#xff0c;所有的欧盟成员国都将遵守AI法案规定。3月13日周三&#xff0c;欧盟议会批准了AI法案。该法案为AI技术设置严格的规则&#xff0c;旨在确保AI的使用不会侵…

vue插槽的基本使用

1.默认插槽 在Vue.js中&#xff0c;可以通过使用默认插槽来在组件中插入内容。默认插槽允许你在父组件中传递任意内容给子组件&#xff0c;并在子组件中使用这些内容。如果在子组件中的slot中写内容,则为默认内容,父组件未插入值的情况下显示,插入则被覆盖 父组件 <temp…

短视频矩阵系统源头3年技术开发

短视频矩阵系统功能主要包括&#xff1a; &#x1f608;&#x1f608;&#x1f33a;&#x1f33a; 1. 短视频制作&#xff1a;系统支持短视频拍摄、剪辑、特效、标题、音乐等操作&#xff0c;用户可以轻松制作出精美的短视频。 2. 短视频发布&#xff1a;通过系统&#xff0c…

HTML表格标签

文章目录 1. 基本结构2. 跨行跨列3. 跨行跨列改进3.1. 演示效果3.2. 代码实现 4. 补充 1. 基本结构 表格由表格标题、表格头部、表格主体、表格脚注&#xff0c;四部分组成 。 表格涉及到的标签 标签含义table表格caption表格标题thead表格头部tbody表格主体tfoot表格注脚tr每…

【Java基础概述-10】IO流、字节流、字符流、缓冲流、转换流、序列化、打印流、Properties属性集对象

目录 1、IO流概述 2、字节流的使用 2.1、FileInputStream字节输入流 2.1.1、读取方式一 2.1.2、读取方式二 2.1.3、字节流读取数据如何避免中文乱码 2.2、OutputStream字节输出流 2.3、案例&#xff1a;复制粘贴小案例 3、字符流 3.1、FileReader字符输入流 3.1.1、读…

ctfshow web入门 文件上传 web156-160

1.web156 前端还是要修改 文件内容中不能有php,[],图片必须是png格式 利用的还是.user.ini,写入auto_prepend_file2.png&#xff0c;在上传2.png &#xff0c;写入<?php system("cat /var/www/html/flag.???")?>&#xff0c;访问链接就可得到flag (http…

云端巨擘:大数据与云计算的时代航向

文章目录 大数据时代大数据特点(4v1C大数据与云计算的关系 云计算云计算定义云计算特点云计算分类&#xff08;服务类型&#xff09;云计算实现机制云计算体系结构云计算的管理中间件层 大数据时代 大数据定义&#xff1a;海量数据或巨量数据&#xff0c;其规模巨大到无法通过…

【深度学习】深度估计,Depth Anything Unleashing the Power of Large-Scale Unlabeled Data

论文标题&#xff1a;Depth Anything Unleashing the Power of Large-Scale Unlabeled Data 论文地址&#xff1a;https://arxiv.org/pdf/2401.10891.pdf 项目主页&#xff1a;https://depth-anything.github.io/ 演示地址&#xff1a;https://huggingface.co/spaces/LiheYoung…

投后管理系统的开发流程

投后管理系统的开发流程中&#xff0c;需求分析阶段至关重要&#xff0c;要确保充分理解用户需求和业务流程&#xff0c;以便设计和开发出符合实际需求的投后管理系统。同时&#xff0c;持续的测试、优化和支持也是保证系统质量和用户满意度的重要环节。北京木奇移动技术有限公…

2024年腾讯云学生用户便宜云服务器购买攻略

2024年腾讯云学生服务器优惠活动「云校园」&#xff0c;学生服务器优惠价格&#xff1a;轻量应用服务器2核2G学生价30元3个月、58元6个月、112元一年&#xff0c;轻量应用服务器4核8G配置191.1元3个月、352.8元6个月、646.8元一年&#xff0c;CVM云服务器2核4G配置842.4元一年&…

【个人博客项目】使用Jenkins简单的搭建一下

目录标题 前言安装JDK1.8、Git、Maven安装Tomcat修改tomcat8相关配置 安装Jenkins 前言 为了学习一下工作中常用到的jenkins&#xff0c;于是挑了个最简单的模式动手操作了一遍。 环境->阿里云服务器:CentOS7.0 https://promotion.aliyun.com/ntms/yunparter/invite.html?…

AI-线性回归模型

线性回归应用场景 房价预测&#xff0c;通过分析房地产市场的历史数据&#xff0c;如房屋大小、位置、建造年份等因素&#xff0c;线性回归可以帮助预测未来房价的走势。 销售额预测&#xff0c;企业可以利用线性回归模型来预测产品的销售额&#xff0c;这通常涉及到产品价格、…

爆料!游戏圈内幕揭秘(下)

游戏产业规模日益扩大&#xff0c;影响力不断提高&#xff0c;已成为全球最活跃和潜力巨大的经济板块之一。作为一项新兴产业&#xff0c;游戏开发行业前景广阔&#xff0c;机遇与挑战并存。对即将出社会的同学来说&#xff0c;要想在这个竞争激烈又日新月异的行业中找到属于自…

C++第四弹---类与对象(一)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】 类与对象 1、面向过程和面向对象初步认识 2、类的引入 3、类的定义 4、类的访问限定符及封装 4.1、访问限定符 4.2、封装 5、类的作用域 6、类的…

WebP格式图像:起源、优势、兼容性及在线压缩方法

关于作者&#xff1a; 还是大剑师兰特&#xff1a;曾是美国某知名大学计算机专业研究生&#xff0c;现为航空航海领域高级前端工程师&#xff1b;CSDN知名博主&#xff0c;GIS领域优质创作者&#xff0c;深耕openlayers、leaflet、mapbox、cesium&#xff0c;canvas&#xff0…

第四百回 channel

文章目录 1. 知识回顾2. 示例代码3. 经验总结 我们在上一章回中介绍了MethodChannel的使用方法&#xff0c;本章回中将介绍EventChannel的使用方法.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 知识回顾 我们在前面章回中介绍了通道的概念和作用&#xff0c;并且提到了…

数字生活的未来:探索Web3的全新世界

随着科技的飞速发展&#xff0c;我们正迈向一个数字化的未来。而在这个数字化的时代&#xff0c;Web3技术的崛起正引领着我们进入一个全新的世界。本文将深入探讨Web3技术的特点以及它给我们带来的全新体验。 1. 去中心化的特点 Web3的去中心化是其最显著的特点之一&#xff0…

若依Cloud项目配合nacos进行多环境profile的配置

1、前言 最近做的用若依改造的一个项目要把里面的配置挪到nacos的配置中心&#xff0c;之前用过apollo做配置中心&#xff0c;nacos用的很少&#xff0c;而且是自己从头做的那种&#xff0c;而自己想要实现的效果是本地启动和到测试&#xff0c;预发&#xff0c;生产环境启动的…

如何在Linux Archcraft中配置SSH服务并结合内网穿透实现远程连接

文章目录 1. 本地SSH连接测试2. Archcraft安装Cpolar3. 配置 SSH公网地址4. 公网远程SSH连接小结 5. 固定SSH公网地址6. SSH固定地址连接 Archcraft是一个基于Arch Linux的Linux发行版&#xff0c;它使用最简主义的窗口管理器而不是功能齐全的桌面环境来提供图形化用户界面。 C…
最新文章