Estratto del documento

Università degli studi di Napoli Federico II

Scuola Politecnica e delle Scienze di Base

Corso di Laurea Magistrale in Ingegneria Navale

Classe di laurea LM-34

Ottimizzazione multi-obiettivo in Python delle

forme di carena: efficienza idrodinamica e comfort

II

a bordo:PARTE

Anno Accademico 2024-2025

INDICE

Sommario .............................................................................................. 7

Abstract................................................................................................. 9

CAPITOLO I - RESISTENZA AL MOTO

1.1 Introduzione ............................................................................... 11

1.2 Evoluzione e classificazione dei mezzi navali .............................. 12

1.3 Componenti della resistenza ...................................................... 17

CAPITOLO II - PROBLEMA DINAMICO

2.1 Introduzione ............................................................................... 21

2.2 Forze agenti sulla nave ............................................................... 22

2.3 Modello dinamico nave-onda ..................................................... 24

2.4 Funzioni di trasferimento ............................................................ 26

2.5 Moti nave in onde regolari di prora .............................................. 28

2.6 Moti nave in onde regolari di poppa ............................................. 30

2.7 Moti nave in onde regolari oblique .............................................. 32

2.8 Moti nave in onde regolari al traverso .......................................... 34

2.9 Fenomeni critici associati ai moti nave ....................................... 36

CAPITOLO III - ARCHITETTURA DEL FRAMEWORK DI CALCOLO

3.1 Introduzione ............................................................................... 38

3.2 Panoramica dei moduli principali ............................................... 39

3.3 Mesh poligonale ......................................................................... 42

3.4 Tecniche di deformazione della mesh ......................................... 47

3.5 Calcolo della resistenza al moto ................................................. 52

INDICE

3.6 Calcolo dei Response Amplitude Operators (RAO) ...................... 55

3.7 Calcolo del braccio di stabilità (GZ) ............................................ 57

3.8 Algoritmi genetici e ottimizzazione evolutiva ............................... 60

CAPITOLO IV - EVOLUZIONE DEL FRAMEWORK E ANALISI DEI RISULTATI

4.1 Introduzione ............................................................................... 65

4.2 Framework v1.0: Struttura e analisi dei risultati dell’ottimizzazione

mono-obiettivo .................................................................................... 66

4.3 Framework v2.0: Evoluzione multi-obiettivo e risultati ottenuti .... 70

4.4 Confronto tra framework v1.0 e v2.0 ........................................... 74

4.5 Valutazione del comfort: Motion Sickness Incidence (MSI) .......... 76

CAPITOLO V - ANALISI POST-OTTIMIZZAZIONE

5.1 Introduzione ............................................................................... 78

5.2 Riduzione dimensionale con PCA ............................................... 79

5.3 Clustering con algoritmo K-Means .............................................. 81

5.4 Analisi predittiva con modello Random-Forest ............................ 84

Conclusioni ......................................................................................... 88

Bibliografia .......................................................................................... 90

CAPITOLO III – ARCHITETTURA DEL FRAMEWORK DI CALCOLO

3.8 Algoritmi genetici e ottimizzazione evolutiva

Nel contesto dell’ottimizzazione ingegneristica, e in particolare nella

progettazione navale, risolvere problemi con più obiettivi contrastanti e

vincoli non lineari rappresenta una sfida significativa. In questi casi, gli

approcci deterministici tradizionali risultano spesso inefficaci, spingendo

verso l’adozione di metodi alternativi ispirati ai processi naturali. Tra

questi, gli algoritmi evolutivi (Evolutionary Algorithms – EA) si sono

affermati come strumenti potenti e flessibili per l’esplorazione di spazi di

progetto complessi.

Principi dell’ottimizzazione evolutiva

L’ottimizzazione evolutiva si basa sull’analogia biologica dell’evoluzione

darwiniana, dove una popolazione di soluzioni candidate evolve nel

tempo per adattarsi a un ambiente attraverso operatori di selezione,

crossover (ricombinazione) e mutazione. Ogni individuo rappresenta una

possibile soluzione, descritta attraverso un insieme di parametri, detti

geni, codificati in una struttura detta cromosoma.

Figura 3.8.1 - Esempio di selezione

Figura 3.8.2 - Esempio di crossover

Figura 3.8.3 - Esempio di mutazione 60

CAPITOLO III – ARCHITETTURA DEL FRAMEWORK DI CALCOLO

L’adattamento è guidato da una funzione obiettivo, o più funzioni nel caso

di ottimizzazione multi-obiettivo, che valuta la qualità delle soluzioni. Le

soluzioni migliori vengono selezionate per contribuire alla generazione

successiva, trasmettendo le proprie “caratteristiche genetiche”.

Gli algoritmi genetici (GA)

Tra le varianti più note degli algoritmi evolutivi, gli algoritmi genetici

(Genetic Algorithms – GA) rappresentano una classe particolarmente

efficace. Un GA segue i seguenti passaggi principali:

Inizializzazione: si genera casualmente una popolazione iniziale di

- individui.

Valutazione: ogni individuo viene valutato attraverso le funzioni

- obiettivo.

Selezione: gli individui migliori vengono scelti per la riproduzione.

- Crossover: si combinano coppie di genitori per generare nuovi figli,

- mescolando le caratteristiche genetiche.

Mutazione: si applicano modifiche casuali a piccoli tratti dei figli,

- per favorire l’esplorazione dello spazio delle soluzioni.

Sostituzione: la nuova generazione sostituisce (totalmente o

- parzialmente) la precedente.

Questo processo viene ripetuto per un numero finito di generazioni o fino

al raggiungimento di una soglia di convergenza.

Ottimizzazione mono e multi-obiettivo

Nel caso di ottimizzazione mono-obiettivo, il criterio di selezione è

univoco: si cerca la soluzione che minimizzi (o massimizzi) una singola

funzione obiettivo. Tuttavia, molti problemi reali, come quelli che

coinvolgono prestazioni idrodinamiche, stabilità e comfort a bordo,

richiedono una ottimizzazione multi-obiettivo, dove più criteri devono

essere ottimizzati simultaneamente.

In questi scenari si ricorre al concetto di Fronte di Pareto, che rappresenta

l’insieme delle soluzioni non dominate: soluzioni per cui non è possibile

migliorare un obiettivo senza peggiorarne un altro. L’obiettivo

dell’algoritmo è quindi identificare un insieme di soluzioni ottimali tra cui

scegliere secondo priorità progettuali. 61

CAPITOLO III – ARCHITETTURA DEL FRAMEWORK DI CALCOLO

Figura 3.8.4 - Fronte di pareto multi-obiettivo

Algoritmo NSGA-II

L’NSGA-II (Non-dominated Sorting Genetic Algorithm II) è uno degli

algoritmi multi-obiettivo più utilizzati, grazie alla sua efficienza e

semplicità. Le sue caratteristiche principali includono:

ordinamento non-dominato per classificare le soluzioni in fronti

- successivi;

elitismo, che garantisce la conservazione delle migliori soluzioni

- trovate;

crowding distance, un meccanismo per promuovere la diversità

- lungo il fronte di Pareto evitando la convergenza prematura.

L’obiettivo finale è costruire una popolazione di soluzioni che rappresenti

in modo distribuito ed equilibrato l’intero fronte di Pareto, offrendo così al

progettista un ventaglio ampio e diversificato di alternative ottimali tra cui

selezionare quella più adatta alle specifiche esigenze progettuali o

operative. 62

CAPITOLO III – ARCHITETTURA DEL FRAMEWORK DI CALCOLO

Algoritmo NSGA-III

Con l’aumentare del numero di obiettivi (tipicamente ≥ 2), NSGA-II può

diventare meno efficiente nel mantenere un’equa distribuzione delle

soluzioni. Per affrontare questo limite è stato sviluppato NSGA-III,

un’estensione dell’algoritmo basata sull’introduzione di un set di punti di

riferimento (reference directions) nello spazio degli obiettivi.

Questi punti guidano la selezione delle soluzioni in modo che esse si

distribuiscano uniformemente lungo il fronte di Pareto, anche in spazi ad

alta dimensionalità. Questo rende NSGA-III particolarmente adatto per

problemi con molti obiettivi.

Adimensionalizzazione e normalizzazione

Per permettere una comparazione coerente tra obiettivi di diversa natura

e unità di misura, tutte le funzioni obiettivo vengono adimensionalizzate

attraverso un processo di normalizzazione. Questa operazione è

essenziale per garantire che ogni obiettivo contribuisca equamente al

processo di selezione, evitando che grandezze con valori numericamente

elevati dominino l’ottimizzazione, distorcendo la valutazione complessiva

delle soluzioni.

Nel contesto del presente framework, la normalizzazione dei valori è

effettuata secondo la seguente espressione:

=

dove: P è il punteggio adimensionale associato all’individuo i per

- ij

l’obiettivo j;

Y rappresenta il valore assoluto dell’obiettivo j per l’individuo i;

- ij

Y è il valore massimo osservato per l’obiettivo j all’interno della

- jmax

popolazione.

Questo tipo di trasformazione lineare porta tutti i valori all’interno

dell’intervallo [0,1], dove un valore di P prossimo a 1 indica una

ij

prestazione peggiore, mentre un valore vicino a 0 denota una prestazione

migliore. 63

CAPITOLO III – ARCHITETTURA DEL FRAMEWORK DI CALCOLO

Oltre a favorire una rappresentazione bilanciata degli obiettivi, la

normalizzazione migliora anche la stabilità numerica del processo

evolutivo, specialmente nelle fasi di selezione e calcolo della dominanza

all’interno del fronte di Pareto. Ciò risulta particolarmente utile nei

contesti multi-obiettivo ad alta dimensionalità, come quelli affrontati con

NSGA-III, dove l’equilibrio tra gli obiettivi è determinante per ottenere

soluzioni ben distribuite ed efficaci.

Vantaggi degli algoritmi evolutivi

Gli algoritmi evolutivi offrono numerosi vantaggi:

non richiedono derivazione analitica della funzione obiettivo;

- operano su problemi non lineari e con vincoli complessi;

- sono naturalmente parallellizzabili;

- consentono una esplorazione globale dello spazio di progetto,

- evitando facilmente i minimi locali.

Queste caratteristiche li rendono ideali in ambiti ingegneristici, dove la

simulazione dei fenomeni fisici richiede valutazioni computazionalmente

costose e modelli spesso non derivabili in forma chiusa. 64

CAPITOLO IV

Evoluzione del Framework e Analisi

Comparativa dei Risultati

4.1 Introduzione

Nel presente capitolo si riportano i risultati ottenuti dall’applicazione del

framework di calcolo in due diverse configurazioni: versione 1.0,

focalizzata sulla sola minimizzazione della resistenza al moto, e la

versione 2.0, in grado di considerare simultaneamente molteplici criteri

progettuali mediante un approccio di ottimizzazione multi-obiettivo.

L’obiettivo principale di questa sezione è confrontare in modo sistematico

le prestazioni delle carene generate nei due casi, evidenziando i

miglioramenti introdotti dalla nuova architettura. In particolare, si intende

valutare l’impatto delle seguenti innovazioni:

l’adozione dell’algoritmo evolutivo NSGA-III, che ha sostituito il

- precedente NSGA-II per consentire l’ottimizzazione simultanea di

più funzioni

Anteprima
Vedrai una selezione di 9 pagine su 36
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 1 Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 2
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 6
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 11
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 16
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 21
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 26
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 31
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Ottimizzazione multi-obiettivo in python delle forme di carena: efficienza idrodinamica e comfort a board, parte II Pag. 36
1 su 36
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria civile e Architettura ING-IND/01 Architettura navale

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher GiacomoSag di informazioni apprese con la frequenza delle lezioni di Architettura navale e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof De Luca Luigi.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community