Page 30 - Read Online
P. 30

Page 123                      Bernardo et al. Intell Robot 2021;1(2):116-30  I http://dx.doi.org/10.20517/ir.2021.10

               is a transitive and symmetric property, which correlates the different concepts of the Environment according
               to the environment in which the agent is inserted. The object properties isGoingTo and isIn are defined in
               order to correlate the AgentProperty concept with the Environment. (e.g., the robot isIn the living room, but
               it isGoingTo the bedroom). The object property isPartOf is a symmetric property that is used for the agent to
               link a given instance of the Objects class with an Environment. This allows the agent to know which objects
               are in a room. It differs from the object property isObjectOf because in this property the agent is sure that the
               object exists in the environment. Finally, the isObjectOf concept was defined to relate the concepts: Objects
               to the Environment. Through this, the objects that can be found in each zone of the environment are defined.
               (i.e., in a room there can be an object of the type bed, chair, television, carpet, etc.). Thus, an agent can search
               for an object by the place with the highest probability of it being found (i.e., if the agent has to find a frying
               pan, it knows that this object is commonly in a kitchen).

               3.2.  PDDL Planning Agent
               The Planning Domain Definition Language (PDDL) describes problems through the use of predicates and
               actions. The problems in PDDL are defined in two parts, a domain and a problem file. This language has
               undergone different modifications in order to make it capable of dealing with more complex tasks [47–49] . The
               ROSPlan framework was used to perform the planning tasks [50] . ROSPlan is a high-level tool that provides
               planningintheROSenvironment; itgeneratesthePDDLproblem,theplan,theactiondispatch,thereplanning,
               etc. Differentactioninterfaceshavebeen writteninC++tocontroltheAutonomousManipulatorMobileRobot
               (AMMR) (i.e., base, arm, and gripper). These interfaces are constantly listening for action PDDL messages.
               In addition, the MongoDB database was used for semantic memory storage (locations, robots, home objects,
               goal parameters, etc.).


               The POPF planner (https://nms.kcl.ac.uk/planning/software/popf.html), a forwards-chaining temporal plan-
               ner, was used. After the plan was generated, the interface actions interconnect the plan with the lower level
               control actions, allowing the robotic agent (AMMR) to complete the plan. During execution, if an action fails
               due to changes in the environment, the planning agent reformulates the PDDL problem by re-planning.



               4.   RESULTS
               This section discusses the main results obtained by applying the proposed framework. For a better under-
               standing, the results are divided into two subsections: The first subsection refers to the validation results of the
               home environment ontology, where the main reasoning techniques were presented and how they can be used.
               In the second subsection, the results of the reasoning system through MongoDB are presented. The way the
               robot performs a set of tasks, in a real environment, is also presented.


               4.1.  Validation home environment ontology
               The home environment ontology contains a vast number of concepts regarding the home environment as well
               as the different objects that may be present in a given room. For example, if a given agent is in a room for
               the first time, based on the objects it observes, through its sensors, it can categorize the space based on the
               knowledge represented on the ontology. Based on the ontology, if the agent sees objects such as knives, pots,
               and pans, then it infers that it must be in a kitchen. In this situation, the agent will identify the room and create
               all the relations of the objects it detects in the environment.


               Knowledge reasoning techniques can infer new conclusions and thus help to plan dynamically in a non-
               deterministic environment. In the presented application, spatial reasoning and reasoning based on relations
               are used [51] . Spatial reasoning is mostly used, when it is done through reasoning on the ontology hierarchy
               and spatial relations therein, allowing to predict the exact spatial location of an object in the environment. This
               prediction is obtained using a set of asserted facts and axioms on the ontology. Reasoning over the ontology
   25   26   27   28   29   30   31   32   33   34   35