18.08.2013 Views

UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica

UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica

UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

del buffer possono essere impostate semplicemente ricompilando la libreria e,<br />

soprattutto, raramente, se non mai, capita di dover effettuare delle previsioni<br />

troppo in avanti nel tempo.<br />

Le due strategie di previsione illustrate possono essere efficacemente<br />

combinate per verificare la bontà delle previsioni. Un esempio può essere molto<br />

più esplicativo di una semplice descrizione generale:<br />

1) il valore di step in avanti per le previsioni bufferizzate viene posto pari a<br />

n;<br />

2) a ciascun passo, chiamando la funzione get_pred_buf(&pr, 1) si ottiene<br />

la previsione per l'istante corrente effetuata n passi addietro;<br />

3) si confrontano tale previsione con la posizione corrente: se sono<br />

"sufficientemente" concordi il filtro ha agganciato lo stato dell'oggetto e<br />

può effettuare delle previsioni corrette a lungo termine, altrimenti si<br />

trova ancora in fase di assestamento, oppure è necessario cambiare il ρ .<br />

Come si evince dalla precedente trattazione, la libreria è studiata in modo da<br />

essere il più generale possibile, l'unica vera limitazione è quella di utilizzare una<br />

unica tipologia di modelli per il sistema da prevedere, che si traduce in una forma<br />

particolare per la matrice A, e per il vettore C, come descritto al paragrafo 2.5.3.<br />

Modificare la libreria in modo da adattarla ad esigenze più specifiche è<br />

comunque un'operazione estremamente semplice. Le modifiche da apportare per<br />

poter trattare sistemi con modelli diversi da quello attuale sono le seguenti:<br />

1) la funzione init_kalman() va cambiata in modo che costruisca la matrice<br />

A adatta al modello che si intende utilizzare;<br />

2) nella funzione add_survey() va utilizzata l'opportuno vettore C, che in<br />

questa funzione non compare per motivi di ottimizzazione, in quanto,<br />

nel caso di DEA è importante soltanto il primo valore presente nel<br />

vettore di stato;<br />

148

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!