Robohow investigates the scientific foundations of a novel approach to the engineering and programming of cognition-enabled autonomous service robots that are to perform complex manipulation activities under “open-world” conditions. The basic idea of this programming approach is to use the huge set of task instructions and observations of the respective activities as resources for developing the libraries of control programs that are needed by service robots performing domestic services, maintenance tasks and factory work. A system engineer is then to develop, test and debug a robot control program assisted by the cognitive capabilities of the robot. The generated plan is then abstracted into a formal instruction that represents the web instruction but is more complete and less ambiguous. The generated robot instructions are stated in a representation language that has formal semantics.
The specific contributions of Robohow to this novel style of robot programming will be the means of translating instructions and observed activities into robot plans, the imitation learning-based acquisition of competent routines for everyday manipulation activities, plan languages for specifying flexible behaviour, the use of constraint- and optimization-based movement specification and execution in all system components, reliable, and efficient manipulation, and the representational means for making this knowledge accessible to other robots or physical instantiations.
The proposed development methodology may improve the quality of service of robotic application in that very detailed instructions for human use can be used to specify approriate task- and situation-adapted execution of activities. Sustainability of robot systems is increased in that the development methodology assists the efficient adaptation and addition of activity plans. Robohow strives to provide approaches and methodologies to the robotic industry in order to (i) extend the scope of existing robotic applications, (ii) drastically decrease the development time for a new application, (iii) increase the robustness of the task execution in realistic environments involving knowledge gaps, ambiguities and unmodeled situations.