Skip to content

PDDL+ based AI Task Planning domain modelling a robot-enabled cafe environment. Part of Assignment for AI for Robotics 2 course at UniGe, Italy.

Notifications You must be signed in to change notification settings

amanarora9848/robocafe_AI_task_planning

Repository files navigation

Robocafe - PDDL+ Task Planning Domain and Problem Set

This is a PDDL+ Task Planning domain and problem set developed for a "Robot-enabled" cafe environment, as part of the course "Artificial Intelligence for Robotics II" at the University of Genoa, Italy. For more details, please refer to the attached report. This is a joint effort by:

The design of the domain is best represented by the below image:

Domain Design

Getting Started

Prerequisites

The domain is PDDL+ domain and requires a planning engine to be installed. To download the ENHSP Planning Engine, please follow the instructions given on the ENHSP webpage: https://sites.google.com/view/enhsp/

After installing the planning engine:

Clone the repository:

git clone https://github.com/amanarora9848/robocafe_AI_task_planning.git

Generating Plans:

The script generate_plan.sh can be used to generate plans for the given base pddl+ domain and problems with or without using an optimizer, and can also calculate metrics like mean and standard deviation for given data points specific to an optimizer, if used.

For help regarding running the generate_plan.sh script, run the following command:

$ ./generate_plan.sh -h

A typical output after running the script, for, say 30 repititions with planner configuration of opt-hrmax is as follows:

$ ./generate_plan.sh -p ../enhsp-20.jar -f test.pddl -m 12000 -z -c opt-hrmax -r 30
planner: ../enhsp-20.jar
planner configuration: opt-hrmax
problem: test.pddl
Number of repititions requested: 30
Progress : [########################################] 100.00%
DONE
Metrics written to file: generated_metrics/metrics_test_opt-hrmax.txt

The generated plans are stored in the folder generated_plans and the metrics are stored in the folder generated_metrics.

Branches:

The repository has six branches, each implementing a specific part of the assignment:

  1. main: Contains the base PDDL+ domain and problems.
  2. extension1: Contains the PDDL+ domain and problems for extension 1.
  3. extension2: Contains the PDDL+ domain and problems for extension 2.
  4. extension3: Contains the PDDL+ domain and problems for extension 3.
  5. extension4_enhanced: Contains the PDDL+ domain and problems for extension 4.
  6. complete: Contains the 'complete' PDDL+ domain integrated with all the extensions and the problems.

To run the script for any of the branches, please checkout to the branch and run the script as mentioned above.

About

PDDL+ based AI Task Planning domain modelling a robot-enabled cafe environment. Part of Assignment for AI for Robotics 2 course at UniGe, Italy.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published