Improving energy efficiency of a robotic system based on multiple analytical solutions for inverse kinematics

The paper presents the results of a study devoted to the problem of improving the energy efficiency of mechanical motion of anthropomorphic robotic systems. Achieving higher energy efficiency is largely due to the implementation of improvements directly in the algorithms that ensure the movement of a robotic system. For this purpose, several existing analytical methods for solving the inverse kinematics problem for robotic walking platforms were analyzed. According to the survey, key areas where modification can improve the energy efficiency of mechanical motion in various RS are identified. The paper discusses the algorithm developed to optimize the solutions of the inverse kinematics problem in terms of energy consumption.


Introduction
Despite the rapid pace of development of robotics, many problems related to the energy efficiency of robotic walking platforms remain unresolved mainly because of the extreme limitations of energy resources in such systems.The main problem in the design, modeling and implementation of solutions for kinematics for robotic walking platforms is the need to develop motion patterns with reduced power consumption to ensure sufficient time of full-fledged functioning, since most of the consumed energy is spent to provide mechanical motion.
At the same time, the solution of the inverse kinematics problem is a very difficult task in terms of computational and algorithmic complexity.Thus, the implementation of additional heuristics optimizing the energy consumption is often not feasible in practice.Nevertheless, for a number of robotic systems (RS) where the usage of analytical methods for inverse kinematics problem (IKP) solutions is possible, the introduction of such algorithms is advisable, since the implementations of analytical methods have a relatively small computational complexity.
In order to solve the IKP, a number of specialized methods simplifying the obtaining of analytical expressions have been developed [1,2].The essence of these methods consists in determining the rotation angles of joints from nonlinear equations for individual elements of the matrix equation.Because of the nonlinearity, these methods for complex robotic systems lead to multiple solutions, but as a rule, researchers' attention is not focused on the method of choosing a particular solution from the set, and the proper one is chosen empirically.
Even though analytical methods require significant preliminary calculations for their use on each particular RS, such methods are very reliable and can provide solutions with high accuracy.Therefore, analytical methods are widely used in modern projects.
In [3], a partial solution of the kinematics problems for Darwin-OP [4] is discussed.Darwin-OP is an anthropomorphic RS with 20 degrees of freedom (DoF).Each Darwin-OP's leg has 6 DoF, and the solution of the IKP for them is of the utmost interest./The authors chose the analytical approach as it was possible to obtain a solution of the IKP through analytical expressions because of the structural features of the system.Nevertheless, despite the fact that the problem of multiple solutions was identified in this work, the approach to its solution was not demonstrated.Thus, additional opportunities to increase the energy efficiency of the obtained solutions were missed.
In [5], a comparative analysis of modern solutions of the IKP applying to industrial RS with 6 DoF is presented.One of the approaches used is the analytical method and the problem of multiple solutions was also considered, namely an algorithm clearing the list of suitable solutions in accordance with the constraints imposed by the structural features of the RS was added.Nevertheless, the quality of the remaining decisions was not evaluated, and a random selection of the so-called "true solution" was carried out.In this case, the probability of choosing the most qualitative solution is inversely proportional to the number of decisions remaining after the limitations was taken into account.
The paper [6] discusses solving the IKP for the anthropomorphic RS NAO [7] by means of an analytical method.The method described in [1] was implemented for NAO's hands and head.Some changes in the solution are implemented for the legs of this RS.Each leg has 6 DoF.In order to obtain a less computationally complex solution, each limb viewed as a system consisting of two simpler components.The 3 upper joints of each leg correspond only for the orientation of robot, and the three lower ones for the shift along the chosen orientation, which allowed obtaining IKP solutions in a simplified form.This approach is a heuristic, focused on simplifying the calculations while solving the IKP with analytical method, but at the same time the problem of multiple solutions was formally eliminated.However, eliminating the possibility of choosing a "better" solution leads to losses in terms of ensuring high energy efficiency of the IKP solutions.
This paper discusses the causes of multiple solutions of the IKP when analytical methods are used.The developed algorithm for improving the energy efficiency of mechanical motion, which is based on the modification of the process of choosing the most suitable solution, is also described.

Background
Consider the main/basic principles of the classical approach to solving the IKP.In order to describe the body's orientation in space, it is necessary to correlate a coordinate system with the body.One way to describe the coordinate system associated with the body is to express its three axes in the global coordinates system, and write them down as columns of a 3x3 matrix in the order [X, Y, Z].Such a matrix is called the rotation matrix.Thus, the position of a body can be described by a vector, and its orientation by the rotation matrix.
Assume that the coordinate system B is connected with some body.In space, a global coordinate system A is defined, and vectors X B ,Y B ,Z B define the principal directions of the coordinate system B.These vectors expressed in coordinates of system A, are written as A X B , A Y B , A Z B .Then the rotation matrix describing the system B relatively to the system A is denoted as A R B and has the following form: In order to completely localize the joint of a certain robotic system, it is necessary to know its position and orientation.These two parameters can be combined in one called a frame of reference, which allows to completely describe one coordinate system relatively to the other.

Joints description in classical representation
Each link of a typical robotic system in terms of kinematics can be represented as a rigid body.It determines the relationship between the axes of adjacent joints of the system.The axis of the joint i is determined by the direction of the vector around which the i-th link rotates relative to the (i -1)-th link.
The kinematic function of the link is to maintain a constant relationship between the axes of adjacent joints, which can be described by the following parameters: the length of the link a and the link's twist angle α.These parameters completely determine the relative position of the two axes in space.
For any two axes of the joints in three-dimensional space exists a well-defined measure of the distance between them, which is measured along a straight-line perpendicular to both axes and is denoted as a i .This perpendicular always exists and it is unique except for the case when the axes are parallel.For parallel axes, there are many common perpendiculars of equal length.
The second parameter to be determined is the twist angle a i of the link, which can be calculated as follows: take a plane for which the common perpendicular for the two axes is the normal, project the axes numbered i-1 and i on this plane, then measure the angle between axes projections.

Description of the links connections in classical representations
Adjacent links of the robotic system have one common joint axis.One of the two parameters that make it possible to completely determine the way in which the links are connected to each other is called the shift of the link.This parameter characterizes the distance along the common axis from one link to the other.The shift along the axis of the i-th joint is denoted as d i .The second parameter called the angle of the joint deflection and denoted as Q i , is the amount of rotation of one link relative to its neighbor around the common joint axis.
Shift of the link corresponds to the distance along the axis of the i-th joint from the point at which this axis intersects the perpendicular α i-1 to the point of intersection with the perpendicular α i .Angle of the joint deflection is the angle between the extensions of the perpendiculars α i-1 and α i , measured around the joint i.
The position of the i-th link in the coordinate system of the link i-1 can be expressed by composing the transformation matrix , which general form looks as follows: , where c and s denote the trigonometric functions of the sine and cosine, respectively.
Kinematic equations are determined after a proper coordinate system is assigned to each link.Given all the parameters, a transformation matrix is made for each of the links.By multiplying all the matrices, a transformation that can be used to express the final frame of reference {N} in the initial one {0} is found as: With given final transformation it is possible to determine the coordinates, as well as the orientation of the end link in the original Cartesian coordinate system.The solution of the IKP consists in finding the unknown deviation angles Q 1 ,Q 2 ,Q 3 ,…Q N-1 of the links.Next, an analytical approach to solving this problem will be considered.

Analytical method for solving IKP
Firstly, in order to solve the IKP by means of analytical method all parameters for each link of the RS should be specified.When, the matrix T N 0 is found according to the expression (2) and the link parameters.This matrix allows to express the position of the final link in the initial coordinate system, according to the formula 3, its general form is presented below: Matrix components a 11 …a 44 are the result of multiplication of matrices In order to solve the IKP, it is necessary to find the unknown angles Q 1 ,Q 2 ,Q 3 ,…Q N-1 from the matrix equation, the general form of which looks as follows: Equation 3 may be reduced by division by For matrix T 0 1 the inverse matrix T 1 0 is defined.And equation ( 4) is converted to the form: Multiplying the matrices from the left side of expression (7) and further equating the corresponding elements of the resulting matrix equation we obtain twelve nonlinear equations, only six of which are independent.Consider the matrix T N 0 without taking into account the fourth column and the fourth row: Matrix ( 8) represents the relative position of the end coordinate system to the initial one, from which it is possible to identify three independent equations.The elements of the matrix 34 24 14 0 , , : a a a T N are the coordinates of the radius vector, which connects the reference-starting points of the coordinate systems associated with the final link and the initial frame of reference, so three other independent equations can be obtained.

Appearance of multiple solutions of IKP
As it was shown earlier, the number of independent kinematic equations for any RS does not change and is equal to 6. Thus, finding specific solutions of the IKP by an analytical method is possible for a RS with number of DoF not exceeding 6.If the system has a greater number of joints (for example the one presented in [8]), using this method leads to the infinite number of solutions, as an attempt is made to solve a system with n (n> 6) unknown variables using only 6 equations.Moreover, since the kinematic equations are nonlinear, to obtain specific solutions, even for 6-joint RS, it is required that its construction meet certain criteria.
For example, the axes of a part of adjacent joints must be parallel or perpendicular to each other.In general, for a system with 6 joints it is impossible to guarantee analytic solvability.Thus, it should be noted that the analytical method of solving the IKP has a limited field of application.For complex RS, where there are no such structural features [9], alternative methods of IKP solution should be applied [10 -13].
There is another feature of analytical methods for solving the IKP, called multiple solutions.When solving kinematic equations for a RS with a three-dimensional working space using these methods, in the end, several equivalent alternative solutions can be obtained.The ambiguity of the proposed positioning is explained by the presence of redundant DoF in the RS.These DoF make equal positioning of the end joint of the RS possible via several physical system configurations.
This situation in the concept of the analytical method leads to the fact that when solving certain kinematic equations, the values of the unknown angles can be expressed only as the values of the arguments of some trigonometric function with a known value.This fact leads to ambiguity.In particular, for a RS with 6 DoF for each target position can exist up to 16 alternative IKP solutions.

Multiple analytical solution
In presence of multiple solutions for some RS, it seems obvious that, depending on several factors, various solutions may be the most preferable.These factors, in particular, are: the shift of the positions of the joints, the presence of obstacles, the time of transition to an updated position and an energy consumption.Thus, random selection of some IKP solution is inexpedient, and the development of algorithms for finding optimal solutions that take into account various additional factors is a promising and urgent task.
In order to identify the key factors for this task it is necessary to analyze each of them.The causes of their occurrence, the degree of influence on the quality of the IKP solution, as well as the existence of an interrelation with other factors were researched.
When investigating the presence of obstacles, firstly it should be mentioned that the obstacles undoubtedly have an extremely high degree of influence on the quality of any proposed solutions to the IKP, since they are taken into account not at the stage of formation of the solution, but only after it.Thus, obstacles in essence are nothing but external constraints for RS.
Unfortunately, the obstacles from the viewpoint of kinematics are an absolutely unpredictable factor, and therefore its use goes beyond the problem of mechanical motion.Taking into account that such "external" constraints do not have interrelation with other factors of quality of IKP solutions, the obstacles were not chosen as a key factor, and are not further considered in the work.
Another factor is energy consumption, the causes of which are associated with a very high share of energy attributable to mechanical motion, or rather to a shift of the position of the RS joints.At the same time, the amount of consumed energy can be unstable, since energy costs fall not only on functioning of the propulsion devices, but may largely depend on the load value.Thus, the energy consumption function can be generally represented as: where F is a certain function, M is the value of the current load, R is the shift of the position.The presence of a direct relationship between the magnitude of the joints shift and the amount of used energy, was also reflected in the formula above.
Further, a study of the time consumption factor was made, the occurrence of which is associated with the structure of motion devices, which require a certain amount of time to perform some movement.The most important parameter of this type of device in this case is the rate of rotation, which mainly characterizes the time spent on carrying out a certain movement.Thus, the function, determining time consumption in general form can be represented as follows: where F is a certain function, R is the shift of the position, T r is the response time of the motion device.It should be noted that the time consumption dependence on the magnitude of the shift is direct, although it can have a nonlinear view.The influence of this factor on the quality of IKP solutions can vary greatly depending on the task, but in any case, it is essential.The influence of the shift factor of the joint positions, the occurrence of which is determined directly by the presence of mechanical motion, was investigated.At the same time, taking into account the above dependences (9, 10), it can be concluded that this factor has a certain degree of influence, both on the energy consumption and on time costs.A shift increasing leads to increase of other factors.Thus, in this study, the key factors in assessing the quality of the IKP solution were energy and time costs, depending on the values of the shift of the joints.
The next stage is the formation of a total cost index for each joint separately.The expression reflects both the magnitude of the shift and the influence of the energy and time consumption factors: where e is the total cost index, R is the position shift, k E is the energy consumption factor, k T is the time cost factor.Cost factors should be calculated for each specific RS, for this purpose a specific type of energy and time consumption functions or an empirical estimate of their values can be used.Moreover, depending on the current target priorities, the influence of certain factors will be more or less significant, therefore, additional "importance" indices should be introduced, thus the expression (11) will take the following form: where β E is the energy consumption impact factor, β T is the time cost impact factor.
Based on the research, an algorithm was developed to find optimal solutions for the IKP using the analytical approach.The algorithm is shown in Figure 1.
This algorithm receives information about all proposed solutions of the IKP, some of which may not satisfy the structure features of the RS, thus, at the first stage, the elimination of unacceptable solutions is implemented.Each proposed solution is considered separately: first, the shift of all joints of the system is calculated relatively to their current positions.Then, each joint is checked, whether the obtained shift value satisfies the allowable interval for the given joint.If this condition does not satisfy at least one of the joints, the current IKP solution is rejected as unacceptable.
Then the second key step of the algorithm is executed, which considers all the solutions that have passed the test for compliance with the constraints of the RS.Similar to the previous stage, each solution is considered separately: first of all, for each of the links the value of the total cost index is calculated in accordance with (12).The total cost index is then calculated for the whole solution, by summing the total cost indices for the individual joints.
After these calculations were carried out for all feasible solutions, the optimal solution of the IKP is defined as the solution with the minimum value of the total cost index.

Conclusion
The paper discusses a new algorithm for improving the quality (energy efficiency) of a RS using the modification of the selection process among multiple solutions using an analytical approach to solve the IKP.
Further research will involve series of practical experiments to evaluate the effectiveness of the developed algorithms on a number of RS, including anthropomorphic robots and multi-joint manipulators [14][15][16].
The reported study was funded by RFBR according to the research project №17-58-04110_Bel_mol_a and by BRFFR according to the research project №F17PM-035.