Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| doc:srdl2_tutorial [2014/11/27 17:00] – [Startup] admin | doc:srdl2_tutorial [2014/11/27 17:05] (current) – [Matching requirements to capabilities] admin | ||
|---|---|---|---|
| Line 133: | Line 133: | ||
| C = srdl2cap:' | C = srdl2cap:' | ||
| </ | </ | ||
| - | ===== Matching requirements to capabilities | + | ===== Behind the scenes: Implementation of the matching procedures |
| The matching can effectively reduced to the following statement: | The matching can effectively reduced to the following statement: | ||
| + | <code prolog> | ||
| missing_cap_for_action(Action, | missing_cap_for_action(Action, | ||
| | | ||
| \+ cap_available_on_robot(Cap, | \+ cap_available_on_robot(Cap, | ||
| - | A missing capability is thus defined as one that is required by an action, but not provided by the robot. Required means that either the action itself or any sub-action has a dependency on this capability: | + | </ |
| + | |||
| + | A missing capability is thus defined as one that is required by an action but not provided by the robot. | ||
| + | <code prolog> | ||
| required_cap_for_action(Action, | required_cap_for_action(Action, | ||
| | | ||
| Line 145: | Line 149: | ||
| | | ||
| | | ||
| + | </ | ||
| - | There are three possibilities to express that a capability is available on a robot: Either it is asserted to be available for the whole class of robots (e.g. every PR2 has a holonomic base), for a specific robot instance, or it can be concluded that the capability should be available because all specified dependencies on components or other capabilities are fulfilled: | ||
| + | There are three possibilities to express that a capability is available on a robot: Either it is asserted to be available for the whole class of robots (e.g. every PR2 has a mobile base), for a specific robot instance, or it can be concluded that the capability should be available because all specified dependencies on components or other capabilities are fulfilled: | ||
| + | <code prolog> | ||
| % capability asserted for robot instance | % capability asserted for robot instance | ||
| cap_available_on_robot(Cap, | cap_available_on_robot(Cap, | ||
| Line 167: | Line 173: | ||
| | | ||
| | | ||
| + | </ | ||
| The matching procedure is equivalent for components. | The matching procedure is equivalent for components. | ||

