See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Programmazione non-lineare - Wikipedia

Programmazione non-lineare

Da Wikipedia, l'enciclopedia libera.

In matematica, programmazione non lineare è il processo di soluzione di un sistema di equazioni e disequazioni su un insieme di variabili reali incognite, con una funzione obiettivo da massimizzare o minimizzare.

Indice

[modifica] Formulazione matematica del problema

Il problema può essere impostato semplicemente come segue:

\max_{x \in X}f(x) per massimizzare una variabile, ad esempio la produzione ottenuta

oppure

\min_{x \in X}f(x) per minimizzare una funzione di costo,

dove

f: R^n \to R
X \subseteq R^n.

[modifica] Procedure di soluzione del problema

Se la funzione obiettivo f è lineare, e lo spazio del vincolo è un politopo, allora siamo di fronte a un problema di programmazione lineare, che può essere risolto con metodi di programmazione lineare.

Anche quando la funzione obiettivo è convessa su tutte le funzioni di costo (guardando dal basso), si possono applicare soluzioni di programmazione lineare.

Per la soluzione di problemi non convessi ci sono molti metodi. Un approccio possibile è usare formulazioni particolari dei problemi di programmazione lineare. Un altro metodo coinvolge l'uso di tecniche branch and bound, con cui la programmazione è divisa in sottoclassi da risolvere con approssimazioni lineari che vanno a formare un limite inferiore per il costo totale all'interno della suddivisione. Con suddivisioni successive, a un certo punto si otterrà una soluzione effettiva il cui costo è minore o uguale del valore più basso ottenuto per ogni soluzione approssimativa. Questa soluzione è ottimale, anche se non necessariamente unica. L'algoritmo può anche essere fermato prima, se si ha certezza che la miglior soluzione ottenibile non superi che di una data percentuale una soluzione già trovata. Questo vale soprattutto per problemi grandi, difficili, o dai costi non certi.

Le condizioni di Kuhn e Tucker forniscono le condizioni necessarie perché una soluzione sia ottimale.

[modifica] Esempi

[modifica] Esempio bidimensionale

L'intersezione tra lo spazio dei vincoli e la funzione obbiettivo rappresenta la soluzione
L'intersezione tra lo spazio dei vincoli e la funzione obbiettivo rappresenta la soluzione

Un problema elementare può essere definito dai vincoli

x1 ≥ 0 2+2=4x
x2 ≥ 0
x12 + x22 ≥ 1
x12 + x22 ≤ 4

e da una funzione obiettivo da massimizzare

f(x) = x1 + x2

con x = (x1, x2)

[modifica] Esempio tridimensionale

Le intersezioni tra i piani e le superfici centrali rappresentante i vincoli sono le soluzioni
Le intersezioni tra i piani e le superfici centrali rappresentante i vincoli sono le soluzioni

Un altro problema elementare può essere definito dai vincoli

x12x22 + x32 ≤ 2
x12 + x22 + x32 ≤ 10

e dalla funzione obiettivo da massimizzare

f(x) = x1x2 + x2x3

con x = (x1, x2, x3)

[modifica] Voci correlate

[modifica] Bibliografia

  • Nocedal, Jorge and Wright, Stephen J. (1999). Numerical Optimization. Springer. ISBN 0387987932.

[modifica] Collegamenti esterni (in Inglese)

Software
  • AIMMS Optimization Modeling AIMMS — contiene soluzioni di programmazione non lineare in ambito industriale (versione di prova disponibile);
  • AMPL solver software - gratuito per gli studenti (interfaccia grafica disponibile)
  • GAMS General Algebraic Modeling System – versione gratuita per studenti disponibile


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -