Experiment code associated with our IDETC 2022 paper: GAN-DUF: Hierarchical Deep Generative Models for Design Under Free-Form Geometric Uncertainty.
GAN-DUF is short for Generative Adversarial Network-based Design under Uncertainty Framework.
This code is licensed under the MIT license. Feel free to use all or portions for your research or related projects so long as you provide the following citation information:
Chen, W. W., Lee, D., & Chen, W. (2022, August). Hierarchical Deep Generative Models for Design Under Free-Form Geometric Uncertainty. In ASME 2022 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference (IDETC-CIE). American Society of Mechanical Engineers (ASME). (Accepted)
@inproceedings{chen2022ganduf,
title={Hierarchical Deep Generative Models for Design Under Free-Form Geometric Uncertainty},
author={Chen, Wayne Wei and Lee, Doksoo and Chen, Wei},
booktitle={International Design Engineering Technical Conferences and Computers and Information in Engineering Conference},
year={2022},
organization={American Society of Mechanical Engineers}
}
- Download data (NPY files) from here, and put them in corresponding data directories (
metasurface/data/
orairfoil/data/
).
-
Go to the code directory. Create the environment from the
environment.yml
file:conda env create -f environment.yml
-
Activate the new environment:
conda activate ganduf
-
Go to example directory (
metasurface
orairfoil
). -
Train model:
python main.py train
The values of the model and training configuration will be read from the file
config.ini
.The trained model and the result plots will be saved under the directory
trained_model/<parent_latent_dim>_<child_latent_dim>/
, where<parent_latent_dim>
and<child_latent_dim>
are parent and child latent dimensions, respectively, and are specified inconfig.ini
.
-
Generate result plots using the trained model:
python main.py test