Ottimizzazione non lineare

Indice dei contenuti

    L’ottimizzazione non lineare studia problemi in cui l’obiettivo o i vincoli non sono lineari:

    \min f(x) \quad \text{soggetto a}\quad g_i(x)\le0,\ h_j(x)=0

    La non linearità permette di modellare prodotti tra variabili, costi quadratici, rischi, distanze, energie, rendimenti decrescenti, saturazioni e penalità curve.

    Per f:\mathbb R^n\to\mathbb R il gradiente è:

    \nabla f(x)= \begin{pmatrix} \partial f/\partial x_1\\ \vdots\\ \partial f/\partial x_n \end{pmatrix}

    La Hessiana è:

    H_f(x)= \left[ \frac{\partial^2 f}{\partial x_i\partial x_j} \right]_{ij}

    Se x^\ast è minimo locale interno e f è differenziabile:

    \nabla f(x^\ast)=0

    Questa condizione è necessaria, ma non sufficiente. Un punto con gradiente nullo può essere un minimo, un massimo o un punto di sella. La Hessiana aiuta a classificare il punto: se H_f(x^\ast) è definita positiva, il punto è un minimo locale stretto; se è indefinita, il punto è di sella.

    Nei problemi vincolati si costruisce spesso la lagrangiana:

    \mathcal L(x,\lambda,\mu) = f(x)+\sum_i \lambda_i g_i(x)+\sum_j \mu_j h_j(x)

    Con vincoli di disuguaglianza e uguaglianza si usano le condizioni KKT, che combinano stazionarietà, ammissibilità, moltiplicatori non negativi e complementarità. Queste condizioni sono necessarie sotto opportune ipotesi di regolarità; diventano anche sufficienti in molti problemi convessi.

    La distinzione tra problema convesso e non convesso è centrale. Se f è convessa e l’insieme ammissibile è convesso, ogni minimo locale è globale. Nei problemi non convessi possono esistere molti minimi locali, bacini di attrazione e punti di sella; il risultato di un algoritmo può dipendere fortemente dal punto iniziale.

    Gli algoritmi principali includono discesa del gradiente, Newton e quasi-Newton, metodi trust-region, penalità, barriera e programmazione quadratica sequenziale. La scelta dipende da dimensione del problema, disponibilità di derivate, struttura sparsa, vincoli e tolleranze numeriche.

    In ingegneria l’ottimizzazione non lineare compare in taratura di modelli, controllo ottimo, progetto strutturale, traiettorie, reti energetiche, portafogli, machine learning e pianificazione industriale. Un errore frequente è fidarsi del valore numerico restituito dal solutore senza controllare scala delle variabili, vincoli attivi, sensibilità, condizionamento e significato fisico della soluzione.

    Vedi anche: Ottimizzazione, Condizioni KKT.

    Ultimo aggiornamento: