當前位置:編程學習大全網 - 電腦編程 - 用matlab編程灰色預測模型(1,1)

用matlab編程灰色預測模型(1,1)

定義函數:

function pre = GM11(x)

%x,建模數據序列x = [x(1),x(2),...,x(n)]

% pre,由GM11模型得到的預測值,即由x估計出的x(n+1)

n = length(x);

x1 = cumsum(x);

z1 = (x1(1:n-1)+x1(2:n))/2;

Y = x(2:length(x))';

B = [-z1',ones(n-1,1)];

A = (B'*B)\B'*Y;%GM(1,1)模型的a,b參數組成的向量.

beta = A(2)/(1+.5*A(1));

alpha = A(1)/(1+.5*A(1));

%初始序列x0(k)模擬後的隨時間t變化的序列

f = @(t)(beta-(alpha)*x(1))*exp(-(A(1)*(t-2)));

pre = f(n+1);

調用

x=[1879 2208 2948 2852 2774 2926 4680 3691];

GM11(x)

  • 上一篇:極客星辰編程怎麽樣
  • 下一篇:2個急停進plc為什麽要串連
  • copyright 2024編程學習大全網