基于日特征气象因素的支持向量机预测电力负荷(Matlab代码实现)

简介: 基于日特征气象因素的支持向量机预测电力负荷(Matlab代码实现)

🍁🥬🕒摘要🕒🥬🍁

本文选取基于日特征气象因素的支持向量机预测方法,用Matlab编制模型的算法程序,从数据集中选取若干天数的历史数据作为模型的训练集,其余的数据作为测试集,模型最终能够实现对测试集中不同日期的负荷大小预测。


✨🔎⚡运行结果⚡🔎✨

 

💂♨️👨‍🎓Matlab代码👨‍🎓♨️💂

%% 清空环境变量
close all;
clear all;
clc;
format compact;
%% 数据的提取和预处理
data=xlsread('筛选后数据');
ts =  data((1:320),1);%训练集输出
tsx = data((1:320),2:end);%训练集输入
tts=data((321:end),1);%预测集输出
ttx= data((321:end),2:end);%预测集输入
% 数据预处理,将原始数据进行归一化
ts = ts';
tsx = tsx';
tts=tts';
ttx=ttx';
% mapminmax为matlab自带的映射函数    
% 对ts进行归一化
[TS,TSps] = mapminmax(ts,-1,1);    %矢量归一化
[TTS,TTSps]= mapminmax(tts,-1,1);
TS = TS';
TTS=TTS';
% mapminmax为matlab自带的映射函数
% 对tsx进行归一化
[TSX,TSXps] = mapminmax(tsx,-1,1);    %特征值归一化
[TTX,TTXps] = mapminmax(ttx,-1,1);    
% 对TSX进行转置,以符合libsvm工具箱的数据格式要求
TSX = TSX';
TTX = TTX';
%% 选择回归预测分析最佳的SVM参数c&g
% 进行参数选择: 
[bestmse,bestc,bestg] = SVMcgForRegress(TS,TSX,-10,10,-10,10);
% 打印参数选择结果
disp('打印参数选择结果');
str = sprintf( 'Best Cross Validation MSE = %g Best c = %g Best g = %g',bestmse,bestc,bestg);
disp(str);
%% 利用回归预测分析最佳的参数进行SVM网络训练
cmd = ['-c ', num2str(bestc), ' -g ', num2str(bestg) , ' -s 3 -p 0.01'];
model = svmtrain(TS,TSX,cmd);
%% SVM网络回归预测
[predict,mse] = svmpredict(TS,TSX,model);
[predict_2,mse_2] = svmpredict(TTS,TTX,model);
predict = mapminmax('reverse',predict',TSps);
predict_2 = mapminmax('reverse',predict_2',TTSps);
predict = predict';
predict_2 =predict_2'
% 均方根误差计算
N = length(tts);
RMSE = sqrt((sum((tts-predict_2').^2))/N)
% % 相关系数
% N = length(tts);
% YUCE_R2 = (N*sum(predict_2'.*tts)-sum(predict_2)*sum(tts))^2/((N*sum((predict_2).^2)-(sum(predict_2'))^2)*(N*sum((tts).^2)-(sum(tts))^2))
%% 结果分析(测试集)
figure;
plot(tts,'-o');
hold on;
plot(predict_2,'r-^');
legend('实际负荷','预测负荷');
hold off;
title('SVM预测输出图','FontSize',12);
xlabel('2019年11月20日-2019年12月30日','FontSize',12);
ylabel('负荷(KW)','FontSize',12);

📜📢🌈参考文献🌈📢📜

[1]梁静.互信息和改进支持向量机在电力负荷预测中的应用[J].红水河,2022,41(04):108-112.

相关文章
|
机器学习/深度学习 传感器 算法
SO-LSSVM回归预测 | Matlab 蛇群优化最小二乘支持向量机回归预测
SO-LSSVM回归预测 | Matlab 蛇群优化最小二乘支持向量机回归预测
|
6月前
|
机器学习/深度学习 算法
Matlab|基于支持向量机的电力短期负荷预测【最小二乘、标准粒子群、改进粒子群】
Matlab|基于支持向量机的电力短期负荷预测【最小二乘、标准粒子群、改进粒子群】
|
6月前
|
机器学习/深度学习 算法
基于自适应支持向量机的matlab建模与仿真,不使用matlab的SVM工具箱函数
基于自适应支持向量机的matlab建模与仿真,不使用matlab的SVM工具箱函数
|
6月前
|
机器学习/深度学习 算法 数据可视化
基于SVM支持向量机的数据预测matlab仿真
- **算法效果预览**:展示了6张支持向量机(SVM)在Matlab 2022a中运行的图像,包括分类或预测结果的比较。 - **软件版本**:Matlab 2022a。 - **算法理论**:SVM是监督学习工具,用最大间隔超平面做分类,通过核函数处理非线性问题。 - **核心程序片段**:展示了一个SVM预测模型的MATLAB代码,包括: - 绘制真实值与训练预测值的对比图。 - 计算并可视化31个城市训练数据的RMSE误差。 - 使用模拟数据对2017-2020年进行预测。 - 显示特定城市的预测结果及误差条形图。 - 保存最终的预测数据。
|
6月前
|
机器学习/深度学习 算法
【MATLAB】数据拟合第13期-基于最小二乘支持向量机的拟合
【MATLAB】数据拟合第13期-基于最小二乘支持向量机的拟合
190 1
|
6月前
|
机器学习/深度学习 算法
基于支持向量机SVM和MLP多层感知神经网络的数据预测matlab仿真
基于支持向量机SVM和MLP多层感知神经网络的数据预测matlab仿真
|
6月前
|
机器学习/深度学习 算法
【MATLAB 】SVM支持向量机回归预测
【MATLAB 】SVM支持向量机回归预测
59 0
|
3月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
187 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
3月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
122 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
3月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
87 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码