ML_for_kirigami_design
ML_for_kirigami_design copied to clipboard
Python package to model and to perform topology optimization for graphene kirigami using deep learning
ML_for_kirigami_design
Python package to model and to perform topology optimization for graphene kirigami using deep learning. We use convolutional neural networks (similar to VGGNet architecure) for regression.
Paper
See our published paper:
- P. Z. Hanakata, E. D. Cubuk, D. K. Campbell, H.S. Park, Accelerated search and design of stretchable graphene kirigami using machine learning, Phys. Rev. Lett, 121, 255304 (2018).
- P. Z. Hanakata, E. D. Cubuk, D. K. Campbell, H.S. Park, Forward and inverse design of kirigami via supervised autoencoder, Phys. Rev. Research, 121, 255304 (2018).
General usage
- Data generation and data handling
- A jupyter notebook to generate atomic configurations for LAMMPS input file is avalaible in
generate_LAMMPS_input/generate_LAMMPS_configuration_input.ipynb. New methods to generate parallel cuts are now avalaible. - A simple jupyter notebook to convert coarse-grained dataset to fine-grid dataset is avalaible in
models/regression_CNN/convert_coarse_to_fine.ipynb
- Regression and optimization
- A python code to perform regression with TensorFlow is avalaible in
models/regression_CNN/tf_fgrid_dnn_validtrain.py - A python code to perform search optimal design with TensorFlow is avalaible in
models/regression_CNN/tf_cnn_search_large_v2.py - A simple jupyter notebook to perform predictions with scikit-learn package is avalaible in
models/simple/simple_machine_learning.ipynb
- Dataset
- Raw dataset of coarse-grained grid can be found in
mddata. This dataset generated using AIREBO potential with 1.7 mincutoff which is the default of CH.airebo.
- Supervised Autoencoder
- A sAE notebook to perform forward and inverse design is now avaliable in
models_supervisedAutoencoder_forwardInverseDesign/supervisedAE_for_kirigamiDesign.ipynb. See notebook for details of the code.
This package is still under developement. More features will be added soon.
To download
git clone https://github.com/phanakata/ML_for_kirigami_design.git
Authors
Paul Hanakata
Citation
If you use this package/code/dataset, build on or find our research is useful for your work please cite
@article{hanakata-PhysRevLett.121.255304,
title = {Accelerated Search and Design of Stretchable Graphene Kirigami Using Machine Learning},
author = {Hanakata, Paul Z. and Cubuk, Ekin D. and Campbell, David K. and Park, Harold S.},
journal = {Phys. Rev. Lett.},
volume = {121},
issue = {25},
pages = {255304},
numpages = {6},
year = {2018},
month = {Dec},
publisher = {American Physical Society},
doi = {10.1103/PhysRevLett.121.255304},
url = {https://link.aps.org/doi/10.1103/PhysRevLett.121.255304}
}
@article{PhysRevResearch.2.042006,
title = {Forward and inverse design of kirigami via supervised autoencoder},
author = {Hanakata, Paul Z. and Cubuk, Ekin D. and Campbell, David K. and Park, Harold S.},
journal = {Phys. Rev. Research},
volume = {2},
issue = {4},
pages = {042006},
numpages = {6},
year = {2020},
month = {Oct},
publisher = {American Physical Society},
doi = {10.1103/PhysRevResearch.2.042006},
url = {https://link.aps.org/doi/10.1103/PhysRevResearch.2.042006}
}