La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Ottimizzazione non lineare non vincolata: Metodi iterativi di eliminazione ed interpolazione per ottimizzazione di funzione di una variabile maggio '11.

Presentazioni simili


Presentazione sul tema: "Ottimizzazione non lineare non vincolata: Metodi iterativi di eliminazione ed interpolazione per ottimizzazione di funzione di una variabile maggio '11."— Transcript della presentazione:

1 Ottimizzazione non lineare non vincolata: Metodi iterativi di eliminazione ed interpolazione per ottimizzazione di funzione di una variabile maggio '11 MOSPE

2 Ottimizzazione non lineare non vincolata
Il problema di ottimizzazione non lineare non vincolata di funzione di una variabile viene posto nella forma: f*=min {f(x)} dove x (1) dove f (funzione non lineare) è la cosiddetta funzione obiettivo Il problema (1) è equivalente al problema: f*=-max {-f(x)} dove x (2) f ( x) - maggio '11 MOSPE

3 Metodi iterativi di discesa
La ricerca di una soluzione ottimale per un problema di ottimizzazione non lineare viene condotta utilizzando algoritmi iterativi di discesa Si tratta di metodi iterativi che percorrono una traiettoria composta da una successione di soluzioni ammissibili, effettuando ad ogni iterazione uno spostamento lungo una direzione ammissibile, in modo che il valore della funzione obiettivo per la nuova soluzione sia inferiore al valore per la soluzione precedente L’efficienza di un metodo di ricerca consiste nell’ottenere una prescelta approssimazione del punto di minimo con il minor numero possibile di tentativi maggio '11 MOSPE

4 Classificazione di metodi iterativi
Metodi di eliminazione: Ricerca illimitata Ricerca esaustiva Metodo di bisezione (dicotomico) Metodo di Fibonacci Metodo della sezione aurea I metodi di eliminazione possono essere usati anche per ottimizzazione di funzioni discontinue e non differenziabili in quanto non utilizzano la derivata della funzione obiettivo!!! Metodi di interpolazione: Quadratica Cubica Ricerca diretta di radici: Newton quasi-Newton del gradiente maggio '11 MOSPE

5 Funzione unimodale I metodi di bisezione, di Fibonacci e della sezione aurea richiedono che la funzione da minimizzare sia unimodale o sia dotata di un unico punto di minimo, su un intervallo chiuso [a,b] La funzione [a,b] xf(x) si definisce unimodale se x1<x2<x*  f(x2)<f(x1) e x2>x1>x*  f(x1)<f(x2) dove x* è il punto minimo della funzione. In altre parole - esiste un valore x* [a,b] tale che la funzione è strettamente decrescente per x<x* e strettamente crescente per x*>x - o viceversa maggio '11 MOSPE

6 Funzione unimodale vs funzione multimodale
maggio '11 MOSPE

7 Ricerca illimitata Un metodo elementare di ricerca del punto ottimale della funzione f è basato sull’uso di passo fisso e spostamento, da un punto iniziale scelto, nella direzione favorevole (positiva o negativa). Il passo usato deve essere piccolo in relazione con l’accuratezza finale desiderata Nella ricerca illimitata (ed in tutti gli altri metodi di eliminazione) si assume che la funzione f sia unimodale. Nel caso di funzione multimodale l’intervallo di esplorazione per la funzione viene suddiviso in diverse parti in ciascuna della quali la funzione è unimodale. maggio '11 MOSPE

8 Esempio di ricerca non limitata con passo fisso
maggio '11 MOSPE

9 Algoritmo (1) Inizializzazione con una stima iniziale, x1
Calcolo di f1=f(x1) Calcolo di x2=x1+s dove s è il passo prescelto Calcolo di f2=f(x2) Se f2<f1 e il problema è un problema di minimizzazione, l’ipotesi di unimodalità indica che il minimo non può trovarsi per x<x1, quindi la ricerca può essere continuata lungo i punti x3, x4… usando la ipotesi di unimodalità durante la verifica di ogni coppia dei punti. La procedura viene continuata fin quando il valore di f in un punto xi=x1+(i-1)s comincia a crescere Terminazione della procedura nel punto xi-1 maggio '11 MOSPE

10 Algoritmo (1) Se all’inizio f2>f1 la ricerca deve essere svolta nella direzione opposta cioè per i punti x-2, x-3…, dove x-j=x1-(j-1)s Se f2=f1 il minimo cercato sta tra x2 e x1 e quindi il punto di minimo può essere scelto sia in x2 sia in x1 Se sia f2 sia f-2 sono più grandi di f1, questo implica che il minimo si trova nell’intervallo x-2<x<x2 maggio '11 MOSPE

11 Passo accelerato Anche se la ricerca con passo fisso sembra molto semplice, la maggiore limitazione viene dal fatto della natura non limitata del regione dove si può trovare il minimo Per esempio se il punto minimo di una certa funzione f si trova a x*=50000 e, in assenza di conoscenza della sua posizione, x1 ed s vengono scelti come 0 e 0.1, la funzione f deve essere valutata volte per trovare il minimo! Per risolvere questo problema, per esempio, in ogni iterazione il passo può essere raddoppiato. Successivamente, per ottenere una sufficiente accuratezza, la procedura di base può essere applicata all’intervallo (xi-1,xi) cominciando da xi-1 o xi maggio '11 MOSPE

12 Esempio numerico di ricerca con passo fisso
Trova il minimo della funzione f=x(x-1.5) cominciando da x1=0 e s=0.05 i s xi= x1 +(i-1)s fi fi>fi-1 1 - 0.0 2 0.05 No 3 0.10 -0.140 16 0.75 17 0.80 -0.560 Si maggio '11 MOSPE

13 Esempio numerico di ricerca con passo accel.
Trova il minimo della funzione f=x(x-1.5) cominciando da x1=0 e s=0.05 i s xi= x1 +s fi fi>fi-1 1 - 0.0 2 0.05 No 3 0.10 -0.140 4 0.20 -0.260 5 0.40 -0.440 6 0.80 -0.560 7 1.60 +0.160 Si maggio '11 MOSPE

14 Ricerca esaustiva La ricerca esaustiva può essere usata per la soluzione dei problemi in cui l’intervallo in cui si trova il minimo è finito. Si denotano con xs ed xf rispettivamente il punto iniziale e finale dell’intervallo di ricerca Il metodo consiste nella valutazione (simultanea) della funzione obiettivo in un determinato numero di punti distribuiti uniformemente nell’intervallo (xs, xf) e riducendo intervallo di incertezza usando l’assunzione di unimodalità maggio '11 MOSPE

15 Metodo di bisezione (dicotomico)
Nel metodo di bisezione esattamente la metà dell’intervallo corrente viene scartata in ogni iterazione Il metodo richiede tre punti iniziali e due punti sperimentali in ogni iterazione della procedura maggio '11 MOSPE

16 Algoritmo Suddivisione dell’intervallo di incertezza L0=[a,b] in 4 parti uguali, con x0 al centro Valutazione della funzione obiettivo f nei punti x0, x1 ,x2 Se: f(x2)>f(x0)>f(x1) cancella [x0,b] e sostituisci x0 = x1 e b=x0 f(x2)<f(x0)<f(x1) cancella [a,x0] e sostituisci x0 =x2 e a=x0 f(x1)>f(x0) e f(x2)> f(x0) cancella [a,x1] e [x2,b] e sostituisci a=x1 e b=x2 Controlla se il nuovo intervallo L=b-a soddisfa il criterio di convergenza L<=epsilon; se converge finisci la procedura se no torna al punto 1 maggio '11 MOSPE

17 Esempio numerco di metodo di bisezione
Trovare il minimo della funzione f=x(x-1.5) nell’intervallo [0,1] con epsilon=0.1 e epsilon=0.01 maggio '11 MOSPE

18 Metodo di Fibonacci Il metodo di Fibonacci può essere applicato per la ricerca del minimo di una funzione di una variabile anche non continua. Come tanti altri metodi di eliminazione esistono le seguenti limitazioni per quanto riguarda l’uso del metodo: L’intervallo iniziale di incertezza deve essere noto La funzione obiettivo deve essere unimodale in questo intervallo La soluzione esatta non può essere trovata – solo un intervallo finale di incertezza Il numero di valutazioni della funzione o la risoluzione deve essere specificato all’inizio della procedura maggio '11 MOSPE

19 Numeri di Fibonacci Il metodo usa la sequenza di numeri di Fibonacci Fn, definiti tramite la relazione ricorsiva: F0=F1=1 Fn=Fn-1+Fn-2 n=2,3,4,… che determina la successione: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144,… L’algoritmo si basa sulla valutazione della funzione obiettivo f in corrispondenza di una successione finita di n punti, e ricava un intervallo di incertezza, di ampiezza decrescente con n, all’interno del quale si colloca la soluzione ottimale. maggio '11 MOSPE

20 Algoritmo (1) Inizializzazione con due punti di tentativo x1 e x2 posti a distanza L2*=Fn-2/Fn·L0 dagli estremi dell’intervallo L0=[a,b] dove n è il numero totale di valutazioni: x1=a+ L2*=a+ Fn-2/Fn·L0 x2=b-L2*=b- Fn-2/Fn·L0 =a+ Fn-1/Fn·L0 (se un punto è posto alla distanza Fn-2/Fn·L0 da un estremo dell’intervallo, sarà posto alla distanza Fn-1/Fn·L0 dall’altro estremo) Sulla base di assunzione di unimodalità una parte dell’intervallo viene scartata; il rimanente intervallo di incertezza ha lunghezza L2 definita: L2=L0-L2*=L0(1-Fn-2/Fn)= Fn-1/Fn·L0 e contiene uno dei punti di tentativo alla distanza: L2*= Fn-2/Fn·L0= Fn-2/Fn-1·L2 da un lato e L2 -L2*= Fn-3/Fn·L0= Fn-3/Fn-1·L2 dall’altro lato dell’intervallo L2 maggio '11 MOSPE

21 Algoritmo (2) Si procede con il terzo tentativo x3 nell’intervallo L2 alla distanza: L3*= Fn-3/Fn·L0= Fn-3/Fn-1·L2 da ogni lato dell’ intervallo L2 Usando la condizione di unimodalità l’intervallo di incertezza viene ridotto all’intervallo L3: L3=L2-L3*=L2- Fn-3/Fn-1·L2= Fn-2/Fn-1·L2 = Fn-2/Fn·L0 Il processo viene continuato con: Lj*= Fn-j/Fn-(j-2)·Lj-1 Lj = Fn-(j-1)/Fn·L0 Dopo un numero di passi uguale a j il rapporto tra l’intervallo determinato e quello residuo è uguale a: Lj /L0 = Fn-(j-1)/Fn Per j=n abbiamo: Ln /L0 = F1/Fn =1/Fn maggio '11 MOSPE

22 Esempio numerico di metodo di Fibonacci
Trova un minimo di f(x)=0.65-[0.75/(1+x2)]-0.65xtan-1(1/x) su intervallo [0,3] usando n=6 n=6, L0=3 L2*=Fn-2/Fn·L0=5/13·3= x1= f(x1)= x2= = f(x2)= f(x1)<f(x2)  [x2,3] viene scartato x3=0+(x2-x1)= f(x3)= f(x1)>f(x3)  [x1, x2] viene scartato (…..) L0 L2* L2* L2 x2 x1 x3 maggio '11 MOSPE

23 Metodo della sezione aurea
Il metodo della sezione aurea è simile al metodo di Fibonacci eccetto che nel metodo di Fibonacci il numero totale di tentativi viene specificato all’inizio per determinare la posizione iniziale dei punti; nel metodo della sezione aurea si assume che il numero di tentativi sia molto grande (n∞) È possibile dimostrare che con n∞ abbiamo: limn∞Fn-1/Fn=1/π10.618 dove π11.618 è una radice dell’equazione x2=x+1 e costituisce la sezione aurea, già nota nell’antica Grecia Nel metodo i punti iniziali x1 e x2 vengono scelti in corrispondenza di: L2*=Fn-2/Fn·L0 =Fn-2/Fn-1·Fn-1/Fn·L0=L0/π12=0.382L0 maggio '11 MOSPE

24 Sezione aurea La sezione aurea, nell'ambito dell‘arte e della matematica, indica il rapporto fra due grandezze disuguali, delle quali la maggiore è medio proporzionale tra la minore e la somma delle due, mentre lo stesso rapporto esiste anche tra la grandezza minore e la loro differenza. In formule, indicando con a la lunghezza maggiore e con b la lunghezza minore, vale la relazione: (a+b) : a = a : b = b : (a-b) maggio '11 MOSPE

25 Arco di Traiano e sezione aurea
maggio '11 MOSPE

26 Confronto dei metodi di eliminazione
Metodo Error: 1/2·Ln/L0<=0.1 Error: 1/2·Ln/L0<=0.01 Ricerca esaustiva n>=9 n>=99 Metodo di bisezione n>=7 n>=13 Metodo di Fibonacci n>=4 Metodo della sezione aurea n>=5 n>=10 maggio '11 MOSPE

27 Metodo di Fibonacci – sviluppo dell’algoritmo in Matlab
maggio '11 MOSPE

28 Ricerca diretta di radici (libro)
Metodo di Newton Metodo quasi Newtoniano Metodo della secante Metodo di Newton generalizzato maggio '11 MOSPE

29 Convergenza (1) Convergenza (def. 1): La sequenza xi delle iterazioni converge alla soluzione α se: Convergenza (def. 2): La sequenza xi delle iterazioni converge alla soluzione α se, dato un ε>0 qualsiasi, esiste un intero n0 tale per cui con n≥n0 si ha: Convergenza lineare: La sequenza xi delle iterazioni converge linearmente alla soluzione α se esiste una costante c con 0<c<1 ed un intero n≥0 tali per cui: maggio '11 MOSPE

30 Convergenza (2) Convergenza superlineare: La sequenza xi delle iterazioni converge superlinearmente alla soluzione α se, per qualche sequenza cn che converge a 0, esiste un intero n≥0 tali per cui: Convergenza di ordine p: La sequenza xi delle iterazioni converge con ordine p ≥ 1 alla soluzione α se, per qualche c>0, esiste un intero n ≥ 0 tale per cui: p è anche detto ordine di convergenza del metodo. maggio '11 MOSPE

31 Metodo di Newton (1) Osserviamo che: fornisce l’equazione della retta tangente alla curva (x,f’(x)) nel punto x(k). maggio '11 MOSPE

32 Metodo di Newton (2) maggio '11 MOSPE

33 Metodo di Newton (3) Il processo iterativo può essere arrestato quando: maggio '11 MOSPE

34 Arresto del metodo di Newton
Il residuo fornisce una stima accurata dell’errore solo quando la funzione f’ ha andamento pressoché lineare in un intorno della soluzione. maggio '11 MOSPE

35 Divergenza del metodo di Newton
maggio '11 MOSPE

36 Approssimazione delle derivate (1)
Consideriamo una funzione f:[a,b]→R che sia derivabile con continuità in [a,b]. Vogliamo approssimarne la derivata prima in un generico punto x di (a,b). Per h sufficientemente piccolo e positivo, la quantità: che viene detta differenza finita in avanti, rappresenti una approssimazione di f(x). maggio '11 MOSPE

37 Approssimazione delle derivate (2)
Per quantificare l’errore commesso, consideriamo lo sviluppo di Taylor al second’ordine di f in un intorno destro di x di ampiezza h>0. Avremo: dove è un punto in (x,x+h). Pertanto: e quindi approssima f’(x) a meno di un errore che tende a 0 come h (cioè approssimante è accurato al prim’ordine) maggio '11 MOSPE

38 Approssimazione delle derivate (3)
In maniere analoga possiamo ottenere la seguente formula, detta differenza finita all’indietro: sempre accurata di ordine 1. Introduciamo infine la formula della differenza finta centrale: che è un’approssimazione del second’ordine di f’(x) rispetto a h. maggio '11 MOSPE

39 Approssimazione delle derivate (4)
La quantità: fornisce una approssimazione di f’’(x) di ordine 2 rispetto a h. maggio '11 MOSPE

40 Metodo quasi Newtoniano (1)
k k k k k maggio '11 MOSPE

41 Metodo quasi Newtoniano (2)
maggio '11 MOSPE

42 Metodo della secante (1)
maggio '11 MOSPE

43 Metodo della secante (2)
maggio '11 MOSPE

44 Metodo della secante (3)
maggio '11 MOSPE

45 Esempio I (1) maggio '11 MOSPE

46 Esempio I (2) maggio '11 MOSPE

47 Esempio I (3) maggio '11 MOSPE

48 Esempio I (4) maggio '11 MOSPE

49 Esempio II (1) maggio '11 MOSPE

50 Esempio II (2) maggio '11 MOSPE

51 Esempio II (3) maggio '11 MOSPE

52 Esempio II (4) maggio '11 MOSPE

53 Esempio II (4) maggio '11 MOSPE

54 Esempio II (5) maggio '11 MOSPE

55 Metodo di Newton generalizzato (1)
Abbiamo visto che: consente di approssimare lo zero di f’(x) con una successione di valori x(k) a partire da un dato iniziale x(0). Il metodo si può estendere per una funzione di n variabili: maggio '11 MOSPE

56 Metodo di Newton generalizzato (2)
Si ha: dove f(x) è il vettore definito come: con componenti f’i(x), i=1,…,n e H(x) la matrice Hessiana di cui elementi (i,j) sono definiti come: maggio '11 MOSPE


Scaricare ppt "Ottimizzazione non lineare non vincolata: Metodi iterativi di eliminazione ed interpolazione per ottimizzazione di funzione di una variabile maggio '11."

Presentazioni simili


Annunci Google