Skip to content

This repository is dedicated to the development of an approach based on machine learning and optimization algorithms for generative design of a prosthetic heart valve

License

Notifications You must be signed in to change notification settings

ViacheslavDanilov/generative_design

Repository files navigation

DOI DOI

Perfect prosthetic heart valve: generative design with machine learning, modeling, and optimization

📖 Contents

🎯 Introduction

This study proposes a novel method for designing prosthetic heart valves (PHVs) by combining machine learning (ML) with optimization algorithms. This approach aims to overcome the limitations of traditional design methods, such as Computer-Aided Design (CAD) and Finite Element Method (FEM), by automating the exploration of the vast design space, enabling the rapid development of PHVs that are potentially more effective and durable.

📁 Data

Our dataset comprises 11,565 unique PHV designs, meticulously generated through parametric modeling. Each design variant is defined by a set of six key parameters: height (HGT), diameter (DIA), leaflet thickness (THK), curvature (CVT), elevation angle (ANG), and material stiffness (Young’s modulus, ELM). These parameters were systematically varied (Figure 1) within realistic ranges to simulate a wide array of possible PHV configurations. For each design, FEM was performed to simulate its behavior under typical physiological conditions, focusing on two critical performance metrics: the opening area (LMN) and peak stress (STS) on the leaflets. This comprehensive dataset serves as the foundation for our machine learning models, capturing the complex interplay between design parameters and PHV performance.

Data distribution

Figure 1. Distribution of input variables and output targets.

🔬 Methods

Parametric Design and Finite Element Analysis

Initially, PHV designs were generated using MATLAB, varying the six key parameters within predefined ranges. These designs were then analyzed using "Abaqus/CAE" to simulate their mechanical behavior under physiological pressures. The simulation results provided us with LMN and STS values for each design.

Machine Learning Models

With the dataset in hand, we explored a variety of machine learning algorithms, focusing particularly on ensemble methods due to their robustness and accuracy. The dataset was split into training and validation sets, with 80% for training and 20% for validation. We evaluated the performance of decision trees, random forests, gradient boosting machines (including XGBoost, LightGBM, and CatBoost), and neural networks, ultimately focusing on ensemble models that combined the strengths of multiple algorithms.

Optimization Algorithms

For the optimization phase, we employed six state-of-the-art algorithms: Random Search (RS), Tree-structured Parzen Estimator (TPE), CMA-ES-based Algorithm (CMA), Nondominated Sorting Genetic Algorithm (NSGA), Multiobjective Tree-structured Parzen Estimator (MTPE), Quasi-Monte Carlo Algorithm (QMC). Each algorithm was tasked with finding the optimal set of design parameters that maximized the opening area while minimizing the peak stress, iterating through 2,000 design simulations per algorithm.

📈 Results

Our ensemble ML models achieved notable accuracy, with Mean Absolute Percentage Errors of 11.8% for the lumen opening and 10.2% for peak stress predictions (Table 1). This precision underscores the potential of ML models to predict PHV performance based on design parameters.

In the optimization phase, TPE and NSGA emerged as the most effective algorithms, efficiently navigating the design space to identify configurations that balanced the opening area and stress distribution. Designs optimized by these algorithms achieved design scores of approximately 95%, indicating a high degree of efficacy in meeting the established performance criteria.

Table 1. Evaluation of model performance on training and validation subsets.

Metric LMN train LMN val STS train STS val
1 MAPE 0.116 0.118 0.093 0.102
2 WAPE 0.042 0.044 0.077 0.081
3 MAE 0.018 0.019 0.127 0.135
4 NRMSE 0.040 0.044 0.022 0.029
5 R^2 98.7% 98.4% 97.0% 96.8%

A qualitative examination of the optimization results confirms the efficiency of the algorithms. All algorithms effectively selected parameter combinations that resulted in optimal leaflet opening while minimizing stress, as demonstrated in Figure 2. The optimal leaflet models typically exhibit high opening areas while maintaining moderate stress values, which in most cases do not exceed 2.0 MPa. This is well below the strength limit of the material models. It is noteworthy that the optimization algorithms show similar trends in selecting the best geometric indicators.

The valve opening directory provides a set of valves generated by all optimization algorithms, with the valve presented below being specifically generated by the Quasi-Monte Carlo algorithm.

Approach overview

Figure 2. Examples of final designs resulting from the studied optimizers: epiphyses in the open state after pressure application simulation. The initial geometry from which all algorithms started optimization is also presented.

QMC.mp4

🏁 Conclusion

Our generative design approach offers a significant advancement in the development of medical devices, especially prosthetic heart valves. By harnessing the power of machine learning and optimization algorithms, we can explore a wider array of geometric possibilities and achieve optimal designs more efficiently than traditional methods.

💻 Requirements

  • Operating System
    • macOS
    • Linux
    • Windows (limited testing carried out)
  • Python 3.8.x
  • Required core packages: requirements.txt

⚙ Installation

Step 1: Download and install Miniconda

wget https://repo.anaconda.com/miniconda/Miniconda3-py38_22.11.1-1-Linux-x86_64.sh
chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh

Step 2: Clone the repository

git clone https://github.com/ViacheslavDanilov/generative_design.git

Step 3: Create a conda environment and install the requirements for the repository

cd generative_design
chmod +x create_env.sh
source create_env.sh

🔐 Data Access

All essential components of the study, including the curated source code, dataset, and trained models, are publicly available:

🖊️ How to Cite

Please cite our paper if you found our data, methods, or results helpful for your research:

Danilov V.V., Klyshnikov K.Y., Onishenko P.S., Proutski A., Gankin Y., Melgani F., Ovcharenko E.A. (2023). Perfect prosthetic heart valve: generative design with machine learning, modeling, and optimization. Frontiers in Bioengineering and Biotechnology. DOI: https://doi.org/10.3389/fbioe.2023.1238130

About

This repository is dedicated to the development of an approach based on machine learning and optimization algorithms for generative design of a prosthetic heart valve

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published