Red de conocimiento informático - Aprendizaje de código fuente - Modelado matemático de códigos de programación MATLAB para varios algoritmos, cuanto más detallados, mejor

Modelado matemático de códigos de programación MATLAB para varios algoritmos, cuanto más detallados, mejor

Predicción de grises

x=[0.11 0.49 0.50 0.23 0.27 0.02 -0.02 0.26 -0.25 0.08 ...

0.52 0.13 -0.01 0.52 0.57 0.01 0.32 - 0,15 0,45 0,07 0,66...

0,58 0,51 0,53 0,49 0,38 0,33 0,29 0,32 0,03 0,39];

formato largo; Establecer precisión de cálculo

if longitud(x (:, 1))==1 Juzgue la matriz de entrada. Si no es una matriz de columna unidimensional, realice una transformación transpuesta

x=x'

end

p>

n=length(x); Tome el tamaño de muestra de los datos de entrada

z=0

for i=1:n Calcule el valor acumulado y asígnelo. el valor de la matriz sea

z=z x(i,:

be(i,:)=z

end

;

para i= 2: n desplazamiento paralelo de la secuencia original

y(i-1,:)=x(i,:

end

);

para i= 1: n-1 Calcule los datos de la primera columna de la matriz de datos B

c(i,:)=-0.5*(be(i,:) be(i 1,: ));

end

for j=1:n-1 Calcular los datos de la segunda columna de la matriz de datos B

e(j,:)=1 ;

end

for i=1:n-1 Construir la matriz de datos B

B(i, 1)=c(i,:); /p>

B(i, 2)=e(i,:);

end

alpha=inv(B'*B)*B'*y; Matriz de parámetros de cálculo

para i=1: n 1 calcula la secuencia acumulativa de estimaciones de datos. Si n 1 se cambia a n m, se pueden predecir los siguientes valores de m-1

ago(i,:)=(x (1,:)-alfa(2,:)/alfa(1,:))*exp(-alfa(1,:)*(i-1)) alfa(2 ,:)/alpha(1,:)

fin

var(1,:)=ago(1,:)

para i=1 :n Si n se cambia a n m-1, se pueden predecir los siguientes valores de m-1

var(i 1,:)=ago(i 1,:)-ago(i,:); restaure la secuencia acumulativa de valores estimados y calcule el siguiente valor previsto

end

for i=1:n

error(i,:)=var (i,:)-x(i, :); Calcular residuos

end

c=std(error)/std(x) Llama a la función de desviación estándar de la caja de herramientas estadísticas para calcular la relación de diferencias posteriores c