资源简介
关于电力负荷的SVM预测,设计了MATLAB的可视化界面,含数据,包含一般SVM,粒子群优化下的SVM,改进粒子群优化下的SVM
代码片段和文件信息
function [Acu]=AdaptFunc(XXYY)
%C为最小二乘支持向量机的正则化参数,theta为高斯径向基的核函数参数,两个需要进行优化选择调试
NumOfPre =1;%预测天数,在此预测本季度最后七天
Time = 24;
Data = xlsread(‘a23.xls‘);%此为从excel表格读数据的命令,表示将表格的数据读到Data数组中,省略表格中的第一行第一列文字部分 可输入你要预测的表格名称
[M N] = size(Data);%计算读入数据的行和列 M行N列
for i = 1:3
maxData = max(Data(:i));
minData = min(Data(:i));
Data1(:i) = (Data(:i) - minData)/(maxData-minData);%对温度进行归一化处理
end
for i = 4:5
Data1(:i) = Data(:i);
end
for i = 6:N
Data1(:i) = log10(Data(:i)) ;%对负荷进行对数处理 温度和负荷的预处理 可采用不同的方法 可不必拘泥
end
Dim = M - 2 - NumOfPre;%训练样本数%训练样本数
Input = zeros(M-212Time);%预先分配处理后的输入向量空间
y = zeros(DimTime);
for i = 3:M
for j = 1:Time
%%选取前一天温度、同一时刻的负荷,前两天的负荷,当天的温度作为输入特征
x = [Data1(i-11:5) Data1(i-1j+5) Data1(i-2j+5)Data1(i1:5)];
Input(i-2:j) = x;
y(i-2j) = Data1(ij+5);
end
end
Dist = zeros(DimDimTime);%预先分配距离空间
for i=1:Time
for j=1:Dim
for k=1:Dim
Dist(jki) = (Input(j:i) - Input(k:i))*(Input(j:i) - Input(k:i))‘;
end
end
end
Dist1=exp(-Dist/(2*YY));%RBF
for i=1:Time
H = Dist1(::i) + eye(Dim)/XX;%最小二乘支持向量的H矩阵
f = -y(1:Dimi);
Aeq = ones(Dim1)‘;
beq = [0];
option.MaxIter=1000;
[afval]=quadprog(Hf[][]Aeqbeq);%[][][]option);
b = 0;
for j = 1:Dim
b(j) = y(ji) - a(j)/XX - a‘* Dist1(:ji);%求每个输入特征对应的b
end
b = sum(b)/Dim;%求平均b,消除误差
for j = Dim + 1:M-2
for k = 1:Dim
K(k) = exp(-(Input(j:i) - Input(k:i))*(Input(j:i) - Input(k:i))‘/(2*YY));%预测输入特征与训练特征的RBF距离
end
Pre(j-Dimi) = sum(a‘*K‘) + b; %求解预测值
end
end
Len = M - (Dim + 3) + 1;%预测的天数 取本季度最后Len天
Pre = 10.^Pre;
%for i = 1:Len
% figure
% plot(1:TimeData(i+Dim+26:N)‘-ro‘1:TimePre(i:)‘-k^‘);%画出每一天的预测值和真实值
% hold on
%
% axis([0 25 0 100])%坐标范围
% hold off
%end
acu = (Pre - Data(Dim+3:M6:N))./Data(Dim+3:M6:N);%相对误差
s=0;
for i=1:Time
s=abs(acu(1i))+s;
end
Acu=s/Time;
save acu.mat acu
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 22016 2010-06-03 19:41 gui\a23.xls
文件 179 2018-04-18 11:05 gui\Acu.mat
文件 377 2018-04-18 10:39 gui\acu1.mat
文件 2392 2010-06-04 09:14 gui\AdaptFunc.m
文件 2517 2018-04-18 10:38 gui\AdaptFunc1.m
文件 3813 2010-05-18 10:36 gui\ba
文件 12826 2015-09-13 14:40 gui\figure.fig
文件 2762 2018-04-18 10:31 gui\gaijin.asv
文件 2762 2018-04-18 10:31 gui\gaijin.m
文件 10730 2015-09-13 20:53 gui\gui.fig
文件 17949 2015-09-13 21:33 gui\gui.m
文件 2174 2010-05-18 10:36 gui\InitSwarm.m
文件 2144 2015-09-13 21:33 gui\pso.m
文件 2549 2015-09-13 14:51 gui\shorttime.asv
文件 2549 2018-04-18 10:05 gui\shorttime.m
目录 0 2018-04-19 22:40 gui
----------- --------- ---------- ----- ----
87739 16
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论