%% 三次指数平滑法(数据呈现二次曲线形态上升)
clc, clear
yt = [20.04 20.06 25.72 34.61 51.77 55.92 80.65 131.11 148.58 162.67 232.26]';
n = length(yt);
alpha = 0.3;
st1_0 = mean(yt(1:3));
st2_0 = st1_0; st3_0 = st2_0;
st1(1) = alpha*yt(1) + (1-alpha)*st1_0;
st2(1) = alpha*st1(1) + (1-alpha)*st2_0;
st3(1) = alpha*st2(1) + (1-alpha)*st3_0;
for i = 2:n
st1(i) = alpha*yt(i) + (1-alpha)*st1(i-1);
st2(i) = alpha*st1(i) + (1-alpha)*st2(i-1);
st3(i) = alpha*st2(i) + (1-alpha)*st3(i-1);
end
st1 = [st1_0,st1];
st2 = [st2_0,st2];
st3 = [st3_0,st3];
at = 3*st1 - 3*st2 + st3;
bt = 0.5 * alpha / (1-alpha)^2*((6-5*alpha)*st1-2*(5-4*alpha)*st2+(4-3*alpha)*st3);
ct = 0.5 * alpha^2 / (1-alpha)^2 * (st1-2*st2+st3);
yhat = at + bt + ct;
plot(1:n, yt, '*', 1:n, yhat(1:n), 'O')
legend('实际值', '预测值', 2)
coeff = [ct(n+1), bt(n+1), at(n+1)];
y_predict = polyval(coeff, 2) % 直接用二次曲线的插值结果
没有合适的资源?快使用搜索试试~ 我知道了~
数学建模TimeSeries时间序列案例matlab程序
共13个文件
m:13个
需积分: 5 0 下载量 187 浏览量
2024-10-06
21:26:15
上传
评论
收藏 5KB RAR 举报
温馨提示
matlab,数学建模TimeSeries时间序列案例matlab程序
资源推荐
资源详情
资源评论
收起资源包目录
TimeSeries时间序列函数.rar (13个子文件)
TimeSeries时间序列函数
指数平滑法
single_exponential _smoothing.m 377B
third_exponential_smoothing.m 915B
second_exponential_smoothing.m 487B
移动平均法
trend_moving_average.m 562B
weighting_moving_average.m 462B
simple_moving_average.m 401B
趋势外推预测法
logistic_curve.m 378B
compertz_curve.m 411B
modified_exponential_curve.m 557B
predict2.m 69B
predict1.m 71B
predict3.m 71B
自适应滤波法
main.m 385B
共 13 条
- 1
资源评论
算法工程师y
- 粉丝: 350
- 资源: 686
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功