b-it-bots / mas_domestic_robotics

Robot-independent ROS packages for domestic applications
GNU General Public License v3.0
28 stars 45 forks source link

Compatibility of the planning domain with the ontology model #228

Open alex-mitrevski opened 4 years ago

alex-mitrevski commented 4 years ago

Related to https://github.com/b-it-bots/mas_knowledge_base/issues/15 and https://github.com/b-it-bots/mas_domestic_robotics/issues/226

In order to use the knowledge from the ontology for planning, our default planning domain needs to be appropriately modified. In particular:

  1. the types defined in the domain should match the types in the ontology
  2. predicates whose assertions come from the ontology should be defined in the domain (by following the parameter naming conventions defined in the ontology export script)
  3. some of the actions (such as pick and place) need to be defined for different contexts (e.g. pick from surface, pick from container, etc.) since the preconditions and effects are generally different depending on the context (in the pick example, pick from surface requires and objects to be on the surface, while pick from container requires the object to be in the container)
  4. other actions may need to be defined in the domain as well (e.g. an action for handing over objects to a person)

As described above, 1 and 2 mean that care will need to be taken to keep the planning domain and the ontology model in sync. A better long-term solution would be to generate parts of the domain (i.e. the types and predicates) when ontology export is performed.