基于双向LSTM模型进行电力需求预测(Matlab代码实现)

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

                

📋📋📋本文目录如下:⛳️⛳️⛳️

目录

1 概述

2 预测模型原理

3 运行结果

4 参考文献

5 Matlab代码实现
​​​​​​​

1 概述

电力系统负荷预测可对未来一段时间的电力需求进行估计,从而根据负荷预测结果来安排机组组

合计划、发电计划、联络线交换计划,组织电力现货交易。因此,准确的电力负荷预测对于电力系统安全、经济、高效地运行有着重要的意义[1]。短期电力负荷预测主要是指对未来一天、一周甚至几周时间内的用电负荷进行预测,是电网日常运营的重要组成部分。 对于短期电力负荷预测的研究方法,大致分为两类,包括传统电力负荷预测方法[2]和机器学习算法模型预测方法。基于当下新型用电环境 与影响用电因素复杂多样化的特点,机器学习算法模型成为学者们在电力负荷预测领域研究的焦点。

2 预测模型原理

图1 为 LSTM 的基本单元,LSTM 通过对其遗忘门、输入门、输出门等门控单元进行有效组合可以实现信息的保护和当前状态的更新,更新规则如式 ( 4) 所示。门控单元的实现如下式所示:

                    \begin{array}{c} \boldsymbol{f}_{t}=\sigma\left(\boldsymbol{W}_{f} \times\left[\boldsymbol{h}_{t-1}, \boldsymbol{z}_{t}\right]+\boldsymbol{b}_{f}\right) \\ \boldsymbol{i}_{t}=\sigma\left(\boldsymbol{W}_{i} \times\left[\boldsymbol{h}_{t-1}, \boldsymbol{z}_{t}\right]+\boldsymbol{b}_{i}\right) \\ \hat{\boldsymbol{C}}_{t}=\tanh \left(\boldsymbol{W}_{C} \times\left[\boldsymbol{h}_{t-1}, \boldsymbol{z}_{t}\right]+\boldsymbol{b}_{\boldsymbol{C}}\right) \\ \boldsymbol{C}_{t}=\boldsymbol{f}_{t} \times \boldsymbol{C}_{t-1}+\boldsymbol{i}_{t} \times \hat{\boldsymbol{C}}_{t} \\ \boldsymbol{o}_{t}=\sigma\left(\boldsymbol{W}_{\boldsymbol{o}} \times\left[\boldsymbol{h}_{t-1}, \boldsymbol{z}_{t}\right]+\boldsymbol{b}_{\boldsymbol{o}}\right) \\ \boldsymbol{h}_{t}=\boldsymbol{o}_{t} \times \tanh \boldsymbol{C}_{t} \end{array}

                                            图1 LSTM 结构示意图

3 运行结果

部分代码: 

%% 训练
inputSize = 3;
numHiddenUnits = 200;
layers = [ ...
    sequenceInputLayer(inputSize)
    bilstmLayer(numHiddenUnits,'OutputMode','last')
    fullyConnectedLayer(1)
    regressionLayer];
maxEpochs = 10000;
options = trainingOptions('adam', ...
    'MaxEpochs',maxEpochs, ...
    'InitialLearnRate',0.01, ...
    'GradientThreshold',1, ...
    'Shuffle','never', ...
    'Plots','training-progress',...
    'Verbose',0);
net = trainNetwork(X,Y',layers,options);
save('net.mat','net')
trainY=double(predict(net,X));
%% 可视化
figure, ploterrhist(trainY-Y')
figure, plot(trainY,'-o')
hold on
plot(Y,'-^')
title('训练结果')
xlabel('电价')
ylabel('有功功率需求量(MW)');
legend('biLSTM 输出','实际电力需求')

4 参考文献

部分理论引用网络文献,若有侵权请联系博主删除。 

[1]钟劲松,王少林,冉懿,冉新涛,于金平,俞海猛.基于互信息和LSTM的用户负荷短期预测[J].电力建设,2022,43(07):96-102.

[2]张雪. 基于智能优化的神经网络短期电力负荷预测[D].西安工业大学,2022.

[3]赵婧宇,池越,周亚同.基于SSA-LSTM模型的短期电力负荷预测[J].电工电能新技术,2022,41(06):71-79.

5 Matlab代码实现

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荔枝科研社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值