Movatterモバイル変換


[0]ホーム

URL:


Vai al contenuto
WikipediaL'enciclopedia libera
Ricerca

Ottimizzazione (matematica)

Da Wikipedia, l'enciclopedia libera.
Abbozzo
Questa vocesull'argomento matematica applicata è solo unabbozzo.
Contribuisci a migliorarla secondo leconvenzioni di Wikipedia.

L'ottimizzazione (oprogrammazione matematica,PM) è una branca dellamatematica applicata che studia teoria e metodi per la ricerca deipunti di massimo e minimo di unafunzione matematica all'interno di un dominio specificato.

Un esempio semplice di problema di ottimizzazione consiste nel massimizzare o minimizzare una funzione reale di una variabile reale su un dato intervallo. La generalizzazione della teoria e delle tecniche di ottimizzazione ad altre formulazioni costituisce una vasta area della matematica applicata. Più in generale, l'ottimizzazione comprende la ricerca dei "migliori valori disponibili" di una certa funzione obiettivo in un determinato dominio (o input), e considera una varietà di diversi tipi di funzioni obiettivo e diversi tipi di domini.

Descrizione

[modifica |modifica wikitesto]

Un problema di ottimizzazione, talvolta dettodi programmazione matematica, può essere formulato nel seguente modo:

data unafunzionef:AR{\displaystyle f\colon A\to \mathbb {R} } da uninsiemeARn{\displaystyle A\subseteq \mathbb {R} ^{n}},
determinare un elementox0A{\displaystyle \mathbf {x} _{0}\in A} tale chef(x0)f(x){\displaystyle f(\mathbf {x} _{0})\leq f(\mathbf {x} )} per ognixA{\displaystyle \mathbf {x} \in A} ("minimizzazione") o tale chef(x0)f(x){\displaystyle f(\mathbf {x} _{0})\geq f(\mathbf {x} )} per ognixA{\displaystyle \mathbf {x} \in A} ("massimizzazione").

Poiché punti di massimo per una funzionef{\displaystyle f} corrispondono a punti di minimo per la funzionef~=f{\displaystyle {\tilde {f}}=-f}, non è restrittivo formulare problemi di ottimizzazione in termini di minimizzazioni.

La funzionef{\displaystyle f} viene generalmente chiamatafunzione obiettivo ofunzione di costo. L'insiemeA{\displaystyle A}, detto generalmente spazio di ricerca, può essere un insieme discreto o continuo. In molti casi di rilevante importanza applicativa, può essere identificato con un sottoinsieme dellospazio euclideoRn{\displaystyle \mathbb {R} ^{n}} definito in termini di vincoli, ovvero uguaglianze o disuguaglianze che gli elementi diA{\displaystyle A} devono soddisfare. Molti problemi nell'ambito delle scienze naturali, sia teoriche sia applicate, possono essere descritti da una formulazione di questo tipo.

I problemi di ottimizzazione richiedono necessariamente la creazione dialgoritmi di risoluzione efficienti in quanto, generalmente, lo spazio di ricerca ha unacardinalità tale da precludere la possibilità di ricerche esaustive. A titolo di esempio seA{\displaystyle A} è descritto dan=20{\displaystyle n=20} variabili, ciascuna delle quali può assumere4{\displaystyle 4} valori, lo spazio di ricerca contiene4201012{\displaystyle 4^{20}\approx 10^{12}} elementi. Una ricerca esaustiva risulta pertanto inattuabile ed è necessario ricorrere ad algoritmi che permettano di sfruttare in modo efficace eventuali proprietà della funzionef{\displaystyle f} e dello spazio di ricercaA{\displaystyle A}.

I problemi di ottimizzazione possono essere classificati in base alle principali caratteristiche dello spazio di ricercaA{\displaystyle A} e della funzionef{\displaystyle f}. In particolare, si distingue generalmente tra programmazionecontinua ediscreta in funzione del fatto che lo spazio di ricercaA{\displaystyle A} sia continuo o discreto. Nell'ambito della programmazione continua, con spazio di ricercaARn{\displaystyle A\subseteq \mathbb {R} ^{n}}, distinguiamo tra programmazionelineare, se la funzionefunzione obiettivo e vincoli sono lineari, e programmazionenon lineare altrimenti. Un'ulteriore classificazione può essere effettuata distinguendo problemi di programmazionestatica e problemi di programmazionedinamica. Nell'ottimizzazione dinamica, alla formulazione precedentemente esposta viene aggiunta una variabile temporale dalla quale vengono a dipendere le quantità in gioco, ovvero lo spazio di ricerca e, eventualmente, la funzione obiettivo.

Minimi e massimi

[modifica |modifica wikitesto]
Lo stesso argomento in dettaglio:Massimo e minimo di una funzione.

Obiettivo della programmazione matematica è quindi quello di individuare il puntox{\displaystyle x} nel dominio della funzione obiettivo (cioè i valori da assegnare allen{\displaystyle n} variabili decisionali) che, rispettando i vincoli, minimizza o massimizza il valore della funzione obiettivo.

Minimi e massimi locali

[modifica |modifica wikitesto]
Grafico che mostra un massimo e due minimi relativi di una funzione, di cui uno è anche minimo assoluto.

SiaARn{\displaystyle A\subseteq \mathbb {R} ^{n}} e siaf:AR{\displaystyle f\colon A\to \mathbb {R} } una funzione. Unpunto di minimo locale (orelativo) è un elementoxA{\displaystyle \mathbf {x} ^{\ast }\in A} tale che esiste unδ>0{\displaystyle \delta >0} per cui si haf(x)f(x){\displaystyle f\left(\mathbf {x} ^{\ast }\right)\leq f\left(\mathbf {x} \right)} per ognixA{\displaystyle \mathbf {x} \in A} tale chexxδ.{\displaystyle \left\Vert \mathbf {x} -\mathbf {x} ^{\ast }\right\Vert \leq \delta .} Ossia, in "vicino" ax{\displaystyle \mathbf {x} ^{\ast }} tutti i valori della funzione sono maggiori o uguali al valore dif(x){\displaystyle f\left(\mathbf {x} ^{\ast }\right)}. Il valoref(x){\displaystyle f(\mathbf {x} ^{\ast })} è dettovalore del minimo locale.

Unpunto di massimo locale (orelativo) è definito in modo simile.

Minimi e massimi assoluti

[modifica |modifica wikitesto]

SiaARn{\displaystyle A\subseteq \mathbb {R} ^{n}} e siaf:AR{\displaystyle f\colon A\to \mathbb {R} } una funzione. Unpunto di minimo globale (oassoluto) è un elementoxA{\displaystyle \mathbf {x} ^{\ast }\in A} per cui si haf(x)f(x){\displaystyle f\left(\mathbf {x} ^{\ast }\right)\leq f\left(\mathbf {x} \right)} per ognixA.{\displaystyle \mathbf {x} \in A.} Ossia è un punto del dominio per il quale i valori che la funzione assume negli altri punti sono tutti maggiori o uguali al valore dif(x){\displaystyle f\left(\mathbf {x} ^{\ast }\right)} che è dettovalore del minimo assoluto.

Unpunto di massimo globale (oassoluto) è definito in modo simile, cioè se tutti i valori assunti dalla funzione negli altri punti sono minori o uguali del valore nel massimo assoluto.

La programmazione matematica è suddivisa in più famiglie di problemi a seconda delle caratteristiche della funzione obiettivo, dei vincoli e quindi delle tecniche di approccio. In generale si distinguono tre categorie:

Metodi numerici

[modifica |modifica wikitesto]

Risolvere un problema di ottimizzazione matematica si riferisce, in questo contesto, a:

  • la trasformazione del problema originale in un problema equivalente;
  • un metodo teorico la cui descrizione permette lo sviluppo di unalgoritmo numericamente applicabile.

La scelta di una tecnica appropriata dipende da:

Semplificazioni

[modifica |modifica wikitesto]

Il problema di origine è sostituito con un problema equivalente. Per esempio, con un cambiamento di variabili per suddividere il problema in sottoproblemi o la sostituzione di incognite per ridurne il numero.

La tecnica deimoltiplicatori di Lagrange permette di superare alcuni vincoli; questo metodo equivale ad introdurre delle penalità crescenti man mano che il punto si avvicina ai vincoli. L'algoritmo dei moltiplicatori diHugh Everett permette di aggiornare i valori dei moltiplicatori in modo coerente ad ogni iterazione per garantire la convergenza. Quest'ultimo ha anche generalizzato l'interpretazione di questi moltiplicatori per applicarli a funzioni che non sono né continue né derivabili[1].

Ricerca degli zeri del gradiente

[modifica |modifica wikitesto]

Numerosi metodi ealgoritmi per il calcolo di uno zero di una funzione possono essere usati per trovare uno zero della derivata dif{\displaystyle f} (alcuni sono specifici difunzioni di una variabile) o del suogradientef{\displaystyle \mathbf {\nabla } f}. Si applicano validamente in situazioni in cui i vincoli suA{\displaystyle A} rimangono inattivi.

Tutti questi metodi sono sviluppati nell'ambito di unprocesso iterativo.

Questi approcci possono soffrire di qualche limite. In particolare:

  • La funzione deve essere sufficientemente regolare (almeno localmente) per essere derivabile (o doppiamente derivabile) per accedere allamatrice hessiana o ad una sua approssimazione.
  • Non è sempre possibile esprimere esplicitamente il gradiente della funzione obiettivo.
  • Le condizioni iniziali devono essere fissate prima dell'avvio del processo iterativo. La scelta iniziale può influenzare considerevolmente il risultato (divergenza dal processo iterativo). I metodi che convergono rapidamente sono generalmente più sensibili al riguardo.
  • In alcuni casi, la velocità di convergenza può essere disastrosa: iterazioni successive si susseguono faticosamente (si parla allora di "stagnazione") lungo una stretta valle (funzione di Rosenbrock).
  • Se la soluzione ottenuta è davvero un estremo (dopo aver verificato che non è unpunto di sella), esso può anche essere locale.

Caso particolare: quandof{\displaystyle f} è polinomiale di grado 2 nei suoi argomenti (forma quadratica elineare) e senza vincolo, annullare il gradiente è come risolvere un sistema lineare.

Classificazione JEL

[modifica |modifica wikitesto]

Laclassificazione delJournal of Economic Literature pone la programmazione matematica, le tecniche di ottimizzazione e i relativi argomenti nelle sottocategorie JEL:C61-C63.

Note

[modifica |modifica wikitesto]
  1. (EN) Hugh Everett,Generalized Lagrange multiplier method for solving problems of optimum allocation of resources, inOperations Research, vol. 11, n. 3, 1963, pp. 399-417.

Bibliografia

[modifica |modifica wikitesto]

Voci correlate

[modifica |modifica wikitesto]

Altri progetti

[modifica |modifica wikitesto]

Altri progetti

Collegamenti esterni

[modifica |modifica wikitesto]
Controllo di autoritàThesaurus BNCF21954 ·LCCN(EN) sh85107312 ·GND(DE) 4043664-0 ·BNE(ES) XX533091(data) ·BNF(FR) cb11932649z(data) ·J9U(EN, HE) 987007538691105171
 Portale Matematica: accedi alle voci di Wikipedia che trattano di matematica
Estratto da "https://it.wikipedia.org/w/index.php?title=Ottimizzazione_(matematica)&oldid=138194830"
Categoria:
Categorie nascoste:

[8]ページ先頭

©2009-2026 Movatter.jp