Laboratorio Complementi di Ricerca Operativa DEI, Politecnico di Milano. Stima di parametri



Documenti analoghi
Basi di matematica per il corso di micro

Capitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano

Appunti delle esercitazioni di Ricerca Operativa

Energia e Lavoro. In pratica, si determina la dipendenza dallo spazio invece che dal tempo

Richiami di algebra lineare e geometria di R n

2. Leggi finanziarie di capitalizzazione

Ottimizazione vincolata

FUNZIONI ELEMENTARI - ESERCIZI SVOLTI

Forze, leggi della dinamica, diagramma del. 28 febbraio 2009 (PIACENTINO - PREITE) Fisica per Scienze Motorie

Se x* e punto di minimo (locale) per la funzione nell insieme Ω, Ω = { x / g i (x) 0 i I, h j (x)= 0 j J } lo e anche per F(x) = f o (x) + c x x 2

FUNZIONI CONVESSE. + e x 0

minimize f(x 1,x 2 ) = 1 2 x2 1 + a 2 x2 2

. Si determina quindi quale distanza viene percorsa lungo l asse y in questo intervallo di tempo: h = v 0y ( d

Appunti sul corso di Complementi di Matematica - prof. B.Bacchelli Equazioni differenziali lineari omogenee a coefficienti costanti.

Introduzione al MATLAB c Parte 2

ENERGIA. Energia e Lavoro Potenza Energia cinetica Energia potenziale Principio di conservazione dell energia meccanica

Selezione di un portafoglio di titoli in presenza di rischio. Testo

Modulo di Meccanica e Termodinamica

Funzioni. Il concetto di funzione nasce da quello di corrispondenza fra grandezze. Tale corrispondenza può essere data in svariati modi:

Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale

Analisi 2. Argomenti. Raffaele D. Facendola

1 Serie di Taylor di una funzione

VC-dimension: Esempio

Matematica generale CTF

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t)

Funzioni di più variabili. Ottimizzazione libera e vincolata

2 Argomenti introduttivi e generali

Note a cura di M. Martellini e M. Zeni

La Minimizzazione dei costi

Problema del trasporto

Esempio. Approssimazione con il criterio dei minimi quadrati. Esempio. Esempio. Risultati sperimentali. Interpolazione con spline cubica.

bensì una tendenza a ruotare quando vengono applicate in punti diversi di un corpo

Indice. 1 Introduzione alle Equazioni Differenziali Esempio introduttivo Nomenclatura e Teoremi di Esistenza ed Unicità...

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Modelli di Ottimizzazione

e-dva - eni-depth Velocity Analysis

LA FORZA. Il movimento: dal come al perché

PROBLEMI TRADIZIONALI SIMULAZIONE DELLA PROVA DI MATEMATICA

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza

Dimensione di uno Spazio vettoriale

EQUAZIONI DIFFERENZIALI. 1. Trovare tutte le soluzioni delle equazioni differenziali: (a) x = x 2 log t (d) x = e t x log x (e) y = y2 5y+6

Funzioni inverse Simmetrie rispetto alla bisettrice dei quadranti dispari. Consideriamo la trasformazione descritta dalle equazioni : = y

ESAME DI STATO DI LICEO SCIENTIFICO CORSO SPERIMENTALE P.N.I. 2004

Capitolo 1 ANALISI COMPLESSA

INTEGRALI DEFINITI. Tale superficie viene detta trapezoide e la misura della sua area si ottiene utilizzando il calcolo di un integrale definito.

EQUAZIONI non LINEARI

Moto circolare uniforme

Verifica sperimentale del principio di conservazione dell'energia meccanica totale

GIROSCOPIO. Scopo dell esperienza: Teoria fisica. Verificare la relazione: ω p = bmg/iω

FISICA MATEMATICA 1 A.A. 2014/15 Problemi dal libro di testo: D. Giancoli, Fisica, 2a ed., CEA Capitolo 6

Limiti e continuità di funzioni reali di una variabile

A i è un aperto in E. i=1

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

La Programmazione Lineare

Esercitazioni di Calcolo Numerico 23-30/03/2009, Laboratorio 2

Massimi e minimi vincolati di funzioni in due variabili

9. Urti e conservazione della quantità di moto.

Ricerca Operativa Esercizi sul metodo del simplesso. Luigi De Giovanni, Laura Brentegani

Ottimizzazione Multi Obiettivo

METODI ITERATIVI PER SISTEMI LINEARI

1. Sia dato un poliedro. Dire quali delle seguenti affermazioni sono corrette.

CAPITOLO 3 FONDAMENTI DI ANALISI DELLA STABILITA' DI SISTEMI NON LINEARI

LE FUNZIONI A DUE VARIABILI

2 + (σ2 - ρσ 1 ) 2 > 0 [da -1 ρ 1] b = (σ ρσ1 σ 2 ) = (σ 1

risulta (x) = 1 se x < 0.

Equazioni non lineari

Nome..Cognome.. Classe 4G 4 dicembre VERIFICA DI FISICA: lavoro ed energia

Esistenza di funzioni continue non differenziabili in alcun punto

Funzioni con dominio in R 2

Documentazione esterna al software matematico sviluppato con MatLab

Applicazioni del calcolo differenziale allo studio delle funzioni

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

TSP con eliminazione di sottocicli

LEZIONE 23. Esempio Si consideri la matrice (si veda l Esempio ) A =

09 - Funzioni reali di due variabili reali

Matematica 1 - Corso di Laurea in Ingegneria Meccanica

Forze come grandezze vettoriali

Esempi di funzione. Scheda Tre

Condizionamento del problema

Cap 3.1- Prima legge della DINAMICA o di Newton

LE FIBRE DI UNA APPLICAZIONE LINEARE

CONTINUITÀ E DERIVABILITÀ Esercizi risolti

~ Copyright Ripetizionando - All rights reserved ~ STUDIO DI FUNZIONE

Corrispondenze e funzioni

,,,,,,

Esercizio 2 Si consideri la funzione f definita dalle seguenti condizioni: e x. per x 1 f(x) = α x + e 1 per 1 < x

a t Esercizio (tratto dal problema 5.10 del Mazzoldi)

ISTITUZIONI DI MATEMATICHE E FONDAMENTI DI BIOSTATISTICA 7. DERIVATE. A. A L. Doretti

TSP con eliminazione di sottocicli

Proposta di soluzione della prova di matematica Liceo scientifico di Ordinamento

Matematica e Statistica

Lezione 9: Cambio di base

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE

Intorni Fissato un punto sull' asse reale, si definisce intorno del punto, un intervallo aperto contenente e tutto contenuto in

1. LE GRANDEZZE FISICHE

Modelli per la gestione delle scorte

MATEMATICA GENERALE - (A-D) Prova d esame del 7 febbraio FILA A

Interpolazione ed approssimazione di funzioni

Computational Game Theory

RICERCA OPERATIVA GRUPPO B prova scritta del 22 marzo 2007

Transcript:

Stima di parametri Il gestore di un sito turistico dove si pratica il bungee-jumping deve fornire alla sovrintendenza municipale un documento che riguarda la sicurezza del servizio fornito. Il documento chiede in particolare che siano stimate la costante di rigidità della corda (approssimata in questo caso a una molla) e il coefficiente di frizione dell aria durante la caduta (si assume che non ci sia vento). Il gestore dispone di un campionamento di 10 osservazioni (prese in vari istanti temporali) che riguardano posizione verticale, velocità e accelerazione di un corpo da 75kg in caduta, come da tavola seguente. Campione Posizione Velocità Accelerazione 1 0.00000 0.00000 9.80000 2 1.49407 4.09921 2.51785 3 5.08617 3.69224-1.91904 4 8.13735-0.01369-2.40609 5 4.19690-4.08376-1.49847 6 0.47600-2.74398 6.82717 7 0.31475 2.27558 7.77440 8 3.11767 4.36378-0.58929 9 7.16305 2.15017-2.33155 10 6.99693-2.32061-2.31096 Si formuli un modello di programmazione matematica senza vincoli per risolvere il problema, e si risolva l istanza considerata per mezzo di Matlab. Documento preparato da Leo Liberti 1

Soluzione Le forze agenti sul corpo in caduta sono: la gravità F 1 (t) = mg (dove m è la massa del corpo e g è l accelerazione di gravità), la tensione della corda elastica (si assume l utilizzo della forza di Hooke con coefficiente k) F 2 (t) = kx(t) e l attrito dell aria con coefficiente f, che dipende dal quadrato della velocità: F 3 (t) = fv(t) 2, dove x(t) e v(t) sono la posizione verticale (si assume che la direzione positiva sia verso il basso) e la velocità del corpo al tempo t. L equazione di moto del corpo è: F (t) = 3 F i (t) = ma(t), dove a(t) è l accelerazione del corpo al tempo t. Di qui si ottiene ẍ = g k m x f mẋ2, dove ẋ = v e ẍ = a. Le costanti g, k, f sono tutte non negative. Il problema chiede di usare le osservazioni campionate per effettuare una stima di k e f. Riscriviamo l equazione di moto usando i simboli (x, v, a); otteniamo a + k m x + f m v2 g = 0. (1) In altre parole, le triple (x i, v i, a i ) campionate (per i n, con n = 10) devono obbedire approssimativamente al modello lineare (1). Avremo dunque, per ogni i n, a i + k m xi + f m (vi ) 2 g = ɛ i, dove ɛ i è un errore sperimentale. L errore accumulato su tutti i campionamenti è dato da ɛ = n ɛ i 2. Il problema da risolvere è quello di minimizzare l errore accumulato come funzione dei parametri da stimare k, f: min k,f n a i + k m xi + f m (vi ) 2 g 2. (2) Dato che la funzione norma è convessa (si veda il Riquadro 1), che il quadrato di una funzione non-negativa convessa è convesso (si veda il Riquadro 2) e che la somma di funzioni convesse è convessa (si veda il Riquadro 3), il problema (2) è un problema nonlineare convesso. Dato infine che in un problema convesso ogni ottimo locale è anche un ottimo globale (si veda il Riquadro 4), il problema può essere risolto mediante un algoritmo di ottimizzazione locale come per esempio il metodo di Newton (si veda il Riquadro 5). Dato che per ogni i n si ha che a i + k m xi + f m (vi ) 2 g 2 = = (a i g) 2 + 2xi m (ai g)k + 2(vi ) 2 m (ai g)f + (x i /m) 2 k 2 + ( 2xi (v i ) 2 m 2 )kf + ((v i ) 2 /m) 2 f 2, Documento preparato da Leo Liberti 2

Riquadro 1. Una funzione f : S R n R si dice convessa su S se per ogni x, y S e per ogni λ [0, 1] si ha: f(λx + (1 λ)y) λf(x) + (1 λ)f(y). (3) Geometricamente, questo significa che il segmento tra (x, f(x)) e (y, f(y)) si trova sopra il valore di f valutato per ogni punto del segmento. Consideriamo ora f(x) = x, dove è una norma (non si assume necessariamente la norma Euclidea). Si ha λx + (1 λ)y λx + (1 λ)y per la disuguaglianza triangolare; dato che la norma è lineare rispetto alla moltiplicazione scalare, si ha anche che prova la convessità della norma. λx + (1 λ)y λ x + (1 λ) y, Figura 1: Convessità della norma. Riquadro 2. Sia f : S R n R + una funzione convessa su S a valori non-negativi; si ha dunque che per x, y S e λ [0, 1], f(λx+(1 λ)y) λf(x)+(1 λ)f(y). Sia ora g : R R data da g(x) = x 2 (si dimostri, come esercizio, che g è convessa su R). Si consideri la funzione h data dalla composizione di g e f: dimostriamo che h = g f è una funzione convessa. Siano x, y S e λ [0, 1]. Per la convessità di f, si ha f(λx + (1 λ)y) λf(x) + (1 λ)f(y). Dato che f ha valori non-negativi, g è non decrescente (il quadrato di quantità positive è una funzione strettamente crescente), quindi mantiene la direzione delle disuguaglianze. In particolare, g(f(λx + (1 λ)y)) g(λf(x) + (1 λ)f(y)). Ora, dato che g è convessa, si ha g(λf(x) + (1 λ)f(y)) λg(f(x)) + (1 λ)g(f(y)). Dalle due disuguaglianze si desume che h(λx + (1 λ)y) λh(x) + (1 λ)h(y), che implica che h è convessa. Si noti che questa dimostrazione vale per ogni coppia di funzioni convesse f, g con g non descrescente e tali che la composizione g f possa essere definita. Figura 2: Il quadrato di una funzione convessa è convesso. la funzione obiettivo di (2) può essere scritta come F (k, f) = c 1 +c 2 k +c 3 f +c 4 k 2 +c 5 kf + c 6 f 2, dove c 1 = n (a i g) 2, c 2 = n c 4 = n (x i /m) 2, c 5 = n 2x i (a i g) m, c 3 = n 2x i (v i ) 2 2(v i ) 2 (a i g) m,, c m 2 6 = n (v i ) 4 /m 2. Dunque il problema min F (k, f) è un problema di minimizzazione della forma quadratica convessa in due variabili raffigurata in Fig. 7. Verifichiamo ora che il metodo di Newton può essere utilizzato per la soluzione del Documento preparato da Leo Liberti 3

Riquadro 3. Siano f, g : S R n R due funzioni convesse su S, e siano x, y S e λ [0, 1]. Si ha allora che f(λx + (1 λ)y) λf(x) + (1 λ)f(y) g(λx + (1 λ)y) λg(x) + (1 λ)g(y) da cui f(λx + (1 λ)y) + g(λx + (1 λ)y) λf(x) + (1 λ)f(y) + λg(x) + (1 λ)g(y), e quindi (f + g)(λx + (1 λ)y) λ(f + g)(x) + (1 λ)(f + g)(y), che dimostra la convessità di f + g. Figura 3: La somma di funzioni convesse è convessa. Riquadro 4. Sia f : S R n R una funzione convessa su S. Dimostriamo che se x S è un minimo locale, allora è anche un minimo globale. Il fatto che x sia un minimo locale di f rispetto a S implica che esiste una sfera B(x, ε) S (con centro in x e raggio ε > 0) tale che x B(x, ε (f(x ) f(x)). Si consideri ora un qualsiasi punto x S tale che x x. È facile verificare che possiamo scegliere un punto x x sul segmento tra x e x tale che x B(x, ε); cioè che esiste λ (0, 1] tale che x = λx + (1 λ)x. Per la convessità di f si ottiene f( x) λf(x ) + (1 λ)f(x), che può essere scritto come f(x) f( x) λf(x ). 1 λ Dato che x B(x, ε), per la minimalità locale di x, si ha f( x) f(x ), e quindi f(x) f(x ) λf(x ) 1 λ = f(x ). Abbiamo quindi mostrato che per ogni x x in S si ha f(x ) f(x), che prova che x è un minimo globale. Figura 4: Ogni ottimo locale di un problema convesso è anche globale. ( ) problema. L Hessiana è H = 2 2c4 c F = 5. Si ottengono facilmente i valori c 5 2c 6 numerici per c = (c 1,..., c 6 ) e per gli autovalori λ 1, λ 2 di H: c = (881.74, 11.288, 21.935, 0.0395, 0.1066, 0.221) λ 1 = 0.050011 λ 2 = 0.470989, da cui si desume che l Hessiana è definita positiva (quindi il metodo di Newton converge per quanto detto nel Riquadro 5). Inoltre, dato che la funzione obiettivo è quadratica, è sufficiente effettuare una sola iterazione del metodo di Newton (Riquadro 6). Documento preparato da Leo Liberti 4

Riquadro 5. In generale, i metodi di programmazione nonlineare per problemi senza vincoli nella forma min x f(x) sono dei metodi iterativi in cui viene mantenuta una soluzione x all iterazione corrente, e la soluzione x all iterazione successiva viene definita come x = x γd f(x), (4) dove D è una matrice definita positiva. In questo modo, si ha che la retta tra x e x ha direzione d = D f(x). Dato che D è definita positiva, per ogni vettore v si ha v Dv > 0, e quindi ( f(x)) D f(x) > 0, da cui ( f(x)) d < 0, e quindi d è una direzione di diminuzione per il valore della funzione obiettivo. Il metodo così definito converge a un ottimo locale. L ordine di convergenza dipende dalla scelta della matrice D. Nel metodo di Newton si utilizza D = ( 2 f(x)) 1, ovvero l inversa dell Hessiana della funzione obiettivo. Se f è due volte differenziabile e convessa su S, si può dimostrare che l Hessiana è semidefinita positiva per ogni punto in S, ma non definita positiva; perciò il metodo di Newton potrebbe anche non convergere. Vedremo però che nel caso del problema (2) l Hessiana è definita positiva, e quindi il metodo di Newton converge. Figura 5: Metodo di Newton per problemi senza vincoli. Riquadro 6. Si dimostra inoltre che il metodo di Newton, con γ = 1, applicato a una funzione quadratica convessa, converge in una iterazione. Si consideri l espansione di Taylor al secondo ordine ˆf(x+d) = f(x)+ f(x) d+ 1 2 d ( 2 f(x)) 1 d di f a x. Se f è quadratica convessa, si ha che f(x + d) = ˆf(x + d). Le condizioni di ottimalità per f(x + d) sono f(x + d) = 0, che significa f(x) + 2 f(x)d = 0. Ne segue che d = ( 2 f(x)) 1 f(x); dunque d è tale che f ha un minimo a x + d. Dato che alla prima iterazione del metodo di Newton si ha l aggiornamento x x + d, la tesi è dimostrata. Figura 6: Convergenza del metodo di Newton per funzioni quadratiche convesse. A questo punto possiamo scrivere il codice Matlab. objfun.m: calcola il valore della funzione obiettivo in un punto x = (k, f). % objfun.m function F = objfun(x, c) c1 = c(1); cprime = [c(2) c(3)]; H = [2*c(4), c(5) ; c(5), 2*c(6)]; F = c1 + cprime*x + 0.5 * x *H*x; %end function gradobjfun.m: calcola il gradiente della funzione obiettivo in un punto x = (k, f). Documento preparato da Leo Liberti 5

400 300 200 100 100 0 0 10 20 f 30 40 50 150 k Figura 7: La funzione obiettivo. % gradobjfun.m function gof = gradobjfun(x, c) gf1 = c(2) + 2*c(4)*x(1) + c(5)*x(2); gf2 = c(3) + c(5)*x(1) + 2*c(4)*x(2); gof = [gf1; gf2]; %end function newton.m: risolve il problema. % newton.m function [xstar, fstar, k] = newton(x) OPTIONS = [ ]; maxiterations = 1; c = [ 881.74-11.288-21.935 0.0395 0.1066 0.221 ]; cprime = [c(2), c(3)]; H = [ 2*c(4), c(5) ; c(5), 2*c(6) ]; Hinv = H^(-1); termination = 0; counter = 1; while termination == 0 gradf = gradobjfun(x, c); d = -Hinv*gradF; if (counter > maxiterations) termination = 1; xstar = x; fstar = objfun(x, c); k = counter; else lambda = 1; x = x + lambda*d; counter = counter + 1; end end %end function Documento preparato da Leo Liberti 6

Scegliamo arbitrariamente il punto di partenza x = (0, 0); lanciamo il codice con il comando: [xstar, fstar, k] = newton([0;0]) Si ottiene xstar = 112.549 22.483 fstar = -0.063196 k = 2 Quindi l ottimo 1 è x = (k, f ) = (112.549, 22.483). Il valore della funzione obiettivo è negativo per via di errori numerici nei calcoli in floating point. 1 I dati sono stati ottenuti mediante una simulazione con k = 112.5 e f = 22.5, dunque l errore è dell ordine di grandezza di 10 2. Documento preparato da Leo Liberti 7