calcolo delle reti idrauliche in pressione mediante una tecnica mista algoritmi genetici / metodo di...
Post on 02-May-2015
217 Views
Preview:
TRANSCRIPT
Calcolo delle reti idrauliche in pressione mediante una tecnica mista algoritmi genetici / metodo
di Gauss-Newton
Laureando:
Enrico Masini
Relatore:
Chiar.mo Prof. Ing. Michele Mastrorilli
Correlatore:
dott. Ing.
Orazio Giustolisi
Una delle RETI in
PRESSIONEverificata
applicando la “tecnica mista”:
algoritmi genetici/metodo di Gauss-Newton
Sistema di equazioni Scopo della tesi è la verifica delle reti idrauliche in pressione, ossia
risolvere il seguente sistema di equazioni “misto” :
i qi + j qj = 0 nodo
hj – hj+1 = (Li ki Di-n) qi
2 = ri qi2 tronco
Forma matriciale del sistema Per rendere il calcolo e la scrittura del codice più agevole, si è
posto lo stesso sistema nella forma matriciale proposta da G.Curto e A.Tumbiolo:
ANT q + Q = 0
R abs(q)q + (AN hN + AS hS) = 0
ESEMPIO: “RETE di CAO”
100 m.s.l.m
SERBATOIO
1
2
4
3
5
6
1
3
2
3
4
6
7
8
I NODI 2,3,4,5,6 SONO A QUOTA 0 m.s.l.m
Sistema di equazioni
0qrhh
0qrhh
0qrhh
0qrhh
0qrhh
0qrhh
0qrhh
0qrhh
0Qqq
0Qqq
0Qqqq
0Qqqq
0Qqqq
28864
27765
26651
25542
24443
23331
22232
21121
683
536
4845
3432
2521
13 equazioni in 13 incognite:
65432
87654321
hhhhh
qqqqqqqq
13
2
8864
12
2
7765
11
2
6651
10
2
5542
9
2
4443
8
2
3331
7
2
2232
6
2
1121
5683
4536
34845
23432
12521
eqrhh
eqrhh
eqrhh
eqrhh
eqrhh
eqrhh
eqrhh
eqrhh
eQqq
eQqq
eQqqq
eQqqq
eQqqq
Per una soluzione approssimata:
6543287654321 hhhhhqqqqqqqq
Il sistema diventa:
ossia risolvere il seguente problema di “ottimizzazione non vincolata”:
X
Per cui risolvere il sistema è equivalente a “minimizzare” la funzione:
13
1i
2iee
min
13
1i
2iee
dove:
)h h h h h q q q q q q q (q X 136543287654321
detto anche “problema dei minimi quadrati”
funzione obiettivo del problema
La funzione da “minimizzare” è una funzione “non lineare”, del tipo:
Per esempio, nel caso unidimensionale, si ha una funzione del tipo:
Ci sono più minimi “locali” e un unico minimo “globale”
x
e
O
>>
Algoritmi tradizionali di “ottimizzazione”: metodo di Newton, quasi-Newton, Gauss-Newton
Si tratta di metodi che per convergere al minimo usano il calcolo delle derivate fino al 2° ordine, ossia del:
•vettore gradiente •matrice hessiana
Dallo sviluppo in serie di Taylor arrestato ai termini del 2°ordine:
Supposto che qk(x) abbia un minimo in x*, annullando il gradiente:
Da cui si ottiene, più genericamente:
Dove:è la direzione di ricerca
è il passo di ricerca
I metodi si differenziano per la determinazione della direzione di ricerca, ossia per la tecnica usata per calcolare la matrice “hessiana”
Per la determinazione del passo di ricerca, si rifanno ad algoritmi esterni che risolvono essenzialmente un problema di minimizzazione unidimensionale detto “ricerca di linea”, ossia ricercano il minimo della funzione:
f (xk+1 k Gk-1 gk)
lungo la direzione di ricerca stabilita
Tali metodi convergono se risulta:
In tal caso i vettori e sono concordi:
direzione di ricerca
La direzione di ricerca è allora direzione di discesa, per cui risulta:
direzione di massima pendenza negativa
f (xk+1) < f ( xk ) k
che rappresenta la condizione di convergenza
cioè se la matrice è definita positiva:Gk-1
I metodi di Newton, essendo algoritmi di discesa, convergono ad un minimo locale, funzione del punto iniziale di ricerca
soluzioni
punti iniziale di ricerca
percorsi di discesa
x
e
O
<<
ALGORITMI GENETICI Si tratta di una nuova metodologia che consente di determinare il minimo globale di funzioni spiccatamente non lineari oppure non continue o non derivabili
Algoritmi genetici:
POPOLAZIONE INIZIALE
SELEZIONE FITNESS FUNCTION
CONDIZIONE TERMINALE
RIPRODUZIONE
MUTAZIONE
CROSSOVEROPERATORI GENETICI
Funzionamento degli
Algoritmi genetici
OPERATORI GENETICI CROSSOVER PUNTUALE: si tratta della riproduzione sessuata di 2 individui
POPOLAZIONE INIZIALE Si scelgono casualmente N individui (cromosomi) tra tutte le
soluzioni possibili del problema di ottimizzazione non vincolata
ogni INDIVIDUO (o CROMOSOMA) = SOLUZIONE POSSIBILE, cioè:
)h h h h h q q q q q q q (q X 136543287654321
1 0 1 0 0 1 0 1 0 0 1 1 1 0 1 0
1 0 1 1 1 0 1 0 0 0 1 0 0 1 0 1
cromosoma genitore 1 cromosoma genitore 2
cromosoma figlio 1 cromosoma figlio2
MUTAZIONE: si tratta della variazione casuale di un gene (= 1 bit) di un individuo (o cromosoma) a caso della popolazione
1 0 1 0 0 1 1 1 0 1
1 0 1 0 0 1 0 1 0 1
cromosoma genitore
cromosoma figlio
CROSSOVER UNIFORME : è un tipo di riproduzione sessuata più efficiente del precedente, in quanto prescinde dall’ordinamento dei bit
1 0 0 1 0 0 1 1 1 0 1 1 0 0 1 0
0 0 1 1 1 1 1 0 0 0 0 1 0 1 1 1
cromosoma genitore 1 cromosoma figlio 1
cromosoma genitore 2 cromosoma figlio2
SELEZIONE La selezione determina quali individui (cromosomi) si
riprodurranno e quali saranno scartati è grazie alla selezione che la popolazione si evolve di generazione in generazione
Il cuore della selezione è la FITNESS FUNCTION (=funzione di “adattività”)con cui è possibile ordinare per FITNESS (adattività) gli individui della
popolazione e quindi assegnare ad essi, in base alla posizione in graduatoria, una probabilità di selezione maggiore o minore
CONDIZIONE TERMINALE La condizione terminale può essere di più tipi, ossia basata sul:
•numero di generazioni
•grado di uniformità della popolazione
•“adattività” dell’individuo migliore
La funzione di adattività coincide allora con la funzione obiettivo del problema di ottimizzazione
PROBLEMA DELLO “SLOW-FINISH” Si è sperimentato in fase di elaborazione (ma è un fenomeno riportato da diversi autori), un evidente rallentamento progressivo della convergenza
100
101
102
103
104
10-1
100
101
102
103
104
105
Risultati ottenuti applicando gli Algoritmi genetici
alla risoluzione della rete diTorreMaggiore(FG)
composta di165 tronchi e 107 nodi
N° di generazioni
e
Le 10000 generazioni sono state effettuate in circa 2 ore con un Pentium III 350 Mhz
TECNICA MISTA:algoritmi genetici / metodo di Gauss-Newton
Il problema dello “slow-finish” è stato risolto utilizzando
gli algoritmi genetici per determinare un punto iniziale
“buono”, ossia interno alla concavità del minimo globale,
e quindi proseguendo la ricerca del minimo con gli
algoritmi tradizionali di “discesa”.
minimo globale
“buon” punto iniziale di ricerca per gli algoritmi di “discesa”
percorso di discesa
x
e
O
Come si è già visto, trovare un “buon” punto iniziale per gli algoritmi di “discesa”, significa:
Occorre stabilire un criterio per verificare che gli algoritmi genetici abbiano “trovato” la concavità del minimo globale:
x
e
O
popolazione iniziale degli algoritmi genetici
x
e
O
popolazione degli algoritmi genetici dopo N generazioni
dopo N generazioni si esegue un controllo per verificare se tutti gli individui sono interni della concavità del minimo globale
lanciando gli algoritmi di “discesa” a partire da ciascun individuo della popolazione e verificando che convergano allo stesso
punto.
algoritmi di discesa
x
e
O
Un’altra possibilità più rapida consiste, sempre dopo N generazioni, nel lanciare gli algoritmi di discesa a partire dal solo
individuo migliore della popolazione (“fittest individual”)
verificando che il punto finale (minimo locale) coincida con lo 0, avvalendosi della conoscenza del valore del minimo globale
popolazione degli algoritmi genetici dopo N generazioni
algoritmi di discesa
IN CONCLUSIONE:Testando l’implementazione della “tecnica mista” su 4 reti
con diverse complessità, precedentemente risolte con altre
metodologie , si è avuto risconto del corretto
funzionamento del metodo
Il software è inoltre piuttosto efficiente in termini di velocità, per
cui si è potuto agevolmente implementare anche la ricerca
iterativa dei coefficienti alfa di ripartizione delle portate
uniformemente distribuite e l’uso della formula di Colebrook per
la determinazione degli indici di resistenza lambda, ampliando il
campo delle portate al regime di transizione
top related