21
Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG) Giulia Deolmi, Fabio Marcuzzi Giulia Deolmi, Fabio Marcuzzi ; ; Università di Padova, Padova (Italy) Università di Padova, Padova (Italy) Email : [email protected] Silvia Poles Silvia Poles ; ; ESTECO, Padova (Italy) ESTECO, Padova (Italy) Sergio Marinetti Sergio Marinetti ; ; Istituto per le Tecnologie della Costruzione, CNR Padova (Italy) Istituto per le Tecnologie della Costruzione, CNR Padova (Italy)

Applicazione degli algoritmi genetici alla stima della corrosione mediante termografie

Embed Size (px)

DESCRIPTION

Giulia Deolmi, Fabio Marcuzzi ; Università di Padova, Padova (Italy) Email : [email protected] Silvia Poles ; ESTECO, Padova (Italy) Sergio Marinetti ; Istituto per le Tecnologie della Costruzione, CNR Padova (Italy). Applicazione degli algoritmi genetici - PowerPoint PPT Presentation

Citation preview

Page 1: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Giulia Deolmi, Fabio MarcuzziGiulia Deolmi, Fabio Marcuzzi; ; Università di Padova, Padova (Italy)Università di Padova, Padova (Italy)Email : [email protected]

Silvia PolesSilvia Poles; ; ESTECO, Padova (Italy)ESTECO, Padova (Italy)

Sergio MarinettiSergio Marinetti; ; Istituto per le Tecnologie della Costruzione, CNR Padova (Italy)Istituto per le Tecnologie della Costruzione, CNR Padova (Italy)

Page 2: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

q

qx

y

z

l

d

z0

-z0

z=0

o • Interagisco solo con una faccia S, dotata di una matrice di sensori termici

• Lastra metallica di materiale e dimensioni noti

• La corrosione è uniforme lungo z 2D

= sensori termici suddivisione più fine di S: Sh

xo

y

d

l

q

S

Dc

d

Investo S con un flash termico q e raccolgo i dati sperimentali

• Dc / S adiabatico• N numero di sensori su S Sh

SCOPO: ricostruire il profilo di SCOPO: ricostruire il profilo di corrosione incognito a partire dai corrosione incognito a partire dai

dati sperimentalidati sperimentali

Page 3: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

o

y

x

d

l

f(x)

q

S

Dc

d= sensori termici suddivisione più fine di S: Sh

altezza scalino

=

profondità della

corrosione nell’intervallo

o

y

x

d

l

f(x)

S

Dc

d

Griglia ottimale

= suddivisione ottimale di S

• Il profilo di corrosione è descritto da una funzione a scalino f

Ricostruire il profilo reale di corrosione Ricostruire il profilo reale di corrosione equivale a determinare f tale che i residui equivale a determinare f tale che i residui

siano minimisiano minimi

Costruisco su G un modello numerico FEM che risolva l’equazione del calore

ho una stima delle temperature su Sh

Sia G la griglia costruita su Dc a partire da Sh e con passo costante dy

OSSERVAZIONE: se N>>1 è impensabile usare Sh !!!

Dobbiamo determinare Dobbiamo determinare SShh tale che i nodi tale che i nodi di di siano i punti di discontinuità di f. siano i punti di discontinuità di f.

A partire da costruiamo G’ e usiamo il modello FEM su questa

Page 4: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

OSSERVAZIONE: dapprima consideriamo una lastra non corrosa (f 0), registriamo le temperature sperimentali e stimiamo i residui, per avere un valore di riferimento che rappresenta la precisione massima del nostro modello

• La corrosione non modifica il modello FEM ma solamente il dominio Dc

f è identificata dalla suddivisione e dalla profondità di ogni scalino, quindi i problemi da appontare sono:

1) Determinare 1) Determinare che descrive f con il minor che descrive f con il minor numero di nodi: OUTER LOOPnumero di nodi: OUTER LOOP

2) Per ogni 2) Per ogni fissato, determinare la fissato, determinare la profondità di ogni scalino : INNER LOOPprofondità di ogni scalino : INNER LOOP

Strumenti fondamentaliStrumenti fondamentali

Ottimizzazione non lineareOttimizzazione non lineare

Raffinamento localeRaffinamento locale

Algoritmi geneticiAlgoritmi genetici

Page 5: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Ad ogni parametro corrisponde una precisa Ad ogni parametro corrisponde una precisa zona spazialezona spaziale del del profilo di corrosioneprofilo di corrosione

L’ampiezza di questa zona non può essere troppo grande per L’ampiezza di questa zona non può essere troppo grande per assicurare la convergenza ad una stima sufficientemente assicurare la convergenza ad una stima sufficientemente

accurata del profilo di corrosioneaccurata del profilo di corrosioneConsideriamo la situazione di parametri non sovrappostiConsideriamo la situazione di parametri non sovrapposti

Il ciclo interno si basa su un metodo di ottimizzazione non lineare: Prediction Error Method (PEM).

Detto e il residuo della stima delle temperature sperimentali, l’algoritmo cerca il profilo che minimizza la funzione di costo non lineare:

Per approfondimenti sul PEM si veda ad esempio [1].

Page 6: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

applico PEM:

y

xo

lS

Dc

d= suddivisione iniziale 0

Parto con corrosione nulla

y

xo

d

lS

Dc

d

Stimo la corrosione su ogni segmento

o

lS

Dc

d= nuova suddivisione

Raffino localmente la suddivisione dove c’è corrosione maggiore

dell’iterazione precedente

x

Ipotesi: 0 Sh , f0 0Sia i-1 ={0,xi-1,1,…, xi-1,k,...,1 } suddivisione all’iterazione i-1. Iterazione i: applico il PEM a i-1.

k t.c. la corrosione stimata in [xi-1,k,xi-1,(k+1)] sia maggiore dell’iterazione i-1, e |xi-1,k-xi-1,(k+1)|>dx, i=i-1 1/2(xi-

1,k+xi-1,(k+1))

1) Il metodo della bisezione: esempio di raffinamento locale1) Il metodo della bisezione: esempio di raffinamento locale

Page 7: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Sottoinsiemi della suddivisione più fine

Sh={0,x1,…, xk,…, xN-2,1 }c. b. Successioni binarie di N

elementi,

OBIETTIVI: cerco ottimale t.c.1) Il corrispondente abbia il numero minimo di nodi;2) Minimizzi la funzione di costo, cioè la norma del vettore N

dimensionale dei residui calcolati a partire da e dalla stima dei parametri.

2) Gli algoritmi genetici2) Gli algoritmi genetici

Per approfondimenti sugli AG si veda per esempio [2].

Page 8: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Aspetti fondamentaliAspetti fondamentali

• La parametrizzazione copre tutto il dominio, quindi la copertura avviene in modo DETERMINISTICO

• L’outer loop deve SOLO a regolare l’adattamento della parametrizzazione

• Come vedremo algoritmi genetici confrontati col raffinamento locale risultano troppo costosi

Page 9: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Per problemi Per problemi di piccola di piccola

dimensione:dimensione:

- gli 1 definiscono , cioè i nodi della mesh più fine che considero - ogni parametro rappresenta la profondità sul segmento compreso tra due 1 del vettore.

suddivisione = (1 ,0 ,1 ,1 ,0 ,0 ,1 ,1 ,1, 1, 1)

Segmenti su cui stimo i parametri

Page 10: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Applichiamo i metodi allo stesso problema simulato numericamente, con N=11.

Il profilo di corrosione da stimare è indicato in figura e la suddivisione ottima è:

Quali sono i risultati dei due metodi?Quali sono i risultati dei due metodi?

BisezioneBisezione

Dopo qualche decina di minuti il metodo converge alla soluzione:non individua la ottimale, pur stimando correttamente i parametri

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

= (1,0,1,1,0,0,1,1,1,1,1)

Page 11: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Algoritmi geneticiAlgoritmi genetici

La mesh ottimale sta sul fronte di Pareto (è il punto 257) inoltre le generazioni tendono a convergere al fronte.

PROBLEMA: il metodo è molto lento (diverse ore per un PROBLEMA: il metodo è molto lento (diverse ore per un problema di dimensione ridotta)problema di dimensione ridotta)

Utilizziamo MOGA implementato in modeFRONTIERUtilizziamo MOGA implementato in modeFRONTIER

Page 12: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Dati sperimentali forniti dal CNR

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 0

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 2

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 3

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 4

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 5

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 6

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 7

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 8

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 9

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 10

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 11

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 12

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 13

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 14

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 15

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 16

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 17

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 18

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 19

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 21

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 22

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 23

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 24

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 25

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 26

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 27

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

mesh_index = 28 (last)

Page 13: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

BisezioneBisezione

Algoritmi geneticiAlgoritmi genetici

• E’ un algoritmo veloce• tende a raffinare troppo, allontanandosi dalla

suddivisione ottimale • non riconosce i minimi locali (non è robusto)• è puramente deterministico

• Forniscono una visione globale del problema, attraverso il fronte di Pareto

• Sono in grado di gestire i minimi locali• la convergenza al fronte di Pareto è molto lenta• Hanno una componente probabilistica

Page 14: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Se si conosce con sufficiente accuratezza il valore di costo della

ottimale, si può utilizzare un solo obiettivo e imporre che la funzione di costo stia in un certo intervallo molto

piccolo. Tuttavia un approccio di questo tipo non risolve in modo

sostanziale il problema.

Vorremmo ridurre il tempo di convergenza degli Vorremmo ridurre il tempo di convergenza degli algoritmi geneticialgoritmi genetici

ABBIAMO BISOGNO DI UNA STRATEGIA DIVERSAABBIAMO BISOGNO DI UNA STRATEGIA DIVERSA

Page 15: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Aspetti fondamentaliAspetti fondamentali

• Per limitare il carico computazionale il numero di parametri deve restare contenuto• la zona spaziale di ogni parametro non può essere troppo grande

•L’ outer loop deve trovare un modo efficiente per analizzare TUTTO il dominio, con basso margine di rischio, mediante parametrizzazioni SPARSE

QUINDIQUINDI

La copertura avviene in modo PROBABILISTICOLa copertura avviene in modo PROBABILISTICO

•QUI GLI ALGORITMI GENETICI DANNO UN CONTRIBUTO FONDAMENTALE NEL TROVARE IN MODO EFFICIENTE ZONE CORROSE SU UN DOMINIO ESTESO

Page 16: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Per problemi di grande dimensione siamo in presenza di vettori Per problemi di grande dimensione siamo in presenza di vettori sparsi quindi un approccio come quello precedentemente sparsi quindi un approccio come quello precedentemente introdotto non è corretto perché tenderebbe a mediare la introdotto non è corretto perché tenderebbe a mediare la corrosione presente in un intervallo ampio del dominio.corrosione presente in un intervallo ampio del dominio.

suddivisione = (0 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0, 0, 1)pixel = (1 ,0 ,0 ,0 ,0 ,0 ,1 ,1 ,0, 1, 1)

- gli 1 in pixel definiscono , cioè i nodi della mesh più fine che considero - Se un elemento in suddivisione è 1 vado a stimare

la corrosione SOLO sul segmento della mesh più fine subito a sinistra

Per problemi Per problemi di grande di grande

dimensione:dimensione:

Page 17: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

1) Creo una popolazione iniziale random e sparsaOUTER-LOOP:

2) su ogni individuo della popolazione corrente eseguo l’INNER-LOOP, che trasforma la popolazione iniziale:

3) stimo i valori dei parametri col PEM;4) per ogni parametro maggiore di TOLL ( = corrosione significativa):

5) facciamo un arricchimento locale di parametri;6) stimo valori dei parametri (arricchiti)7) itero da 5) finché non soddisfo un criterio di arresto

               NB: le operazioni “5...7” possono essere compiute in parallelo.8) raccolgo le informazioni dell’inner loop in un vettore “costanti” che inizializzo a –1

e ne modifico le componenti rispettivamente in 1 e 0 a seconda che nell’intervallo a sinistra ci sia o meno corrosione.

9) A partire dalla popolazione trasformata, con gli operatori creo una nuova popolazione corrente ed itero da 2).

[3] Per approfondire NSGA-II

Page 18: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

segmento S

temperatura del modello (Tsigma) --- it=100 flash(%)=5.6847e-007

20406080100120

Applichiamo NSGA-II modificato per un problema simulato numericamente, con N=51. Il profilo di corrosione da stimare è il seguente:

NSGA-II modificato converge al profilo di corrosione già nelle prime generazioni. La popolazione stimata nell’ultima generazione è:

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10

1

2

3

4

5

6

7Fronte a cui converge NSGA 2 modificato

funzione di costo

num

ero

1

Page 19: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1A partire dall'individuo costruisco la mesh

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Stimo la corrosione, per decidere dove applicare il raffinamento locale

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Raffino attorno a v(16)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Stimo la corrosione nella mesh raffinata

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Raffino nuovamente attorno a v(16).

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1La corrosione stimata nei nuovi segmenti è nulla

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Raffino attorno a v(33)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Stimo la corrosione nella mesh raffinata

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Raffino nuovamente attorno a v(33).

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1la corrosione stimata nei nuovi segmenti è nulla

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1Ecco il profilo stimato con il raffinamento locale

Supponiamo di considerare il vettore di zeri v e imponiamo v(9)=v(16)=v(33)=1. Vediamo come opera il raffinamento locale.

Page 20: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

Per problemi di piccole dimensioni scegliamo la strada Per problemi di piccole dimensioni scegliamo la strada deterministica, che ci porta ad una accurata stima del profilo di deterministica, che ci porta ad una accurata stima del profilo di

corrosione su tutto il dominio e in questo caso il raffinamento corrosione su tutto il dominio e in questo caso il raffinamento locale è una buona sceltalocale è una buona scelta

A causa della complessità computazionale, per problemi di grande A causa della complessità computazionale, per problemi di grande dimensione non è pensabile seguire questa strada. Adottiamo dimensione non è pensabile seguire questa strada. Adottiamo

quindi un metodo di indagine probabilistico e in questo assumono quindi un metodo di indagine probabilistico e in questo assumono un ruolo fondamentale gli AGun ruolo fondamentale gli AG

POSSIBILI SVILUPPI: POSSIBILI SVILUPPI:

è possibile perfezionare NSGA-II modificato, per rendere più veloce la è possibile perfezionare NSGA-II modificato, per rendere più veloce la convergenza al profilo di corrosione. Per esempio al vettore “costanti”, convergenza al profilo di corrosione. Per esempio al vettore “costanti”, che indica quali sono i segmenti dove non ho ancora stimato la che indica quali sono i segmenti dove non ho ancora stimato la corrosione, potrebbe essere associata una densità di probabilità.corrosione, potrebbe essere associata una densità di probabilità.

Altro sviluppo interessante sarebbe analizzare il problema 3D.Altro sviluppo interessante sarebbe analizzare il problema 3D.

Page 21: Applicazione degli algoritmi genetici  alla stima della corrosione  mediante termografie

Enginsoft CAE users’ meeting 2007 - 25-26 Ottobre 2007 Villa Caroli Zanchi Stezzano (BG)

[1] T. McKelvey, “Identification of state-space models from time and frequency data”, 1995

[2] Singiresu S. Rao, “Engineering Optimization”, 1996

[3] N. Srinivas, Kalyanmoy Deb, “Multiobjective Optimization Using Nondominated Sorting in Genetic Algorithms” - Evolutionary Computation ,1994