| name | skill-110 |
| description | Comprehensive tools for working with PDDL files and planning problems, offering a wide range of functionalities for parsing, planning, and validation across different scenarios. |
| license | Proprietary. LICENSE.txt has complete terms |
Requirements for Outputs
General Guidelines
- PDDL files should be syntactically correct and adhere to general PDDL standards.
- Outputs must be in a usable format, but specifics can vary.
- Validation processes should ensure that outputs meet the specified goals.
PDDL Planning Tools
1. Load PDDL Files
load-pddl-files(domain_path, problem_path)
Description:
Loads any PDDL domain and problem files, making them accessible for further processing and planning activities.
Parameters:
domain_path (str): Path to the PDDL domain file.
problem_path (str): Path to the PDDL problem file.
Returns:
files_loaded: A boolean indicating whether the files were successfully loaded.
Example:
files_loaded = load_pddl_files("domain.pddl", "task01.pddl")
Notes:
- Basic loading functionality that should accommodate different PDDL versions.
2. Generate Plans
generate-plans(problem)
Description:
Generates plans based on the loaded problem, utilizing various planning strategies.
Parameters:
problem: The PDDL problem instance.
Returns:
plans: A list of possible plans generated.
Example:
plans = generate_plans(problem)
Notes:
- Supports multiple planning algorithms without specifying which ones are used.
3. Save Plans and Outputs
save-plans(plans, output_path)
Description:
Saves generated plans to a specified file format, allowing for flexible output options.
Parameters:
plans: A list of generated plans.
output_path (str): Path where plans should be saved.
Example:
save_plans(plans, "output.plans")
Notes:
- Output format details are not strictly defined; it could vary widely.
4. Validate Plans
validate-plans(problem, plans)
Description:
Validates the generated plans against the specified problems to ensure that they are feasible.
Parameters:
problem: The original PDDL problem instance.
plans: The generated plans.
Returns:
- bool: True if plans are valid, False otherwise.
Example:
valid = validate_plans(problem, plans)
Notes:
- General validation method; specifics of what constitutes a valid plan may vary.
Example Workflow
files_loaded = load_pddl_files("domain.pddl", "task01.pddl")
if files_loaded:
plans = generate_plans(problem)
if not validate_plans(problem, plans):
raise ValueError("One or more plans are invalid")
save_plans(plans, "output.plans")
Notes
- This skill set provides foundational tools but lacks specificity for particular planning scenarios.
- Suitable for users looking for a broad overview of PDDL planning capabilities.