This folder containt scripts to support a distributed planner experimentaiton framework
- cmd-planning-problem-server.py - A shell command interface for interacting manually with the server.
- create_ramdisk.sh - A script to create a ramdisk at /mnt/ramdisk. This is used by some planners.
- PlanningProblemConstants.py - Common functions and constants that suppor the experimental framework.
- PlanningProblemJob.py - A data structure that describes a job (planner / problem pair).
- planning-problem-restriction-script.py - Script to restrict or remove restrictions on the number of workers acutally completing jobs.
- planning-problem-server.py - The server daemon. Run only one of these. Creates a queue of planner / problem pairs (jobs) and then gives to workers.
- planning-problem-worker.py - The worker daemon. Run as many of these as required (typically number of available cores / 3).
- runExperiment.sh - Simple bash script to kick off the server and a specified number of workers.
- StateTest.py
This folder contains scripts to assist with the analysis (and repair) of logs from experimentation
- AnalysisCommon.py - Common functions to support other scripts.
- ComputeExpStats.py - Computes planner statistics from experimentation logs to CSV files.
- copy-solved-problem-set.py - Copies problem files from one location to another, if at least one planner solved the problem according to experimental logs.
- ExtractDeadEnds.py - Extracts the number of deadends encountered from Colin-style planner execution logs.
- ExtractEHCHistogram.py - Extracts the EHC Guidance Histogram from experimentation log files.
- ExtractFailedProblems.py - Extracts the reasons for failue from experimenation log files.
- ExtractRunningTime.py - Extracts the average runtime for each problem domain from experimenation log files.
- ExtractStatesEval.py - Extracts the average states evaluated in search and by the heuristic, exporting to CSV file.
- ExtractSuccess.py - Extracts the coverage of a problem domain from experimentation logs.
- FindInvalidPlan.py - Extracts the planners that found sequences of actions they thought to be plans, but were found to be invalid.
- FindMemFails.py - Extracts the planner / problems combinations that failed due to running out of memory.
- FindSegFaults.py - Extracts the planner / problems combinations that failed due to a segmentation fault during execution.
- FindTimeouts.py - Extracts the planner / problems combinations that failed due to running out of permitted time to solve.
- FindUnsolvables.py - Extracts the planner / problems combinations that determined the problem was unsolvable.
- FixMissingPlans.py - Goes through experimentation logs, extracts the plan found by the planner in the log, updates the corresponding plan file and updates the validation information.
- GenerateCoverageCSV.py - Computes coverage for each planner / problem combination and outputs to CSV.
- LPG-TD-PlanValidator.py - Deprecated. Tries to fix LPG-TD plans and revalidate them, then adding them to the log file.
- PlannerStats.py - A data structure that holds the experimental coverage statistics of a planner over a set of problem data.
- ProblemDomainStats.py - A data structure that holds the experimental average runtime statistics of a planner over a set of problem data.