Per un approfondimento molto più rigoroso sul contenuto di questi appunti si può consultare il pdf:

ottimizzazione.pdf

Ottimizzazione

Nei problemi di ottimizzazione l'obiettivo di solito è minimizzare una funzione $f:\R^n\rarr\R$, con $n≥1$:

$$ \argmin_{x\in\R^n} f(x) \quad\text{dove}\quad n\geq1 $$

$\argmin$ vuol dire semplicemente che mi interezza la $x$ per cui la funzione ha il punto minimo, quindi non mi interessa l'ordinata in sé ma l'ascissa.

A differenza del corso di ottimizzazione noi trattiamo il caso di funzioni qualunque, quindi non per forza combinazioni lineari.

Algoritmi di ottimizzazione

Gli algoritmi di ottimizzazione hanno natura iterativa: si parte da un guess iniziale della variabile $x$ e dopo alcuni calcoli scelgono una nuova $x’$ che, se soddisfa determinate condizioni, termina l’esecuzione.

Gli algoritmi di ottimizzazione si dividono in due grandi classi:

Studieremo solo i primi, per cui ora facciamo un breve cenno agli algoritmi evolutivi.

Sono algoritmi che prevedono la possibilità di modificare in modo casuale la variabile $x$, vengono quindi usati quando non è possibile ottenere una stima precisa del gradiente.

Caratteristiche di un buon algoritmo

Un buon algoritmo si giudica dalle seguenti proprietà: