Author's implementation of SoftCon: Simulation and Control of Soft-Bodied Animals with Biomimetic Actuators (SIGGRAPH Asia 2019 Technical Paper)
The octopus swims by actuating muscles embedded in the soft tissues.
SoftCon is an open source code that implements the work SoftCon: Simulation and Control of Soft-Bodied Animals with Biomimetic Actuators. With our framework, user can generate the swimming animation of under-water animals with deformable body simulator, biomimetic muscle pattern generator, and swimming controller based on deep reinforcement learning. This code is written in C++ and Python, based on Tensorflow and OpenAI Baselines.
Sehee Min, Jungdam Won, Seunghwan Lee, Jungnam Park, and Jehee Lee. 2019. SoftCon: Simulation and Control of Soft-Bodied Animals with Biomimetic Actuators. ACM Trans. Graph. 38, 6, 208. (SIGGRAPH Asia 2019)
Project page : http://mrl.snu.ac.kr/publications/ProjectSoftCon/SoftCon.html
Paper : http://mrl.snu.ac.kr/publications/ProjectSoftCon/SoftCon.pdf
Youtube : https://www.youtube.com/watch?v=I2ylkhPSkT4
Blog : http://mrl.snu.ac.kr/blog/ProjectSoftCon
We recommend users to install and run this framework on Ubuntu. We checked code works in Ubuntu 16.04 and 18.04.
sudo apt-get update
sudo apt-get install build-essential cmake-curses-gui git
sudo apt-get install libeigen3-dev freeglut3-dev libtinyxml-dev libpython3-dev python3-numpy libopenmpi-dev
tar -xvf boost_1_66_0.tar.gz
cd boost_1_66_0
sudo ./bootstrap.sh --with-python=python3
sudo ./b2 --with-python --with-filesystem --with-system install
sudo apt-get install python3-pip
sudo pip3 install virtualenv
virtualenv venv
source venv/bin/activate
pip install numpy
pip install scipy
pip install matplotlib
pip install tensorflow
pip install mpi4py
pip install OpenCV-Python
pip install gym
sudo apt-get update && sudo apt-get install cmake zlib1g-dev
git clone https://github.com/openai/baselines.git
cd baselines
pip install -e .
git clone http://github.com/seiing/SoftCon
cd SoftCon
mkdir build
cd build
cmake ..
make -j8
./render/render
space
: play/pause.k
: play with default key.r
:reset the scene../render/render (network_name)
cd SoftCon/learn
mpirun -np 8 python3 -m run --type=train