2025-11-18T14:22:20.884401

Version 2.0 -- cashocs: A Computational, Adjoint-Based Shape Optimization and Optimal Control Software

Blauth
In this paper, we present version 2.0 of cashocs. Our software automates the solution of PDE constrained optimization problems for shape optimization and optimal control. Since its inception, many new features and useful tools have been added to cashocs, making it even more flexible and efficient. The most significant additions are a framework for space mapping, the ability to solve topology optimization problems with a level-set approach, the support for parallelism via MPI, and the ability to handle additional (state) constraints. In this software update, we describe the key additions to cashocs, which is now even better-suited for solving complex PDE constrained optimization problems.
academic

Versione 2.0 -- cashocs: Un Software Computazionale per l'Ottimizzazione di Forma e il Controllo Ottimale Basato su Metodi Aggiunti

Informazioni Fondamentali

  • ID Articolo: 2306.09828
  • Titolo: Version 2.0 -- cashocs: A Computational, Adjoint-Based Shape Optimization and Optimal Control Software
  • Autore: Sebastian Blauth (Fraunhofer ITWM, Kaiserslautern, Germania)
  • Classificazione: math.OC (Ottimizzazione e Controllo)
  • Data di Pubblicazione: Sottomesso ad arXiv il 13 novembre 2023, pubblicato in SoftwareX 24
  • Link Articolo: https://arxiv.org/abs/2306.09828
  • Versione Software: v2.0.12
  • Licenza: GNU GPL v3.0

Riassunto

Questo articolo presenta l'aggiornamento alla versione 2.0 del software cashocs. cashocs è un software computazionale basato sul metodo aggiunto, specializzato nella risoluzione automatizzata di problemi di ottimizzazione vincolata da equazioni differenziali alle derivate parziali (PDE), inclusi l'ottimizzazione di forma e il controllo ottimale. Dalla sua prima release, il software ha acquisito numerose funzionalità e strumenti pratici, rendendolo più flessibile ed efficiente. Le funzionalità più importanti aggiunte includono: il framework di space mapping, la capacità di risolvere problemi di ottimizzazione topologica basata su metodi level-set, il supporto al calcolo parallelo tramite MPI, e la capacità di gestire vincoli aggiuntivi (di stato).

Contesto di Ricerca e Motivazione

Definizione del Problema

I problemi di ottimizzazione vincolata da PDE sono ampiamente diffusi nell'ingegneria e nel calcolo scientifico, includendo principalmente:

  1. Problemi di ottimizzazione di forma: ottimizzazione delle prestazioni del sistema modificando la geometria
  2. Problemi di controllo ottimale: ottimizzazione del comportamento del sistema attraverso ingressi di controllo
  3. Problemi di ottimizzazione topologica: ottimizzazione delle prestazioni strutturali modificando la distribuzione del materiale

Importanza della Ricerca

  • Questa classe di problemi ha un'importante applicazione in aerospaziale, industria automobilistica, ingegneria biomedica e altri settori
  • I metodi tradizionali di risoluzione hanno elevata complessità computazionale e richiedono tecniche specializzate di ottimizzazione numerica
  • Le applicazioni industriali comunemente utilizzano risolutori commerciali, mancando di capacità di ottimizzazione diretta

Limitazioni dei Metodi Esistenti

  • Assenza di un framework software unificato per gestire diversi tipi di problemi di ottimizzazione vincolata da PDE
  • Gli strumenti esistenti presentano insufficienze nel calcolo parallelo e nella gestione di vincoli complessi
  • L'efficienza di risoluzione di problemi complessi a livello industriale necessita di miglioramenti

Contributi Principali

  1. Framework di Space Mapping: implementazione completa della tecnica di space mapping in software di ottimizzazione vincolata da PDE, supportando problemi di ottimizzazione di forma e controllo ottimale
  2. Supporto all'Ottimizzazione Topologica: integrazione di risolutori di ottimizzazione topologica basati su metodi level-set, inclusi i più recenti metodi quasi-newtoniani
  3. Capacità di Calcolo Parallelo: supporto al calcolo parallelo tramite MPI, consentendo al software di operare su sistemi di calcolo ad alte prestazioni
  4. Meccanismo di Gestione dei Vincoli: aggiunta di metodi di penalità quadratica e metodi lagrangiani aumentati per gestire vincoli aggiuntivi di stato e controllo
  5. Miglioramenti nell'Usabilità: inclusi ridimensionamento automatico, prodotti scalari personalizzati, flussi di lavoro di remeshing migliorati

Dettagli Metodologici

Progettazione dell'Architettura Software

cashocs 2.0 è basato su un design modulare che supporta tre classi principali di problemi di ottimizzazione:

Problemi di Ottimizzazione Vincolata da PDE
├── cashocs.ShapeOptimizationProblem
├── cashocs.OptimalControlProblem  
├── cashocs.TopologyOptimizationProblem
├── Vincoli Aggiuntivi
│   ├── cashocs.ConstrainedShapeOptimizationProblem
│   └── cashocs.ConstrainedOptimalControlProblem
└── Problemi di Space Mapping
    ├── cashocs.space_mapping.shape_optimization.SpaceMappingProblem
    └── cashocs.space_mapping.optimal_control.SpaceMappingProblem

Tecnica di Space Mapping

Il metodo di space mapping sfrutta la struttura gerarchica dei modelli, contenendo modelli fini (dettagliati, complessi) e modelli grossolani (approssimati, computazionalmente efficienti):

  1. Gerarchia di Modelli: ottimizzazione efficiente del modello fine attraverso ottimizzazione continua e correzione dell'approssimazione del modello grossolano
  2. Evitare l'Ottimizzazione Diretta: non è necessaria l'ottimizzazione diretta del modello fine, particolarmente adatto per applicazioni industriali che utilizzano risolutori commerciali
  3. Convergenza Rapida: gli esperimenti mostrano convergenza in circa 5 iterazioni

Metodo di Ottimizzazione Topologica

Utilizza il metodo level-set per risolvere problemi di ottimizzazione topologica:

  1. Supporto Algoritmico: include algoritmi tradizionali di ottimizzazione topologica e il nuovo metodo quasi-newtoniano
  2. Sistema Aggiunto Automatico: sebbene la derivata topologica debba essere fornita dall'utente, la derivazione automatica del sistema aggiunto è stata implementata
  3. Estensione dell'Ambito di Applicazione: estende l'applicabilità di cashocs al campo dell'ottimizzazione topologica con informazioni di sensibilità topologica

Meccanismo di Gestione dei Vincoli

Implementa due principali metodi di gestione dei vincoli:

  1. Metodo di Penalità Quadratica: gestione dei vincoli aggiungendo termini di penalità alla funzione obiettivo
  2. Metodo Lagrangiano Aumentato: metodo ibrido che combina moltiplicatori di Lagrange e funzioni di penalità
  3. Ampia Applicabilità: supporta vincoli di stato, vincoli di controllo e altri tipi di vincoli

Configurazione Sperimentale

Stack Tecnologico

  • Linguaggio di Programmazione: Python
  • Dipendenze Principali: FEniCS, NumPy, PETSc, MPI
  • Gestione Mesh: meshio, Gmsh
  • Controllo Versione: git
  • Documentazione: https://cashocs.readthedocs.io/

Configurazione dei Problemi di Esempio

Caso di Ottimizzazione di Forma con Space Mapping:

  • Obiettivo: realizzare una distribuzione uniforme del flusso in tre condotti di uscita
  • Modello Fine: equazioni di Navier-Stokes a numero di Reynolds 1000, risolte utilizzando Ansys Fluent
  • Modello Grossolano: sistema Stokes lineare, risolto con FEniCS su mesh grossolana

Risultati Sperimentali

Prestazioni del Metodo di Space Mapping

Dai risultati della Figura 1 si osserva:

  • Velocità di Convergenza: convergenza raggiunta in circa 5 iterazioni
  • Effetto di Ottimizzazione: la geometria finale realizza una distribuzione del flusso quasi perfettamente uniforme
  • Efficienza Computazionale: miglioramento significativo rispetto all'ottimizzazione diretta del modello fine

Prestazioni del Calcolo Parallelo

  • Nessuna Modifica del Codice: la maggior parte dei problemi di ottimizzazione vincolata da PDE seriali può essere parallelizzata direttamente
  • Calcolo ad Alte Prestazioni: supporta la risoluzione di problemi di ottimizzazione su larga scala su sistemi HPC
  • Basato su FEniCS: sfrutta pienamente il supporto MPI di FEniCS, con modifiche minime al codice lato utente

Miglioramenti del Remeshing

  • Estensione dell'Applicabilità: il nuovo flusso di lavoro di remeshing supporta problemi di space mapping e gestione dei vincoli
  • Aggiornamento della Sintassi: gli utenti devono seguire una sintassi leggermente diversa ma comunque intuitiva
  • Collo di Bottiglia Prestazionale: a causa delle limitazioni di Gmsh e meshio, il remeshing stesso non è parallelizzato

Lavori Correlati

Sviluppo della Tecnica di Space Mapping

  • Ricerche precedenti hanno affrontato il metodo di space mapping per problemi di controllo ottimale
  • Il metodo di space mapping per l'ottimizzazione di forma è una tecnica introdotta di recente
  • cashocs è il primo software a fornire un framework di space mapping sia per l'ottimizzazione di forma che per il controllo ottimale in problemi di ottimizzazione vincolata da PDE

Algoritmi di Ottimizzazione Topologica

  • Integra i più recenti algoritmi di ottimizzazione topologica proposti da Amstutz e Andrä
  • Implementa il metodo di ottimizzazione topologica quasi-newtoniano proposto da Blauth e Sturm
  • Rimane spazio per miglioramenti nel calcolo automatico delle informazioni di sensibilità topologica

Conclusioni e Discussione

Conclusioni Principali

  1. Completezza Funzionale: cashocs 2.0 estende significativamente le funzionalità del software, diventando una soluzione completa per l'ottimizzazione vincolata da PDE
  2. Valore per Applicazioni Industriali: il framework di space mapping è particolarmente adatto alle applicazioni industriali, consentendo di sfruttare efficacemente i risolutori commerciali esistenti
  3. Miglioramento della Capacità Computazionale: il supporto parallelo MPI consente al software di gestire problemi reali su larga scala
  4. Miglioramento dell'Usabilità: molteplici miglioramenti aumentano l'usabilità e la flessibilità del software

Limitazioni

  1. Calcolo della Derivata Topologica: la derivata topologica nell'ottimizzazione topologica deve ancora essere fornita manualmente dall'utente
  2. Collo di Bottiglia del Remeshing: il processo di remeshing non è parallelizzato, potendo diventare un collo di bottiglia prestazionale per alcune applicazioni
  3. Dipendenza da Strumenti Esterni: dipendenza dalle limitazioni di strumenti esterni come Gmsh e meshio

Direzioni Future

  1. Derivata Topologica Automatica: sviluppo di metodi per il calcolo automatico della derivata topologica
  2. Remeshing Parallelo: miglioramento delle prestazioni parallele del flusso di lavoro di remeshing
  3. Ulteriori Algoritmi di Ottimizzazione: integrazione di algoritmi di ottimizzazione più avanzati e metodi di gestione dei vincoli

Valutazione Approfondita

Punti di Forza

  1. Forte Innovatività: prima integrazione in un singolo software di space mapping, ottimizzazione topologica e calcolo parallelo
  2. Elevato Valore Pratico: particolarmente adatto alle applicazioni industriali, in grado di integrarsi con software commerciale esistente
  3. Tecnologia Avanzata: adotta le più recenti tecniche di ottimizzazione numerica e algoritmi
  4. Documentazione Completa: fornisce tutorial e documentazione dettagliati
  5. Disponibilità Open Source: la licenza GNU GPL garantisce l'accessibilità del software

Insufficienze

  1. Dipendenza dalla Piattaforma: altamente dipendente dall'ecosistema FEniCS
  2. Curva di Apprendimento: per utenti non specializzati, la padronanza dei concetti di ottimizzazione vincolata da PDE presenta ancora una certa difficoltà
  3. Collo di Bottiglia Prestazionale: la serializzazione del remeshing limita la scalabilità di alcune applicazioni

Impatto

  1. Contributo Accademico: fornisce uno strumento importante per la ricerca in ottimizzazione vincolata da PDE
  2. Valore Industriale: può migliorare significativamente l'efficienza di risoluzione dei problemi di ottimizzazione industriale
  3. Costruzione della Comunità: la natura open source favorisce la formazione di una comunità attiva di utenti e sviluppatori

Scenari di Applicazione

  • Progettazione di ottimizzazione di forma nell'industria aerospaziale
  • Ottimizzazione fluidodinamica nell'industria automobilistica
  • Ottimizzazione di dispositivi nell'ingegneria biomedica
  • Ottimizzazione topologica nell'ingegneria strutturale
  • Progetti di ottimizzazione che richiedono integrazione con software CFD commerciale

Bibliografia

Le principali referenze includono:

  1. Blauth, S. (2021). cashocs: A Computational, Adjoint-Based Shape Optimization and Optimal Control Software. SoftwareX, 13, 100646.
  2. Blauth, S. (2023). Space Mapping for PDE Constrained Shape Optimization. SIAM J. Optim., 33(3), 1707–1733.
  3. Amstutz, S., & Andrä, H. (2006). A new algorithm for topology optimization using a level-set method. J. Comput. Phys., 216(2), 573–588.

Sintesi: cashocs 2.0 rappresenta un importante aggiornamento software nel campo dell'ottimizzazione vincolata da PDE. Attraverso l'integrazione di tecnologie avanzate come space mapping, ottimizzazione topologica e calcolo parallelo, il software migliora significativamente la funzionalità e l'utilità pratica. Questo software è particolarmente adatto per applicazioni industriali e accademiche che richiedono la risoluzione efficiente di problemi di ottimizzazione complessi, rappresentando uno strumento importante per ricercatori e ingegneri in questo settore.