# Modello autoregressivo a media mobile

Il modello autoregressivo a media mobile, detto anche ARMA, è un tipo di modello matematico lineare che fornisce istante per istante un valore di uscita basandosi sui precedenti valori in entrata e in uscita. A volte denominato modello di Box-Jenkins dal nome dei suoi inventori George Box e Gwilym Jenkins, viene utilizzato in statistica per lo studio delle serie storiche dei dati e in ingegneria dei sistemi nella modellizzazione soprattutto di sistemi meccanici, idraulici o elettronici.

## Caratteristiche

Si considera il sistema da descrivere come un'entità che, istante per istante, riceve un valore in entrata (input) e ne genera uno in uscita (output), calcolati in base a dei parametri interni che variano a loro volta in base a leggi lineari. Ogni parametro interno, dunque, verrà ad ogni istante posto uguale a una combinazione lineare di tutti parametri interni dell'istante precedente e del valore in entrata, e il valore in uscita sarà a sua volta una combinazione lineare dei parametri interni e in rari casi anche di quello in entrata; in tal caso si parla di modello improprio, la cui caratteristica principale è di rispondere istantaneamente alle variazioni dell'input e dare luogo a anomalie nel calcolo qualora fosse collegato ad anello con altri sistemi impropri.
Algebricamente, i valori in ingresso e in uscita in un dato istante sono due scalari e i parametri interni formano un vettore. Lo scalare in uscita è il prodotto tra il vettore dei parametri e un vettore fisso $c$ facente parte del modello e di dimensione uguale al numero dei parametri $n$, sommato all'ingresso moltiplicata per un coefficiente $d$ che nei sistemi impropri è diverso da 0. Il vettore dei parametri è in ogni istante calcolato come la somma dello scalare in ingresso per un vettore $b$ e il precedente vettore dei parametri moltiplicato per una matrice $A$.

### Linearità

Un modello ARMA ha diverse caratteristiche che lo rendono semplice da analizzare:
* linearità: moltiplicando tutti i valori in ingresso per un fattore k anche l'uscita risulterà moltiplicata per tale valore. Sommando due sequenze di valori in input si otterrà in output la somma delle sequenze di output che si sarebbero ottenute fornendo i due input indipendentemente.
* tempo invarianza: una certa sequenza in input darà una certa sequenza in output indipendentemente dalla quantità di istanti trascorsi dall'istante zero. Lo stesso concetto di "istante zero" è puramente convenzionale poiché il sistema tende a "dimenticare" il passato, ossia ad esserne influenzato in maniera esponenzialmente decrescente nel corso del tempo (caratteristica detta "evanescenza").
Data una serie storica di valori di $X_{t}\,$ , il modello di ARMA è uno strumento per analizzare e predire dei valori futuri e consiste di due parti, ossia una parte autoregressiva (AR) e di una parte di media mobile (MA). Il modello è solitamente indicato con ARMA (p,q) dove p è l'ordine della parte autoregressiva e q è l'ordine della parte media mobile.

### Versione discreta e continua

Sebbene il modello appena descritto sia discreto, ossia agisce "a scatti" su istanti di tempo numerabili in N, è possibile con molta facilità ricavarne la versione continua. In tal caso la matrice $A$ non conterrà le combinazioni lineari che forniscono un parametro in funzione degli altri, ma quelle che forniscono la derivata di un parametro in funzione dei valori degli altri. È possibile approssimare un modello continuo con un modello discreto assumendo di scegliere un intervallo di tempo tra un istante e l'altro sufficientemente piccolo da trascurare l'approssimazione. In genere, in base al teorema di Shannon, è opportuno scegliere una frequenza di campionamento che sia almeno doppia rispetto alle frequenze in gioco.

## Descrizione mediante funzione di trasferimento

Chiamando u(t) la funzione che descrive i valori in ingresso in funzione del tempo e y(t) la funzione che rappresenta l'uscita, sapendo che il modello ARMA ha un'uscita che è una combinazione lineare dei precedenti valori dell'ingresso e dell'uscita si calcola y(t) come:
    $y(t)+{\alpha _{1}}y(t-1)+...+{\alpha _{n}}y(t-n)={\beta _{0}}u(t)+{\beta _{1}}u(t-1)+...+{\beta _{n}}u(t-n)\,$
mentre nel caso di sistema continuo si ha
    $y^{(n)}(t)+{\alpha _{1}}y^{(n-1)}(t)+...+{\alpha _{n}}y^{(0)}(t)={\beta _{0}}u^{(n)}(t)+{\beta _{1}}u^{(n-1)}(t)+...+{\beta _{n}}u^{(0)}(t)\,$
che derivata diventa:
    $y(t)=-{\alpha _{1}}y(t-1)-...-{\alpha _{n}}y(t-n)+{\beta _{0}}u(t)+{\beta _{1}}u(t-1)+...+{\beta _{n}}u(t-n)\,$
Risulta essere quindi la somma di un termine autoregressivo AR costituito dalla parte con i coefficienti ${\alpha }$ e una parte di moving average MA dei coefficienti ${\beta }$.
È possibile introdurre un operatore ritardo $z$ (in genere si scrive $s$ per i sistemi continui) che ha lo scopo di ritardare o anticipare un valore, ossia
    $f(t)=zf(t-1)$
e dunque riscrivere il modello come
    $y(t)+z^{-1}{\alpha _{1}}y(t)+...+z^{-n}{\alpha _{n}}y(t)={\beta _{0}}u(t)+z^{-1}{\beta _{1}}u(t)+...+z^{-n}{\beta _{n}}u(t)\,$
e raccogliere y(t) a primo membro ottenendo una frazione
    $y(t)={\frac {{\beta _{0}}u(t)+z^{-1}{\beta _{1}}u(t)+...+z^{-n}{\beta _{n}}u(t)}{1+z^{-1}{\alpha _{1}}+...+z^{-n}{\alpha _{n}}}}\,$
Questa rappresentazione del modello è detta funzione di trasferimento.

## Proprietà

Il vantaggio dei modelli ARMA è che possono essere analizzati con molta facilità rispetto agli altri modelli, pur mantenendo un livello di approssimazione relativamente basso. Un sistema continuo, in particolare, sarebbe un sistema di equazioni differenziali difficili da trattare senza considerare la matrice A.
Analizzando gli autovalori della matrice A è possibile determinare se il sistema è stabile o meno, ossia se il valore in uscita può tendere a valori infiniti per alcune entrate non infinite. In particolare:
* Se tutti gli autovalori hanno parte reale negativa (o modulo minore di 1 nel caso di sistemi a tempo discreto) il sistema è asintoticamente stabile
* Se qualche autovalore ha parte reale positiva (o modulo superiore a 1 nel caso a tempo discreto) il sistema può avere un'uscita che tende a valori infiniti (positivi o negativi)
* Se esistono autovalori con parte reale nulla (o con modulo unitario nel caso del tempo discreto) il sistema può mantenere un'uscita non nulla all'infinito, anche se l'ingresso rimane nullo dopo alcuni valori iniziali.
* Se vale la stazionarietà allora sistema sarà sempre stazionario
* invertibile se tutte le caratteristiche hanno media maggiore di 1 da verificare perché scrivere il processo in base alla sua storia passata quindi posso prevedere
Inoltre più è bassa la parte reale degli autovalori e più velocemente il sistema tende a stabilizzarsi, e viceversa più la parte reale è alta e più velocemente i valori in uscita dal sistema tenderanno a alzarsi o abbassarsi.
Si possono anche ottenere informazioni dalla parte immaginaria, in particolare se alcuni autovalori hanno una parte immaginaria non nulla l'uscita tenderà a oscillare con una frequenza proporzionale al valore immaginario e un'ampiezza che diminuirà o aumenterà con velocità esponenziale e coefficiente proporzionale alla parte reale degli autovalori.

## Modello di sistemi composti

È possibile usare l'uscita di un modello ARMA come ingresso di un altro modello, eventualmente sommando le uscite di più modelli, moltiplicandole per costanti arbitrarie e creando degli anelli (ossia mettendo l'uscita di un modello in ingresso a se stesso), ottenendo un sistema ARMA equivalente alla composizione di più modelli semplici. Si può modellizzare facilmente un modello composto seguendo le seguenti regole:
* Due o più modelli in parallelo hanno una funzione di trasferimento complessiva che è la somma delle rispettive funzioni.
* Due modelli in serie hanno una FdT complessiva che è il prodotto delle rispettive FdT
* Un modello moltiplicato per una costante ha una FdT moltiplicata per quella costante
* Un modello in retroazione (ossia il cui ingresso è collegato all'uscita) ha FdT uguale a
    $r(t)={\frac {f(t)}{1-g(t)f(t)}}$
dove f(t) è la FdT e g(t) è una funzione posta lungo l'anello di retroazione (se non è presente equivale a 1), mentre r(t) è la FdT del sistema composto

## ARMA come MA(∞)

È dimostrabile che un qualunque processo ARMA stazionario può essere espresso in modo equivalente come un modello moving average di tipo MA(∞). Analiticamente, è sufficiente calcolare ricorsivamente i valori di $y(t-k)$ o $y(t)^{(n-1)}$ con k>0 sostituendoli con i valori dell'entrata. Intuitivamente, basta pensare che l'uscita dipende dai valori precedenti dell'ingresso e dell'uscita stessa, ma questi ultimi dipendono ancora una volta dai precedenti valori in ingresso e in uscita e procedendo a ritroso l'influenza delle uscite precedenti diventa asintoticamente meno influente sull'uscita attuale.