电力系统负荷与电价预测优化模型(Matlab代码实现)

简介: 电力系统负荷与电价预测优化模型(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥


🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。


⛳️座右铭:行百里者,半于九十。


📋📋📋本文目录如下:🎁🎁🎁


目录


💥1 概述


📚2 运行结果


🎉3 参考文献


🌈4 Matlab代码、数据、文章


💥1 概述

用于模拟电价的模型是一个简化形式的混合模型,如下图1所示。其根本驱动因素是天然气价格和气温。该模型在内部捕获了驱动因素与电价的关系之间的关系,以及与一天中的时间、一周中的哪一天和节假日的关系。天然气价格模型是一种简化的均值回归随机微分方程模型。温度模型是参数函数和时间序列模型的组合。

模拟的天然气和电价路径被送入调度算法,该算法计算工厂的最优调度,以产生一系列现金流,可用于计算风险现金流。


                    28cd0c48df164ed9a7c38933ca7b9fe4.png


                                                                     图1


详细讲解见第4部分。


📚2 运行结果


3e7927cd37f5472e9aa10c5dd8688f99.png

cfc4b449578840de87141dabc7bae594.png

4f1c1c00fcb64b098729b92d81597206.pnge3754a397e4044fe8b157325be46972c.png  3f2b4b86d9e342548c34932227c44101.png

             

部分代码:

%% 每小时温度建模和模拟
% 这个例子演示了每小时干球温度拟合一个非线性温度模型。
% 温度序列被建模为两个分量的总和,一个确定性的非线性函数,
% 用来解释给定年份某一时刻的季节或预期温度,另一个随机分量,用来解释实际温度与平均值的偏差。
%% 导入数据
%数据集从先前创建的MAT-file中加载。它由一系列日期的向量和相应的历史记录温度组成。
clear
load Data\TempSeries
whos
%% 季节性成分(确定性)
% 确定性或期望的温度分量用正弦和模型建模,激励的是数据中观察到的温度和周期性的物理本质。
% 利用曲线拟合工具箱对模型参数进行估计。统计工具箱函数NLINFIT也可以用来估计模型参数。
% 计算平均值(年平均值)并将其从系列中剔除
m = mean(drybulb)
drybulb0 = drybulb - m;
% Fit double-sine model
model = fit(dates, drybulb0, 'sin2')
%% 可视化模型精度
% 用自定义图对拟合结果进行可视化分析。图中的两个轴是相连的,这极大地使数据的视觉探索。
% 还要注意,X轴上的日期tick相对于缩放和平移是动态的。
pred = model(dates) + m;
res = drybulb - pred;
fitPlot(dates, [drybulb pred], res);
disp(['平均绝对误差: ' num2str(mean(abs(res))) ' 华氏度']);
%% 分析残差中的序列相关性
% 上述图中明显的特征之一是残差不具有序列相关性。预计这是因为高于平均气温很可能跟随高于平均气温。
% 这种序列相关性可以被明确地度量。这里用AUTOCORR和PARCORR函数来显示序列的自相关和部分自相关。
figure;
subplot(2,1,1);
autocorr(res,50);
title('随机序列的序列相关性');
subplot(2,1,2);
parcorr(res(1:1000),50);
%% 利用季节AR模型对随机成分进行建模
% 可以选择对随机分量建模一个均值回复漂移SDE。
% 但是,由于季节性,我们将使用带有季节性滞后的自回归模型。
% 这里可以使用MATLAB反斜杠算子代替REGRESS函数,但这不会返回置信区间。
lags = [1 2 3 4 23 24 25 47 48 49];
Xres = lagmatrix(res, lags);
[beta, betaci, res2] = regress(res, Xres);
disp('滞后系数和置信区间');
disp([lags' beta betaci])
%% 对回归残差进行序列相关分析
%来自回归的残差现在应该大多是序列不相关的。
figure;
subplot(2,1,1);
plot(dates, res2); datetick
title('回归残差及其序列相关性');
subplot(2,1,2);
autocorr(res2(lags(end)+1:end),50);
%% 对残差拟合一个分布
% 由于残差大多是不相关的,因此可以将它们建模为独立的从适当的分布中提取的。
% 一个t位置尺度分布可以显示出很好的拟合性。
PD = fitdist(res2, 'tlocationscale');
%% 模型总结
% 温度模型现在可以定义为,
% 
%  *平均气温' m '
%  *正弦模型'模型'
%  *回归参数'β '
%  *自相关滞后'滞后'
%  *剩馀概率分布PD
%  *可选样本前数据( 回归温度的最后一次观测值 )
tempModel = struct('m', m, 'sinmodel', model, 'reglags', lags, 'regbeta', beta, 'dist', PD, 'presample', res(end-lags(end)+1:end));
save SavedModels\TemperatureModel.mat -struct tempModel
clearvars -except tempModel dates drybulb
%% 仿真模型
% 我们现在可以对这个模型进行2009年的模拟,并将模拟值与2009年的观测数据进行比较。
% 注意我们已经捕获了我们模型中的相关特征。
newDates = dates(end-365*24+1:end);
simTemp = simulateTemperature(tempModel, newDates, 1);
%% 可视化仿真结果
ax1 = subplot(2,1,1);
plot(newDates, drybulb(end-365*24+1:end))
title('实际温度');
ax2 = subplot(2,1,2);
plot(newDates, simTemp);
title('模拟温度');
linkaxes([ax1 ax2], 'x');
dynamicDateTicks([ax1 ax2], 'linked');


🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]周佃民,赖菲,刘亚安,王庆,刘云国.电力系统负荷预测与电价预测[J].继电器,2000(10):31-33.


🌈4 Matlab代码、数据、文章

相关文章
|
1天前
|
算法 计算机视觉 异构计算
基于肤色模型的人脸识别FPGA实现,包含tb测试文件和MATLAB辅助验证
这是一个关于肤色检测算法的摘要:使用MATLAB 2022a和Vivado 2019.2进行测试和仿真,涉及图像预处理、RGB到YCbCr转换、肤色模型(基于阈值或概率)以及人脸检测。核心程序展示了如何读取图像数据并输入到FPGA处理,通过`tops`模块进行中值滤波、颜色空间转换及人脸检测,最终结果输出到"face.txt"。
|
1天前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
1天前
|
数据安全/隐私保护
matlab程序, 脉冲波合成与提取,滑冲效应、方向性效应,自定义脉冲模型,提取脉冲波
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
1天前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
1天前
|
算法 调度
面向配电网韧性提升的移动储能预布局与动态调度策略(matlab代码)
面向配电网韧性提升的移动储能预布局与动态调度策略(matlab代码)
|
1天前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
|
1天前
|
运维 算法
基于改进遗传算法的配电网故障定位(matlab代码)
基于改进遗传算法的配电网故障定位(matlab代码)
|
1天前
|
Serverless
基于Logistic函数的负荷需求响应(matlab代码)
基于Logistic函数的负荷需求响应(matlab代码)
|
1天前
|
供应链 算法
基于分布式优化的多产消者非合作博弈能量共享(Matlab代码)
基于分布式优化的多产消者非合作博弈能量共享(Matlab代码)

热门文章

最新文章