Metadata-Version: 2.4
Name: fast-downward.translate
Version: 24.6
Summary: Translator of the Fast Downward planning system
Author: Fast Downward Team
Maintainer-email: Gabriele Röger <gabriele.roeger@unibas.ch>
License-Expression: GPL-3.0-only
Project-URL: Homepage, https://www.fast-downward.org
Project-URL: Issues, https://issues.fast-downward.org
Project-URL: Repository, https://github.com/aibasel/downward
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE.md
Dynamic: license-file

# Fast Downward Translator

This package contains the translator of the [Fast Downward planning
system](https://www.fast-downward.org). It parses planning tasks specified in
the Planning Domain Definition Language PDDL, performs several transformations
and generates the
[`output.sas` format](https://www.fast-downward.org/latest/documentation/translator-output-format/)
that serves as the input for the search component of the planning system.

## Usage
```
python -m fast_downward.translate [-h] [--relaxed] [--full-encoding]
                                  [--invariant-generation-max-candidates INVARIANT_GENERATION_MAX_CANDIDATES]
                                  [--sas-file SAS_FILE]
                                  [--invariant-generation-max-time INVARIANT_GENERATION_MAX_TIME]
                                  [--add-implied-preconditions]
                                  [--keep-unreachable-facts]
                                  [--skip-variable-reordering]
                                  [--keep-unimportant-variables]
                                  [--keep-no-ops] [--dump-task]
                                  [--layer-strategy {min,max}]
                                  DOMAIN PROBLEM
```
```
positional arguments:
  DOMAIN                path to domain PDDL file
  PROBLEM               path to problem PDDL file

options:
  -h, --help            show this help message and exit
  --relaxed             output relaxed task (no delete effects)
  --full-encoding       By default we represent facts that occur in multiple
                        mutex groups only in one variable. Using this parameter
                        adds these facts to multiple variables. This can make
                        the meaning of the variables clearer, but increases the
                        number of facts.
  --invariant-generation-max-candidates INVARIANT_GENERATION_MAX_CANDIDATES
                        max number of candidates for invariant generation
                        (default: 100000). Set to 0 to disable invariant
                        generation and obtain only binary variables. The limit
                        is needed for grounded input files that would otherwise
                        produce too many candidates.
  --sas-file SAS_FILE   path to the SAS output file (default: output.sas)
  --invariant-generation-max-time INVARIANT_GENERATION_MAX_TIME
                        max time for invariant generation (default: 300s)
  --add-implied-preconditions
                        infer additional preconditions. This setting can cause a
                        severe performance penalty due to weaker relevance
                        analysis (see issue7).
  --keep-unreachable-facts
                        keep facts that can't be reached from the initial state
  --skip-variable-reordering
                        do not reorder variables based on the causal graph. Do
                        not use this option with the causal graph heuristic!
  --keep-unimportant-variables
                        keep variables that do not influence the goal in the
                        causal graph
  --keep-no-ops         keep operators without effects in the output
  --dump-task           dump human-readable SAS+ representation of the task
  --layer-strategy {min,max}
                        How to assign layers to derived variables. 'min'
                        attempts to put as many variables into the same layer as
                        possible, while 'max' puts each variable into its own
                        layer unless it is part of a cycle.
```
