deep_learning_topology_opt

Code for paper "Self-Directed Online Machine Learning for Topology Optimization"

https://github.com/deng-cy/deep_learning_topology_opt

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org, nature.com, zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.4%) to scientific vocabulary

Keywords

bat-algorithm binary-bat-algorithm comsol deep-learning matlab optimization python pytorch simmulated-annealing topology-optimization
Last synced: 6 months ago · JSON representation ·

Repository

Code for paper "Self-Directed Online Machine Learning for Topology Optimization"

Basic Info
  • Host: GitHub
  • Owner: deng-cy
  • License: mit
  • Language: MATLAB
  • Default Branch: master
  • Homepage:
  • Size: 223 KB
Statistics
  • Stars: 119
  • Watchers: 6
  • Forks: 25
  • Open Issues: 0
  • Releases: 2
Topics
bat-algorithm binary-bat-algorithm comsol deep-learning matlab optimization python pytorch simmulated-annealing topology-optimization
Created almost 6 years ago · Last pushed about 1 year ago
Metadata Files
Readme License Citation

readme.md

Code for Self-Directed Online Machine Learning for Topology Optimization

This repository contains code of the following paper:

Changyu Deng, Yizhou Wang, Can Qin, Yun Fu, and Wei Lu. "Self-Directed Online Machine Learning for Topology Optimization." Nature Communications 13.1 (2022) Website Download arXiv

Contact

Open an issue for this repository or send emails to dengcy@umich.edu. I will try to respond within a few hours. Pull requests are welcome.

Introduction

There are 8 examples of 4 types in the paper, two compliance minimization problems (coarse mesh/fine mesh), two fluid-structure optimization problems (coarse mesh/fine mesh), a heat transfer enhancement problem (heat) and three truss optimization problems (truss). Their code is in their individual folders; they do not share files. Please refer to the readme.md file in their own folder for more specific info.

If you are not sure which example to start from, I recommend

  • Fluid problem, if you have a GPU. It needs Python, COMSOL and Matlab. It is simple to undertsand and computes fast when you have a GPU.

  • Compliance problem, if you do not have a GPU. It needs Python, COMSOL and Matlab. It costs least computation but does not leverage GPU, so it will be slower than fluid problems when you have a GPU.

  • Truss problem, if you only have Python installed and do not want to install Matlab or COMSOL. It only uses Python, yet requires a GPU ( you can easily change the code to run on CPU, but you will wait for too long). Also, it is a little harder to understand than compliance problems and fluid problems.

I do NOT recommend starting from the heat problem. It is not easy to understand and time-consuming to compute.

Software environment

Following softwares are used by most examples:

  • COMSOL Multiphysics 5.4
  • Matlab 2019b
  • Python 3.7
    • PyTorch 1.2.0

Higher versions should work fine. Lower versions may be compatible. Refer to the folders for more details. Some different packages may be needed.

Reproducibility

Please note that the reproducibility is not guranteed due to PyTorch platform (see its documentation), yet similar results are expected.

Alternative repositories

There are four repositories that store the code/data of this work.

Code only:

Code and data (including generated .mph files and optimization results):

Owner

  • Login: deng-cy
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Deng"
  given-names: "Changyu"
  orcid: "https://orcid.org/0000-0001-8339-4014"
- family-names: "Wang"
  given-names: "Yizhou"
- family-names: "Qin"
  given-names: "Can"
- family-names: "Fu"
  given-names: "Yun"
- family-names: "Lu"
  given-names: "Wei"

title: "Self-Directed Online Machine Learning for Topology Optimization"
doi: 10.5281/zenodo.5722376
date-released: 2021-11-24
url: "https://github.com/deng-cy/deep_learning_topology_opt"

GitHub Events

Total
  • Watch event: 23
  • Push event: 1
  • Fork event: 2
Last Year
  • Watch event: 23
  • Push event: 1
  • Fork event: 2

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 2
proxy.golang.org: github.com/deng-cy/deep_learning_topology_opt
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.5%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 6 months ago