Difference between revisions of "Getting started for Demiurge"

From IridiaWiki
Jump to navigationJump to search
(12 intermediate revisions by the same user 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"
Line 28: Line 29:
 
*#*# <code>make doc</code>, if you have forgotten the -DARGOS_DOCUMENTATION=OFF
 
*#*# <code>make doc</code>, if you have forgotten the -DARGOS_DOCUMENTATION=OFF
 
*#*# <code>make install</code>
 
*#*# <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
*#* '''TODO''' Remove the default e-puck plugin
 
  +
*#*# <code>rm -rf include/argos3/plugins/robots/e-puck</code>
*#* '''TODO:''' Setup paths for argos3 in .bashrc
 
  +
*#*# <code>rm -rf lib/argos3/lib*epuck*.so</code>
*# Download and install the e-puck plugin '''TODO'''
 
  +
*#* 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
 
*#* Get the repository
 
*#*# <code>git clone git@github.com:demiurge-project/argos3-epuck.git argos3-epuck</code>
 
*#*# <code>git clone git@github.com:demiurge-project/argos3-epuck.git argos3-epuck</code>
Line 43: Line 50:
 
*#*# <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>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</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:
 
* In order to install irace on the cluster, follow these steps:
Line 55: Line 85:
 
*#* 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.
 
*#* 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)
 
*# 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 R_LIBS_USER=~/R/x86_64-redhat-linux-gnu-library/2.15</code>
*#* <code>export IRACE_HOME=${R_LIBS_USER}/irace/</code>
+
*#* <code>export IRACE_HOME=${R_LIBS_USER}/irace</code>
 
*#* <code>export PATH=${IRACE_HOME}/bin/:${PATH}</code>
 
*#* <code>export PATH=${IRACE_HOME}/bin/:${PATH}</code>
 
*#* <code>export R_LIBS=${R_LIBS_USER}:${R_LIBS}</code>
 
*#* <code>export R_LIBS=${R_LIBS_USER}:${R_LIBS}</code>

Revision as of 16:39, 13 December 2018

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}

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