Differences between revisions 2 and 40 (spanning 38 versions)
Revision 2 as of 2010-08-05 15:14:01
Size: 1276
Editor: JendrikSeipp
Comment:
Revision 40 as of 2016-05-03 19:35:05
Size: 1352
Editor: JendrikSeipp
Comment: PATH seems to require absolute paths and ~ doesn't get expanded
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
= Experiment scripts = = Experiments =
Line 5: Line 5:
In the directory "new-scripts" you find some scripts that facilitate conducting experiments.
An experiment is conducted in three stages: Generation of experiments, fetching of results and production of reports. Each stage has its own generic main module: `experiments.py`, `resultfetcher.py`, `reports.py`. These modules provide useful classes and methods and can be imported by scripts that actually define concrete actions. For the fast downward planning system the example scripts that use these modules are `downward-experiments.py`, `downward-resultfetcher.py`, `downward-reports.py`. The first one can be seen as a reference example for own experiments, the other two can be used as they are from the commandline. Passing `-h` on the commandline gives you an overview of each script's commands.
We recommend using the {{{downward}}} package for running Fast Downward experiments. It is part of {{{lab}}}, a python library for running code on large benchmark sets. Experiments can be run either locally or on a computer cluster. You can find the code at https://bitbucket.org/jendrikseipp/lab. The documentation is available at http://lab.rtfd.org.
Line 8: Line 7:
== Generate an experiment == == Experiments on Maia (AI-Basel grid) ==
Line 10: Line 9:
{{{
./downward-experiments.py test-exp -c cea -s TEST
Please follow the instructions in the [[https://lab.readthedocs.io/en/latest/downward.tutorial.html|downward tutorial]] to install the necessary components.

The components need some environment variables and program modules. Here is an example ''~/.profile'' file (from May 2016):

{{{#!highlight bash
export PATH=${PATH}:${HOME}/bin # You can put the "validate" executable here
export PYTHONPATH="~/lib/python/lab:~/lib/cplex/CPLEX_Studio/cplex/python/x86-64_sles10_4.1/"

export DOWNWARD_CPLEX_INCDIR=~/lib/cplex/cplex/include/ilcplex
export DOWNWARD_CPLEX_LIBDIR=~/lib/cplex/cplex/lib/x86_sles10_4.1/static_pic
export DOWNWARD_CPLEX_ROOT=~/lib/cplex/cplex
export DOWNWARD_COIN_ROOT=~/lib/coin

module purge
module -q load Mercurial/2.5.2-goolf-1.4.10-Python-2.7.5 # Also loads Python 2.7
module -q load Clang/3.3-GCC-4.8.2 # Also loads GCC 4.8
module -q load CMake/2.8.11-GCC-4.8.2
Line 13: Line 27:

Generates a simple planning experiment with the configuration cea and the suite TEST in the directory "test-exp".

== Fetch and parse results ==

{{{
./downward-resultfetcher.py test-exp
}}}

Traverses the directory tree under "test-exp" and parses

== Make reports ==

{{{
./downward-reports.py test-exp-eval
}}}

Back to HomePage.

Experiments

We recommend using the downward package for running Fast Downward experiments. It is part of lab, a python library for running code on large benchmark sets. Experiments can be run either locally or on a computer cluster. You can find the code at https://bitbucket.org/jendrikseipp/lab. The documentation is available at http://lab.rtfd.org.

Experiments on Maia (AI-Basel grid)

Please follow the instructions in the downward tutorial to install the necessary components.

The components need some environment variables and program modules. Here is an example ~/.profile file (from May 2016):

   1 export PATH=${PATH}:${HOME}/bin  # You can put the "validate" executable here
   2 export PYTHONPATH="~/lib/python/lab:~/lib/cplex/CPLEX_Studio/cplex/python/x86-64_sles10_4.1/"
   3 
   4 export DOWNWARD_CPLEX_INCDIR=~/lib/cplex/cplex/include/ilcplex
   5 export DOWNWARD_CPLEX_LIBDIR=~/lib/cplex/cplex/lib/x86_sles10_4.1/static_pic
   6 export DOWNWARD_CPLEX_ROOT=~/lib/cplex/cplex
   7 export DOWNWARD_COIN_ROOT=~/lib/coin
   8 
   9 module purge
  10 module -q load Mercurial/2.5.2-goolf-1.4.10-Python-2.7.5  # Also loads Python 2.7
  11 module -q load Clang/3.3-GCC-4.8.2  # Also loads GCC 4.8
  12 module -q load CMake/2.8.11-GCC-4.8.2