meta-control / mc_mros_reasoner

library for metacontrol-based self-adaptation using ontological reasoning, with wrappers for robotic systems based on ROS1 and ROS2
Apache License 2.0
7 stars 10 forks source link

Objective status and desired reasoner behaviour #119

Open chcorbato opened 3 years ago

chcorbato commented 3 years ago

Maybe we can have more status for the objective: IN_PROGRESS, IN_ERROR_NFR, IN_ERROR_COMPONENT, UNREACHABLE.

IN_ERROR_NFR may be set when the current FG doesn't meet objectives NFRs so a new FG should be selected IN_ERROR_COMPONENT would be set when the current FG uses an unavailable component so a new FG should be selected When there isn't a FD reachable, we could set the objective at UNREACHABLE, then we can delete this objective and switch to another one (i.e. switch from navigating to go to recharge). In this case, maybe we can miss NFR because is an emergency action and navigate to the deck with fewer restrictions so FD with IN_ERROR_NFR property on the log can be selected.

What do you think? @marioney @chcorbato @rsanz

_Originally posted by @estherag in https://github.com/tud-cor/mc_mros_reasoner/issues/111#issuecomment-729008674_

chcorbato commented 3 years ago

We need to identify what needs for new states we have. This can be clarified with the State Machine for an Objective status, that is define for each status:

Can you complete/correct it?