Differences between revisions 1 and 8 (spanning 7 versions)
Revision 1 as of 2010-08-03 09:58:17
Size: 584
Editor: GabiRoeger
Comment:
Revision 8 as of 2010-08-10 17:55:03
Size: 2687
Editor: MalteHelmert
Comment:
Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
XXX TODO {{{
translate.py [DOMAIN] PROBLEM
}}}
Line 11: Line 13:
 * `DOMAIN` (filename): PDDL domain file
 * `PROBLEM` (filename): PDDL problem file

If the domain file is not given, the planner will try to infer a likely name from the problem file name, using the conventions used at the various IPCs. (If in doubt if this will work for you, just try it out.)

Note: Creates a file called output.sas (as well as test.groups, all.groups, ...)
Line 13: Line 21:
XXX TODO {{{
 preprocess < OUTPUT.SAS
}}}

 * `OUTPUT.SAS` (filename): translator output

Note: Creates a file called output
Line 19: Line 33:
 search [OPTIONS] {-s|--search} SEARCH < OUTPUT  downward [OPTIONS] --search SEARCH < OUTPUT
Line 25: Line 39:
 * `-h, --heuristic` [[ReusingHeuristics#predefinition|HEURISTIC_PREDEFINITION]]  * `--heuristic` [[ReusingHeuristics#predefinition|HEURISTIC_PREDEFINITION]]
Line 28: Line 42:
 * `-r, --random-seed` SEED  * `--random-seed` SEED
Line 30: Line 44:


=== Examples ===

A* search:

{{{#!highlight bash
# landmark-cut heuristic (previously configuration "ou")
 ./downward --search "astar(lmcut())" < ./output

# merge-and-shrink heuristic with default settings (previously configuration "oa50000")
 ./downward --search "astar(mas())" < ./output

# blind heuristic (previously configuarion "ob")
 ./downward --search "astar(blind())" < ./output
}}}

Lazy greedy best first search with preferred operators and the queue alternation method:

{{{#!highlight bash
## using FF heuristic and context-enhanced additive heuristic (previously: "fFyY")
 ./downward --heuristic "hff=ff()" --heuristic "hcea=cea()" \
            --search "lazy_greedy(hff, hcea, preferred=(hff, hcea))" \
            < ./output

## using FF heuristic (previously: "fF")
 ./downward --heuristic "hff=ff()" \
            --search "lazy_greedy(hff, preferred=(hff))" \
            < ./output

## using context-enhanced additive heuristic (previously: "yY")
 ./downward --heuristic "hcea=cea()" \
            --search "lazy_greedy(hcea, preferred=(hcea))" \
            < ./output
}}}

The above examples use the new best-first search implementation.
For comparison, the old best-first search implementation is still available:
{{{
 ./downward --heuristic "hff=ff()" --heuristic "hcea=cea()" \
            --search "old_greedy(hff, hcea, preferred=(hff, hcea))" \
            < ./output
}}}

If you would like to have another translation from an old-style configuration to the new call-syntax,
please add it here as a TODO.

Back to HomePage.

Usage

Translator

translate.py [DOMAIN] PROBLEM
  • DOMAIN (filename): PDDL domain file

  • PROBLEM (filename): PDDL problem file

If the domain file is not given, the planner will try to infer a likely name from the problem file name, using the conventions used at the various IPCs. (If in doubt if this will work for you, just try it out.)

Note: Creates a file called output.sas (as well as test.groups, all.groups, ...)

Preprocessor

 preprocess < OUTPUT.SAS
  • OUTPUT.SAS (filename): translator output

Note: Creates a file called output

Search component

 downward [OPTIONS] --search SEARCH < OUTPUT
  • SEARCH (SearchEngine): configuration of the search algorithm

  • OUTPUT (filename): preprocessor output

Options:

  • --heuristic HEURISTIC_PREDEFINITION

    • Predefines a heuristic that can afterwards be referenced by the name that is specified in the definition.
  • --random-seed SEED

    • Use random seed SEED

Examples

A* search:

   1 # landmark-cut heuristic (previously configuration "ou")
   2  ./downward --search "astar(lmcut())" < ./output
   3 
   4 # merge-and-shrink heuristic with default settings (previously configuration "oa50000")
   5  ./downward --search "astar(mas())" < ./output
   6 
   7 # blind heuristic (previously configuarion "ob")
   8  ./downward --search "astar(blind())" < ./output

Lazy greedy best first search with preferred operators and the queue alternation method:

   1 ## using FF heuristic and context-enhanced additive heuristic (previously: "fFyY")
   2  ./downward --heuristic "hff=ff()" --heuristic "hcea=cea()" \
   3             --search "lazy_greedy(hff, hcea, preferred=(hff, hcea))" \
   4             < ./output
   5 
   6 ## using FF heuristic (previously: "fF")
   7  ./downward --heuristic "hff=ff()" \
   8             --search "lazy_greedy(hff, preferred=(hff))" \
   9             < ./output
  10 
  11 ## using context-enhanced additive heuristic (previously: "yY")
  12  ./downward --heuristic "hcea=cea()" \
  13             --search "lazy_greedy(hcea, preferred=(hcea))" \
  14             < ./output

The above examples use the new best-first search implementation. For comparison, the old best-first search implementation is still available:

 ./downward --heuristic "hff=ff()" --heuristic "hcea=cea()" \
            --search "old_greedy(hff, hcea, preferred=(hff, hcea))" \
            < ./output

If you would like to have another translation from an old-style configuration to the new call-syntax, please add it here as a TODO.

FastDownward: PlannerUsage (last edited 2023-10-12 12:14:59 by GabiRoeger)