Getting started for Demiurge
From IridiaWiki
Revision as of 15:19, 8 November 2021 by JonasKuckling (talk | contribs) (→Set up your working environment: Added new section heading as test)
This page will list all the necessary steps you should take before starting to work on the Demiurge project.
Set up your working environment
- Activate all resources as described on this page, if you not have done so already.
- Set up your workstation (see this page for more details)
- Send your github account name to the Demiurge repository administrator (at the moment Ken)
- He will add you to the demiurge-project organization so that you can see the private development repositories
- Get yourself added to the Demiurge Whatsapp group
- Give your e-mail address to Mauro, he will add you to the Demiurge mailing list
Install AutoMoDe
- Install argos
- Install all prerequisites (specified at the github page)
- You can do so by running the following command in your terminal: TODO: Check again this is the right list of prerequisites
sudo apt-get install libfreeimage-dev libfreeimageplus-dev qt5-default freeglut3-dev libxi-dev libxmu-dev liblua5.2-dev lua5.2 doxygen graphviz graphviz-dev asciidoc
- Download and install argos
- Be aware that we are currently not using the most recent version but instead the release "3.0.0-beta48"
- Get the repository:
git clone git@github.com:ilpincy/argos3.git argos3
, clones the repository TODO: Setting up ssh keys?cd argos3
git checkout 3.0.0-beta48
, checks out the version that we are using at the moment
- If you are on the cluster: Change the CMake-version from 2.8.12 to 2.8.8 in the src/CMakeLists.txt file. There are two occurences that need to be replaced.
- Prepare the build of argos3
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release -DARGOS_INSTALL_LDSOCONF=OFF -DARGOS_DOCUMENTATION=OFF ../src
, where the [INSTALL_LOCATION] is the place where you will place all compiled projects (on the cluster /home/[USER_NAME]/)make
make doc
, if you have forgotten the -DARGOS_DOCUMENTATION=OFFmake install
- Before you can install our epuck-plugin, you have to remove the default plugin first. In argos3-dist run the following commdands
rm -rf [INSTALL_LOCATION]/argos3-dist/include/argos3/plugins/robots/e-puck
rm -rf [INSTALL_LOCATION]/argos3-dist/lib/argos3/lib*epuck*.so
- Add the following lines to your .bashrc (or create a separate file and source it from your .bashrc)
export PKG_CONFIG_PATH=[INSTALL_LOCATION]/argos3-dist/lib/pkgconfig
export ARGOS_PLUGIN_PATH=[INSTALL_LOCATION]/argos3-dist/lib/argos3
export LD_LIBRARY_PATH=$ARGOS_PLUGIN_PATH:$LD_LIBRARY_PATH
export PATH=[INSTALL_LOCATION]/argos3-dist/bin/:$PATH
- Download and install the e-puck plugin
- Get the repository
git clone git@github.com:demiurge-project/argos3-epuck.git argos3-epuck
cd argos3-epuck
git checkout v48
- If you are on the cluster:
- Open src/plugins/robots/e-puck/CMakeLists.txt and comment the line with
include(VisionTools.cmake)
- Open src/cmake/ARGoSBuildChecks.cmake and remove the checks for Lua and Qt/OpenGL
- Open src/plugins/robots/e-puck/CMakeLists.txt and comment the line with
- Prepare the build of the epuck-plugin
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ../src
, where the [INSTALL_LOCATION] is the same place as for argos3 (on the cluster /home/[USER_NAME]/)make
make install
- Get the repository
- If you don't want to install everything by hand this script might be useful. However you need all prerequisites installed before running the script.
- Install all prerequisites (specified at the github page)
- Install AutoMoDe
- Download and install the loopfunctions
git clone git@github.com:demiurge-project/experiments-loop-functions.git AutoMoDe-loopfunctions
cd AutoMoDe-loopfunctions
git checkout simulation
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ..
make
make install
- Download and install the e-puck DAO
git clone git@github.com:demiurge-project/demiurge-epuck-dao.git AutoMoDe-DAO
cd AutoMoDe-DAO
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ..
make
make install
- Download and install AutoMoDe
git clone git@github.com:demiurge-project/AutoMoDe-private.git AutoMoDe
cd AutoMoDe
mkdir build
cd build
cmake ..
make
- Download and install the loopfunctions
- If you have to work on the cluster you should follow these instructions to install Argos. AutoMoDe can be installed as on your local computer.
- In order to install irace on the cluster, follow these steps:
- Download the irace package
- Upload the .tar.gz file to your home directory in the cluster
- Install the R package locally
mkdir ~/R/x86_64-redhat-linux-gnu-library/3.5/
(At the moment it is not possible to put it anywhere else)- Run the following command:
R CMD INSTALL -l ~/R/x86_64-redhat-linux-gnu-library/3.5/ irace_2.2.tar.gz
- Add irace to IRACE_HOME, PATH and R_LIBS path (for example in your .bashrc file with the following commands)
export R_LIBS_USER=~/R/x86_64-redhat-linux-gnu-library/3.5
export IRACE_HOME=${R_LIBS_USER}/irace
export PATH=${IRACE_HOME}/bin/:${PATH}
export R_LIBS=${R_LIBS_USER}:${R_LIBS}
- In order to install EvoStick
- Coming soon
- In order to install NEAT
- Coming soon
Running robot experiments in the arena
- A detailed description on running experiments in the Arena can be found here
Writing your paper
- See this page for information on how to write your paper.
Important paper to read
Useful pages to bookmark
- http://iridia.ulb.ac.be/IridiaTrSeries/: Here all Technical reports will be published
- https://github.com/demiurge-project: The github page for all of our repositories
People working on the project
- TODO
Resources depending on your area of expertise
- TODO
Development guidelines (git rules)
- See this page for information how the Development guidelines for using the git repositories.
Proj H402 (Master 1 project)
We have an organization (in terms of GitLab group) on GitLab where we can host the git repositories for the students of PROJ-H-402. Please keep the following things in mind:
- Students should be added as "Developer" to the repository. There should be no need to add them to the group.
- When a student is finished with the project, please let them prepare a release. This allows us to identify the contribution of each individual student, even if two or more students work on the same repository or another student takes up the development.