1 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Massimi e minimi vincolati con vincoli di uguaglianza Indice 1 Definizione del problema 1 2 Caso con un solo vincolo 2.1 Il metodo delle curve di livello . . . . . . . 2.2 Il metodo dei moltiplicatori di Lagrange . 2.3 Interpretazione geometrica . . . . . . . . . 2.4 Significato economico del moltiplicatore di . . . . . . . . . . . . . . . . . . Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 3 6 9 3 Caso generale (condizione necessaria) 10 4 Condizioni sufficienti 4.1 La condizione sul sottospazio tangente ai vincoli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 La condizione sulla matrice Hessiana orlata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 13 13 In questa dispensa consideriamo un problema di ottimizzazione con vincoli di uguaglianza. I principali risultati di questo settore matematico sono dovuti a Lagrange. 1 Definizione del problema Un problema di massimo o di minimo con vincoli di uguaglianza viene anche detto problema di programmazione classica. Riporto qui una formulazione generale di questo problema. Siano f, g1 , . . . , gm funzioni definite nell’aperto A ⊂ Rn , tutte di classe C 1 nell’insieme A, e sia m < n. Il problema max / min f (x1 , . . . , xn ) con vincoli gi (x1 , . . . , xn ) = bi , i = 1, 2, . . . , m consiste nel trovare i punti di massimo (o minimo, locali o globali) della funzione f sul sottoinsieme di A che è soluzione del sistema di condizioni espresse dai vincoli, cioè dalle m equazioni gi (x1 , . . . , xn ) = bi . Il problema si può anche esprimere in forma vettoriale: se indichiamo con g la funzione a valori vettoriali che ha per componenti le funzioni di vincolo (g è funzione di A in Rm ), con b il vettore dei temini noti bi (b ∈ Rm ) e con x il vettore (x1 , . . . , xn ), possiamo scrivere il problema nella forma compatta max / min f (x) con vincoli g(x) = b. La funzione f si chiama funzione obiettivo e la funzione g si può chiamare funzione di vincolo. L’insieme n o X = x ∈ A : gi (x1 , . . . , xn ) = bi , per i = 1, . . . m si chiama regione ammissibile e i suoi punti punti ammissibili. Definizioni • Un punto x ∈ X è punto di massimo (minimo) globale vincolato di f se f (x) ≥ f (x) f (x) ≤ f (x) per ogni x ∈ X. • Un punto x ∈ X èpunto di massimo (minimo) locale vincolato di f se esiste un intorno I(x, r) tale che f (x) ≥ f (x) f (x) ≤ f (x) per ogni x ∈ I(x, r) ∩ X. Osservazione Per cautelarmi su possibili imprecisioni, avverto che con il termine vincolo intenderò sia l’equazione di vincolo sia il sottoinsieme di Rn che è soluzione di un certo vincolo. Detto questo faccio osservare che ogni vincolo (l’insieme) si può vedere come curva (o superficie o ipersuperficie) di livello della corrispondente funzione di vincolo. Quindi la ricerca del punto di massimo vincolato di f è la ricerca del punto di massimo di f sull’intersezione delle curve di livello dei vincoli. 2 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Esempio Prima di continuare con le questioni generali presento un semplice esempio, che risulta molto istruttivo per il seguito. Consideriamo il problema in R2 max / min f (x, y) = xyex+y con vincolo x + y 2 = 0. Nell’equazione di vincolo si può facilmente esplicitare x in funzione di y. Si trova x = −y 2 e, sostituendo nella funzione 2 f si ha che la funzione obiettivo sul vincolo assume gli stessi valori della funzione h(y) = −y 3 e−y +y (funzione di una sola variabile).1 Chiaramente per trovare i punti di massimo/minimo vincolato della funzione obiettivo f basterà trovare i punti di massimo/minimo della funzione h, con y ∈ R. Con quello che gli studenti hanno imparato nel corso di matematica del primo anno si trova h′ (y) = −3y 2 e−y 2 +y − y 3 e−y 2 +y (−2y + 1) = y 2 e−y 2 +y (2y 2 − y − 3). I punti stazionari di h sono quindi −1, 0 e 32 . Dallo studio del segno della derivata si trova facilmente che, per la funzione h, −1 è punto di massimo locale, 32 è punto di minimo locale e 0 non è né di massimo né di minimo. Ma allora possiamo concludere che, per la funzione f , (−1, −1) è punto di massimo locale vincolato, (− 49 , 32 ) è punto di minimo locale vincolato e (0, 0) non è né di massimo né di minimo. Da uno studio completo della funzione h, in particolare dal calcolo dei limiti per y → ±∞, si trova che abbiamo trovato in realtà i punti di massimo/minimo globali. Questo procedimento può essere utilizzato ogniqualvolta il vincolo (o i vincoli) consentono di esprimere una o più variabili in funzione delle altre.2 Osservazione Chiaramente il fatto di poter ricavare una variabile in funzione delle altre dal vincolo è un evento particolarmente “fortunato”. Non sempre è possibile. Serve allora un risultato che consenta di procedere anche nei casi meno fortunati. A questo proposito viene una celebre intuizione di Lagrange. Vediamo la cosa in due passi successivi: con un solo vincolo e con più vincoli. 2 Caso con un solo vincolo In questa sezione consideriamo un problema di programmazione classica con un solo vincolo (di equazione). Prima però di vedere il risultato di Lagrange, presento un metodo grafico a volte utilizzabile per la risoluzione del problema. 2.1 Il metodo delle curve di livello Supponiamo di avere un problema in due variabili e un solo vincolo. Il problema sia max / min f (x, y) con vincolo g(x, y) = b. Se siamo in grado di disegnare la curva del vincolo e le curve di livello della funzione obiettivo f , possiamo risolvere il problema graficamente. Illustro il metodo attraverso qualche semplice esempio. Esempio max / min f (x, y) = x + y Il vincolo definisce la parabola di equazione x = 1 − y 2 (con asse orizzontale). Consideriamo la generica curva di livello della funzione obiettivo f , cioè l’insieme delle soluzioni dell’equazione x + y = k. Si tratta, al variare di k, di rette di equazione y = k − x. Il livello (cioè il valore) di f aumenta all’aumentare di k e quindi il valore di f aumenta “quando la retta si sposta verso l’alto”. Il verso dei livelli crescenti è indicato dalla freccia in figura. Tutto questo ci consente di dire che il livello massimo è quello che corrisponde alla retta tangente alla parabola.3 Non c’è un livello minimo, dato che la retta può spostarsi verso il basso indefinitamente, continuando ad incontrare la parabola. Questo dice che la funzione non è limitata inferiormente sul vincolo. 1 Non y con vincolo x + y 2 = 1. 1 b max 1 x abbiamo fatto altro che una restrizione della funzione obiettivo lungo la curva che costituisce il vincolo. si sta parlando della possibilità effettiva di ricavare dai vincoli una o più variabili in funzione delle altre, ma si intuisce forse che in generale, se valgono le ipotesi del teorema della funzione implicita, questa stessa strada è teoricamente percorribile per cercare le condizioni di ottimalità. In effetti questo è quello che succede, anche se noi non vedremo la questione dato che non studieremo le dimostrazioni dei risultati generali. 3 Si pensi che, fino a che la retta di livello k interseca la parabola, vuol dire che ci sono punti sul vincolo in cui la funzione f ha livello k. La situazione di massimo si ha quando l’ultima retta (quella tangente) interseca la parabola. 2 Qui 3 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Per trovare numericamente il punto di massimo vincolato ci sono tanti modi: ad esempio trovare il punto sulla parabola in cui la pendenza della tangente è −1. Si può anche imporre che, mettendo a sistema le rette con la parabola, il sistema abbia una sola soluzione. Presento questa seconda strada e lascio per esercizio agli studenti la prima. Il sistema è x+y =k x=k−y cioè 2 x+y =1 x + y 2 = 1. Sostituendo la prima nella seconda si ottiene l’equazione (nella sola y) y 2 − y + k − 1 = 0. È ovvio che le soluzioni di questa equazione dipendono dal valore di k. Noi vogliamo che ci sia una sola soluzione. Deve allora necessariamente succedere che il discriminante dell’equazione sia zero, cioè ∆ = 1 − 4(k − 1) = 0 da cui si ricava k = 5 . 4 Con k = 45 l’equazione diventa y 2 − y − 14 = 0, cioè (y − 21 )2 = 0, cioè y = 12 . Per trovare x basta sostituire i valori trovati di k e y nella prima equazione del sistema e si ottiene x = 34 . Pertanto il punto ( 34 , 12 ) è di massimo (globale) vincolato. y Esempio 2 2 max / min f (x, y) = x + y con vincolo x + y = 1. Il vincolo definisce la retta di equazione y = 1 − x. Le curve di livello di f sono circonferenze centrate nell’origine, di raggio crescente al crescere di k. La figura a fianco aiuta a capire che c’è un punto di minimo (globale) vincolato dove indicato. Si vede anche che la funzione non è poi superiormente limitata sul vincolo. Per trovare il punto di minimo si può semplicemente dire che per ragioni di simmetria il punto deve stare sulla bisettrice del primo quadrante e quindi è il punto ( 12 , 12 ). Si può anche procedere come prima imponendo che la retta e la circonferenza si incontrino in un solo punto. 1 max b 1 x y Esempio max / min f (x, y) = xy con vincolo 2x + y = 2. 2 Il vincolo definisce la retta di equazione y = 2 − 2x. Le curve di livello k della funzione f sono iperboli equilatere: se k > 0 l’iperbole sta nel primo e terzo quadrante, se k < 0 l’iperbole sta nel secondo e quarto quadrante. Tenendo conto, nella figura a fianco, che i livelli crescenti sono indicati dalla freccia, si vede che c’è un punto di massimo vincolato (globale) e non ci sono punti di minimo vincolato, dato che la funzione f non è limitata inferiormente. Per trovare il punto di massimo facciamo sistema tra il vincolo e le curve di livello: xy = k y = 2 − 2x y = 2 − 2x cioè cioè 2x + y = 2 x(2 − 2x) = k 2x2 − 2x + k = 0. b max x 1 Occorre che l’equazione di secondo grado abbia una sola soluzione e quindi poniamo il discriminante uguale a zero: ∆ = 1 − 2k = 0 da cui si ricava k = 1 . 2 L’equazione è quindi 2x2 − 2x + 1 =0 2 cioè 4x2 − 4x + 1 = 0 cioè (2x − 1)2 = 0 e infine Pertanto il punto di massimo vincolato (globale) è ( 12 , 1). x= 1 e y = 2 − 2x = 1. 2 4 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 y √ Esempio con vincolo x2 + y 2 = 2. √ Il vincolo definisce la circonferenze di centro l’origine e raggio 2, Le curve di livello k della funzione f sono iperboli equilatere: se k > 0 l’iperbole sta nel primo e terzo quadrante, se k < 0 l’iperbole sta nel secondo e quarto quadrante. La solita figura mostra chiaramente che ci sono due punti di massimo vincolato globale4 e due punti di minimo vincolato globale. I punti in questione si trovano sulle rette bisettrici e quindi si trova facilmente che si tratta dei punti (1, 1) e (−1, −1) (di massimo) e dei punti (−1, 1) e (1, −1) (di minimo). max / min f (x, y) = xy 2.2 min 2 b b max √ b max x 2 b min Il metodo dei moltiplicatori di Lagrange Lagrange ha dimostrato questo risultato generale sui punti di massimo o minimo vincolato. Teorema (Lagrange) Siano f, g : A → R due funzioni di classe C 1 nell’aperto A ⊂ Rn . Dato il problema max / min f (x) con vincolo g(x) = b, definiamo la funzione Lagrangiana L(x, λ) = f (x) − λ g(x) − b . Se x è punto di massimo o di minimo locale vincolato di f e se ∇g(x) 6= 0 allora esiste un λ ∈ R tale che ∇L(x, λ) = 0. Osservazione Si faccia attenzione che x ∈ Rn , ma f (x) e, essendoci un solo vincolo, anche g(x), b e λ sono tutti numeri reali. La funzione Lagrangiana è funzione di x e di λ e una scrittura estesa sarebbe L(x1 , . . . , xn , λ) = f (x1 , . . . , xn ) − λ g(x1 , . . . , xn ) − b . Quindi L è funzione di n + 1 variabili. Il gradiente di L è un vettore di n + 1 componenti, che sono le derivate parziali di L rispetto a x1 , . . . , xn e a λ. Osservazione A scanso di incomprensioni, le derivate parziali di L sono: L′j (x, λ) L′λ (x, λ) = = fj′ (x) − λgj′ (x), per j = 1, 2, . . . , n −(g(x) − b). Dalla seconda scrittura si vede che l’annullarsi della derivata parziale di L rispetto a λ significa semplicemente il rispetto del vincolo (g(x) − b = 0 cioè g(x) = b). Osservazione Il risultato di Lagrange è una condizione necessaria del primo ordine per un punto di massimo/minimo (locale) vincolato. Essa dice che se c’è un punto di massimo/minimo vincolato allora la funzione Lagrangiana deve essere stazionaria in questo punto, per un particolare valore del parametro λ. Tale valore è universalmente noto con il nome di moltiplicatore di Lagrange. Trattandosi di una condizione necessaria, se troviamo un punto stazionario della Lagrangiana non possiamo ancora dire di aver trovato un punto di massimo/minimo vincolato, ma soltanto un possibile “candidato”. Vedremo più avanti le condizioni sufficienti. Osservazione Si noti da ultimo che c’è l’ipotesi sul gradiente di g, che non deve essere il vettore nullo. Questa condizione, importante, è il primo esempio di una condizione che ritroveremo in tutti i risuultati successivi, anche relativi a problemi più complessi. È una condizione di regolarità dei vincoli.5 Un vincolo che non rispetta questa condizione è in qualche modo un vincolo irregolare, per cui le condizioni di ottimalità potrebbero non valere. Esempio Consideriamo la funzione f (x, y) = xy sul vincolo dato dall’equazione x + y = 1. Vogliamo trovare i punti candidati ad essere di massimo o di minimo vincolato per f . Costruiamo la funzione Lagrangiana: L(x, y, λ) = xy − λ(x + y − 1). Osserviamo anzitutto che il gradiente del vincolo è ∇g(x, y) = (1, 1), quindi sempre diverso da zero. Allora possiamo essere certi che, se un punto è di massimo o di minimo vincolato, allora è anche stazionario per la funzione Lagrangiana. 4 Per ragioni di simmetria si intuisce che il valore della funzione obiettivo nei due punti di massimo è lo stesso e quindi che si tratta di due massimi globali. 5 Viene chiamata anche condizione di qualificazione dei vincoli (constraint qualification o non degenerate contraint qualification (NDCQ)). UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 5 Cerchiamo i punti stazionari della Lagrangiana calcolando intanto il ∇L(x, y, λ) = y − λ, x − λ, −x − y + 1 . Per trovare dove il gradiente si annulla basta risolvere il sistema di equazioni y−λ=0 y=λ y=λ cioè cioè x−λ=0 x=λ x=λ x+y =1 x+y = 1 2λ = 1 dal quale si ottiene l’unica soluzione (x, y, λ) = ( 12 , 21 , 12 ). Pertanto si ha l’unico punto stazionario vincolato ( 21 , 12 ). Osservazione Dato che il vincolo permette di esplicitare facilmente le variabili, il problema si può risolvere completamente, con la tecnica già vista prima, costruendo la restrizione. Lo studente provi a farlo, trovando la vera natura del punto stazionario vincolato. Volendo il problema si può risolvere anche con le curve di livello. Ecco un esempio che prova che la regolarità del vincolo è importante. Esempio Consideriamo la funzione f (x, y) = x sul vincolo dato dall’equazione x3 + y 2 = 0. Con un semplice ragionamento possiamo dire che l’origine è punto di massimo vincolato. Infatti nei punti che stanno sul vincolo si ha x3 = −y 2 , e quindi questi punti hanno una x minore o uguale a zero. Ma allora in tali punti la funzione, che è f (x, y) = x, assume valore minore o uguale a zero. Dato che nell’origine essa assume il valore zero, l’origine è certamente punto di massimo globale vincolato. Ora scriviamo la funzione Lagrangiana L(x, y, λ) = x − λ(x3 + y 2 ). Il gradiente di L è ∇L(x, y, λ) = 1 − 3λx2 , −2λy, −x3 − y 2 . Si vede facilmente (esercizio) che il gradiente non si annulla mai, e in particolare non si annulla nell’origine, in apparente contrasto con il risultato di Lagrange (essendo l’origine punto di massimo vincolato, dovremmo avere che in corrispondenza c’è un punto stazionario per la Lagrangiana). La spiegazione è che il vincolo non è regolare nell’origine, dato che ∇g(0, 0) = (0, 0). In questo caso quindi per la non regolarità del vincolo la tesi di Lagrange viene a cadere.6 Vediamo ora la risoluzione col metodo di Lagrange degli altri esempi risolti prima con le curve di livello. Esempio max / min f (x, y) = x + y con vincolo x + y 2 = 1. La funzione Lagrangiana è L(x, y, λ) = x + y − λ(x + y 2 − 1). Il gradiente del vincolo è ∇g(x, y) = (1, 2y), sempre diverso da zero. Allora siamo certi che, se un punto è di massimo o di minimo vincolato, allora è anche stazionario per la funzione Lagrangiana. Il gradiente della Lagrangiana è ∇L(x, y, λ) = 1 − λ, 1 − 2λy, −x − y 2 + 1 . Si trova facilmente che il gradiente si annulla soltanto nel punto (x, y, λ) = ( 43 , 12 , 1). Pertanto si ha l’unico punto stazionario vincolato ( 34 , 12 ). Il metodo delle curve di livello consentiva di dire che si tratta di un punto di massimo, mentre la condizione di Lagrange, che è necessaria, non permette ancora di dire nulla. Esempio max / min f (x, y) = x2 + y 2 con vincolo x + y = 1. La funzione Lagrangiana è L(x, y, λ) = x2 + y 2 − λ(x + y − 1). 6 Attenzione che non è detto che se il vincolo è non regolare allora la tesi di Lagrange sia necessariamente falsa! Se il vincolo è non regolare non possiamo dire nulla sulla stazionarietà della funzione Lagrangiana. Per questo motivo, dato che i punti di non regolarità dei vincoli potrebbero non essere trovati tra i punti stazionari della Lagrangiana, nella ricerca dei punti di massimo o di minimo vincolato occorre includere anche i punti in cui i vincoli non sono regolari. 6 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Il gradiente del vincolo è ∇g(x, y) = (1, 1), sempre diverso da zero. Il gradiente della Lagrangiana è ∇L(x, y, λ) = 2x − λ, 2y − λ, −x − y + 1 . L’annullarsi del gradiente equivale al sistema 2x − λ = 0 2y − λ = 0 x+y =1 cioè λ = 2x x=y 2x = 1 1 x= 2 x = 12 λ = 1. cioè Quindi l’unico punto stazionario per la Lagrangiana è (x, y, λ) = ( 12 , 12 , 1) e l’unico punto stazionario vincolato è ( 21 , 12 ). Esempio max / min f (x, y) = xy con vincolo x2 + y 2 = 2. La funzione Lagrangiana è L(x, y, λ) = xy − λ(x2 + y 2 − 2). Il gradiente del vincolo è ∇g(x, y) = (2x, 2y): esso si annulla nell’origine, che però non è un punto del vincolo. Quindi possiamo essere sicuri che sul vincolo il gradiente di g non si annulla mai. Il gradiente della Lagrangiana è ∇L(x, y, λ) = y − 2λx, x − 2λy, −x2 − y 2 + 2 . L’annullarsi del gradiente equivale al sistema y = 2λx cioè x = 2λy 2 x + y2 = 2 y = 2λx x = 2λ · 2λx 2 x + y2 = 2 cioè y = 2λx x(1 − 4λ2 ) = 0 2 x + y 2 = 2. Qui per trovare le soluzioni possiamo percorrere due strade: la seconda equazione può essere verificata o con x = 0 o con 1 − 4λ2 = 0. Con x = 0 si vede subito che il sistema è impossibile. Con 4λ2 = 1, cioè λ2 = 41 , cioè λ = ± 21 , si ha 1 λ= 2 y=x 2 x =1 oppure 1 λ = −2 y = −x 2 x = 1. Dal primo sistema si ottengono le soluzioni (1, 1, 21 ) e (−1, −1, 12 ), dal secondo le soluzioni (1, −1, − 21 ) e (−1, 1, − 21 ). Abbiamo quattro punti stazionari per la Lagrangiana e quindi quattro punti stazionari vincolati: (1, 1), (−1, −1), (1, −1) e (−1, 1). 2.3 Interpretazione geometrica Il risultato di Lagrange ha una semplice interpretazione geometrica. Per comprendere meglio è opportuno illustrare intanto due fatti che da un punto di vista operativo dell’ottimizzazione possono far capire molte cose: il primo è che il gradiente di una funzione, calcolato in un certo punto, è un vettore ortogonale alla curva (o superficie) di livello della funzione passante per quel punto;7 il secondo è che il gradiente indica una direzione in cui il valore della funzione aumenta. Spiego la prima questione. I casi rilevanti sono quando la funzione è definita in R2 o in R3 (con dimensioni maggiori la cosa è ancora vera, parlando di ipersuperficie di livello, ma la cosa non è rappresentabile per le note ragioni). 7 Sarebbe più corretto dire ortogonale alla tangente a tale curva, ma va bene anche cosı̀. 7 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 x2 Consideriamo una funzione g definita in R2 e consideriamo l’equazione g(x1 , x2 ) = b. ∇g(x) x Lo studente sa già che l’equazione definisce la curva di livello b della funzione g. Se x = (x1 , x2 ) è una soluzione dell’equazione, allora tale punto si trova sulla h = x − x superficie di livello (ovviamente si ha b = g(x)). Sia ∇g(x) il gradiente di g nel punto x. Sappiamo che l’equazione della retta tangente alla curva di livello è b x x1 g(x) = b ∇g(x) · (x − x) = 0. −x Ora basta osservare che il vettore h = x − x è parallelo a tale retta tangente. Pertanto, essendo ∇g(x) ortogonale a x − x, esso è ortogonale anche alla tangente alla curva di livello. In R3 le cose sono analoghe. Una certa superficie di livello ha in un punto un piano tangente e il gradiente in questo punto è ortogonale al piano tangente. x2 Spiego la seconda questione. Possiamo rifarci alla formula, vista parlando di differenziabilità, che fornisce una prima approssimazione della variazione di f : ∇f (x) f (x) − f (x) ≈ ∇f (x) · (x − x). Se x è un punto in prossimità di x per cui in corrispondenza del vettore variazione x x − x la variazione di f è positiva, allora il gradiente deve “proiettarsi positivamente” su x − x. Quindi il gradiente è rivolto verso i punti che danno una variazione positiva di f . In realtà si potrebbe dimostrare che il gradiente indica la direzione in cui si ha la f (x) = f (x) massima variazione positiva o, come si dice, indica la direzione di massima pendenza. b b x h=x−x x1 Ora veniamo all’interpretazione geometrica della condizione di Lagrange (per semplicità lo vediamo in R2 ). La condizione necessaria per un punto di massimo o di minimo vincolato è che la funzione Lagrangiana L(x, y, λ) = f (x, y) − λ g(x, y) − b abbia gradiente nullo nel punto (x, y, λ) e questo equivale a scrivere ′ ′ f1 (x) − λg1 (x) = 0 ′ f (x) − λg2′ (x) = 0 2 −g(x) + b = 0 ossia ′ ′ f1 (x) = λg1 (x) ′ f (x) = λg2′ (x) 2 g(x) = b. Come già osservato la terza equazione impone soltanto il rispetto del vincolo. Le prime due possono essere scritte con ∇f (x) = λ∇g(x): il gradiente di f è cioè proporzionale al gradiente di g (con coefficiente di proporzionalità λ). Non è difficile vedere, anche geometricamente sulle figure, che questa condizione è necessaria per avere un punto di massimo o di minimo. Infatti se in x c’è un tale punto, le curve di livello (di f e di g) devono essere “tangenti”, quindi devono avere la stessa retta tangente e quindi i due gradienti, che sono ortogonali a questa retta tangente, devono essere proporzionali. f (x) = k ∇f (x) g(x) = b b x ∇g(x) f (x) = k ∇f (x) g(x) = b b x ∇g(x) f (x) = k g(x) = b x b ∇f (x) ∇g(x) Nelle figure a sinistra e al centro il vincolo e la curva di livello di f sono tangenti e i gradienti sono proporzionali. È la situazione che si presenta in un punto di massimo o di minimo vincolato. La figura a destra fa vedere invece che se il vincolo e la curva di livello di f non sono tangenti il punto x non può essere di massimo o di minimo, dato che si possono trovare in prossimità di x punti sul vincolo in cui la funzione f ha valori maggiori o minori. Osservazione È importante osservare, ai fini di quanto vedremo successivamente quando i vincoli saranno espressi in forma di disequazione, che il segno del moltiplicatore λ non è necessariamente sempre lo stesso. Nella figura qui sopra a sinistra i due gradienti sono da parti opposte (moltiplicatore negativo) mentre nella figura al centro i due UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 8 gradienti sono dalla stessa parte (moltiplicatore positivo). Lo studente rifletta anche sul fatto che le figure illustrano la situazione relativa ad un punto di massimo. Per esercizio può disegnarne una relativa ad un punto di minimo. Concludiamo la sezione con altri esempi. Esempio Consideriamo il problema max / min f (x, y) = x2 − y 2 con vincolo x2 − y = 0. La funzione Lagrangiana è L(x, y, λ) = x2 − y 2 − λ(x2 − y). Dopo aver osservato che il gradiente del vincolo è ∇g(x, y) = (2x, −1), sempre diverso da zero, abbiamo che il vincolo è regolare. Il gradiente della Lagrangiana è ∇L(x, y, λ) = 2x − 2λx, −2y + λ, −x2 + y . L’annullarsi del gradiente equivale al sistema 2x − 2λx = 0 −2y + λ = 0 2 x −y =0 cioè 2x(1 − λ) = 0 λ = 2y y = x2 . Dalla prima, se x = 0 si trova che anche y e λ si annullano e quindi c’è la soluzione nulla. Se invece λ = 1, sostituendo nella seconda e terza equazione si trova y = 21 e x = ± √12 . Pertanto si hanno i tre punti stazionari vincolati (0, 0), ( √12 , 12 ) e (− √12 , 21 ). Lo studente potrebbe risolvere il problema con il metodo delle curve di livello o anche studiando la restrizione di f al vincolo, che si ottiene facilmente esplicitando la variabile y dal vincolo.8 Esercizio Consideriamo il problema max / min f (x, y) = x + y con vincolo x2 + y 2 = 1. La funzione Lagrangiana è L(x, y, λ) = x + y − λ(x2 + y 2 − 1). Come già osservato in un esercizio precedente con vincolo analogo, il gradiente del vincolo può annullarsi ma non sui punti del vincolo stesso. Quindi il vincolo è regolare. Il gradiente della Lagrangiana è ∇L(x, y, λ) = 1 − 2λx, 1 − 2λy, −x2 − y 2 + 1 . L’annullarsi del gradiente equivale al sistema 1 − 2λx = 0 1 − 2λy = 0 2 x + y2 = 1 cioè 2λx = 1 2λy = 1 2 x + y 2 = 1. Osserviamo che λ = 0 non porta a soluzioni.9 Quindi, dato che deve essere λ 6= 0, possiamo dividere per λ e otteniamo √ x = 1/(2λ) λ = ±1/ 2 cioè x = 1/(2λ) y = 1/(2λ) 2 2 y = 1/(2λ). 1/(4λ ) + 1/(4λ ) − 1 = 0 Si trovano pertanto i due punti stazionari vincolati ( √12 , √12 ) e (− √12 , − √12 ). Esempio Consideriamo il problema in R3 max / min f (x, y, z) = x + y + z con vincolo x2 + y 2 + z 2 = 3. 8 Lo studio attraverso la restrizione di f al vincolo è semplice. Non altrettanto facile è lo studio con le curve di livello: le curve di livello di f sono iperboli ma con asintoti che non sono gli assi cartesiani. 9 Con λ = 0 le prime due equazioni non sono certamente soddisfatte. 9 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 La funzione Lagrangiana è L(x, y, z, λ) = x + y + z − λ(x2 + y 2 + z 2 − 3). Il gradiente del vincolo è ∇g(x, y, z) = (2x, 2y, 2z), che si annulla soltanto al di fuori del vincolo. Quindi il vincolo è regolare. Il gradiente della Lagrangiana è ∇L(x, y, z, λ) = 1 − 2λx, 1 − 2λy, 1 − 2λz, −x2 − y 2 − z 2 + 3 . L’annullarsi del gradiente equivale al sistema 1 − 2λx = 0 1 − 2λy = 0 1 − 2λz = 0 2 x + y2 + z 2 = 3 2λx = 1 2λy = 1 2λz = 1 2 x + y 2 + z 2 = 3. cioè Dopo aver osservato che il valore nullo non è accettabile per le incognite, ricavando dalle prime tre equazioni x, y, z si 1 e sostituendo nella quarta si ha ottiene x = y = z = 2λ 1 1 1 + 2 + 2 =3 4λ2 4λ 4λ cioè 3 =3 4λ2 Quindi ci sono due punti stazionari vincolati: (1, 1, 1) con λ = 1 2 1 da cui λ = ± . 2 e (−1, −1, −1) con λ = − 12 . Esempio Consideriamo il problema max / min f (x, y, z) = x + y + z con vincolo xyz = 1. La funzione Lagrangiana è L(x, y, λ) = x + y + z − λ(xyz − 1). Il gradiente del vincolo è ∇g(x, y, z) = (yz, xz, xy), che si annulla soltanto al di fuori del vincolo. Quindi il vincolo è regolare. Il gradiente della Lagrangiana è ∇L(x, y, z, λ) = 1 − λyz, 1 − λxz, 1 − λxy, −xyz + 1 . L’annullarsi del gradiente equivale al sistema 1 − λyz = 0 1 − λxz = 0 1 − λxy = 0 xyz = 1 cioè λyz = 1 λxz = 1 λxy = 1 xyz = 1. Dopo aver osservato che il valore nullo non è accettabile per le incognite, si trova facilmente che deve essere x = y = z = λ, da cui (per la quarta) λ3 = 1 e quindi λ = 1. L’unica soluzione è quindi (x, y, z, λ) = (1, 1, 1, 1) e quindi l’unico punto stazionario vincolato è (1, 1, 1). 2.4 Significato economico del moltiplicatore di Lagrange g = b2 f = k2 Il moltiplicatore di Lagrange ha un interessante significato “economico”. Consideriamo per semplicità il problema in due sole variabili x(b2 ) max / min f (x1 , x2 ) con vincolo g(x1 , x2 ) = b b g = b1 con funzione Lagrangiana b x(b1 ) f = k1 L(x1 , x2 , λ) = f (x1 , x2 ) − λ g(x1 , x2 ) − b . Sia z il valore massimo della funzione f del problema vincolato. Osserviamo quanto segue: • Il valore z dipende dal valore di b e una variazione di b produce una variazione di z (solitamente per dire questo si scrive z = z(b)). La figura illustra che variando il valore di b (da b1 a b2 ) cambia la soluzione ottima (da x(b1 ) a x(b2 )) e cambia il valore massimo di f (da k1 a k2 ). Quindi avremo che, se x(b) è il punto di massimo vincolato, f (x(b)) è il valore massimo di f in tale punto e z(b) = f (x(b)); 10 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 • Fissato un certo b e indicati con (x1 (b), x2 (b)) e λ(b) rispettivamente il punto di massimo vincolato e il corrispondente valore del moltiplicatore, si ha che L x1 (b), x2 (b), λ(b) = f x1 (b), x2 (b) − λ(b) g(x1 (b), x2 (b)) − b = f x1 (b), x2 (b) = z(b). 10 Ora possiamo calcolare il tasso di variazione di z rispetto a b, cioè la variazione di z in conseguenza di una variazione unitaria di b calcolando la derivata z ′ (b). Si ha11 dL db = f1′ x′1 + f2′ x′2 − λ′ (g − b) − λ(g1′ x′1 + g2′ x′2 − 1) z ′ (b) = = f1′ x′1 + f2′ x′2 − λ(g1′ x′1 + g2′ x′2 − 1) = (f1′ − λg1′ )x′1 + (f2′ − λg2′ )x′2 + λ = λ. A commento di due passaggi significativi, faccio osservare che nel terzo passaggio il temine λ′ (g − b) si annulla dato che il vincolo deve essere rispettato e nell’ultimo passaggio la semplificazione si ha dal fatto che nel punto di massimo valgono le condizioni necessarie di Lagrange e quindi i due termini f1′ − λg1′ e f2′ − λg2′ si annullano. Quanto trovato dice quindi che la variazione del valore ottimo z in corrispondenza ad una variazione unitaria di b è data dal valore del moltiplicatore di Lagrange. Se b rappresenta una risorsa e f (x1 , x2 ) fornisce il profitto di un processo produttivo dove l’utilizzo della risorsa è regolato dal vincolo g(x1 , x2 ) = b, allora il valore del moltiplicatore (valore monetario/quantità) è un prezzo. Per questo motivo solitamente gli economisti danno al moltiplicatore di Lagrange il nome di prezzo ombra. 3 Caso generale (condizione necessaria) Non ci sono sostanziali novità nel caso di un problema di massimo o di minimo vincolato in cui sono presenti più equazioni di vincolo. Si osservi che, dovendo essere il numero di variabili maggiore del numero dei vincoli,12 questi casi avranno necessariamente almeno tre variabili. Una risoluzione grafica di questi casi, con metodi analoghi a quello delle curve di livello, anche se possibile, non è di solito agevole. Va detto anche che in qualche caso dal sistema dei vincoli è possibile esplicitare una variabile rispetto alle altre, e quindi costruire la restrizione della funzione obiettivo alla regione ammissibile, restrizione che avrà certamente meno variabili della funzione originaria. In questi casi cosı̀ facendo il problema viene ricondotto ad un problema libero sulla restrizione e a tale problema sono ovviamente applicabili i metodi visti studiando i massimi e minimi liberi. Vediamo subito un esempio in questo senso. Esempio Consideriamo il problema 2 2 max / min f (x, y, z) = x + y + z 2 con vincoli x+y+z =1 x − y + z = 1. Il sistema dei vincoli è un sistema lineare, che sappiamo risolvere esprimendo due variabili in funzione della terza. Risolvendo tale sistema, ad esempio con una semplice sostituzione, si trova z = 1−x−y z =1−x da cui che ha soluzioni (x, 0, 1 − x) con x ∈ R. y=0 y=0 10 Il termine del moltiplicatore scompare dato che nel punto di massimo il vincolo è rispettato e quindi g(x1 (b), x2 (b)) − b = 0. non appesantire le notazioni evito di indicare gli argomenti: si pensi però che tutto quello che compare è funzione di b. L’unica derivazione non immediata è quella delle funzioni f e g. Si osservi che per derivare rispetto a b ad esempio la f , che è una f (x1 (b), x2 (b)), devo usare la regola di derivazione delle funzioni composte e ho 11 Per d f (x1 (b), x2 (b)) = f1′ (x1 (b), x2 (b))x′1 (b) + f2′ (x1 (b), x2 (b))x′2 (b) db che nel seguito semplifico in f1′ x′1 + f2′ x′2 . 12 Si vada a rivedere la formulazione iniziale del problema: avevamo m < n dato che troppe equazioni di vincolo possono ovviamente svuotare la regione ammissibile. 11 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 I valori della funzione obiettivo sul vincolo coincidono quindi con quelli della funzione di una sola variabile (la restrizione di f ai vincoli) f (x, 0, 1 − x) = x2 + (1 − x)2 = 2x2 − 2x + 1. Si trova facilmente che tale funzione ha un punto di minimo (globale) in x = 21 e che quindi 12 , 0, 12 è punto di minimo globale vincolato per la funzione f . Si può anche osservare, sempre dai valori della restrizione, che la funzione obiettivo f non è superiormente limitata sul vincolo. Osservazione Si noti che con il calcolo esplicito della restrizione di f sul vincolo si riesce a dare una soluzione completa del problema. In generale e in particolare nei casi in cui non è possibile trovare una forma esplicita dei vincoli il metodo dei moltiplicatori di Lagrange consente di determinare i punti stazionari vincolati. Ricordo che la formulazione del problema è ora max f (x1 , . . . , xn ) con vincoli gi (x1 , . . . , xn ) = bi , i = 1, 2, . . . , m ossia, con notazione vettoriale, max f (x) con vincoli g(x) = b. Vediamo la condizione necessaria di Lagrange. Sia A un insieme aperto in Rn . Teorema (Lagrange) Siano f : A → R e g : A → Rm funzioni di classe C 1 nell’aperto A. Dato il problema max / min f (x) con vincoli g(x) = b, definiamo la funzione Lagrangiana L(x, λ) = f (x) − λ · g(x) − b , dove λ ∈ Rm . Se x è punto di massimo o di minimo locale vincolato di f e se la matrice Jacobiana Jg(x) ha rango m allora esiste un λ ∈ Rm tale che ∇L(x, λ) = 0. Osservazioni Mettendo a confronto questo enunciato con quello visto nel caso con un solo vincolo è da notare che: • nella funzione Lagrangiana ora λ è un vettore (tanti moltiplicatori quanti sono i vincoli); • sempre nella funzione Lagrangiana abbiamo il prodotto interno tra il vettore dei moltiplicatori e il vettore g(x)−b. Una scrittura estesa equivalente a L(x, λ) = f (x) − λ · g(x) − b è L(x, λ) = f (x) − m X i=1 λi gi (x) − bi . • la precedente condizione di regolarità del vincolo (∇g(x) 6= 0) viene ora sostituita dalla analoga condizione di regolarità dei vincoli che chiede alla derivata di g (la matrice Jacobiana) di essere di rango massimo nel punto x; • la condizione necessaria è la stessa: esiste un vettore λ per cui il punto (x, λ) è stazionario per la funzione Lagrangiana. Ora vediamo qualche esempio di applicazione del metodo dei moltiplicatori di Lagrange quando ci sono più vincoli. Esempio Possiamo iniziare dall’esempio risolto poco fa con la restrizione. Il problema è x+y+z =1 2 2 2 max / min f (x, y, z) = x + y + z con vincoli x − y + z = 1. La matrice Jacobiana dei vincoli è Jg(x, y, z) = 1 1 1 1 −1 1 e ha chiaramente rango 2. I vincoli sono quindi regolari. La funzione Lagrangiana è L(x, y, z, λ1 , λ2 ) = x2 + y 2 + z 2 − λ1 (x + y + z − 1) − λ2 (x − y + z − 1). Il gradiente della Lagrangiana è ∇L(x, y, z, λ1 , λ2 ) = 2x − λ1 − λ2 , 2y − λ1 + λ2 , 2z − λ1 − λ2 , −x − y − z − 1, −x + y − z − 1 . 12 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 L’annullarsi del gradiente equivale al sistema 2x − λ1 − λ2 = 0 2y − λ1 + λ2 = 0 2z − λ1 − λ2 = 0 x+y+z = 1 x − y + z = 1. Si tratta di un sistema lineare e con qualche calcolo si trova che ha come unica soluzione (x, y, z, λ1 , λ2 ) = ( 21 , 0, 12 , 12 , 12 ) e quindi c’è il solo punto stazionario vincolato ( 21 , 0, 21 ). Esempio max / min f (x, y, z) = −x − y + 2z La matrice Jacobiana dei vincoli è Jg(x, y, z) = con vincoli 2x 2y 0 1 0 1 x2 + y 2 = 10 y + z = 3. , che non ha rango 2 soltanto nei punti (0, 0, z), z ∈ R,13 punti che non stanno sui vincoli. La funzione Lagrangiana è L(x, y, z, λ1 , λ2 ) = −x − y + 2z − λ1 (x2 + y 2 − 10) − λ2 (y + z − 3). Il gradiente della Lagrangiana è ∇L(x, y, z, λ1 , λ2 ) = − 1 − 2λ1 x, −1 − 2λ1 y − λ2 , 2 − λ2 , −x2 − y 2 + 10, −y − z + 3 . L’annullarsi del gradiente equivale al sistema −1 − 2λ1 x = 0 −1 − 2λ1 y − λ2 = 0 2 − λ2 = 0 x2 + y 2 = 10 y + z = 3. cioè 1 + 2λ1 x = 0 1 + 2λ1 y + λ2 = 0 λ2 = 2 x2 + y 2 = 10 y + z = 3. Osservando che λ1 = 0 non fornisce soluzioni, dalle prime due equazioni si ottiene x = − 2λ1 1 3 y = − 2λ1 λ2 = 2 2 x + y 2 = 10 y+z =3 da cui, sostituendo nella quarta, 4λ1 2 + 4λ9 2 = 10 e quindi λ1 = ± 21 . Ricavando infine z dalla quinta equazione si 1 1 ottengono i due punti stazionari vincolati e con λ1 = 12 , λ2 = 2 (−1, −3, 6) con λ1 = − 12 , λ2 = 2. (1, 3, 0) Esempio max / min f (x, y, z) = x con vincoli La matrice Jacobiana dei vincoli è Jg(x, y, z) = 2x 2y 0 1 2z 1 x2 + y 2 + z 2 = y + z = 1. 5 2 , 13 Il rango minore di 2 si ha solo se i tre minori del secondo ordine sono tutti nulli. I minori in questione sono 2x e 2y e quindi questi si annullano contemporaneamente appunto sul sottospazio (0, 0, z), con z ∈ R. 13 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 che non ha rango 2 soltanto nei punti (0, z, z), z ∈ R, punti che non stanno sui vincoli. La funzione Lagrangiana è L(x, y, z, λ1 , λ2 ) = x − λ1 (x2 + y 2 + z 2 − 25 ) − λ2 (y + z − 1). Il gradiente della Lagrangiana è ∇L(x, y, z, λ1 , λ2 ) = 1 − 2λ1 x, −2λ1 y − λ2 , −2λ1 z − λ2 , −x2 − y 2 − z 2 + 25 , −y − z + 1 . L’annullarsi del gradiente equivale al sistema 1 − 2λ1 x = 0 −2λ1 y − λ2 = 0 −2λ1 z − λ2 = 0 x2 + y 2 + z 2 = 25 y + z = 1. cioè 1 − 2λ1 x = 0 2λ1 y + λ2 = 0 2λ1 z + λ2 = 0 2 x + y2 + z 2 = y + z = 1. Dato che λ1 = 0 non fornisce soluzioni, dalle prime tre equazioni si può ottenere x = 2λ1 1 λ y = − 2λ21 λ2 z = − 2λ1 x2 + y 2 + z 2 = 52 y + z = 1. Ora dalla quinta equazione si ottiene Ci sono quindi due soluzioni: λ2 λ1 √ ( 2, 12 , 21 ) √ ( 2, 12 , 21 ) e 4 = −1 e cioè λ2 = −λ1 . Allora y = z = con λ1 = con λ1 = 1 2 5 2 √ e dalla quarta x = ± 2. 1 1 √ , λ2 = − 2√ 2 2 2 1 1 √ , λ = . − 2√ 2 2 2 2 Condizioni sufficienti Esistono, come per il problema sui massimi e minimi liberi, alcune condizioni sufficienti di ottimalità, condizioni cioè che, se verificate, consentono di concludere che il punto in questione è di massimo o di minimo vincolato. Vediamo due tipi di condizioni sufficienti per un problema vincolato. Il primo utilizza una restrizione della funzione Lagrangiana su di un sottospazio che dipende dai vincoli. Il secondo utilizza invece una specie di matrice Hessiana che tiene in considerazione, oltre la funzione obiettivo, anche i vincoli. 4.1 La condizione sul sottospazio tangente ai vincoli Teorema (Lagrange) Siano f : A → R e g : A → Rm funzioni di classe C 2 nell’aperto A ⊂ Rn . Dato il problema max / min f (x) con vincoli g(x) = b, se x è un punto nella regione ammissibile tale che (a) esistono dei moltiplicatori λ = (λ1 , . . . λm ) per cui (x, λ) è stazionario per la funzione Lagrangiana (b) ∇2xx L(x, λ) è definito positivo (negativo) nel sottospazio h ∈ Rn : Jg(x)h = 0 allora x è punto di minimo (massimo) locale vincolato per la funzione f . Osservazione Unica doverosa precisazione sulle notazioni: la scrittura ∇2xx L(x, λ) indica il gradiente secondo parziale della Lagrangiana rispetto alle sole x, cioè alle variabili vere e proprie (quelle contenute nel vettore x). È la 2 L matrice i cui elementi sono le ∂x∂i ∂x . j Osservazione Il punto (a) chiede che valga la condizione necessaria del primo ordine. 14 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Per quanto riguarda il punto (b), è bene anzitutto riflettere sul significato dell’equazione Jg(x)h = 0, che definisce il sottospazio rilevante ai fini della condizione di ottimalità. Si tratta ovviamente di un prodotto matrice × vettore. Dato che la ∇g(x) h matrice Jacobiana dei vincoli ha sulle righe i gradienti dei vari vincoli, il prodotto delle righe per il vettore h, uguagliato a zero, significa l’ortogonalità di h con tutti i gradienti dei vincoli. Ricordando che i gradienti sono ortogonali alle superfici di x livello, questo significa che il sottospazio formato dai vettori h con questa proprietà h è il sottospazio tangente ai vincoli nel punto x. La cosa si può cogliere facilmente se consideriamo un problema con un solo vincolo g(x) = b in R2 . Il sottospazio è definito g(x) = b allora da ∇g(x)h = 0, cioè h deve essere ortogonale al gradiente del vincolo in x. La figura illustra che i vettori h sono quelli tangenti al vincolo. La condizione (b), che è la condizione sufficiente per l’ottimalità di x, significa allora che il gradiente secondo (matrice Hessiana) della funzione Lagrangiana (la sua parte relativa alle sole variabili effettive) o ancora meglio la forma quadratica ad esso associata è definita positiva o negativa sul sottospazio tangente ai vincoli del problema nel punto x. b Osservazione Da notare che le condizioni sufficienti non coprono i casi in cui il gradiente secondo della Lagrangiana è indefinito o semidefinito sul sottospazio tangente ai vincoli. Si può però vedere che, mentre nel primo caso (∇2xx L(x, λ) indefinito sul sottospazio tangente) si ha un punto che non è né di massimo né di minimo vincolato, nel secondo caso (∇2xx L(x, λ) semidefinito), come avviene per l’ottimizzazione libera, non si può concludere nulla. 4.2 La condizione sulla matrice Hessiana orlata C’è un secondo tipo di condizione sufficiente, che si fonda sulla costruzione della cosiddetta matrice Hessiana orlata. Si definisce matrice Hessiana orlata (della funzione Lagrangiana) la matrice 0 Jg T Jg = ∇2xx L ... .. . ∂g1 ∂xn ∂gm ∂x1 ... ∂gm ∂xn ∂gm ∂x1 L′′11 .. . ... .. . L′′1n .. . ∂gm ∂xn L′′n1 ... L′′nn 0 .. . ... .. . 0 .. . ∂g1 ∂x1 0 ... 0 ∂g1 ∂x1 .. . ... .. . ∂g1 ∂xm ... .. . .. . .. . . Qui per non appesantire le notazioni non ho indicato gli argomenti, ma va detto che la matrice va calcolata nel punto stazionario, cioè in (x, λ). Si può provare che, nelle stesse ipotesi di prima, se (x, λ) è un punto stazionario per la funzione Lagrangiana, (a) se gli ultimi n − m minori di NO della matrice Hessiana orlata sono di segno alterno a partire da (−1)m+1 , allora x è punto di massimo locale vincolato di f ; (b) se gli ultimi n − m minori di NO della matrice Hessiana orlata hanno lo stesso segno di (−1)m , allora x è punto di minimo locale vincolato di f . Osservazione Le regole sulla matrice Hessiana orlata come si vede sono piuttosto elaborate. Si può osservare che nel caso di un problema in R2 (n = 2) con un vincolo (m = 1) la matrice è 0 g1′ g2′ g1′ L′′11 L′′21 g2′ L′′12 L′′22 e le complicate regole sui minori di NO si riducono a queste semplici regole (si ha n − m = 1): (a) se l’ultimo minore di NO (cioè il determinante) è positivo, allora il punto è di massimo locale vincolato; (b) se l’ultimo minore di NO (cioè il determinante) è negativo, allora il punto è di minimo locale vincolato. 15 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Lo studente provi a scrivere le regole sui minori nel caso di un problema in R3 (n = 3) con un vincolo (m = 1) e nel caso di un problema in R3 con due vincoli. Ora concludo la dispensa con qualche esempio (alcuni sono problemi già affrontati in precedenza col metodo delle curve di livello, oppure costruendo la restrizione, oppure limitatamente alle condizioni necessarie. Esempio (vedi anche in precedenza) con vincolo x + y 2 = 1. max / min f (x, y) = x + y Avevammo trovato L(x, y, λ) = x + y − λ(x + y 2 − 1) ∇L(x, y, λ) = 1 − λ, 1 − 2λy, −x − y 2 + 1 . ; Unico punto stazionario vincolato ( 34 , 21 ) con λ = 1. Si ha14 0 0 e ∇g = (1, 2y) e quindi ∇2xy L = 0 −2λ Calcoliamo il sottospazio tangente al vincolo: h1 =0 1 1 h2 ∇2xy L(x, λ) = 0 0 0 −2 e ∇g(x) = (1, 1). cioè h1 + h2 = 0 cioè h2 = −h1 . Il sottospazio tangente al vincolo è quindi formato dai vettori del tipo (h1 , −h1 ), con h1 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo si trova con 0 0 h1 = −2h21 . h1 −h1 0 −2 −h1 Questa forma quadratica (funzione solo di h1 ) è definita negativa e quindi il punto è di massimo locale vincolato.15 Utilizzando invece la matrice Hessiana orlata, si costruisce la matrice 0 1 1 1 0 0 il cui determinante è 2. 1 0 −2 Allora, per le regole viste prima, questo conferma che il punto è di massimo locale vincolato. Esempio (vedi anche in precedenza) max / min f (x, y) = x2 + y 2 con vincolo x + y = 1. Avevamo trovato L(x, y, λ) = x2 + y 2 − λ(x + y − 1) ; Unico punto stazionario vincolato ( 12 , 21 ) con λ = 1. Si ha 2 0 2 ∇xy L = 0 2 ∇L(x, y, λ) = 2x − λ, 2y − λ, −x − y + 1 . e ∇g = (1, 1). Qui non serve nemmeno trovare il sottospazio tangente al vincolo, dato che la forma del gradiente secondo è definita positiva in tutto R2 (e quindi definita positiva anche sul sottospazio). Pertanto il punto è di minimo locale vincolato. Utilizzando la matrice Hessiana orlata, 0 1 1 1 2 0 il cui determinante è −4, 1 0 2 14 Nel seguito scriverò ∇2 L oppure ∇2 L per indicare il gradiente secondo parziale rispetto alle variabili effettive. La notazione è xy xyz semplificata rispetto a quella che dovrebbe essere dato che, trattandosi di una derivazione seconda, le variabili andrebbero ripetute. Infatti nella notazione generale usata in precedenza scrivevo ∇2xx L, dove x era il vettore delle variabili. 15 Si noti che la forma in R2 è semidefinita negativa, mentre risulta definita negativa sul sottospazio tangente al vincolo. UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 16 è confermato che il punto è di minimo locale vincolato. Esempio max / min f (x, y) = x2 + y 2 Si ha L(x, y, λ) = x2 + y 2 − λ(x + y 2 − 1) con vincolo x + y 2 = 1. ∇L(x, y, λ) = 2x − λ, 2y − 2λy, −x − y 2 + 1 . ; Ponendo il gradiente uguale al vettore nullo e risolvendo il sistema corrispondente si trova (si provi per esercizio) che ci sono tre punti stazionari vincolati: e Si ha ∇2xy L = (1, 0) con λ = 2 ( 21 , √12 ) ( 21 , − √12 ) con λ = 1 2 0 con λ = 1. 0 2 − 2λ e ∇g = (1, 2y) (i) Studiamo il punto (1, 0). ∇2xy L(x, λ) = 2 0 0 −2 e ∇g(x) = (1, 0). Il sottospazio tangente al vincolo è formato dai vettori del tipo (0, h2 ), con h2 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è 2 0 0 = −2h22 . 0 h2 h2 0 −2 La forma è definita negativa e quindi il punto è di massimo locale vincolato.16 (ii) Studiamo il punto ( 21 , √12 ). ∇2xy L(x, λ) = 2 0 0 0 e √ ∇g(x) = (1, 2). √ Il sottospazio tangente al vincolo è formato dai vettori del tipo (− 2h2 , h2 ), con h2 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è √ √ 2 0 − 2h2 = 4h22 . − 2h2 h2 0 0 h2 La forma è definita positiva sul sottospazio e quindi il punto è di minimo locale vincolato. (iii) Studiamo il punto ( 21 , − √12 ). ∇2xy L(x, λ) = 2 0 0 0 e √ ∇g(x) = (1, − 2). √ Il sottospazio tangente al vincolo è formato dai vettori del tipo ( 2h2 , h2 ), con h2 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è √ 2 0 √ 2h2 = 4h22 2h2 h2 0 0 h2 e quindi anche questo punto è di minimo locale vincolato. 16 Qui la forma è indefinita in tutto R2 , ma definita negativa sul sottospazio tangente al vincolo. 17 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 È interessante risolvere il problema appena visto con le curve di livello. Lo studente provi a farlo. Esempio (vedi anche in precedenza) con vincolo x2 + y 2 = 2. max / min f (x, y) = xy Abbiamo trovato L(x, y, λ) = xy − λ(x2 + y 2 − 2) ∇L(x, y, λ) = y − 2λx, x − 2λy, −x2 − y 2 + 2 . ; Vi sono quattro punti stazionari vincolati: e (1, 1) e (−1, −1) (1, −1) e (−1, 1) Studiamo ad esempio il primo punto. −2λ 1 e ∇g = (2x, 2y) ∇2xy L = 1 −2λ e quindi con λ = 1 2 con λ = − 12 . ∇2xy L(x, λ) = −1 1 1 −1 e ∇g(x) = (2, 2). Il sottospazio tangente al vincolo è formato dai vettori del tipo (h1 , −h1 ), con h1 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è −1 1 h1 = −h21 + 2h1 (−h1 ) − h21 = −4h21 . h1 −h1 −h1 1 −1 La forma sul sottospazio è definita negativa e quindi si tratta di un punto di massimo locale vincolato. Lo studente provi a studiare gli altri punti trovati (con λ = 21 sono di massimo, con λ = − 21 sono di minimo). Esempio max / min f (x, y) = y − x2 con vincolo 2x2 − y = 0. Dopo aver osservato che il vincolo è regolare, si ha L(x, y, λ) = y − x2 − λ(2x2 − y) ; ∇L(x, y, λ) = − 2x − 4λx, 1 + λ, −2x2 + y . Ponendo il gradiente uguale al vettore nullo si trova facilmente che c’è l’unico punto stazionario vincolato (0, 0) con λ = −1. Il gradiente secondo parziale della Lagrangiana è −2 − 4λ 0 2 0 2 2 e ∇g = (4x, −1) e quindi ∇xy L(x, λ) = e ∇g(x) = (0, −1). ∇xy L = 0 0 0 0 Il sottospazio tangente al vincolo è formato dai vettori del tipo (h1 , 0), con h1 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è 2 0 h1 = 2h21 . h1 0 0 0 0 Forma quadratica definita positiva e quindi si tratta quindi di un punto di minimo locale vincolato. Esempio 1 max / min f (x, y) = y − x4 4 Dopo aver osservato che il vincolo è regolare, si ha L(x, y, λ) = y − 41 x4 − λ( 13 x3 − y) ; con vincolo ∇L(x, y, λ) = 1 3 x − y = 0. 3 − x3 − λx2 , 1 + λ, − 31 x3 + y . Ponendo il gradiente uguale al vettore nullo si trova facilmente che ci sono due punti stazionari vincolati: (0, 0) e (1, 13 ), entrambi con λ = −1. 18 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Il gradiente secondo parziale della Lagrangiana è −3x2 − 2λx 0 ∇2xy L = 0 0 e ∇g = (x2 , −1). Ora, volendo studiare il primo punto (l’origine), si vede subito che la forma è semidefinita e questo non consente di concludere sulla natura dell’origine. Nell’altro punto invece non ci sono questi problemi dato che −1 0 2 e ∇g(x) = (1, −1). ∇xy L(x, λ) = 0 0 Il sottospazio tangente al vincolo è formato dai vettori del tipo (h1 , h1 ), con h1 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è −1 0 h1 = −h21 . h1 h1 0 0 h1 Si tratta quindi di un punto di massimo locale vincolato. Per quanto riguarda l’origine la conclusione può essere trovata facilmente esplicitando y dal vincolo e costruendo la restrizione di f sul vincolo stesso (o anche con le curve di livello, ma le cose non sono immediate). Esempio (vedi anche in precedenza) Consideriamo il problema max / min f (x, y) = x2 − y 2 con vincolo x2 − y = 0. Abbiamo trovato L(x, y, λ) = x2 − y 2 − λ(x2 − y) ∇L(x, y, λ) = 2x − 2λx, −2y + λ, −x2 + y . ; Si hanno i tre punti stazionari vincolati: con λ = 0 (0, 0) e ( √12 , 12 ) e (− √12 , 21 ) Il gradiente secondo parziale della Lagrangiana è 2 − 2λ 0 ∇2xy L = 0 −2 con λ = 1. e ∇g = (2x, −1). Studiamo i tre punti. (i) Con il punto (0, 0) abbiamo ∇2xy L(x, λ) = 2 0 0 −2 e ∇g(x) = (0, −1). Il sottospazio tangente al vincolo è formato dai vettori del tipo (h1 , 0), con h1 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è 2 0 h1 = 2h21 . h1 0 0 0 −2 Si tratta quindi di un punto di minimo locale vincolato. (ii) Con il punto ( √12 , 21 ) abbiamo ∇2xy L(x, λ) = 0 0 0 −2 e √ ∇g(x) = ( 2, −1). √ Il sottospazio tangente al vincolo è formato dai vettori del tipo (h1 , 2h1 ), con h1 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è √ 0 0 h1 √ = −4h21 . h1 2h1 0 −2 2h1 Si tratta quindi di un punto di massimo locale vincolato. 19 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 (iii) Il terzo punto è analogo al secondo, cioè è ancora un punto di massimo locale vincolato. Esempio (vedi anche in precedenza) max / min f (x, y, z) = x + y + z con vincolo x2 + y 2 + z 2 = 3. Abbiamo trovato L(x, y, z, λ) = x + y + z − λ(x2 + y 2 + z 2 − 3) ; ∇L(x, y, z, λ) = 1 − 2λx, 1 − 2λy, 1 − 2λz, −x2 − y 2 − z 2 + 3 . Si hanno i due punti stazionari vincolati: e 1 2 (1, 1, 1) con λ = (−1, −1, −1) con λ = − 21 . Il gradiente secondo parziale della Lagrangiana è −2λ 0 0 ∇2xyz L = 0 −2λ 0 0 0 −2λ e ∇g = (2x, 2y, 2z). Qui possiamo subito osservare che con λ = 21 il gradiente secondo è definito negativo in tutto R3 e quindi tale anche nel sottospazio tangente al vincolo: quindi il primo punto è di massimo locale vincolato. Invece con λ = − 12 il gradiente secondo è definito positivo in tutto R3 e quindi il secondo punto è di minimo locale vincolato. Esempio (vedi anche in precedenza) max / min f (x, y, z) = x + y + z con vincolo xyz = 1. Abbiamo trovato L(x, y, z, λ) = x + y + z − λ(xyz − 1) ; ∇L(x, y, z, λ) = 1 − λyz, 1 − λxz, 1 − λxy, −xyz + 1 . Si ha il solo punto stazionario vincolato (1, 1, 1) con λ = 1. Il gradiente secondo parziale della Lagrangiana è 0 ∇2xyz L = −λz −λy −λy −λx 0 e ∇g = (yz, xz, xy) 0 −1 −1 ∇2xyz L(x, λ) = −1 0 −1 −1 −1 0 e ∇g(x) = (1, 1, 1). −λz 0 −λx e quindi Troviamo il sottospazio tangente al vincolo. Esso è formato dai vettori (h1 , h2 , h3 ) tali che 1 1 1 h1 h2 = 0 cioè h1 + h2 + h3 = 0 cioè h3 = −h1 − h2 . h3 Il sottospazio tangente al vincolo è formato quindi dai vettori del tipo (h1 , h2 , −h1 − h2 ), con h1 , h2 ∈ R. Quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è 0 −1 (h1 , h2 , −h1 − h2 ) −1 0 −1 −1 −1 h1 = −2h1 h2 − 2h1 (−h1 − h2 ) − 2h2 (−h1 − h2 ) = 2h21 + 2h1 h2 + 2h22 . h2 −1 −h1 − h2 0 20 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Tale forma quadratica (funzione di h1 e h2 ) è definita positiva17 e quindi il punto (1, 1, 1) è un punto di minimo locale vincolato. Esempio (vedi anche in precedenza) max / min f (x, y, z) = −x − y + 2z con vincoli x2 + y 2 = 10 y + z = 3. Abbiamo trovato L(x, y, z, λ) = −x − y + 2z − λ1 (x2 + y 2 − 10) − λ2 (y + z − 3) e ∇L(x, y, z, λ) = − 1 − 2λ1 x, −1 − 2λ1 y − λ2 , 2 − λ2 , −x2 − y 2 + 10, −y − z + 3 . Le condizioni del primo ordine portavano ai due punti stazionari vincolati e con λ1 = 21 , λ2 = 2 (−1, −3, 6) con λ1 = − 12 , λ2 = 2. (1, 3, 0) Il gradiente secondo parziale della Lagrangiana e la −2λ1 0 ∇2xyz L = 0 −2λ1 0 0 matrice Jacobiana dei vincoli sono 0 2x 2y 0 . e Jg = 0 0 1 1 0 Dobbiamo ora studiare le condizioni sufficienti sui due punti. (i) Per quanto riguarda il primo punto, il sottospazio tangente ai vincoli è formato dai vettori (h1 , h2 , h3 ) tali che −2 −6 0 1 0 1 h1 h2 = 0 0 h3 cioè −2h1 − 6h2 = 0 h2 + h3 = 0 cioè h1 = −3h2 h3 = −h2 . Il sottospazio tangente al vincolo è formato quindi dai vettori del tipo (−3h2 , h2 , −h2 ), con h2 ∈ R. 18 Il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è −1 0 0 −3h2 −3h2 h2 −h2 0 −1 0 h2 = −9h22 − h22 = −10h22 . 0 0 0 −h2 Tale forma quadratica (funzione solo h2 ) è definita negativa e quindi il punto (−1, −3, 6) è un punto di massimo locale vincolato. (ii) Per quanto riguarda il secondo punto, il sottospazio tangente ai vincoli è formato dai vettori (h1 , h2 , h3 ) tali che 2 0 6 0 1 1 h1 h2 = 0 0 h3 cioè 2h1 + 6h2 = 0 h2 + h3 = 0 cioè h1 = −3h2 h3 = −h2 . Il sottospazio tangente al vincolo è formato quindi dai vettori del tipo (−3h2 , h2 , −h2 ), con h2 ∈ R. Il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è 1 0 0 −3h2 −3h2 h2 −h2 0 1 0 h2 = 9h22 + h22 = 10h22 . 0 0 0 −h2 Tale forma quadratica è definita positiva e quindi il punto (1, 3, 0) è un punto di minimo locale vincolato. 17 Lo si trova immediatamente scrivendo la matrice della forma quadratica e trovando che i minori di NO sono positivi. deve sorprendere che il sottospazio sia una retta: infatti i due vincoli definiscono due superfici, i sottospazi tangenti sono due piani e l’intersezione dei due piani è una retta. 18 Non 21 UNIVR – Facoltà di Economia – Corso di Matematica finanziaria 2008/09 Esempio 1 1 max / min f (x, y, z) = − x2 + y 3 + z 2 2 2 con vincolo z = 0. Si trova L(x, y, z, λ) = − 12 x2 + y 3 + 21 z 2 − λz ; ∇L(x, y, z, λ) = − x, 3y 2 , z − λ, −z . Le condizioni del primo ordine portano immediatamente all’unico punto stazionario vincolato (0, 0, 0) con λ = 0. Il gradiente secondo parziale della Lagrangiana è −1 ∇2xyz L = 0 0 0 6y 0 0 0 1 −1 0 0 e quindi ∇2xyz L(x, λ) = 0 0 0 0 0 1 e ∇g(x) = (0, 0, 1). Il sottospazio tangente al vincolo è dato dai vettori ortogonali a (0, 0, 1), e cioè dai vettori della forma (h1 , h2 , 0), con h1 , h2 ∈ R, e quindi il gradiente secondo della Lagrangiana sul sottospazio tangente al vincolo è h1 h2 0 −1 0 0 0 0 0 0 h1 0 h2 = −h21 . 0 1 Attenzione qui. La forma quadratica è funzione di h1 e h2 e quindi è semidefinita negativa sul sottospazio. Pertanto le condizione del secondo ordine in questo caso non consentono di concludere nulla sulla natura del punto stazionario. La conclusione si può però trovare pensando che la restrizione di f al vincolo z = 0 è la funzione di due variabili − 12 x2 + y 3 e che questa ha certamente nell’origine un punto di sella, dato che ad esempio sui punti del tipo (0, t) con t ∈ R si riduce alla t 7→ t3 , e questa cambia di segno in un intorno dell’origine. Quindi per la funzione iniziale l’origine non è né di massimo né di minimo vincolato.19 19 Si noti che, dopo aver scritto la restrizione di f al vincolo, cioè la funzione di due sole variabili − 1 x2 + y 3 , usando le condizioni del 2 secondo ordine (gradiente secondo) non si riesce a concludere nulla sulla natura dell’origine, dato che la matrice risulta semidefinita.