基于人工神经网络的IEEE30节点系统的传输损耗预测(Matlab代码实现)

目录

1 概述

在进入能源时代后,社会对于电力的需求都在逐年上升,与此同时产生了大量的电网负荷数据。电网负荷数据中包含着电力系统对用户的电力供应、电价计算、电力负荷预测等,具备极为广阔的现实意义。在电力系统中若电网负荷数据出现错误,会导致一段时间内该地区的都会失去调配能力。为能够更高效率地利用电网负荷数据,对其进行数据分类处理。
通过收集大量的电网负荷数据,基于K-均值算法对电力数据进行了分析与预测。通过大数据的关联分析,递增电网数据的维度,提供了一个电力数据的分类模型。这种方法需要首先建立电网数据的数学模型,依赖于大数据的云计算能力,在计算时耗时较长,效率较差。
本文基于人工神经网络的IEEE30节点系统的传输损耗预测。
 

2 Matlab代码实现

2.1 代码

%% 本程序用于训练人工神经网络以预测 IEEE 30 节点系统的传输损耗的主程序
clear 
db = xlsread('lossdb.xlsx');
Q=length(db(:,1));
trainRatio=0.95;
valRatio=0;
testRatio=0.05;

[trainInd,valInd,testInd] = dividerand(Q,trainRatio,valRatio,testRatio);
inputs=db(trainInd,1:6)';
targets=db(trainInd,7)';

% inputs=db(:,1:6)';
% targets=db(:,7)';
net = feedforwardnet([7 5]);

net.divideParam.trainRatio=0.85;
net.divideParam.testRatio=0.0;
net.divideParam.valRatio=0.15;
net.layers{1}.transferFcn='tansig';
net.layers{2}.transferFcn='purelin';
net.layers{3}.transferFcn='purelin';
net.trainParam.min_grad=1e-8;
[net,tr] = train(net,inputs,targets);

predicted = net(db(testInd,1:6)');
actual=db(testInd,7)';
RMSE = sqrt(mean((actual - predicted).^2))
perf = perform(net,actual,predicted)

figure;
scatter(actual,predicted)
xlabel('每单位的实际损耗')
ylabel('每单位的预测损耗')


figure;
plotperform(tr)

2.2 结果 

 

 

2.3 训练数据 

  

训练数据:基于人工神经网络的IEEE30节点系统的传输损耗预测(数据)

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2022年5月20日
下一篇 2022年5月20日

相关推荐