1.3 Software Architecture
2.1.5 Sequential Low Dimensional Structures
While previous methods focus on very important and difficult planning problems, they generally do not incorporate human intuition. The human should be included, as much as possible, in the planning routines for moving the robot between configurations, as the human can intuit possible object collisions or physical instabilities. Additionally, confidence in the planner’s ability becomes critical for human robot interaction. Teleoperation is logical result of extensive human interaction. By establishing a hierarchy of control structures, we can represent high and low level tasks that are available for human interaction. Wishing for more autonomy, the human operator can focus only on high level tasks, while lower levels of autonomy are available when desired. Designing the levels of autonomy requires insights into the mechanisms of high dimensional planning.
Latent Space Network
Leveraging graphical models [62] to explain state transitions among states that represent kinematic chains, a latent space will be tracked in time. When a motion is thought to be in one latent space, it is perturbed by variables in that space; this space will be constructed as a linear Jacobian subspace. The Jacobian will change over the life of a motion, as the Jacobian can fluctuate based on the joint angles of the state. This can be seen as locally embedding a set of latent space types fj, throughout
a motion. The uncertainty encoded in the probabilities of graphical models can be thoughts to represent the probability of the latent space yielding a valid structure in time. The optimization problem has to account for this set of latent spaces to search over, where the variableaj(t)selects
whether a latent space is active at a timet.
minimize f
∑
j∑
t aj(t)||q(t)−f−j 1(yj(t))|| subject to di(t)≤1,i=1, . . . ,n. yj(t)−ui(t) q(t)−fj−1(yj(t) +ui(t)) ≤c,i=1, . . . ,n (8)This representation can account for jlocal topologies of the functional form f, and is similar to the Locally embedded GPLVM, where the weight matrix is forced to reconstruct its neighbors [143].
The weighting of the local functions is denotedaj, whiledrepresents any physical constraints that
need to be met (in the simplistic form, start and end goals). The second constraint models how well perturbationsuto the trajectory can be explained by the latent space, acting as a method to ensure robust modeling.
A single model may not appropriately model every portion of the trajectories q(t), but many different latent spaces can provide better reconstruction. The goal of the latent space network is to give a human user an intuitive way to modify trajectories. Multiple subspaces can allow this modification to be more faithful than a single dimensional reduction over an entire trajectory. The resulting, modified trajectories should mimic user intent and not violate physical constraints, such as balance, obstacle avoidance, range of motion, etc. For the latent space transitions to satisfy boundary conditions leading to a smooth trajectory, a low pass filter can effectively blend latent spaces.
Physical Constraints
A big issue with finding latent spaces is finding one that respects physical constraints of the robot. Considering humanoid robots as the base base for high DOF robotic systems, we can look at Khatib and Sentis’ work, where is creates multi-contact model of the robot [123], [124]. The general idea in his work is that internal forces of the robot are not considered, and that there is a way to mix joint movement based on the priority of various tasks. In this work, the lower body abstracts upper body motion as sequence of disturbances that it needs to reject to stay stable. A similar approach is outlined in Section3.3.
The motion planner incorporates task specific human preferences, which handles the redun- dancy of the manipulator, makes the resulting motion more predictable and suitable for given task, and lowers the complexity of the motion planning. To handle the mixing of physical requirements with user tasks, every task is executed in the constrained null space of a higher level task. This null space constraint means that a task is only allowed to move joints in directions within the combined null space of higher priority tasks, shown in Equation (9). The proposed controller is described in Section 4.1 and implemented on the THOR-RD full sized humanoid robot, and has successfully
been used to handle various manipulation tasks for the DRC Finals competition.
N=Ntask(k−1)Ntask(k−2)· · ·Ntask(1)Nconstraints (9)
This mathematical framework sets up a real world use case for walking humanoids. For a humanoid to perform two tasks while walking, it must obey the Zero Moment Point constraint in the highest priority, with other tasks obeying the cumulative null space of the ZMP constraint. Using a linear inverted pendulum model for walking, we need to choose a strategy to satisfy the constraint. One way of satisfying the ZMP constraint while allowing for other movements is to completely segregate joints a priori. For instance, the legs may be forced to satisfy the ZMP constraints, while the arms and torso are free to move. To allow a human operator to control the robot via real time motion capture, this strategy makes sense, and was implemented on a small scale humanoid robot [167].