This repo contains code for the paper Building LEGO Using Deep Generative Models of Graph by Rylee Thompson, Elahe Ghalebi, Terrance DeVries, and Graham W. Taylor.
To install the required packages run the command pip install -r requirements.txt
. To download the dataset used in our paper from Combinatorial 3D Shape Generation via Sequential Assembly, run the command python extract_dataset.py
. This will download the dataset from their Github and convert it to the form we use.
To recreate the results from our permutation analysis, run the command python permutation_script.py
.
To retrain our generative model, run python DGMG_train.py
. You can see all the tweakable hyperparameters in setup_train.py.
The file examples.ipynb
contains examples on how to use the code we developed for generating and validating LEGO graphs. It should be relatively straightforward to use these examples to try the dataset with another generative graph model. This code was made to be fairly general and extensible to other datasets, but will require some tweaking to the source code to get it up and running.
If you use this code, please cite
@article{thompson2020LEGO,
title={Building LEGO Using Deep Generative Models of Graphs},
author={Thompson, Rylee and Elahe, Ghalebi and DeVries, Terrance and Taylor, Graham W},
journal={Machine Learning for Engineering Modeling, Simulation, and Design
Workshop at Neural Information Processing Systems},
year={2020}
}
[1] Jungtaek Kim et al. “Combinatorial 3D Shape Generation via Sequential Assembly”. In: (Apr.2020). arXiv:2004.07414 [cs.CV].