Angry Birds (Science Birds) Level Generation by Evolutionary Strategy Guided Variational Autoencoder
- Download the folder "build-windows". If you are using other OS, you can fetch the Science Birds repository and build it with Unity.
- Run "Science_Birds.exe", or the binary executable you compiled.
- Our generated levels start from level 4.
- Levels are saved in ".xml" format and placed in folder "./build-windows/ScienceBirds_Data/StreamingAssets/Levels".
- Download the folder "GPU".
- Upload that onto Google Colab.
- Open "Experiment.ipynb".
- Connect Colab to GPU.
- Configure the variable
notebook_path
to the path of the notebook. - (Select a custom fitness).
- Run all code blocks. Under default configuration, the EA should take around 6 min to run.
- Generated levels are saved under "./GPU/generated_levels".
- Full data of our experiments are saved as "Experiement_data.xlsx"
- We separate "GPU" and "CPU" since there are difference between the two modes that cannot be merged easily.
- The "TensorFlow(abandoned)" folder contains our attempt of building the VAE from scratch. However, it suffers from overfitting issues and we do not have enough time to figure that out.
- The code we use for VAE are in "saved_models" and "utility" folder, under "./CPU" and "./GPU", which are extracted and modified from the source code of the paper we reviewed.
- The code to build the game environment come from Science Birds.
- Takumi Tanabe, Kazuto Fukuchi, Jun Sakuma, and Youhei Akimoto. 2021. Level Generation for Angry Birds with Sequential VAE and Latent Variable Evolution. In Proceedings of the Genetic and Evolutionary Computation Conference (Lille, France) (GECCO โ21). Association for Computing Machinery, New York, NY, USA, 1052โ1060. https://doi.org/10.1145/3449639.34592