Difference between revisions of "Getting started for Demiurge"

From IridiaWiki
Jump to navigationJump to search
(Added first instructions to installing AutoMoDe)
(30 intermediate revisions by 2 users not shown)
Line 4: Line 4:
   
 
* Activate all resources as described [[What_you_need_to_begin_to_work_in_IRIDIA | on this page]], if you not have done so already.
 
* Activate all resources as described [[What_you_need_to_begin_to_work_in_IRIDIA | on this page]], if you not have done so already.
** '''TODO''' What is most important of these steps?
+
<!-- ** '''TODO''' What is most important of these steps? -->
 
* Set up your workstation (see [[Workstation_configuration|this page]] for more details)
 
* Set up your workstation (see [[Workstation_configuration|this page]] for more details)
 
* Send your [https://www.github.com github] account name to the Demiurge repository administrator (at the moment Ken)
 
* Send your [https://www.github.com github] account name to the Demiurge repository administrator (at the moment Ken)
 
** He will add you to the [https://github.com/demiurge-project demiurge-project organization] so that you can see the private development repositories
 
** He will add you to the [https://github.com/demiurge-project demiurge-project organization] so that you can see the private development repositories
** Development rules for the github repositories: '''TODO'''
+
<!-- ** Development rules for the github repositories: '''TODO''' -->
 
* Get yourself added to the Demiurge Whatsapp group
 
* Get yourself added to the Demiurge Whatsapp group
 
* Give your e-mail address to Mauro, he will add you to the Demiurge mailing list
 
* Give your e-mail address to Mauro, he will add you to the Demiurge mailing list
* Install argos ('''TODO''' Instructions)
+
* Install argos
 
*# Install all prerequisites (specified at the [https://github.com/ilpincy/argos3 github page])
 
*# Install all prerequisites (specified at the [https://github.com/ilpincy/argos3 github page])
*#* You can do so by running the following command in your terminal: '''TODO'''
+
*#* You can do so by running the following command in your terminal: '''TODO: Check again this is the right list of prerequisites'''
  +
*#* <code>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</code>
 
*# Download and install argos
 
*# Download and install argos
 
*#* Be aware that we are currently not using the most recent version but instead the release "3.0.0-beta48"
 
*#* Be aware that we are currently not using the most recent version but instead the release "3.0.0-beta48"
  +
*#* Get the repository:
*# Donwload and install the e-puck plugin '''TODO'''
 
  +
*#*# <code>git clone git@github.com:ilpincy/argos3.git argos3</code>, clones the repository '''TODO:''' Setting up ssh keys?
  +
*#*# <code>cd argos3</code>
  +
*#*# <code>git checkout 3.0.0-beta48</code>, 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
  +
*#*# <code>mkdir build</code>
  +
*#*# <code>cd build</code>
  +
*#*# <code>cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release -DARGOS_INSTALL_LDSOCONF=OFF -DARGOS_DOCUMENTATION=OFF ../src</code>, where the [INSTALL_LOCATION] is the place where you will place all compiled projects (on the cluster /home/[USER_NAME]/)
  +
*#*# <code>make</code>
  +
*#*# <code>make doc</code>, if you have forgotten the -DARGOS_DOCUMENTATION=OFF
  +
*#*# <code>make install</code>
  +
*#* Before you can install our epuck-plugin, you have to remove the default plugin first. In argos3-dist run the following commdands
  +
*#*# <code>rm -rf include/argos3/plugins/robots/e-puck</code>
  +
*#*# <code>rm -rf lib/argos3/lib*epuck*.so</code>
  +
*#* Add the following lines to your .bashrc (or create a separate file and source it from your .bashrc)
  +
*#*# <code>export PKG_CONFIG_PATH=[INSTALL_LOCATION]/argos3-dist/lib/pkgconfig</code>
  +
*#*# <code>export ARGOS_PLUGIN_PATH=[INSTALL_LOCATION]/argos3-dist/lib/argos3</code>
  +
*#*# <code>export LD_LIBRARY_PATH=$ARGOS_PLUGIN_PATH:$LD_LIBRARY_PATH</code>
  +
*#*# <code>export PATH=[INSTALL_LOCATION]/argos3-dist/bin/:$PATH</code>
 
*# Download and install the e-puck plugin
  +
*#* Get the repository
  +
*#*# <code>git clone git@github.com:demiurge-project/argos3-epuck.git argos3-epuck</code>
  +
*#*# <code>cd argos3-epuck</code>
  +
*#*# <code>git checkout v48</code>
  +
*#* '''If you are on the cluster:'''
  +
*#*# Open src/plugins/robots/e-puck/CMakeLists.txt and comment the line with <code>include(VisionTools.cmake)</code>
  +
*#*# Open src/cmake/ARGoSBuildChecks.cmake and remove the checks for Lua and Qt/OpenGL
  +
*#* Prepare the build of the epuck-plugin
  +
*#*# <code>mkdir build</code>
  +
*#*# <code>cd build</code>
  +
*#*# <code>cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ../src</code>, where the [INSTALL_LOCATION] is the same place as for argos3 (on the cluster /home/[USER_NAME]/)
  +
*#*# <code>make</code>
  +
*#*# <code>make install</code>
 
** If you don't want to install everything by hand [http://iridia.ulb.ac.be/~afranzin/files/scripts/bundle_argos3_epuck.sh this script] might be useful. However you need all prerequisites installed before running the script.
 
** If you don't want to install everything by hand [http://iridia.ulb.ac.be/~afranzin/files/scripts/bundle_argos3_epuck.sh this script] might be useful. However you need all prerequisites installed before running the script.
* Install AutoMoDe ('''TODO''' Instructions)
+
* Install AutoMoDe
  +
*# Download and install the loopfunctions
<!--** Problems that I have encountered: Lua.h couldn't be found (solution move lua headers from /usr/include/lua5.x/ to /usr/include/)-->
 
  +
*## <code>git clone git@github.com:demiurge-project/experiments-loop-functions.git AutoMoDe-loopfunctions</code>
  +
*## <code>cd AutoMoDe-loopfunctions</code>
  +
*## <code>git checkout simulation</code>
  +
*## <code>mkdir build</code>
  +
*## <code>cd build</code>
  +
*## <code>cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ..</code>
  +
*## <code>make</code>
  +
*## <code>make install</code>
  +
*# Download and install the e-puck DAO
  +
*## <code>git clone git@github.com:demiurge-project/demiurge-epuck-dao.git AutoMoDe-DAO</code>
  +
*## <code>cd AutoMoDe-DAO</code>
  +
*## <code>mkdir build && cd build</code>
  +
*## <code>cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ..</code>
  +
*## <code>make</code>
  +
*## <code>make install</code>
  +
*# Download and install AutoMoDe
  +
*## <code>git clone git@github.com:demiurge-project/AutoMoDe-private.git AutoMoDe</code>
  +
*## <code>cd AutoMoDe</code>
  +
*## <code>mkdir build</code>
  +
*## <code>cd build</code>
  +
*## <code>cmake ..</code>
  +
*## <code>make</code>
 
* If you have to work on the cluster you should follow [http://majorana.ulb.ac.be/wordpress/how-to-install-argos3-on-majorana/ these instructions] to install Argos. AutoMoDe can be installed as on your local computer.
 
* If you have to work on the cluster you should follow [http://majorana.ulb.ac.be/wordpress/how-to-install-argos3-on-majorana/ 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 [https://nextcloud.ananas.space/s/WhQ2yqhmqoaBRdC irace package]
  +
*# Upload the .tar.gz file to your home directory in the cluster
  +
*# Install the R package locally
  +
*#* Run the following command: <code>R CMD INSTALL -l ~/R/x86_64-redhat-linux-gnu-library/2.15/ irace_2.2.tar.gz</code>
  +
*#* Please note that the irace package must be located in ~/R/x86_64-redhat-linux-gnu-library/2.15/irace to be correctly located by R. At the moment it is not possible to put it anywhere else
  +
*#* If you are installing on the new rack, replace the 2.15 in the path by 3.5. This is because we have an updated version of R.
  +
*# Add irace to IRACE_HOME, PATH and R_LIBS path (for example in your [https://en.wikipedia.org/wiki/Bash_%28Unix_shell%29#Startup_scripts .bashrc file] with the following commands)
  +
*#* <code>export R_LIBS_USER=~/R/x86_64-redhat-linux-gnu-library/2.15</code>
  +
*#* <code>export IRACE_HOME=${R_LIBS_USER}/irace</code>
  +
*#* <code>export PATH=${IRACE_HOME}/bin/:${PATH}</code>
  +
*#* <code>export R_LIBS=${R_LIBS_USER}:${R_LIBS}</code>
  +
* In order to install EvoStick
  +
*# ''Coming soon''
  +
* In order to install NEAT
  +
*# ''Coming soon''
  +
<!--** Installing new software in the cluster is not always easy. Therefore many modules are not up-to-date and you have to stick to the versions that are used by the cluster. Check before writing your software that you have approximately the same versions as on the cluster or you might encounter some surprises when running your experiments.-->
  +
  +
== Running robot experiments in the arena ==
  +
  +
* A detailed description on running experiments in the Arena can be found [[AutoMoDe_Arena_Experiments | here]]
  +
  +
== Writing your paper ==
  +
  +
* See [[Demiurge_Writing_Papers | this page]] for information on how to write your paper.
   
 
== Important paper to read ==
 
== Important paper to read ==
Line 26: Line 107:
 
* [http://iridia.ulb.ac.be/~mbiro/paperi/FraBraBru-etal2014si.pdf AutoMoDe Vanilla]
 
* [http://iridia.ulb.ac.be/~mbiro/paperi/FraBraBru-etal2014si.pdf AutoMoDe Vanilla]
 
* [http://iridia.ulb.ac.be/~mbiro/paperi/FraBraBru-etal2015si.pdf AutoMoDe Chocolate]
 
* [http://iridia.ulb.ac.be/~mbiro/paperi/FraBraBru-etal2015si.pdf AutoMoDe Chocolate]
  +
* [http://iridia.ulb.ac.be/IridiaTrSeries/link/IridiaTr2016-004.pdf Irace User Guide]
   
 
== Useful pages to bookmark ==
 
== Useful pages to bookmark ==

Revision as of 17:01, 14 March 2019

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)
  • 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 argos
    1. 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
    2. 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:
        1. git clone git@github.com:ilpincy/argos3.git argos3, clones the repository TODO: Setting up ssh keys?
        2. cd argos3
        3. 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
        1. mkdir build
        2. cd build
        3. 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]/)
        4. make
        5. make doc, if you have forgotten the -DARGOS_DOCUMENTATION=OFF
        6. make install
      • Before you can install our epuck-plugin, you have to remove the default plugin first. In argos3-dist run the following commdands
        1. rm -rf include/argos3/plugins/robots/e-puck
        2. rm -rf lib/argos3/lib*epuck*.so
      • Add the following lines to your .bashrc (or create a separate file and source it from your .bashrc)
        1. export PKG_CONFIG_PATH=[INSTALL_LOCATION]/argos3-dist/lib/pkgconfig
        2. export ARGOS_PLUGIN_PATH=[INSTALL_LOCATION]/argos3-dist/lib/argos3
        3. export LD_LIBRARY_PATH=$ARGOS_PLUGIN_PATH:$LD_LIBRARY_PATH
        4. export PATH=[INSTALL_LOCATION]/argos3-dist/bin/:$PATH
    3. Download and install the e-puck plugin
      • Get the repository
        1. git clone git@github.com:demiurge-project/argos3-epuck.git argos3-epuck
        2. cd argos3-epuck
        3. git checkout v48
      • If you are on the cluster:
        1. Open src/plugins/robots/e-puck/CMakeLists.txt and comment the line with include(VisionTools.cmake)
        2. Open src/cmake/ARGoSBuildChecks.cmake and remove the checks for Lua and Qt/OpenGL
      • Prepare the build of the epuck-plugin
        1. mkdir build
        2. cd build
        3. 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]/)
        4. make
        5. make install
    • 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 AutoMoDe
    1. Download and install the loopfunctions
      1. git clone git@github.com:demiurge-project/experiments-loop-functions.git AutoMoDe-loopfunctions
      2. cd AutoMoDe-loopfunctions
      3. git checkout simulation
      4. mkdir build
      5. cd build
      6. cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ..
      7. make
      8. make install
    2. Download and install the e-puck DAO
      1. git clone git@github.com:demiurge-project/demiurge-epuck-dao.git AutoMoDe-DAO
      2. cd AutoMoDe-DAO
      3. mkdir build && cd build
      4. cmake -DCMAKE_INSTALL_PREFIX=[INSTALL_LOCATION]/argos3-dist -DCMAKE_BUILD_TYPE=Release ..
      5. make
      6. make install
    3. Download and install AutoMoDe
      1. git clone git@github.com:demiurge-project/AutoMoDe-private.git AutoMoDe
      2. cd AutoMoDe
      3. mkdir build
      4. cd build
      5. cmake ..
      6. make
  • 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:
    1. Download the irace package
    2. Upload the .tar.gz file to your home directory in the cluster
    3. Install the R package locally
      • Run the following command: R CMD INSTALL -l ~/R/x86_64-redhat-linux-gnu-library/2.15/ irace_2.2.tar.gz
      • Please note that the irace package must be located in ~/R/x86_64-redhat-linux-gnu-library/2.15/irace to be correctly located by R. At the moment it is not possible to put it anywhere else
      • If you are installing on the new rack, replace the 2.15 in the path by 3.5. This is because we have an updated version of R.
    4. 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/2.15
      • 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
    1. Coming soon
  • In order to install NEAT
    1. 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

People working on the project

  • TODO

Resources depending on your area of expertise

  • TODO