Comments
Description
Transcript
Equazioni_non_lineari_new
Equazioni e sistemi non lineari a.a. 2010/2011 1 Equazioni non lineari una funzione f : R R consideriamo il problema di determinare i valori x tali che Data f (x) 0 Tali valori sono solitamente chiamati zeri o radici della funzione f. Esempi: Equazioni algebriche: Pn (x ) x 4 sin(x) 0, n a x k 0 k k 0 ex x2 , x log(x) 3 In generale non sono disponibili formule esplicite per la determinazione delle radici di una funzione (per esempio equazioni algebriche) metodi iterativi 2 Metodi iterativi Tecniche che consentono di approssimare le soluzioni con un prestabilito grado di precisione (0) A partire da una approssimazione iniziale x si costruisce una successione x(1), x(2), tale che, sotto opportune ipotesi, risulta convergere alla radice cercata. E’ importante tener presente tre questioni fondamentali 1. Velocità di convergenza x(1), x(2) , Definizione: data una successione convergente ad un limite α, si ( n) ( n) ponga e x se esistono due numeri reali p 1 e C 0 tali che sia lim n e(n 1) ( n) e p C si dice che la successione ha ordine di convergenza p e fattore di convergenza C. Per p=1 e p=2 la convergenza si dice anche lineare e quadratica. Nel caso p=1 si ha necessariamente C<1. 3 Metodi iterativi 2 2. Scelta del valore di innesco. x (0) Un metodo converge localmente ad α se la convergenza della successione (0) dipende in modo critico dalla vicinanza dix ad α. Il procedimento è (0) globalmente convergente quando la convergenza non dipende da quanto x è vicino ad α. • Per i metodi a convergenza locale la scelta del punto di innesco è cruciale. 3. Criteri di arresto. Chiaramente non è possibile generare infinite iterate della successione x(k ) . Il procedimento dovrebbe arrestarsi quando erel x (k ) toll e(k ) . Una Non disponendo della soluzione è necessario procurarsi una stima di possibile strategia è quella di approssimare e(k ) con x (k 1) x (k ) . Si ottiene il criterio relativo ( k 1) (k ) x x x ( k 1) toll Quando x (k 1) è molto piccolo tale criterio risulta troppo stringente ed è più opportuno usare un criterio di arresto assoluto dato da x (k 1) x (k ) toll 4 Metodi iterativi 3 Fondendo i due criteri si ottiene il seguente Criterio di arresto misto x (k 1) x (k ) tollR x (k 1) toll A Dove tollR e toll A sono rispettivamente la tolleranza relativa ed assoluta. Automaticamente il criterio sarà di tipo assoluto quando x (k ) è molto piccolo e di tipo relativo nei restanti casi. (k ) Si può vedere che x (k 1) x (k ) è asintoticamente una buona stima di e nel caso di convergenza quadratica o superlineare, mentre nel caso di convergenza lineare l’approssimazione sarà tanto migliore quanto la costante C è vicina a zero. 5 Metodo di bisezione Il metodo di bisezione è il metodo iterativo più semplice per approssimare gli zeri reali di una funzione. Ipotesi: 1) f(x) continua nell’intervallo [a,b] 2) f(a) f(b)<0 per il teorema degli zeri ammette almeno una soluzione α di f(x)=0, in (a,b). Si procede suddividendo ad ogni passo l’intervallo [a,b] a metà e determinando in quale dei due sottointervalli si trova la soluzione, dimezzando cosi’ l’ampiezza dell’intervallo che contiene α. ALGORITMO: 1. Si pone a1 a, b1 b 2. Per i=1,2,….,nmax si calcolano ci ai bi e f(ci ) 2 1. Se f (ci ) f (ai ) 0 si pone ai 1 ci ; bi 1 bi 2. Altrimenti se f (ci ) f (ai ) 0 si pone ai 1 ai ; bi 1 ci 3. altrimenti f (ci ) 0, si ha ci 3. Il procedimento viene arrestato se per un indice i risulta f (ci ) bi ai e /o 6 Ampiezza dell’intervallo ed errore Per costruzione ad ogni passo l’ampiezza dell’intervallo e’ dimezzata, dopo n passi arriviamo all’intervallo an , bn di ampiezza b a b an 1 bn 2 an 2 bn an n 1 ... 0 n 0 2 2 2 2 an bn Se come stima di α prendiamo cn abbiamo 2 en cn en Se poniamo b0 a0 otteniamo n da n 1 2 2n 1 b0 a0 b0 a0 2n 1 b a0 n log2 0 1 Il metodo di bisezione converge sempre alla soluzione con la sola ipotesi che f sia continua nell’intervallo [a,b] La convergenza è però lenta e questo costituisce il limite del metodo. Una spiegazione può essere ricercata nel fatto che non si tiene conto dei valori della funzione ma soltanto dei segni. Geometricamente il metodo costruisce ad ogni passo l’approssimazione della radice calcolando l’intersezione con le ascisse della retta passante per i punti (ai , sgn(f (ai )), (bi , sgn(f (bi )) 7 Metodo della regula falsi Un modo naturale per migliorare il metodo di bisezione è quello di considerare anche i valori che la funzione assume negli estremi dell’intervallo e prendere come nuova approssimazione della soluzione l’intersezione delle ascisse con la retta passante per (ak , f (ak )), (bk , f (bk )) Il metodo metodo risultante è noto come metodo regula falsi o della falsa posizione 1. 2. Dato [a0 , b0 ] tale che f (a0 ) f (b0 ) 0 Finchè non sia verificato un criterio di arresto, poni wk (f (bk ) ak f (ak )bk ) /(f (bk ) f (ak )) 1. 2. 3. 3. Se f (ak ) f (wk ) 0, allora ak 1 ak , bk 1 wk Altrimenti ak 1 wk , bk 1 bk k=k+1 wk Il metodo genera una successione di intervalli decrescenti in cui è contenuta la radice è più veloce rispetto al metodi di bisezione, anche se in generale [ak , bk ] 0, per k pertanto il criterio di arresto basato sull’ampiezza dell’intervallo non è applicabile. La scelta dell’intervallo comporta una convergenza globale Si può dimostrare che la velocità di convergenza è lineare: 8 Metodo delle secanti Una variante della regula falsi è il metodo delle secanti in cui sono richieste due approssimazioni iniziali senza alcun’ altra condizione e senza la necessità di controllare il segno di f(x) ( 1) (0) Assegnati due valori iniziali x , x si costruisce la successione x(k ) x(k 1) (k 1) (k ) x x f (x (k ) ) k 0 (k ) ( k 1) f (x ) f (x ) La convergenza del metodo è garantita se le approssimazioni iniziali sono abbastanza vicine alla radice α: convergenza locale. Vale il seguente risultato: f (x) C 2(I ) , essendo I un intorno opportuno della radice, e si assuma f ''( ) 0 ( 1) (0) Allora se i dati iniziali x , x sono scelti in I Teorema: Sia sufficientemente vicini ad α, la successione converge ad α in modo superlineare, con ordine p (1 5) 1.63 2 9 Metodo di Newton Se si vuole migliorare ancora di più la velocità di convergenza è necessario utilizzare più informazioni della funzione. Nel caso in cui essa sia derivabile si può considerare anche la sua derivata f’(x). Sviluppando f in serie di Taylor in un intorno di α ed arrestando lo sviluppo al prim’ordine si ottiene una versione linearizzata del problema f(x)=0. f ( ) 0 f (x) ( x) f '( ) (, x) Assumendo quindi f’(α)≠0 (radice semplice) ed assegnato un valore iniziale x (0) si ottiene il metodo di Newton x (k 1) x (k ) f (x (k ) ) f '(x(k ) ) k 0 Geometricamente si prende come nuova approssimazione l’intersezione delle ascisse con la retta tangente in (x(k ), f (x(k ) )) Alla k-esima iterazione questo metodo richiede due (k ) (k ) valutazioni funzionali f (x ) e f '(x ). L’aumento del costo computazionale è compensato dal fatto che la convergenza (locale) è di ordine superiore al primo. In generale è quadratica 10 Metodi di iterazione funzionale La ricerca degli zeri di una funzione f è ricondotta allo studio dei punti fissi di un’opportuna funzione g f ( ) 0 g( ) La successione delle approssimazioni sarà definita come x(k 1) g(x(k ) ) La funzione di iterazione g non è unica e può essere costruita nei modi più diversi, ma non tutti daranno luogo a strumenti efficienti. Bisogna studiare sotto quali condizioni la successione delle iterate appartenga sempre al dominio di f e sia convergente ad α. Teorema: Data la successione x(k 1) g(x(k ) ) per k 0 e x(0) assegnato. Supponiamo che la funzione g soddisfi le seguenti condizioni (i) g: [a,b] →[a,b] 1 (ii) g C [a, b] (iii) k 1 : g '(x) k x [a, b] Allora g ha un unico punto fisso α in [a,b] e la successione delle iterate da essa generate converge ad α, per ogni scelta del punto iniziale in [a,b]. Inoltre x (k 1) lim (k ) g '( ) k x dim. L’ipotesi (i) e la continuità di g (implicita in (ii)) garantiscono che g abbia almeno un punto fisso in [a,b]. L’hp (iii) assicura che g è una contrazione per cui il punto fisso è unico 11 (si dimostra per assurdo). Metodi di iterazione funzionale 2 Per dimostrare che la successione converge si considera x(k 1) g(x(k ) ) g( ) applicando il teorema della media g '( (k ) ) ( x (k ) ) dove (k ) ( , x (k ) ) k 1 per ( iii ) x (k 1) k x (k ) k k 1 x (0) per cui lim x (k 1) 0 k Inoltre dalla continuità di g’ si ha lim k x(k 1) x (k ) lim g '( (k ) ) g '( ) 12 Convergenza Risultato importante teoricamente, ma nella pratica è difficile stabilire a priori l’intervallo [a,b] in cui sono soddisfatte le ipotesi. Teorema (Otrowski): Sia α un punto fisso di g C 1[ , ]. Se x(0) [ , ], g '(x) 1, x [ , ], allora la successione delle iterate generata da g è tale che (k ) x (unico punto fisso) (a) (k ) (b) x [ , ], La convergenza può esserci in insiemi molto più grandi di quelli in cui g '( ) 1 (condizione sufficiente, convergenza locale) 1 g '( ) 0 convergenza alternata 0 g '( ) 1 convergenza monotona 13 Ordine di convergenza Per i metodi di iterazione funzionale è possibile anche dare una relazione tra ordine del metodo e molteplicità di α rispetto a g’ Teorema: Sia I (opportuno intervallo) punto fisso di g C p[I ], con p 2 (k ) (i ) (0) Se per un punto x I la successione x è convergente e se g ( ) 0 per i=1,....p-1 e g( p)( ) 0 allora il metodo ha ordine di convergenza p e risulta x (k 1) g( p)( ) lim k x (k ) p p! A parità di ordine di convergenza p, quanto più piccola risulterà la ( p) quantità g ( ) / p ! tanto più veloce sarà la convergenza delle iterate ad α 14 Convergenza metodo di Newton Il metodo di Newton può essere visto come un metodo di iterazione funzionale con la funzione g data da g(x ) x f (x ) f '(x) f ''(x) f (x) 2 g '( ) 0 Osservando che se f C e f '( ) 0 : g '(x) (f '(x ))2 il metodo è localmente sempre convergente La convergenza è quadratica per radici semplici e si riduce a lineare per radici multiple. Risultati di convergenza globale: Teorema: Sia f C 2[ ] tale che (i) f (x) f ''(x) 0 in ( ] (ii) f '(x) 0 in ( ) x0 ( ] la successione originata dal metodo di Newton DECRESCE monotonicamente ad α. Per gli intorni sinistri [α+ρ, α) si ottiene una successione che converge in modo monotono CRESCENTE ad α. 15 Sistemi non lineari La maggior parte dei metodi considerati per il caso monodimensionale possono venire generalizzati con successo al caso di sistemi. Tra essi non ci possono essere quei metodi che considerano, ad ogni iterazione, una scelta opportuna di un intervallo in cui era compresa la radice (bisezione, regula falsi). n n * n * Problema: data F : R R , trovare x R tale che F(x ) 0 Tra i metodi il più usato è l’estensione vettoriale del metodo di Newton x ( k 1) x (k ) 1 JF (x(k ) ) F(x(k ) ) dove JF (x) indica la matrice Jacobiana JF (x)i , j Fi (x) x j Dal punto di vista implementativo il metodo può essere riscritto considerando, ad ogni iterazione, due sottopassi Risolvere JF (x(k ) ) δx(k ) F(x(k ) ) Calcolare x(k 1) x(k ) δx(k ) (k ) J ( x ) Ad ogni passo k si deve risolvere un sistema lineare con matrice F 16 Per quanto riguarda la convergenza si può dimostrare (risultato dovuto a Kantorovich) che se la matrice Jacobiana è non singolare, partendo da una approssimazione iniziale x(0) sufficientemente buona, il processo * iterativo genera una successione convergente alla radice x L’ordine di convergenza è quadratico La sensibilità del metodo alla scelta del punto iniziale è molto più marcata che nel caso scalare Il costo richiesto ad ogni passo per la risoluzione del sistema lineare è molto elevato per n grande La matrice Jacobiana può essere malcondizionata dando luogo a soluzioni non necessariamente accurate. VARIANTI METODO DI NEWTON 17 Varianti metodo di Newton Valutazione ciclica della matrice Jacobiana: si mantiene la stessa matrice Jacobiana per un certo numero p>1 di iterazioni: metodo di Newton modificato. L’aumento di efficienza è pagato da una velocità di convergenza più bassa. Risoluzione inesatta dei sistemi lineari: si risolvono i sistemi lineari con un metodo iterativo (facendone solo alcuni passi); per esempio Jacobi, Gauss-Seidel o Gauss-Seidel con rilassamento: metodi di Newton inesatti. Approssimazione Jacobiana con rapporti incrementali: ad ogni passo si considera al posto della matrice Jacobiana una sua approssimazione mediante rapporti incrementali n-dimensionali (come vantaggio non si deve calcolare le n2 derivate parziali costituenti J(x) (k ) ( Jh ) j F(x(k ) h(j k )e j ) F(x(k ) ) (k ) j h , k 0 18 Metodi di iterazione funzionale Come nel caso monodimensionale il problema può essere riformulato in modo da trovale la soluzione come punto fisso di una opportuna funzione di iterazione Data G : Rn Rn , trovare x* Rn tale che G(x* ) x* Si considerano metodi iterativi della forma x(k 1) G(x(k ) ) Teorema: Se x*è punto fisso di G, condizione sufficiente per la convergenza alla radice , del metodo iterativo è che esistano due numeri positivi K e ρ, con K<1, tali che si abbia * G(x) K , x D x : x x (0) * purché x sia scelto in D ; in tal caso x è l’unico punto fisso di G in D 19 Per quanto riguarda l’ordine di convergenza, il teorema monodimensionale non può essere esteso direttamente, tuttavia se esistono continue le derivate seconde delle componenti di G, si può dimostrare che condizione sufficiente perché il metodo (se converge al punto fisso) converga linearmente è che sia G(x* ) 0 Se G(x* ) 0 la convergenza è almeno quadratica ed è esattamente quadratica se risulta non nulla almeno una delle matrici hessiane 2Gi 2 x 1 Hi (x* ) 2 Gi x x n 1 2Gi x1 x2 2Gi xnx2 2Gi x1 xn 2 Gi xn2 x x* 20