Coder Social home page Coder Social logo

nn4topopt's Introduction

Neural Networks for Topology Optimization

This is the code for the paper I. Sosnovik, I. Oseledets "Neural Networks for Topology Optimization". [link][pdf]

In this research, we propose a deep learning based approach for speeding up the topology optimization methods. The problem we seek to solve is the layout problem. The main novelty of this work is to state the problem as an image segmentation task. We leverage the power of deep learning methods as the efficient pixel-wise image labeling technique to perform the topology optimization. We introduce the convolutional encoder-decoder architecture and the overall approach of solving the above-described problem with high performance.

Preparations

We use TOP dataset to train the model. Download it manually, or just run

wget https://storage.googleapis.com/top4040/TOP4040.zip &&
unzip TOP4040.zip && 
rm TOP4040.zip

In order to work with dataset easier, we aggregate the files into one .h5 dataset.

python prepare_data.py --source SOURCE_FOLDER --dataset-path WHERE_TO_SAVE

Training

You can train the model with script training.py. Here is the list of arguments:

  • --dataset-path - path to .h5 dataset
  • --input-size - size of the input tensor. Default is 40
  • --batch-size - size of a minibatch. Default is 64
  • --epochs - number of training epochs. Default is 30
  • --vol-coeff - volume constraint coefficient in total loss. Default is 1.0
  • --iter-sampler - iteration sampler. Either uniform or poisson_<LAM>, where LAM is lambda in Poisson distribution. Default is uniform
  • --summary-prefix - root folder to save the summary
  • --save-prefix - root folder to save the model

Just type bash experiments.sh to run default experiments.

Notebook results.ipynb demonstrates how to reproduce some of the results from the paper.

Citation

If you use this code for your research, please cite

@article{sosnovik2017neural,
  title={Neural networks for topology optimization},
  author={Sosnovik, Ivan and Oseledets, Ivan},
  journal={arXiv preprint arXiv:1709.09578},
  year={2017}
}

nn4topopt's People

Contributors

isosnovik avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.