Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520...

18
Auton Robot (2016) 40:519–536 DOI 10.1007/s10514-015-9523-3 Knowledge-enabled parameterization of whole-body control strategies for compliant service robots Daniel Leidner 1 · Alexander Dietrich 1 · Michael Beetz 2 · Alin Albu-Schäffer 1,3 Received: 8 October 2014 / Accepted: 16 November 2015 / Published online: 30 November 2015 © Springer Science+Business Media New York 2015 Abstract Compliant manipulation is one of the grand chal- lenges for autonomous robots. Many household chores in human environments, such as cleaning the floor or wiping windows, rely on this principle. At the same time these tasks often require whole-body motions to cover a larger workspace. The performance of the actual task itself is thereby dependent on a large number of parameters that have to be taken into account. To tackle this issue we propose to utilize low-level compliant whole-body control strategies parameterized by high-level hybrid reasoning mechanisms. We categorize compliant wiping actions in order to determine relevant control parameters. According to these parame- ters we set up process models for each identified wiping action and implement generalized control strategies based on human task knowledge. We evaluate our approach exper- imentally on three whole-body manipulation tasks, namely scrubbing a mug with a sponge, skimming a window with a window wiper and bi-manually collecting the shards of a broken mug with a broom. Electronic supplementary material The online version of this article (doi:10.1007/s10514-015-9523-3) contains supplementary material, which is available to authorized users. B Daniel Leidner [email protected] 1 German Aerospace Center (DLR), Institute of Robotics and Mechatronics, Muenchener Strasse 20, 82234 Wessling, Germany 2 Institute for Artificial Intelligence, University of Bremen, Am Fallturm 1, 28359 Bremen, Germany 3 Technische Universität München (TUM), Sensor-Based Robotic Systems and Intelligent Assistance Systems, Boltzmannstrasse 3, 85748 Garching, Germany Keywords Whole-body control · AI reasoning methods · Task knowledge · Humanoid robots · Mobile manipulation 1 Introduction Cleaning tasks are the most frequent household chores in human environments according to the analysis of Cakmak and Takayama (2013). Window wiping (Fig. 1) or cleaning the floor, for example, rely on contacts and applied forces with a certain tool to achieve a desired goal state. At the same time the workspace to be covered is spacious. If a humanoid robot is employed to carry out such tasks it has to execute compliant whole-body motions. That requires compliant whole-body control strategies capable of handling various constrained contacts where the correct parameteri- zation is crucial for the performance. Detailed knowledge about the task and the involved objects is mandatory. The robot has to reason symbolically and geometrically about the parameterization in advance w. r. t. the given problem and the current state of the environment. A possible solution for this issue is hybrid reasoning based on prior task knowl- edge (Wolfe et al. 2010; Dornhege et al. 2012; Gravot et al. 2005). The combination of hybrid reasoning, which fuses sym- bolic with geometric planning, and control theory for whole- body manipulation, is a rare research topic so far. However, there exists some work to incorporate the different research fields. Several approaches utilize symbolic and geometric reasoning for mobile manipulation. Wolfe et al. (2010) inte- grate external geometric solvers into a symbolic Hierarchical Task Network (HTN) planner. Dornhege et al. (2012) com- pute geometric effects during symbolic planning by calling semantic attachment modules for navigation and manipu- lation (Dornhege and Hertle 2013). The aSyMov planner 123

Transcript of Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520...

Page 1: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536DOI 10.1007/s10514-015-9523-3

Knowledge-enabled parameterization of whole-body controlstrategies for compliant service robots

Daniel Leidner1 · Alexander Dietrich1 · Michael Beetz2 · Alin Albu-Schäffer1,3

Received: 8 October 2014 / Accepted: 16 November 2015 / Published online: 30 November 2015© Springer Science+Business Media New York 2015

Abstract Compliantmanipulation is one of the grand chal-lenges for autonomous robots. Many household chores inhuman environments, such as cleaning the floor or wipingwindows, rely on this principle. At the same time thesetasks often require whole-body motions to cover a largerworkspace. The performance of the actual task itself isthereby dependent on a large number of parameters that haveto be taken into account. To tackle this issue we proposeto utilize low-level compliant whole-body control strategiesparameterized by high-level hybrid reasoning mechanisms.We categorize compliantwiping actions in order to determinerelevant control parameters. According to these parame-ters we set up process models for each identified wipingaction and implement generalized control strategies basedon human task knowledge. We evaluate our approach exper-imentally on three whole-body manipulation tasks, namelyscrubbing a mug with a sponge, skimming a window witha window wiper and bi-manually collecting the shards of abroken mug with a broom.

Electronic supplementary material The online version of thisarticle (doi:10.1007/s10514-015-9523-3) contains supplementarymaterial, which is available to authorized users.

B Daniel [email protected]

1 German Aerospace Center (DLR), Institute of Robotics andMechatronics, Muenchener Strasse 20, 82234 Wessling,Germany

2 Institute for Artificial Intelligence, University of Bremen, AmFallturm 1, 28359 Bremen, Germany

3 Technische Universität München (TUM), Sensor-BasedRobotic Systems and Intelligent Assistance Systems,Boltzmannstrasse 3, 85748 Garching, Germany

Keywords Whole-body control · AI reasoning methods ·Task knowledge · Humanoid robots · Mobile manipulation

1 Introduction

Cleaning tasks are the most frequent household chores inhuman environments according to the analysis of Cakmakand Takayama (2013). Window wiping (Fig. 1) or cleaningthe floor, for example, rely on contacts and applied forceswith a certain tool to achieve a desired goal state. At thesame time the workspace to be covered is spacious. If ahumanoid robot is employed to carry out such tasks it hasto execute compliant whole-body motions. That requirescompliant whole-body control strategies capable of handlingvarious constrained contacts where the correct parameteri-zation is crucial for the performance. Detailed knowledgeabout the task and the involved objects is mandatory. Therobot has to reason symbolically and geometrically aboutthe parameterization in advance w. r. t. the given problem andthe current state of the environment. A possible solution forthis issue is hybrid reasoning based on prior task knowl-edge (Wolfe et al. 2010; Dornhege et al. 2012; Gravot et al.2005).

The combination of hybrid reasoning, which fuses sym-bolic with geometric planning, and control theory for whole-body manipulation, is a rare research topic so far. However,there exists some work to incorporate the different researchfields. Several approaches utilize symbolic and geometricreasoning for mobile manipulation. Wolfe et al. (2010) inte-grate external geometric solvers into a symbolicHierarchicalTask Network (HTN) planner. Dornhege et al. (2012) com-pute geometric effects during symbolic planning by callingsemantic attachment modules for navigation and manipu-lation (Dornhege and Hertle 2013). The aSyMov planner

123

Page 2: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

520 Auton Robot (2016) 40:519–536

Fig. 1 The humanoid robot Rollin’ Justin wiping a window as ademonstration for a compliant whole-body task

by Gravot et al. (2005) is designed to deal with multi-robotplanning problems including geometric constraints for pick-and-place tasks. Kaelbling and Lozano-Pérez (2013) focustheir work on symbolic and geometric planning under uncer-tainty for mobile manipulation. However, neither of theseworks consider the combined motion of the mobile baseand the manipulator as a whole-body control problem. Theworks of Yamamoto and Yun (1992), Tan et al. (2003), Moroet al. (2013), and us (Dietrich et al. 2011a, 2012b) show howmobile manipulation is successfully tackled at the controllevel. The Operational Space Formulation (Khatib 1987) isprobably the most popular method to implement force con-trol in a reduced space (Sentis and Khatib 2005; Sadeghianet al. 2014), e.g. in the Cartesian coordinates of the end-effector. However, parameterizing controllers for differenttasks without knowledge about the involved objects is dif-ficult. Nevertheless, there has already been some advancedresearch in this context such as byTenorth et al. (2012),wherethe authors rely on a web-database for actions, objects, andenvironments to parameterize tasks, or Mosenlechner andBeetz (2011) that infers geometric parameters such as whereto place objects based on physics simulation. Bartels et al.(2013) ground symbolic actions by the use of a constraint-based movement description language based on geometricfeatures, such as points, lines, and planes to be interpreted bythe control level. Also tomention are the results byKallmannand Thalmann (1999), who store articulation trajectories toguide object manipulation, and the work of Levison (1996),which classifies objects by functionality and augments theirsymbolic domain with hierarchical properties. Based on asimilar concept, we introduced a hybrid reasoning frame-work in our previous work (Leidner et al. 2012) to definemanipulation tasks in Cartesian space with the aid of objectknowledge. In this work, we show how this framework canbe utilized to define compliant tool usage tasks such as clean-ing.

Recently, compliant cleaning tasks have become subjectof intensive research, especially wiping of surfaces. Kunzeet al. (2011) simulate physical effects to infer first-ordersymbolic representations. In particular they conducted sim-plified physical simulations where liquids are absorbed witha sponge. Do et al. (2014) predict action parameters basedon object properties by learning from experience in a tablewiping task. Hess et al. (2012) describe a generic approachto autonomously compute time- and effort-optimal clean-ing trajectories. However, applied force and stiffness arenot parameterized due to the lack of a compliant robot.Vanthienen et al. (2013) describe a table wiping task withthe iTaSC framework for a backdrivable, force-sensorlessrobot. Okada et al. (2005, 2006) show an inverse-kinematics-based programming approach to define whole-body cleaningmotions (sweeping, vacuuming, and dish washing) for ahumanoid robot exploiting object knowledge. Their methodis similar to the geometric reasoning approach we uti-lize. However, in addition to Okada et al. we emphasizeto have a closer look at the cleaning task itself, namelythe tool-surface contact together with the applied force andstiffness. In fact, these aspects are crucial for the cleaningresult but can only be taken into account by a compliantrobot when the reasoning level and the control level actjointly.

The contribution of this paper is a generic approach toparameterize whole-body controllers for compliant manip-ulation tasks with different contact behavior. In particular,a classification of wiping tasks is conducted in order toidentify the required task and control parameters. Thisparameterization is utilized in ourwhole-body control frame-work based on hierarchical null space projections. Thecontrol layer is integrated into a hybrid reasoning mecha-nism which grounds symbolic transitions to concrete geo-metric actions. Within this step action templates transferhuman task knowledge by individually parameterizing wip-ing tasks w. r. t. our classification. This is achieved byapplying prior object knowledge including the Cartesiantask trajectory, Cartesian contact force, and Cartesian con-tact stiffness, among others. We evaluate our approachin three whole-body manipulation experiments: cleaninga mug with a sponge, wiping a window with a windowwiper and bi-manually sweeping the floor. The humanoidrobot Rollin’ Justin is employed for the experiments, seeFig. 1. Part of this work was presented in Leidner et al.(2014).

The paper is organized as follows: A detailed problemidentification is conducted in Sect. 2 to classify the taskswe are interested in. We present the control strategies toaccomplish these tasks in Sect. 3. The reasoning about thetask parameterization and the integration into our hybrid rea-soning framework is presented in Sect. 4. We evaluate ourmethods in three elaborate experiments in Sect. 5.

123

Page 3: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 521

2 Parameter identification

A large number of tasks in domestic and industrial envi-ronments rely on forces applied by tools of different kind.One of the most common compliant activities is cleaning.The parameterization of these tasks has to be reasoned care-fully in order to deal with contacts of different nature in ageneralized way. So does vacuuming not rely on a specificdirection of motion, while sweeping with a broom requiresa dedicated trajectory design to collect the particles in onespot. Furthermore, a wide variety of tasks that are not relatedto cleaning are based on the same principles. One exampleis the painting of a wall. Besides the tool-surface contactthese tasks share one more common component, namely themedium (i. e. particles or liquid between the tool and the sur-face, e. g. dust or paint). In summary, we formulate this kindof tasks as guiding a tool along a target surface while main-taining contact to indirectly manipulate some sort of medium.Although the purpose of the actions is different, they sharemany properties. These similaritiesmake it possible to utilizeone control design for all problems, but each task requires adifferent parameterization. In order to identify the requiredcontrol parameters, we are going to classify the respectivetasks first.

Several taxonomies for classifying object manipulationhave been developed in the past. Most of them categorize bygrasp type. The taxonomies of Kapandji and Honoré (1970)and Cutkosky (1989) are probably the most well-known.Based on these and many other taxonomies, a comprehen-sive grasp taxonomy was developed by Feix et al. (2009).However, they do not specify manipulation actions in greaterdetail. The hand-centric taxonomy of Bullock and Dollar(2011), Bullock et al. (2013) classifies human manipulationbehaviors according to the relative movement of the handto the grasped object during task execution. They classifywiping a surface as “In Contact—Prehensile— Motion—NotWithin Hand—No Motion At Contact”. Based on this defini-tion the relative position of a grasped object does not changew. r. t. the manipulator during the object manipulation. Thetaxonomy ofBloomfield et al. (2003) classifies haptic actionsby the applied forces and torques. They classify filing andsanding as actions with major amounts of force, where theapplied force direction is not aligned with the direction ofmotion.

However, neither of these taxonomies make goal-orientedassumptions about the nature of motion. Contact propertiesbetween a tool and a surface are not considered. Furthermore,the medium to be manipulated is never integrated in the clas-sification. For this reason, we define a taxonomy on our ownfor the sub-category from now on referred to as wiping tasks,derived from the term wiping a surface.

We assume that the relative position of the hand and thetool does not change as defined by Bullock et al. (2013).

The grasp type is secondary. Accordingly, the manipulatoris neglected in our classification and can be either roboticor human. The classification does not distinguish betweenone or more manipulators. Forces and torques are impor-tant control parameters but differ significantly for individualwiping tasks based on the environmental conditions (e. g. theamount of dirt on the floor) and are therefore not applicableas categorizationmetric. For this reason, a sub-categorizationof wiping tasks based on geometric features does not seemappropriate. Therefore, we do not directly categorize wipingtasks w. r. t. geometric features but rather classify them basedon symbolic effects to implicitly group actions with similargeometric structures. This is done by investigating wipingtasks based on the symbolic aspects of the tool—surface—medium tuples, where the medium is considered to be themain reason for any wiping task. Based on this considera-tion we are able to identify nine action types related to aspecific wiping task. The actions are grouped in applying,removing, and modifying the medium. Additionally, a tool-centric view, a surface–centric view and a medium–centricview can be applied to categorize the actions. The resultingmatrix structure is illustrated in Fig. 2 and explained in detailfrom the top left to the bottom right:

Absorb: A medium is absorbed upon close vicinity to thetool. This may be caused due to electrostatic force as knownfromdusting or an air draft froma vacuum.The tool is usually

Fig. 2 Matrix classification of wiping tasks according to the actionw. r. t. the tool, surface, and medium versus the role of the medium. Thetool (grasped by a human hand) is abstracted as a rectangle capableof all illustrated actions. The motion of the tool is indicated as a solidarrow. The surface is always shown on the bottom of the correspondingcell. It might be flat as illustrated, curved, or of any other shape. Themedium is shown in the initial state (solid circles/squares) and in thegoal state after the action is performed (dashed circles/squares) wheredashed arrows indicate the transition of the medium

123

Page 4: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

522 Auton Robot (2016) 40:519–536

applied with a planar contact where the medium defines theregion of interest (ROI).

Skim: The goal position of the medium is not of inter-est and is therefore illustrated as skimmed from the surface.Scratching ice from a car window is considered as skimming.The direction of motion is defined by the individual geomet-ric topology.

Collect: Collecting can be related to skimming. However,the medium has to be collected afterwards, e. g. to remove itaccumulated. Exemplary actions are collecting leaves witha rake or sweeping up shards. The tool alignment w. r. t. thesurface is a crucial aspect.

Emit: The emitting action is the counterpart of the absorb-ing action. The medium is initially located on or in the tooland is applied to the surface as it is done for painting a wall.Typically, the whole surface is involved.

Distribute: Distributing a medium is related to emittinga medium. However, the medium is already located on thesurface. Applying shoe polish is such a task. The task trajec-tory is important to uniformly distribute the medium on thesurface.

Process: Processing is a medium-centric action. Themedium is used to alter the surface on purpose. One examplefor this is the use of cement to fill holes in a wall. It is alsopossible that the surface is only used to directly manipulatethemedium as donewhen rolling cookie dough, for example.

Scrub: Scrubbing merges an auxiliary medium with anunwanted medium (e. g. detergent and dirt) by exerting forceunder repetitive motions to remove the unwanted mediumfrom the surface. Many cleaning tasks can be categorized asscrubbing.

Grind: Grinding is often used in manufacturing such asplaning wood. Themedium is separated from the surface andis a waste product of no greater value. The tool alignment iscrucial for the result.

Decompose:Decomposing splits the medium into smallerparticles. The contact between the medium and the tool isplanar. Pestle with a mortar is one example.

Our classification emphasizes the versatility of wipingactions. For each action, numerous tools might be suitableto achieve the desired goal. It is also possible that one par-ticular task is actually realized as a combination of severalwiping actions such as mopping, which is a combinationof distributing, scrubbing, and absorbing. Furthermore, weinvestigated that based on the topology (e. g. varyingmediumsize and surface friction) a different parameter rangemight besuitable. We identified three types of parameters: symbolic,sub-symbolic/geometric, and control parameters.

With reference to the symbolic classification of wip-ing tasks, the identified symbolic parameters reflect theidentified action verb catalog, namely absorbed, skimmed,collected, emitted, distributed, processed, scrubbed, ground,and decomposed. According to our definition, these symbolic

parameters are equal to predicates in the Planning DomainDefinition Language (PDDL) (Ghallab et al. 1998). They areutilized to describe symbolic preconditions and effects forsymbolic planning. Based on the desired state of themedium,a symbolic planner can compute the required actions to solvea task w. r. t. the target surface and the provided tools in theenvironment.

Sub-symbolic parameters1 have to be considered duringgeometric reasoning, such as the shape of the object and theROI on the target surface in order to plan feasible Cartesianand joint trajectories (including time information) not col-liding with the environment. There are several sub-symbolicparameters which have direct influence on the control level.The most important ones are the mass/inertia of the tool, thecenter of mass (CoM), the tool center point (TCP), and therelative alignment of the tool w. r. t. the target surface.

The identified wiping actions rely all on the same controlparameters, namely Cartesian motion, Cartesian stiffness,and Cartesian force. The Cartesian motion defines the tra-jectory for the tool and thus the motion of the roboticmanipulators. The robot has to reason about whether it isnecessary to execute the motion with the whole body usingthe locomotion systemor only a subset of joints. The stiffnessparameters are based on the tool alignment and the directionof motion. Depending on the task, different rotational andtranslational stiffnesses have to be applied. The force para-meter may depend on the material of tool and surface. Alsodifferent environmental conditions may require a differentforce level.

Summarized one can say that properly executed wipingtasks depend on the coupling between symbolic, geomet-ric and control parameters. Therefore, we believe that it ismandatory to combine low-level control strategies and high-level reasoning for a correct parameterization. In conclusion,we propose to set up one particular process model for eachidentified wiping action. Based on our classification eachprocess model has reference to one of the identified sym-bolic parameters and the corresponding symbolic effects tothe environment. Consequently, each symbolic parameter isgrounded to one geometric procedure with an individual geo-metric parameterization considering the involved objects.Accordingly, the control parameters are chosen to fit the over-all control strategy.

In this paper we explain this parameterization bottomup to emphasize the significance of exploiting contacts andphysical interaction on the control level. The whole-bodycontrol framework and the related low-level parameteriza-tion is explained in Sect. 3. The integration of the symbolicand geometric reasoning procedure along with the high-levelparameterization is described in Sect. 4, where we illustrate

1 commonly summarized as geometric parameters in the automatedplanning community.

123

Page 5: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 523

Fig. 3 The whole-body controller contains a stack of tasks arranged ina hierarchical order. It is parameterized by a reasoning instance whichconsists of a symbolic part and a geometric part

the generalized utilization of our control framework w. r. t.different domains. In Sect. 5, the approach is evaluated on ahumanoid robot.

3 Whole-body control

In this section, the whole-body control framework isexplained in detail. That includes the structure of the closedloop (Sect. 3.1), the control tasks in use (Sect. 3.2), and theredundancy resolution to realize the commanded control taskhierarchy (Sect. 3.3). An example of a controller parameter-ization is given in Sect. 3.4.

3.1 Structure of the controller

The generic whole-body control scheme is illustrated inFig. 3. One can divide the structure into three basic parts. Thefirst subsystem is the robot itself providing measurements. Incase of the humanoid mobile robot Rollin’ Justin (Borst et al.2009), these are for example the joint configuration q, thejoint velocities q̇, and the joint torques τ . Additionally othersensor information is provided, e. g. vision information fromvarious cameras. The second subsystem is the whole-bodycontroller, which gets the measurements of the robot. Froma stack of various control tasks, a selection is made and theorder of priority is given to the controller. Based on that, nullspace projection techniques are used to realize this choice.The reasoning instance constitutes the third subsystemwhichparameterizes the controller for arbitrary manipulation tasks.The reasoning includes symbolic and geometric planning.This part will be detailed in Sect. 4.

3.2 Control tasks

A large variety of control tasks are available for the higher-level reasoning instance in order to properly plan the overall

application. In the following, themost commonly usedmeth-ods on Rollin’ Justin are briefly reviewed and associatedwiththe wiping tasks explained in Sect. 2. More details on themethods can be found in Dietrich et al. (2012b). The para-meterization of the control level is realized by the reasoninginstance which will be explained in Sect. 4.2. However, itis mentionable that although the parameterization of con-trol tasks may depend on several factors it is not mandatoryto define all parameters for every single action. General-purpose default values apply if a parameter is skipped duringtask reasoning.

Cartesian impedance Primarily applied in the context ofthe task execution, the Cartesian impedance (Hogan 1985;Ott et al. 2008) at the end-effectors constitutes oneof the basicfunctionalities on Rollin’ Justin. The Cartesian impedance ismodeled as a mass-spring-damper system in the Cartesiandirections of the TCP to create a compliant behavior for therobotic end-effector. The planning layer defines a virtual,spatial equilibrium and the TCP will follow it depending onthe parameterization of the stiffness, the damping, and themaximum permissible Cartesian forces/torques. The controltorque is

τ car = −(

∂Vcar(q,Pcar)

∂q

)T

− Dcar(q,Pcar)q̇, (1)

where Vcar denotes the spatial spring potential and Pcar

describes the parameterization, e. g. the potential stiffness,the trajectories, and maximum Cartesian forces. Damp-ing is injected by the positive definite damping matrixDcar(q,Pcar). Further information on the implementationof the Cartesian impedance control can be found in Ott et al.(2008).

Cartesian impedance is probably the most crucial controlbehavior to solve wiping tasks. Since we treat all wipingactions according to Sect. 2 as robot-independent problems,all assumptions on force and stiffness are made w. r. t. theinvolved objects and therefore in Cartesian object space(Wimböck 2013) and later transformed into robot coordi-nates. By carefully parameterizing the Cartesian impedancecontroller, contacts of different nature can be managed.

Joint impedance In contrast to the Cartesian impedance, ajoint impedance does not relate a task space (e. g. the Carte-sian space) to the joint space, but it is defined in the jointspace. The control torque is

τ jnt = −(

∂Vjnt(q,P jnt)

∂q

)T

− Djnt(q,P jnt)q̇ , (2)

where Vjnt denotes the spring potential, the parameterizationis denoted by P jnt, and Djnt(q,P jnt) is the damping matrixrelated to the joint impedance.

123

Page 6: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

524 Auton Robot (2016) 40:519–536

A joint impedance can be applied to the complete robotor any subsystem such as an arm or the torso. This is par-ticularly useful for bi-manual wiping tasks (e. g. sweeping,see Sect. 5.3), since the arms can be set to be less stiff com-pared to the torso. This ensures a steady torso posture whileexternal influences can be compensated at the same time.

Self-collision avoidance In manipulators with manydegrees of freedom (DOF), self-collision avoidance is rel-evant due to the large number of possible collisions betweenbody parts. We have developed a reactive technique (Diet-rich et al. 2011b) which applies artificial, repulsive forcesbetween potentially colliding links. In each collision direc-tion, a desired mass-spring-damper relation is commandedwhich allows to realize damping ratios. The control torque is

τ sca = −(

∂Vsca(q,Psca)

∂q

)T

− Dsca(q,Psca)q̇ , (3)

where Vsca denotes the repulsive potential which is para-meterized by Psca. The parameters contain, among others,the minimum distance between links where the brakes areengaged (emergency stop), the potential stiffness, and thedistance at which the potential starts to generate repulsiveforces. The damping is injected via Dsca(q,Psca).

The self-collision avoidance or parts of it can optionallybe disabled for taskswheremultiplemanipulators work closeto each other such as whenwashing the dishes (see Sect. 5.1).

Avoidance of mechanical end stopsAstandard control taskin robotics is the avoidance of mechanical end stops. Artifi-cial repulsive potentials around the end stops are designed.This control subtask is active close to the end stops only,and it is inactive in the remaining workspace. Similar to thepreceding tasks, the control torque is

τmes = −(

∂Vmes(q,Pmes)

∂q

)T

− Dmes(q,Pmes)q̇ , (4)

where Vmes denotes the repulsive potential and Pmes deter-mines the parameterization, e. g. the stiffness and and thresh-olds. Damping is injected via Dmes(q,Pmes).

Singularity avoidance In order to be able to properly reactto unexpected events or disturbances, it is important to main-tain a highmanipulability throughout thewhole time.Variousmethods are known in the literature but the representationsbased on the kinematic and the dynamic manipulability mea-sure (Yoshikawa 1990) are probably the most popular ones.The control torque can be described as

τ sav = −(

∂Vsav(msav(q),Psav)

∂q

)T

−Dsav(q,Psav)q̇ , (5)

where Vsav is the potential to repel from singular config-urations, msav(q) is the manipulability measure, and Psav

parameterizes the control task by defining the stiffnessand the manipulability thresholds (Ott 2008), for example.Damping is injected via Dsav(q,Psav).

Singularities as well as mechanical end stops and self-collisions can additionally be avoided by providing roughlyapproximated reference trajectories for use in a jointimpedance controller (2). This is done by calculating inversekinematics solutions for discretized steps along the Cartesiantask trajectory during the geometric reasoning step. Nev-ertheless, it is mandatory to parameterize the control tasksw. r. t. the environmental circumstances, in order to reacton unforeseen external disturbances such as humans in theworkspace of the robot.

Gravity compensation Gravitational effects can be com-pensated by simulating a gravity model of the system online(Ott et al. 2004). The respective control torque can be writtenas

τ g =(

∂Vg(q,Pg)

∂q

)T

, (6)

where Vg denotes the gravity potential parameterized byPg,which contains information aboutmass, inertia, and center ofmass of the links of the robot, handled objects, and additionalloads such as backpacks.

Platform control Nonholonomic, mobile platforms areusually controlled via kinematic controllers to realize desiredtrajectories by implicitly complying with the rolling con-straints. In case of Rollin’ Justin, such a control law has beenimplemented by Giordano et al. (2009), which expects a tra-jectory in the plane of motion, i. e. in one rotational and twotranslational directions.

The utilization of the mobile base is crucial for wide-area tasks (e. g. cleaning the floor or wiping large windows).Whether to move only a subset of joints, arms and torso, orto include the mobile base for solving a given task has to bedefined during the reasoning process. The geometric topol-ogy (e. g. tool dimension and ROI) is thereby considered.

An overview of the control parameters that can be set andthe respective representation are given in Table 1.

3.3 Redundancy resolution

The reasoning instance does not only choose the controltasks necessary for the considered application but it alsodetermines the task hierarchy and the order of priorities,respectively, cf. Fig. 3. In the whole-body control frame-work implemented on Rollin’ Justin, a strict task hierarchywith r priority levels is realized via null space projections(Nakamura et al. 1987; Siciliano and Slotine 1991), which isa standard tool in redundancy resolutions. One can write theoverall control torque as

123

Page 7: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 525

Table 1 Parameters of the control tasks to be determined by the reasoning instance

Description Value Parameters

Cartesian impedance Pcar Stiffness (3 transl., 3 rot.), trajectories, damping, max.Cart.wrench (3 transl., 3 rot.)

Joint impedance Pjnt Stiffness (n joints), trajectories, joint damping

Self-collision avoidance Psca Stiffness (in collision direction), thresholds, emergency stop conditions, damping ratios

Avoidance of end stops Pmes Stiffness (n joints), joint damping

Singularity avoidance Psav Stiffness (in singularity space), thresholds, damping (in singularity space)

Gravity compensation Pg Loads (mass, inertia, center of mass)

Note that all parameters are instantiated with general-purpose values. The overall parameter variable is defined as P =(Pcar,Pjnt,Psca,Pmes,Psav,Pg)

τ = τ 1 +r∑

i=2

N i (q)τ i , (7)

where the indices describe the priority levels, and j < kmeans that j has higher priority than k. Each lower levelcontrol action τ i for 1 < i ≤ r is projected onto the nullspace of all higher priority control tasks by the respectivenull space projector N i (q).

These null space projectors are not unique and their prop-erties depend on the specification of the task hierarchy.One can distinguish between statically consistent (Albu-Schäffer et al. 2003) and dynamically consistent (Khatib1987) null space projections, for example. Another criterionis whether the projections are of successive or augmentedtype (Antonelli 2009). An overview is given in (Dietrichet al. 2015). Applying a control task hierarchy with severalpriority levels also requires to deal with arising singularitiesand the resulting discontinuities in the control law due totask conflicts or activation/deactivation processes of unilat-eral constraints. That also has an influence on the shape andproperties of the projectorswhen applying techniques such asDietrich et al. (2012a). Moreover, there are also differencesin the kind of control itself. One may require a high track-ing performance in specific scenarios (Operational SpaceFormulation (Khatib 1987)) or may give more weight toimproved contact/interaction behavior with guaranteed sta-bility of the complete dynamic system (Compliance Control(Ott 2008; Dietrich et al. 2013)).

The tasks and the hierarchy are assigned by the reason-ing instance depending on the application such that e. g.τ 1 = τ car and τ 2 = τ jnt, and so on. Three examples forthe assignment are given in Sect. 5.

3.4 Example of a potential definition: Cartesianimpedance control

In order to demonstrate how the control tasks in Sect. 3.2 areparameterized in practice, Pcar is detailed here. The springpotential of the Cartesian impedance (1) is defined by

– Stiffness (3 translations, 3 rotations): The positive def-inite, symmetric matrices K t, K r ∈ R

3×3 define thetranslational and rotational stiffness at the TCP, respec-tively.

– Trajectories: The homogeneous transformation matrixHcmd(t) = (Rcmd(t), pcmd(t)) ∈ R

3×4 describesthe commanded/desired orientation of the TCP via therotation matrix Rcmd(t) ∈ R

3×3 w. r. t. time t andthe commanded/desired position of the TCP throughpcmd(t) ∈ R

3.

The damping and the minimum/maximum Cartesian wrenchspecification are also contained inPcar, yet they are not partof the potential definition and taken into account separately.Based on (1), the potential of the Cartesian impedance canbe written as

Vcar(q,Pcar) = 1

2p̃T K t p̃ + 2εT K rε, (8)

where p̃ = pact(q) − pcmd(t) denotes the error betweenthe current position pact(q) of the TCP and the commandedone. Note that analogous to Hcmd(t), the forward kinematicsdelivers the homogeneous transformation matrix Hact(q) =(Ract(q), pact(q)), which describes the actual TCP orienta-tion and position through Ract(q) ∈ R

3×3 and pact(q) ∈ R3,

respectively. The rotation between Hact(q) and Hcmd(t) canbe uniquely described by unit quaternions. The vector partof the quaternions is ε ∈ R

3. The gradient of the potentialcan be derived as follows:

∂Vcar(q,Pcar)

∂q= ∂Vcar

∂ p̃∂ p̃∂q

+ ∂Vcar

∂ε

∂ε

∂ω

∂ω

∂q(9)

= p̃T K t J p,q + 4εT K r Jε,ω Jω,q (10)

The dependencies in the notations are omitted for the sake ofsimplicity. The variable ω describes the rotation of the TCP.Thematrix Jε,ω in (10) only depends on the unit quaternions,

123

Page 8: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

526 Auton Robot (2016) 40:519–536

while J p,q and Jω,q constitute the overall Jacobian matrixof the manipulator. The control torque can be written as

τ car = −(

∂Vcar(q,Pcar)

∂q

)T

− Dcar(q,Pcar)q̇ (11)

= −(J p,q

Jω,q

)T (K t p̃

4JTε,ωK rε

)− Dcar(q,Pcar)q̇ (12)

In accordance with the parameters given in Table 1, the rea-soning level can now take the commanded stiffness (K t, K r)and the trajectories (used in p̃ and ε) into account by pro-viding them to the controller (12). Similarly, the reasoninglevel can limit the Cartesian wrench by providing mini-mum/maximum values for the Cartesian forces K t p̃ andtorques 4JT

ε,ωK rε. In that case, these terms have to be satu-rated in (12). The damping in (11) will not be particularizedhere, but it can be realized by classical approaches such as theDouble Diagonalization Design (Albu-Schäffer et al. 2003).For a more detailed discussion on the Cartesian stiffnessimplementation, please refer to Ott (2008).

4 Task reasoning and parameterization

Based on the classification conducted in Sect. 2 we identi-fied task parameters for the symbolic level, the geometriclevel, and the control level of wiping tasks. To incorporatethe entire parameter set on the three levels of abstraction, weutilize a hybrid reasoning framework for combined symbolicand geometric reasoning. Furthermore, the task requirementsmay vary on the environmental conditions which demandsdetailed knowledge about the task and the involved objects.Therefore, we proposed to categorize objects in a hierarchi-cal structure w. r. t. their functionality and additionally storedprocess models to define arbitrary manipulation instructionsin our earlier work (Leidner et al. 2012). The architecture isoutlined in the following subsection in the context of the com-pliant manipulation task of scrubbing a mug with a sponge.

4.1 Hybrid reasoning

An object storage provides prior knowledge for all availableobjects. The objects are hierarchically arranged in the object-oriented paradigm and categorized by functionality. Objectsof the same class share the same process models to handlethem and can therefore be manipulated in the same way butunder consideration of their specific properties such as sizeand shape. The world representation holds the current statefor the environment of the robot. Objects as described in theobject storage are instantiated here with specific symbolicand geometric properties.

Fig. 4 Action templates are interpreted in a two-step approach. First,the symbolic action template header is parsed to solve a given taskwith symbolic reasoning. Second, the resulting symbolic transition isgrounded based on the geometric process model, given by the secondpart of the action template. The controller parameterization is inherentin this step. Note that the code is visualized in two segments for betterunderstanding but constitutes one file

Theprocessmodelswithin theobject context are describedin so-called action templates. Figure 4 shows the action tem-plate for the scrub action of the abstract object class _sponge(Abstract object classes are marked with a leading under-score). Action templates consist of two segments. The firstsegment provides symbolic action definitions for symbolicplanning in the PDDL language. The second segment speci-fies geometric instructions as executable code to implementthe symbolic effects by the use of modular geometric rea-soning such as navigation, motion planning or dynamicscomputations. Action templates constitute the main elementfor our approach on object-centered hybrid reasoning in atwo-step approach.

First, all symbolic action definitions are gathered from theaction templates of the object types currently in the worldstate. Additionally the matching symbolic properties are col-lected from the knowledge base.Hence, the symbolic domainis only filled with information of the current state. With thisinformation, a symbolic planner is able to generate a sym-bolic transition leading to the desired goal state. For example,in order to scrub a mug with a sponge, both objects have to

123

Page 9: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 527

be picked up first, and a detergent has to be absorbed bythe sponge. Only if these preconditions apply the scrubbingaction can be scheduled. As effect the dirt is scrubbed awayfrom the mug surface.

In the second reasoning step, the main part of the actiontemplates is revisited to resolve the geometric grounding.Modules to simulate the geometric execution can be inte-grated according to different requirements. If one geometricreasoning step succeeds, the next action is simulated untilthe symbolic transition is processed. Should one step of thegeometric reasoning fail, the action template is reviewed forgeometric alternatives. Should the predefined set of alterna-tives turn out to be insufficient, geometric backtracking isinitiated to find a prior action with remaining alternatives tostart over. If the given symbolic transition is not feasible atall, it is removed from the symbolic domain and the sym-bolic planner is called once again in order to find a symbolicalternative. Figure 5 illustrates the selection of geometric

Fig. 5 A simple example on the geometric reasoning procedure is out-lined in a block diagram where the symbolic transition is shown at thetop (darker blocks) while different geometric alternatives are depictedbelow (lighter blocks). A top grasp is not suitable to scrub the mug withthe sponge since all alternatives to reach the mug with the sponge (redcrosses) are colliding with the right hand of the robot (lower left). Aftergeometric backtracking to the previous pick action (red, dashed arrow),a bottom grasp is chosen to pick the mug. The inner curvature of themug is no longer blocked (lower right)

alternatives as well as the geometric backtracking mecha-nism in the conceptual example, scrubbing a mug with asponge. Alternatives for the pick action consist of differentgraspswhile the scrub action samples different orientations toreach themugwith the sponge. The backtrackingmechanismresembles an exhaustive search algorithm. The reasoningprocedure is therefore complete within the bounds of thediscrete search space defined by the available alternativesfor all scheduled action templates. The method is guaran-teed to find a solution if one set of alternatives describesa feasible geometric action sequence. Consequently onecan state that the more alternatives are available for theindividual action templates, the higher the probability tofind a feasible solution satisfying the desired symbolic goalstate.

Action templates try to define process models at the high-est possible level of abstraction to provide generic controlstrategies. Individual variations are defined at concrete objectlevel, i. e. scrubbing a plate with a squared sponge applies thesame action template with different parameters (e. g. differ-ent trajectory, force, and stiffness). If necessary, it is anyhowpossible to redefine the process model for specialized objecttypes. This concept is illustrated in Fig. 6 at the exampleof another compliant manipulation task, namely skimminga window with a window wiper. Depending on the windowpane a different trajectory design might be required. Thisconcept is applied to windows directly, or objects that con-tain windows such as the bus in the mid-row, or the showeron the bottom. The trajectory design is not limited to rec-tangular shapes but can also be applied to curved surfacesand other geometries. The strategy may even depend onparticular regions of the object (e. g. from left to right oncurved areas and from top to bottom on flat surfaces). Fornow, the trajectory design is hand-crafted and stored as partof the window object. It is determined through parametersprovided by distinct tools to calculate concrete Cartesianworkspace motions for the execution. The parameter sub-stitution is illustrated at the example of the mock-up windowin Fig. 7. Object properties and the resulting task parameterscan be mined from the web Tenorth et al. (2011), demon-strated by a human Kronander and Billard (2014), learned bythe robot Do et al. (2014) or empirically estimated based onthe experience from preceding research (e. g. Albu-Schäfferet al. (2008)).

The single reasoning modules (i. e. symbolic plannersand geometric planners) are individually provided by therobot. This way heterogeneous robotic systems can utilizethe reasoning frameworks w. r. t. their special needs. Forexample, an unmanned aerial vehicle has to use a differentgeometric planner for motion generation than a ground-based humanoid. In the case of Rollin’ Justin we use almostonly out-of-the-shelf software. In particular, we use theFast Downward planner by Helmert (2006) for symbolic

123

Page 10: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

528 Auton Robot (2016) 40:519–536

silver_squeegee

shower_cabine

red_window_wiper

bus.right_windshield

yellow_window_wiper

mock-up_window

Fig. 6 Exemplary parameterization of the geometric process modelsof the skim action template with different wipers andwindows. The ROIis highlighted in red. The generated workspace trajectories are drawnin blue for the respective tools

planning and OpenRAVE by Diankov (2010) for geometricplanning.

4.2 Task parameterization

The reasoning procedure is responsible for the controllerparameterization. Symbolically, the effects of awiping actionmatch one of the actions classified in Sect. 2. The sym-bolic planner selects the correct action based on the currentsymbolic world state, i.e. the available tools and the givenproblem to solve. Since the classification is based on thetool-surface-medium tuple, the appropriate control strategyis predetermined this way.

On the geometric level the task is described according togeometric relations between the involved objects. However,the compliant behavior of the real robot is difficult to model.

Fig. 7 Exemplary illustration of action template parameters for themock-upwindow, where h andw are height andwidth of the rectangularwindow pane (black) and d is the width of the wiper. These parame-ters are automatically extracted from the knowledge base and used tocalculate the N Cartesian end-effector motions (blue) and the gap t inbetween. To guarantee full coverage of the surface, c is set to 0.75 bydefault which may be adapted after calculating N. The principle trajec-tory design is currently (but derivable) hand-crafted for the respectivewindow classes (see Fig. 6)

Not speaking of possible elastic contact behavior betweentool and surface which can hardly be predicted. To solve thisissue human task knowledge is exploited by integrating thecontrol level into the reasoning step. This is done by definingthe Cartesian trajectory for the tool TCP xtool w. r. t. the vir-tual, spatial equilibrium point xcmd for the end-effector. Thetrajectory is computed w. r. t. the involved objects and theirproperties (e. g. the mug radius defines the circular trajectoryfor the sponge in our conceptual example). In the example athand, only translational motions are commanded. The rota-tions of the tool are introduced by defining the Cartesianobject stiffness and the Cartesian contact force at controllevel. Deviations on contact are neglected during planningtime. The resulting Cartesian control torque τ car accordingto (12) enables a compliant robot to adapt itself to the curva-ture of the target surface resulting in a deliberate deviation ofthe end-effector from the commanded Cartesian trajectory:

xact = xcmd + xdev (q,P, τ ext) . (13)

Herein xact(q) describes the forward kinematics based onthe link side measurements (see Fig. 8). It contains both thetranslation pact(q) of the TCP and its orientation, depend-ing on the chosen representation (e. g. via Euler angles).The term xact(q) can be represented as the combinationof the commanded TCP position/orientation xcmd and thedeviation xdev between this command and the actual TCPposition/orientation. The deviation is subject to the parame-terization P of the whole-body controller and the externalforces/torques τ ext.

The control level alone cannot guarantee a successful taskexecution by only following the Cartesian virtual equilib-rium, since the applied local control methods are vulnerableto get stuck in local minima. Furthermore, collisions with

123

Page 11: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 529

Fig. 8 The commanded state for the tool xtool, resulting from the vir-tual, spatial equilibrium xcmd of the right end-effector, is geometricallyunfeasible. In contact, the parameterization of the robot forces the cor-rect alignment of the tool (including deformations) to solve the wipingtask (see xact)

the environment cannot be prevented that way. Therefore, aroughly approximated reference trajectory is provided duringthe reasoning step by computing discrete inverse kinematicssolutions along the task trajectory (similar to Okada et al.(2005)). During runtime, the reference trajectory is interpo-lated to provide an input for the joint impedance controllerbased on (2). As described in Sect. 3.3, the joint impedancecontrol action is projected onto the null space of theCartesianimpedance resulting in an overall whole-body motion of therobot, maintaining contact and free of local minima. Addi-tionally control torques for self-collision avoidance τ sca (3),avoidance of mechanical end stops τmes (4), and singular-ity avoidance τ sav (5) are computed with lower control taskpriority to react on unforeseen events.

In conclusion, the control strategy for a particular processmodel is represented by one particular action template. Theprocess model involves the symbolical meaning and thegeometric execution of the control strategy. The required sub-symbolic parameters such as task frames or regions of interestare provided by the involved objects. Additionally the actualcontroller parameterization is inherent. Preprocessed by ahuman programmer, this task-related knowledge is used toencode the desired compliant control behavior for the wipingaction according to our classification. Such a behavior canhardly be generalized by using local control strategies only,neither is no geometric planner known which could possiblysimulate such a behavior sufficiently stable in a generalizedway. Therefore we believe that the control level and the rea-soning level have to act jointly.

This way of programming and parameterizing manipula-tion actions is beneficial since the programmer is forced todefine the process model based on predicted physical behav-ior and human task knowledge, which is otherwise hardlytransferred to the control level of a robot. In the followingsectionwe demonstrate this approach forwhole-bodymanip-ulation tasks.

5 Evaluation

To evaluate our approach we conduct three elaborate exper-iments on the mobile humanoid robot Rollin’ Justin (Borstet al. 2009). The experiments are designed as whole-bodymanipulation tasks inspired by natural everyday house-hold chores in human environments. The first experimentaddresses the mug scrubbing task already introduced in theprevious section. The second experiment is a windowwipingtask inwhich the robot has to clean a largewindowwith a one-handed window wiper. The third experiment is a sweepingtaskwhere shards of broken dishes have to be collected by bi-manually handling a broom. Each experiment demonstratesone particular wiping action as classified in Sect. 2. Due tothe different classification and the resulting varying contactbehavior the tasks have to be parameterized differently. In thispaper we focus on the task parameterization and not on thereasoning aspectwhich is therefore less detailed. This sectiondescribes directions and rotations in robot coordinates (pos-itive x-axis forward, positive y-axis left, positive z-axis up),while the Cartesian force and stiffness parameters are definedin the local TCP coordinate systems of the involved tools asillustrated in Table 2. The parameters are chosen based onprevious experiments on wiping tasks related to learning bydemonstration (Urbanek et al. 2004).

5.1 Scrubbing a mug with a sponge

The first experiment is based on the conceptual exampledescribed in Sect. 4, scrubbing with a sponge. The goal ofthe wiping task is to clean the inner curvature of the mug.Weclassify this action as scrubbing. The tool is the sponge andthe target surface is the inner region of the mug. The surfacearea can therefore actively be positioned by the robot. Thereare two media involved. The first medium is the dried up liq-uid remaining in the mug. It is not of value for the robot. Thesecond medium is the detergent and water in the sponge. Thesymbolic representation, introduced in Fig. 4, is defined inthe action template as follows:

_sponge.scrub::parameters (?t - _sponge ?s - _dish

?m1 - _medium ?m2 - _medium?a1 - _manipulator ?a2 - _manipulator)

:precondition (and (absorbed ?t ?m1) (adhesive ?s ?m2)(picked ?t ?a1) (picked ?s ?a2))

:effect (and (not(adhesive ?s ?m2)) (scrubbed ?s ?m2))

Symbolically, the mug has to be cleaned which requiresto combine detergent (previously absorbed by the sponge)with the coffee leftovers in the coffee mug by scrubbing. Thepreconditions require to have themug and the sponge graspedat the same time, with two distinct manipulators. As effect,the dirt is not adhesive to the mug anymore but scrubbed andcan be skimmed out of the mug or washed out. See Fig. 4 forthe explicit symbolic representation.

123

Page 12: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

530 Auton Robot (2016) 40:519–536

Table 2 Table of tool-specific parameters

Task relevant actuators Both arms, torso One arm, torso, base Both arms, torso, base

Control task hierarchy τ car, τ jnt, τmes, τ sav τ car, τ sca, τ sav, τ jnt, τmes τ car, τ sca, τ jnt, τmes, τ sav

Translational stiffness x, y, z (N/m) 400, 400, 800 100, 500, 1000 1000, 500, 300

Rotational stiffness θx , θy, θz (Nm/rad) 30, 30, 60 500, 10, 10 200, 10, 500

Cartesian force limits x, y, z (N) ±20, ±20, ±20 −∞/ + 10, ±∞, ±∞ ±∞, ±∞, −10/ + ∞Cartesian force and stiffness parameters are given w. r. t. the visualized frames

In terms of reasoning, this task is especially challengingsince themug needs to be picked up upside-down to clean theinner curvature of it, which is not feasible by only executing asingle pick action. The symbolic representation of the actiontemplate (see Fig. 4) requires the mug and the sponge tobe picked as precondition. Only after backtracking on thegeometric level and on the symbolic level (by cutting thesymbolic domain, see Sect. 4.1) the symbolic planner findsthe correct solution by scheduling a handover action:

_object.pick mug left_arm table,_object.handover mug left_arm right_arm,_object.pick sponge left_arm table,_sponge.scrub sponge left_arm mug

The geometric representation of the _sponge.scrub action(see Fig. 4) defines a circle approximated by twice the diam-eter of the mug for the TCP of the sponge in order to executeforces on the medium plotted as blue dashed line in Fig. 9.The translational and rotational stiffness for the left hand(holding the sponge) are set to be low along/about the lateralaxis of the sponge as described inTable 2.ACartesian force iscommanded along the circular task trajectory. The right hand(holding the mug) is commanded to be stiff for all rotationsand translations. With this parameterization we deliberatelyallow the resulting motion to significantly deviate from thecommanded trajectory. This is exactly what is required tosolve the given wiping task. Figure 10 shows the resultingmeasured trajectory of the manipulator. During contact, theforce limitations according to Table 2 apply.

Regarding whole-body control, the torso and the base arenot mandatory to solve the task of cleaning dishes. How-ever, by treating the action equally to a whole-body task,the torso and the base can be used to compensate for exter-nal disturbances and avoid obstacles while simultaneouslyremaining over the sink with potentially wet dishes. Self-

Fig. 9 The humanoid robot Rollin’ Justin scrubbing a mug with asponge

collision avoidance is disabled during this task to enable bothmanipulators to approach each other.

5.2 Skimming a window with a window wiper

Window cleaning is a diverse task. It can be solved with sev-eral tools, one-handed or bi-manually, and it is applicableto many window types such as squared, round, or curvedones as outlined in Sect. 4.2. Based on the size of the win-dow the whole body might be required to reach the entirewindow pane. An individual parameterization is mandatoryw. r. t. individual settings.

With a width of 1.5m and a height of 1.0m, the windowpane in our example is too large to follow the Cartesian taskmotion by only using the arm of the robot. Even with theaid of the torso it is not possible to maintain the contact withthe window along the complete trajectory. Especially in thecorners the reachability decreases until the task gets unfeasi-ble, not to mention the reduced capability to compensate forpossible disturbances during task execution. Consequently,

123

Page 13: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 531

0.4 0.44 0.48 0.52 0.56 0.6

0.35

0.40

0.45

0.50

0.55

Fig. 10 The commanded position, compared with the measured posi-tion of the left hand during scrubbing

the mobile base is mandatory to accomplish the task. Theadditional DOF of the mobile base can be considered by theapplied discrete inverse kinematics solver. As described inSect. 3.2, a Cartesian trajectory in the plane of motion can bedirectly commanded to the platform controller. This way, thebase follows the lateral motion of the end-effector, respec-tively thewindowwiper, along thewindowpane to extend theworkspace of the robot. Nevertheless it is beneficial to set thecontrol task priority of τ sav higher during the task of windowwiping to prevent singularities, especially in the corners ofthe window (see Table 2). The robot is initially positioned infront of the window w. r. t. the metric we defined in our priorwork (Leidner and Borst 2013; Leidner et al. 2014), wherewe used capability maps (Zacharias et al. 2007) to computethe optimal torso configuration and base position w.r.t. theROI of the target object.

The task is parameterized according to prior task knowl-edge depositedw. r. t. the involved objects. Froma symbolicalplanning point of view the detergent (applied by a humanco-operator) has to be removed from the surface area byskimming it away. As a result, the medium, i. e. the deter-gent will no longer be applied to the surface. The symbolicrepresentation is defined as follows:

_wiper.skim::parameters (?t - _wiper ?s - _window

?m - _detergent ?a1 - _manipulator):precondition (and (picked ?t ?a1)

(applied ?s ?m)):effect (and (skimmed ?s ?m)

(not (applied ?s ?m)))

As precondition, the window wiper has to be grasped bythe robot, while a detergent is applied to the surface. The

Fig. 11 Rollin’ Justin wiping a window. Based on the ROI (red) andthe wiper width the Cartesian task trajectory (blue, dashed arrows) iscomputed. The experiment was successfully demonstrated to the publicat Hanover Fair 2013

resulting symbolic transition consists of a pick and a skimaction:

_object.pick wiper table right_arm,_wiper.skim window right_arm

The skim action template also describes the geometricwiping task based on our classification in Sect. 2. The ROI isdefined in the data storage of the mock-up window. Togetherwith the dimension of the wiper blade the Cartesian task tra-jectory can be computed as illustrated in Fig. 11. The TCPof the wiper is defined in the center of the blade and is usedto describe the tool alignment (see Table 2). The Cartesianstiffness refines the alignment by introducing freedom aboutthe y-axis and the z-axis of the object TCP. This way a com-pliant behavior of the blade can be achieved leading to amorerobust task execution.As alreadydescribed inFig. 8 thewiperaligns near optimal with the window plane. Local errors andexternal disturbances can be compensated this way whilemaintaining the wiping. The Cartesian force is predefined bythe window wiper and may vary from tool to tool. In thiscase we exert a maximum Cartesian force of fmax

x = 10N.The object stiffness parameterization for the window wiperis listed in Table 2.

One of the main difficulties in wiping windows is the per-ception part. The transparent window pane offers almost novisual features so that the window pane can only be esti-mated by localizing the window frame. However, even withan imperfect localization the robot is able to execute the com-manded window wiping task. This is achieved due to thecompliant behavior of the robot and the individual controllerparameterization which can only be provided if the reason-ing level and the control level act jointly. The comparisonof the commanded and the measured trajectory in Fig. 12illustrates the resulting behavior in the translational deviationof the right arm guiding the wiper along the window pane.Even collisions between the wiper and the window frame(see Fig. 12, first row, upper left) can be handled this way.

123

Page 14: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

532 Auton Robot (2016) 40:519–536

Fig. 12 This plot compares the commanded virtual equilibrium pointwith the measured position of the right hand during the window wipingtask. The three axes correspond to the three dimensions of the win-dow (similar to robot coordinates), where z is the height and y is thewidth. The deviation along the x-axis corresponds to the contact of thewiper with the window pane. Note that the transit paths, connecting twocontact situations, are removed for clarity

In the future we plan to integrate the localization uncertain-ties directly into the controller parameterization to furtherenhance the task performance.

5.3 Collecting shards with a broom

The third task is a collecting task where a broom is used tocollect shards of a broken mug. This requires both arms tohandle the broom while the mobile base and the torso sup-port the motion to create an overall wiping trajectory alonga larger area. Both arms, the torso, and the mobile base actjointly. Similar to the window cleaning task, the broom needsto be picked before it can be used. Since the broom has to behandled bi-manually, the mass parameters have to be dividedamong the manipulators. The pick action template is there-fore specialized by the _broom object class. The symbolicrepresentation of the collect action template is defined asfollows:

_broom.collect::parameters (?t - _broom ?s - _floor ?m - _dish

?a1 - _manipulator ?a2 - _manipulator):precondition (and (picked ?t ?a1) (picked ?t ?a2)

(broken ?m)):effect (and (collected ?s ?m))

This example illustrates the use of a medium other thansmall particles or liquids. As defined in the symbolic precon-dition section, the mug can only be collected with the broomif it is marked as broken. In this form the mug constitutesthe medium for the wiping task of collecting shards. In case

Fig. 13 Rollin’ Justin collecting shards of a broken mug. The ROI(red) is defined by the broom width and the shards. Along this region, acyclic trajectory has to be executed by the broom (blue, dashed arrow)

of the desired symbolic goal state collected floor mug, thesymbolic planner yields the following symbolic transition:

_broom.pick broom table right_arm left_arm,_broom.collect broom mug right_arm left_arm

The shards define the ROI in this particular collectingtask. A skimming task to remove dust from the floor would,however, rely on the whole accessible floor of a room astarget surface and a completely different parameterization(e. g. higher contact force, lower stiffness). The experimentis shown in Fig. 13.

The Cartesian task trajectory for the broom is stored inthe knowledge base and defines a simple ellipse intersectingthe floor plus a linear lateral offset. The elliptic motion isthought to be executed by the arms and the lateral motionby the mobile base. This way the contact during the trajec-tory execution is slightly overlapping. The trajectory can beimagined as a loop (seeFig. 14).However,with this trajectoryalone the robot is not able to collect the shardswith the broom.Only after setting the correct Cartesian stiffness the task canbe solved. The desired motion of the tool involves a tiltedTCP, wiping along the floor (see Table 2). This requires a lowrotational stiffness along the brush attachment (y-axis) and alow translational stiffness along the shaft (z-axis). The forceagainst the ground (z-axis) is limited to fmin

z = −10N sothat the virtual equilibrium point for the broom is not pushedtoo far. The desired Cartesian object stiffness for the broomis listed in Table 2. The coupling of stiffness and dampingfor bi-manual tool handling was already examined on Rollin’Justin (Wimböck 2013; Florek-Jasinska et al. 2014). Yet weapproximate the desired stiffness of the individual manipula-tors for this experiment, since the strategy is not yet integratedin this framework. Additionally to the Cartesian stiffness we

123

Page 15: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 533

Fig. 14 Frontal view of thecommanded and measured TCPof the right manipulator. Duringthe contact phase the hands areboth following a tilt motionintroduced by the sweepingbroom which reflects the lowrotational stiffness around thebrush

define the joint stiffness for the torso to be twice the defaultvalue, so that the main compliance is anticipated by the arms.

This experiment shows how whole-body manipulationof closed kinematic chains can be integrated into a hybridreasoning framework without explicitly address the closedkinematic chain. All relevant assumptions have beenmade inthe object space and are therefore robot-independent (exceptfor the torso parameterization, which is exemplary, notmandatory). The resulting behavior solves the commandedsweeping task. Eventually all shards are collected in one area.The actual measured trajectory of the right manipulator inFig. 14 shows that it is not straightforward to define the cor-rect task motion by programming it in detail. We believethat the local adaption on control level paired with globallyapplied human task knowledge is a well-suited method tosolve this issue.

The experiments show that the concept of action templatesis suitable to describe the process models of wiping tasksw. r. t. whole-body control behavior of a humanoid robot.For all tasks the same controller was utilized. It was shownthat various components can be addressed to solve evencomplex whole-body manipulation tasks rather than onlypick-and-place tasks. All information needed to describethe tasks was stored within the context of the involvedobjects. The task reasoning and controller parameterizationwas autonomously performed by the robot with the use of theprovided action templates. All tasks are shown in the videoattachment.

6 Discussion

The main advantage of the approach presented in this paperis the relative ease with which a manipulation task can bedefined in order to act correctly on the control level. Aprogrammer has to develop a single action template only,utilizing prior task knowledge including the task trajectory,Cartesian object stiffness, and Cartesian force for the con-troller parameterization. However, it is not straightforwardto select the correct parameters. Unfortunately, there exist nodetailed studies on exerted force and stiffness during manip-ulation tasks for robots, neither for humans. This lack can be

mainly traced back to impracticable measuring proceduresduring tool usage. Nevertheless, Cartesian tool trajectoriescan be tracked.Doing so itwould be possible to automaticallylearn the correct force, torque, and stiffness parameteriza-tion with suitable machine learning strategies, providing thedesired Cartesian trajectory by human demonstration.

Currently, the Cartesian task trajectories are hand-craftedby a skilled programmer. However, the trajectories relymainly on the physical appearance of the objects involvedin the task execution, such as the shape of a window pane.We plan to use this information together with the goals ofthe wiping tasks defined in Fig. 2 to automatically gen-erate whole-body motions for humanoid robots in realisticscenarios. One challenge w. r. t. this issue is to generate con-tinuous whole-bodymotions in complex environments basedon a desired Cartesian workspace trajectory for a given tool.Additionally, superimposing oscillating/cyclic motions willbe mandatory to guarantee appropriate task outcome in caseof cleaning tasks, such as scrubbing the floor with a mop.

Integrating the parameterization of whole-body con-trollers into the task reasoning procedure is only the firststep to solve more complex compliant tool usage scenarios.As we emphasized with our classification of wiping tasks,the effects on the medium are the main aspects of any wip-ing task. To sufficiently achieve this it is mandatory to verifythe outcome of the commanded action during and after taskexecution. Our next step is therefore the integration of thecontrol strategies into the feedback loop of the reasoninglevel, yet suitable metrics have to be defined. Together withvisual feedback we believe that the task performance can beincreased further.

7 Summary

In thisworkwepresented a generic combination of high-levelhybrid reasoning mechanisms with a low-level whole-bodycontrol framework. Within this context a classification ofcompliantwiping taskswas conducted to extract relevant taskparameters. Based on these parameters we provide humantask knowledge in the context of the involved objects todescribe tasks symbolically and geometrically. The compli-

123

Page 16: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

534 Auton Robot (2016) 40:519–536

ant contact behavior of the whole-body controller is realizedas a hierarchical stack of control tasks via null space projec-tions.Thewiping actions are therebydescribedby aCartesiantask trajectory for the virtual equilibrium of the end-effectorsand the Cartesian object stiffness of the tool. This way thewhole-body controller can react on the actual environmentalconditions. We evaluated our approach in three experimentson the humanoid robot Rollin’ Justin. First, a scrubbing taskwas executed to clean the inner curvature of a mug with asponge. Second, a windowwiping task was conducted wherethe robot had to coordinate right arm, torso and base motionto skim along an entire window pane. The third task involvedboth arms, the torso, and the mobile base in a sweeping taskto collect shards of a broken mug. The attached video clearlydemonstrated the potential of the proposed concept as well.

Acknowledgments This work was partially funded by the EuropeanCommunity’s Seventh Framework Programme under Grant AgreementNo. 608849 EuRoC and partially by the Helmholtz Association ProjectHVF-0029 RACE-LAB.

References

Albu-Schäffer, A., Ott, C., Frese, U., & Hirzinger, G. (2003). Cartesianimpedance control of redundant robots: Recent results with theDLR-light-weight-arms. In Proceedings of the IEEE InternationalConference on Robotics and Automation (ICRA), pp. 3704–3709.

Albu-Schäffer, A., Eiberger, O., Grebenstein, M., Haddadin, S., Ott, C.,Wimböck, T., et al. (2008). Soft robotics. IEEE Robotics Automa-tion Magazine, 15(3), 20–30.

Antonelli, G. (2009). Stability analysis for prioritized closed-loopinverse kinematic algorithms for redundant robotic systems. IEEETransactions on Robotics, 25(5), 985–994.

Bartels, G., Kresse, I., & Beetz, M. (2013). Constraint-based movementrepresentation grounded in geometric features. In Proceedingsof the IEEE/RAS International Conference on Humanoid Robots(ICHR), pp. 547–554.

Bloomfield, A., Deng, Y.,Wampler, J., Rondot, P., Harth, D.,McManus,M., & Badler, N. (2003). A taxonomy and comparison of hapticactions for disassembly tasks. InProceedings of the Virtual RealityConference, pp. 225–231.

Borst, C., Wimböck, T., Schmidt, F., Fuchs, M., Brunner, B., Zacharias,F., Giordano, P. R., Konietschke, R., Sepp, W., & Fuchs, S., et al.(2009). Rollin’justin-mobile platform with variable base. In Pro-ceedings of the IEEE International Conference on Robotics andAutomation (ICRA), pp. 1597–1598.

Bullock, I.M.,&Dollar, A.M. (2011). Classifying humanmanipulationbehavior. In Proceedings of the IEEE International Conference onRehabilitation Robotics (ICORR), pp. 1–6.

Bullock, I. M., Ma, R. R., & Dollar, A. M. (2013). A hand-centricclassification of human and robot dexterous manipulation. IEEETransactions on Haptics, 6(2), 129–144.

Cakmak, M., & Takayama, L. (2013). Towards a comprehensive chorelist for domestic robots. In Proceedings of the ACM/IEEE Interna-tional Conference on Human-Robot Interaction (HRI), pp. 93–94.

Cutkosky, M. R. (1989). On grasp choice, grasp models, and the designof hands for manufacturing tasks. IEEE Transactions on Roboticsand Automation, 5(3), 269–279.

Diankov, R. (2010). Automated construction of robotic manipulationprograms. Ph.D. Thesis, Carnegie Mellon University, RoboticsInstitute.

Dietrich, A., Wimböck, T., & Albu-Schäffer, A. (2011a). Dynamicwhole-body mobile manipulation with a torque controlledhumanoid robot via impedance control laws. In Proceedings ofthe IEEE/RSJ International Conference on Intelligent Robots andSystems (IROS), pp. 3199–3206.

Dietrich, A., Wimböck, T., Täubig, H., Albu-Schäffer, A., & Hirzinger,G. (2011b). Extensions to reactive self-collision avoidance fortorque and position controlled humanoids. In Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA), pp. 3455–3462.

Dietrich, A., Albu-Schäffer, A., & Hirzinger, G. (2012a). On con-tinuous null space projections for torque-based, hierarchical,multi-objective manipulation. In Proceedings of the IEEE Inter-national Conference on Robotics and Automation (ICRA), pp.2978–2985.

Dietrich, A., Wimböck, T., Albu-Schäffer, A., & Hirzinger, G. (2012b).Reactivewhole-body control:Dynamicmobilemanipulation usinga large number of actuated degrees of freedom. IEEE Robotics &Automation Magazine, 19(2), 20–33.

Dietrich, A., Ott, C., & Albu-Schäffer, A. (2013). Multi-objective com-pliance control of redundant manipulators: Hierarchy, control, andstability. InProceedings of the IEEE/RSJ International Conferenceon Intelligent Robots and Systems (IROS), pp. 3043–3050.

Dietrich, A., Ott, C., & Albu-Schäffer, A. (2015). An overview of nullspace projections for redundant, torque-controlled robots. Inter-national Journal of Robotics Research, 34(11), 1385–1400.

Do,M., Schill, J., Ernesti, J., &Asfour, T. (2014). Learn to wipe: A casestudy of structural bootstrapping from sensorimotor experience.In Proceedings of the IEEE International Conference on Roboticsand Automation (ICRA), pp. 1858–1864.

Dornhege, C., & Hertle, A. (2013). Integrated symbolic planning in thetidyup-robot project. In AAAI Spring Symposium Series.

Dornhege, C., Eyerich, P., Keller, T., Trüg, S., Brenner, M., & Nebel, B.(2012). Semantic attachments for domain-independent planningsystems. In: Towards service robots for everyday environments,Springer, Berlin, pp. 99–115.

Feix, T., Pawlik, R., Schmiedmayer, H. B., Romero, J., & Kragic,D. (2009). A comprehensive grasp taxonomy. Robotics (pp. 2–3). Workshop on Understanding the Human Hand for AdvancingRobotic Manipulation: Science and Systems.

Florek-Jasinska, M., Wimböck, T., & Ott, C. (2014). Humanoid com-pliant whole arm dexterous manipulation: Control design andexperiments. In Proceedings of the IEEE/RSJ International Con-ference on Intelligent Robots and Systems (IROS), pp 1616–1621.

GhallabM, Howe A, Christianson D,McDermott D, RamA, VelosoM,WeldD,Wilkins D (1998) PDDL—the planning domain definitionlanguage. AIPS98 planning committee, 78(4):1–27.

Giordano, P. R., Fuchs, M., Albu-Schäffer, A., & Hirzinger, G. (2009).On the kinematic modeling and control of a mobile platformequipped with steering wheels and movable legs. In Proceedingsof the IEEE International Conference on Robotics and Automation(ICRA), pp. 4080–4087.

Gravot, F., Cambon, S., & Alami, R. (2005). Asymov: A planner thatdeals with intricate symbolic and geometric problems. In TheEleventh International Symposium Robotics Research, Springer,Berlin, pp. 100–110.

Helmert, M. (2006). The fast downward planning system. Journal ofArtifcial Intelligence Research, 26, 191–246.

Hess, J.M., Tipaldi, G.D., & Burgard, W. (2012). Null space opti-mization for effective coverage of 3d surfaces using redundantmanipulators. In Proceedings of the IEEE/RSJ International Con-ference on Intelligent Robots and Systems (IROS), pp 1923–1928.

123

Page 17: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

Auton Robot (2016) 40:519–536 535

Hogan, N. (1985). Impedance control: An approach to manipulation:Part I—theory, Part II—implementation, Part III—applications.Journal of Dynamic Systems, Measurement, and Control, 107, 1–24.

Kaelbling, L. P., & Lozano-Pérez, T. (2013). Integrated task and motionplanning in belief space. The International Journal of RoboticsResearch, 32, 1–60.

Kallmann,M.,&Thalmann,D. (1999).Modeling objects for interactiontasks. InComputer animation and simulation, 98. Springer, Berlin,pp. 73–86.

Kapandji, I. A., & Honoré, L. H. (1970). The physiology of the joints:Annotated diagrams of the mechanics of the human joints (Vol. 1).Livingstone, London: E. & S.

Khatib, O. (1987). A unified approach for motion and force controlof robot manipulators: The operational space formulation. IEEEJournal of Robotics and Automation RA, 3(1), 43–53.

Kronander, K., & Billard, A. (2014). Learning compliant manipula-tion through kinesthetic and tactile human-robot interaction. IEEETransactions on Haptics, 7(3), 367–380.

Kunze, L., Dolha, M. E., Guzman, E., & Beetz, M. (2011). Simulation-based temporal projection of everyday robot object manipulation.In Proceedings of the International Conference on AutonomousAgents and Multiagent Systems (AAMAS), pp. 107–114.

Leidner, D., &Borst, C. (2013). Hybrid reasoning for mobile manipula-tion based on object knowledge. InWorkshop onAI-based roboticsat IEEE/RSJ International Conference on Intelligent Robots andSystems (IROS).

Leidner, D., Borst, C., &Hirzinger, G. (2012). Things aremade for whatthey are: Solving manipulation tasks by using functional objectclasses. InProceedings of the IEEE/RAS International Conferenceon Humanoid Robots (ICHR), pp. 429–435.

Leidner, D., Dietrich, A., Schmidt, F., Borst, C., & Albu-Schäffer, A.(2014). Object-centered hybrid reasoning for whole-body mobilemanipulation. In: Proceedings of the IEEE International Confer-ence on Robotics and Automation (ICRA), pp. 1828–1835.

Levison, L. (1996). Connecting planning and acting via object-specificreasoning. Ph.D. Thesis, University of Pennsylvania.

Moro, F. L., Gienger, M., Goswami, A., Tsagarakis, N. G., & Cald-well, D. G. (2013). An attractor-based whole-body motion control(WBMC) system for humanoid robots. InProceedings of the IEEE-RAS International Conference on Humanoid Robots (ICHR), pp.42–49.

Mosenlechner, L., & Beetz, M. (2011). Parameterizing actions to havethe appropriate effects. In Proceedings of the IEEE/RSJ Interna-tional Conference on Intelligent Robots and Systems (IROS), pp.4141–4147.

Nakamura, Y., Hanafusa, H., & Yoshikawa, T. (1987). Task-prioritybased redundancy control of robot manipulators. InternationalJournal of Robotics Research, 6(2), 3–15.

Okada, K., Ogura, T., Haneda, A., Fujimoto, J., Gravot, F., & Inaba,M. (2005). Humanoid motion generation system on hrp2-jsk fordaily life environment. In Proceedings of the IEEE InternationalConference on Mechatronics and Automation (ICMA), pp. 1772–1777.

Okada, K., Kojima, M., Sagawa, Y., Ichino, T., Sato, K., & Inaba, M.(2006). Vision based behavior verification system of humanoidrobot for daily environment tasks. In Proceedings of the IEEE-RAS International Conference on Humanoid Robots (ICHR), pp.7–12.

Ott, C. (2008). Cartesian impedance control of redundant and flexible-joint robots, Springer tracts in advanced robotics (Vol. 49). Berlin:Springer.

Ott, C., Albu-Schäffer, A., Kugi, A., Stramigioli, S., & Hirzinger,G. (2004). A passivity based cartesian impedance controller forflexible joint robots—Part I: Torque feedback and gravity com-pensation. In Proceedings of the IEEE International Conferenceon Robotics and Automation (ICRA), pp. 2659–2665.

Ott, C., Albu-Schäffer, A., Kugi, A., & Hirzinger, G. (2008). On thepassivity-based impedance control of flexible joint robots. IEEETransactions on Robotics, 24(2), 416–429.

Sadeghian, H., Villani, L., Keshmiri, M., & Siciliano, B. (2014). Task-space control of robot manipulators with null-space compliance.IEEE Transactions on Robotics, 30(2), 493–506.

Sentis, L., & Khatib, O. (2005). Synthesis of whole-body behaviorsthroughhierarchical control of behavioral primitives. InternationalJournal of Humanoid Robotics, 2(4), 505–518.

Siciliano, B., & Slotine, J. J. (1991). A general framework for managingmultiple tasks in highly redundant robotic systems. In:Proceedingsof the International Conference on Advanced Robotics (ICAR), pp.1211–1216.

Tan, J., Xi, N., &Wang, Y. (2003). Integrated task planning and controlfor mobile manipulators. The International Journal of RoboticsResearch, 22(5), 337–354.

Tenorth,M.,Klank,U., Pangercic,D.,&Beetz,M. (2011).Web-enabledrobots. IEEE Robotics & Automation Magazine, 18(2), 58–68.

Tenorth,M., Perzylo,A., Lafrenz,R.,&Beetz,M. (2012). The roboearthlanguage: Representing and exchanging knowledge about actions,objects, and environments. InProc. of the IEEE International Con-ference on Robotics and Automation (ICRA), pp. 1284–1289.

Urbanek, H., Albu-Schäffer, A., & van der Smagt, P. (2004). Learn-ing from demonstration: Repetitive movements for autonomousservice robotics. In Proceedings of the IEEE/RSJ InternationalConference on Intelligent Robots and Systems (IROS), pp. 3495–3500.

Vanthienen, D., Robyns, S., Aertbeliën, E., De Schutter, J. (2013).Force-sensorless robot force control within the instantaneous taskspecification and estimation (iTaSC) framework. In Benelux Meet-ing on Systems and Control.

Wimböck, T. (2013). Controllers for compliant two-handed dexterousmanipulation. Ph.D. Thesis, Vienna University of Technology.

Wolfe, J., Marthi, B., & Russell, S. J. (2010). Combined task andmotion planning for mobile manipulation. In Proceedings of theInternational Conference on Automated Planning and Scheduling(ICAPS), pp. 254–258.

Yamamoto, Y., & Yun, X. (1992). Coordinating locomotion and manip-ulation of a mobile manipulator. In Proceedings of the IEEEConference on Decision and Control (CDC), pp. 2643–2648.

Yoshikawa, T. (1990). Foundations of robotics: Analysis and control.Cambridge: The MIT Press.

Zacharias, F., Borst, C., & Hirzinger, G. (2007). Capturing robotworkspace structure: Representing robot capabilities. In Proceed-ings of the IEEE/RSJ International Conference on IntelligentRobots and Systems (IROS), pp. 3229–3236.

123

Page 18: Knowledge-enabled parameterization of whole-body control ...cga/z/Leidner_AURO_2016.pdf · 520 Auton Robot (2016) 40:519–536 Fig. 1 The humanoid robot Rollin’ Justin wiping a

536 Auton Robot (2016) 40:519–536

Daniel Leidner received hisDipl.-Ing. (FH) degree in com-munications engineering in2010,and his M.Sc. degree in informa-tion technology in 2011 from theMannheimUniversity ofAppliedSciences. In 2011, he joinedthe German Aerospace Cen-ter (DLR), Institute of Roboticsand Mechatronics, as a researchscientist. His current researchinterests include artificial intel-ligence, knowledge-basedhybridreasoning, and autonomous com-pliant manipulation.

Alexander Dietrich received hisDipl.-Ing. degree in mechanicalengineering from the Technis-che UniversitätMünchen (TUM)in 2008 and his Dr.-Ing. degreefrom TUM in 2015. Since2010, he is with the Instituteof Robotics and Mechatronicsof the German Aerospace Cen-ter (DLR). His current researchinterests include impedance andforce control,whole-bodymobilemanipulation, kinematic redun-dancy, and safe physical human-robot interaction.

Michael Beetz (M’08) receivedhis diploma degree in Com-puter Science with distinctionfrom the University of Kaiser-slautern. He received his MSc,MPhil, and Ph.D degrees fromYale University in 1993, 1994,and 1996 and his Venia Leg-endi from the University of Bonnin 2000. Since 2012, he hasbeen Head of the Institute forArtificial Intelligence, Univer-sity of Bremen, Germany. Hisresearch interests include inte-grated cognition-enabled robotic

systems, plan-based control of autonomous robots, knowledge represen-tation and processing for robots, integrated robot learning, and cognitiveperception.

Alin Albu-Schäffer (M’93) rec-eived theDiploma degree in elec-trical engineering from the Tech-nical University of Timisoara,Timisoara, Romania, in 1993and the Ph.D. degree in con-trol systems from the TechnicalUniversity of Munich, Munich,Germany, in 2002. Since 2012,he has been Head of the Insti-tute of Robotics andMechatron-ics, German Aerospace Center,Wessling, Germany, which hejoined in 1995. His researchinterests include robot design,

modeling, and control, nonlinear control, flexible joint and variablecompliance robots, impedance and force control, and physical human–robot interaction

123