当前位置 : 主页 > 编程语言 > python >

【SVR预测】基于差分进化算法优化SVR实现数据预测附matlab代码

来源:互联网 收集:自由互联 发布时间:2022-06-18
1 简介 智能交通系统是缓解道路交通拥堵,减少交通事故和提高交通运行效率的重要应用系统.实时准确可靠的交通流量预测是实现智能交通系统控制和诱导的关键内容,具有重大的理论研

1 简介

智能交通系统是缓解道路交通拥堵,减少交通事故和提高交通运行效率的重要应用系统.实时准确可靠的交通流量预测是实现智能交通系统控制和诱导的关键内容,具有重大的理论研究和实际应用价值.本文以短时交通流量预测为研究主题,总结了短时交通流预测的研究现状,在学习交通流预测原理和支持向量回归(Support Vector Regression, SVR)理论的基础上,对基于SVR的短时交通流预测模型中参数选择问题进行了探讨和研究,运用群智能优化方法进行最优参数选择,并且仿真实际数据来验证提出的预测模型.本文的主要工作如下:1.对人工鱼群算法优化支持向量回归的参数选择模型进行研究.针对支持向量回归的惩罚系数,不敏感损失系数和核函数参数的选择对回归算法的预测精度的重要影响,结合交通流数据特征,本文运用差分进化算法对支持向量回归参数进行优化选择.

2 部分代码

clear
clc
close all
load wndspd % 示例数据为风速(时间序列)数据,共144个样本
%% DE-SVR
% 训练/测试数据准备(用前3天预测后一天),用前100天做训练数据
input_train(1,:)=wndspd(1:97);
input_train(2,:)=wndspd(2:98);
input_train(3,:)=wndspd(3:99);
output_train=[wndspd(4:100)]';
input_test(1,:)=wndspd(101:end-3);
input_test(2,:)=wndspd(102:end-2);
input_test(3,:)=wndspd(103:end-1);
output_test=[wndspd(104:end)]';
para=[30,200,0.2,0.8,0.2];
[bestc,bestg,test_pre]=my_DE_SVR(para,input_train',output_train',input_test',output_test');
% 预测误差计算
MSE=mymse(output_test',test_pre)
MAE=mymae(output_test',test_pre)
MAPE=mymape(output_test',test_pre)
FVD=myfvd(output_test',test_pre)
CDFR=mycdfr(output_test',test_pre)
%% 预测结果图
err_pre=output_test'-test_pre;
figure('Name','测试数据残差图')
set(gcf,'unit','centimeters','position',[0.5,5,30,5])
plot(err_pre,'*-');
figure('Name','原始-预测图')
plot(test_pre,'*r-');hold on;plot(output_test,'bo-');
legend('预测','原始')
set(gcf,'unit','centimeters','position',[0.5,13,30,5])

3 仿真结果

【SVR预测】基于差分进化算法优化SVR实现数据预测附matlab代码_数据

4 参考文献

[1]方仁孝. 基于群智能算法优化SVR的短时交通流预测[D]. 大连理工大学, 2015.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

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

【SVR预测】基于差分进化算法优化SVR实现数据预测附matlab代码_测试数据_02


网友评论