PHYSICAL THERAPY ROBOT AND METHOD
Patent Information
- Application Number
- NL2038916
- Authority / Receiving Office
- NL · NL
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-10-24
- Publication Date
- 2026-05-26
- Estimated Expiration
- 2044-10-23
AI Technical Summary
Current rehabilitative robots lack the ability to adjust movements in real-time based on accurate musculoskeletal models of the human body, particularly for musculoskeletal injuries, due to computational complexity, and do not consider specific joint properties, leading to potential tissue damage and inefficiency in therapy delivery.
A framework for real-time trajectory planning and optimization using high-fidelity musculoskeletal models decoupled from human skeletal dynamics, incorporating tissue loading maps and efficient numerical methods to generate safe and effective rehabilitation movements.
Enables real-time, patient-aware rehabilitation trajectories that minimize tissue strain and ensure safe human-robot interaction by integrating musculoskeletal models into robot control systems, allowing for efficient and safe therapy delivery.
Smart Images

Figure 00000035_0000 
Figure 00000035_0001 
Figure 00000036_0000
Abstract
Description
FIELD OF THE INVENTION The present invention is in the field of methods for robots interacting with humans, more specifically physical therapy robots. The robots may be used for strengthening muscles, and for recovery of patients, in particular for recovery of tendons attached to muscles around a joint. The invention further relates to a robot system, a data-processing apparatus, and a computer-readable storage medium. BACKGROUND OF THE INVENTION The present invention is in the field of robots interacting with humans, more specifically physical therapy robots. The robots may be used for strengthening muscles, and for recovery of patients, in particular for recovery of tendons attached to muscles around a joint. Injuries affecting the musculoskeletal system are becoming prominent in our society due to various factors such as population aging, strenuous manual labor, and sports. At the forefront, disorders impacting the shoulder and the rotator cuff are particularly common, as studies have reported their prevalence to be as high as 22% in the general population. Overall, the demand for therapy and rehabilitation is expected to grow, exacerbating the lack of trained therapists who must invest considerable expertise and time for every patient. Robotic technology can assist in therapy, reduce the burden on physiotherapists and healthcare systems, and introduce new tools to monitor and improve rehabilitation outcomes. While rehabilitative robots have proven quite effective for post-stroke rehabilitation and gait assistance, applications to treating musculoskeletal injuries are still very limited. Robots must be aware of injury risks to operate autonomously or in collaboration with therapists. Such awareness requires deeper insights into the complex human musculoskeletal mechanics. Considering the control of a rehabilitative robot in isolation guarantees smooth trajectories, and therapeutic movements can be learned from human demonstrations. However, neither solution considers the patients tissues when generating the robots motion. A reasonable strategy to address this gap is to leverage human (musculoskeletal) models and incorporate them directly into the robots control loops. Musculoskeletal modelling has progressed greatly over the past decades, allowing researchers to estimate the activities of individual muscles involved in producing movement, and to perform predictive simulations of human motion. In the context of robotic control, biomechanical models have been used to quantify assistance needed by the human, reduce human metabolic cost in walking-assistive devices, or plan the search-and-rescue robotic operations and the motion of additional robotics limbs. These works showed the importance and utility of including detailed models of the human body in robot planning and decision-making. However, due to the costly computations required, they could be tested only in computer simulations or employed human models in their pipelines offline. As such, researchers often resort to simplistic kinematic models to monitor human parameters in real-time orwhen developing controllers for physical human-robot interaction. Although the use of models that faithfully capture human joints motion and muscles actions offers substantial promise for bridging the gap between safety and therapy delivery (e.g., by estimating tissue loads from external measurements), especially when targeting rehabilitation from musculoskeletal injuries, solutions are not available. Currently available is to integrate information coming from a detailed model of the human shoulder to achieve offline graph-based planning for safe rehabilitation trajectories by constructing strain-maps that captures the relationship between human pose and induced strain (i.e., load) on the rotator cuff tendons. An example is NL2028669 (B1) which discloses a physical therapy apparatus, in particular an apparatus for passive or active exercising. The disclosure relates to a physical therapy robot for a mammal, a method of compiling at least one tissue function map ofjoint muscles or tendon of said mammal, a method of providing a trajectory of a body part of said mammal, and a physical therapy robot computer program comprising instructions for operating the physical therapy robot. An accurate model of the human musculoskeletal system has never been used to adjust robotic rehabilitative movements in real-time through predictive simulations of human tissue loading due to the inability to reduce the calculations such that the task may be performed in real-time. Therefore, a disadvantage of the disclosed physical therapy apparatus is that the apparatus cannot be operated in real- time. A further disadvantage of the disclosed apparatus is that the selection of how to get to a trajectory or close to optimal trajectory in real-time remains undisclosed. Yet another disadvantage of the disclosed apparatus is that the trajectory that is generated does not consider specific inertial properties of the joint of the mammal. SUMMARY OF THE INVENTION An object of the invention is to overcome one or more of the disadvantages mentioned above. In general, a framework for planning and / or replanning human motion in real-time within the biomechanical landscape combining a tissue loading map with movement dynamics for improved assistance or therapy is invented. To improve control and navigate biomechanical landscape during motion in real time, tissue loading behaviour is decoupled from human skeletal dynamics using a high-fidelity musculoskeletal model. To generate human like movement optimal control is used, tissue load evolution and human accelerations are combined in a cost function. To achieve real-time performance and / or to reduce processing requirements, differentiation of the musculoskeletal model with efficient numerical methods are combined for optimal or at least improved control. To extract internal tissue load from observed movements and / or interaction forces, high-fidelity state-of-the-art musculoskeletal models are employed. A requirement for an autonomous and / or assistive system such as the inventive method and / or system may be: any hardware that can estimate the current human poses and interaction forces and simultaneously impose, resist and / or support a movement on the human body. Additional hardware, such as EMG sensors, IMUs, cameras, ultrasound, etc., that may provide additional information regarding the human state may be included. According to a first aspect of the invention, a method for trajectory optimization for a robot attachable to a mammal for collaborating with a joint of the mammal, comprising the steps of: obtaining a musculoskeletal model of the joint; obtaining a tissue-loading map of the joint, wherein the tissue-loading map is derivable from the musculoskeletal model; receiving a current spatial pose of the joint; receiving a destination spatial pose of the joint; determining a trajectory from the current spatial pose to the destination spatial pose based on the musculoskeletal model and the tissue-loading map. The robot typically comprises a robot arm. The robot typically has two ends of which one end is fixed and may be used as mechanical reference, and of which another end is attachable to the mammal. The end attached to the mammal typically comprises a shape adapted to cradle a part of the mammal, such as a limb. The mammal typically comprises a body, typically acting as mechanical reference as well. Alternatively, the body, a part of the body, or another part of the limb may be attached to the end of the robot providing a mechanical reference. The joint is typically between the body, the part of the body or another part of the limb, and the part of the mammal attached to the robot, such as a limb or a distal end of the limb. The mammal is typically a vertebrate mammal, such as human. The joint of a mammal typically comprises at least the following elements or structures: bones, muscles, ligaments, tendons, and cartilage. The joint of the mammal typically comprises two or more bones being moveable relative to each other. The joint is moveable through muscles being activated. The activated muscle typically pulls through tendons on the two or more bones for stabilizing or moving the two or more bones relative to each other. The activated muscle typically results in the two or more bones of the joint changing in pose, position, or orientation relative to each other. The interaction between the different elements of the joint is modelled in a musculoskeletal model. The musculoskeletal model typically translates a pose, a position, or an orientation of the joint to a tension of the muscles, ligaments, and / or tendons; or vice versa. Skeletal dynamics can be obtained from the musculoskeletal model in an algorithmically differentiable form via e.g. OpenSimAD. Determining the trajectory from the current spatial pose to the destination spatial pose may be based on the skeletal dynamics and the tissue-loading map. The robot when attached to the mammal collaborates with the joint of the mammal. Collaborating with the joint may comprise helping, assisting, supporting, or guiding a part of the mammal whereto the robot is attached such that the joint changes a pose, a position, or an orientation in a predetermined manner. The predetermined manner is typically such that structural damage in the joint or elements of the joint is prevented. The predetermined manner may even be such that the joint or elements of the joint are stimulated for recovery, rehabilitation, recuperation, regeneration, healing, and / or rejuvenation. The predetermined manner may even be such that the joint or elements of the joint are assisted, or supported in their change of the pose, the position, or the orientation. The tissue-loading map may be a map or set of information providing the loading of tissue when the joint is in a particular pose, position, or orientation. The tissue-loading map may be viewed as a large database wherein the particular pose, position, or orientation is the search parameter and the found information is the tissue- loading. The tissue-loading may comprise the loading of a particular muscle, a set of muscles or all muscles in the musculoskeletal model. The tissue-loading may comprise loading results of other tissues or elements of the joint, such as bones, ligaments, tendons, and cartilage. Especially ligaments and tendons may be included in the tissue-loading map. The tissue-loading map is derivable from the musculoskeletal model. Deriving a tissue-loading map from the musculoskeletal model typically requires extensive computing and long computing times. The method receives a current spatial pose of the joint and a destination spatial pose of the joint. As a next step of the method, the trajectory is determined from the current spatial pose to the destination spatial pose. The steps of receiving a current spatial pose of the joint and subsequently determining a trajectory or updated trajectory for the robot has to be done quick enough for the mammal to truly help, guide or assist the mammal. This may be typed as real-time updating the trajectory based on the received current spatial pose. Real-time in the context of the application may be updating the trajectory once per 500 ms, preferably 300 ms, more preferably 200 ms, most preferably 100 ms. It is noted that the destination spatial pose may also change during the trajectory. Current computing power does not suffice for real-time evaluation of even simple musculoskeletal models, let alone more complex and elaborate models for more complexjoints. It is an insight of the inventor that the method becomes real-time applicable, thus suitable for a robot attached to a mammal for collaborating with a joint of the mammal, when a tissue-loading map of the joint is obtained and used in determining the trajectory. The application of the tissue-loading map in determining the trajectory has the technical effect of decreasing the calculation time and therefore allows the method to be used for a robot attached to a mammal for collaborating with a joint of the mammal. According to another aspect of the invention, a robot system comprising: a robot attachable to a mammal for collaborating with a joint of the mammal; and a controller arranged for executing any of the preceding methods and controlling the robot based on the trajectory. The robot system provides the advantages also mentioned for the other aspects of the invention, specifically those provided by the method for trajectory optimization. In an embodiment of the robot system, the robot comprises a robot arm typically attached to the mammal via a donning part of the robot arm, wherein preferably the donning part dons a limb of the mammal. According to another aspect of the invention, a data-processing apparatus comprising a processor configured for carrying out any of the mentioned methods. The data-processing apparatus provides the advantages also mentioned for the other aspects of the invention, specifically those provided by the method for trajectory optimization. According to another aspect of the invention, a computer-readable storage medium comprising instructions which, when executed by a computer, cause the computer to carry out any of the mentioned methods. The computer-readable storage medium comprising instructions provides the advantages also mentioned for the other aspects of the invention, specifically those provided by the method for trajectory optimization. According to another aspect of the invention, a computer-readable storage medium comprising data comprising a musculoskeletal model of a joint of a mammal, and a tissue-loading map of the joint, wherein the data is for use in any of the mentioned methods, or by any of the robot systems. The computer-readable storage medium comprising data provides the advantages also mentioned for the other aspects of the invention, specifically those provided by the method for trajectory optimization. In an embodiment of the computer-readable storage medium comprising data, the tissue-loading map is advantageously derived from the musculoskeletal model. DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS In an embodiment of the method, determining a trajectory comprises: defining an optimal control problem; and selecting the trajectory based on solving the optimal control problem. Defining the optimal control problem in combination with using the musculoskeletal model as well as the tissue-loading map provides the advantage of being solvable in real-time. In an embodiment of the method, the musculoskeletal model is advantageously differentiable for further reducing or simplifying the calculation or determining a trajectory. In an embodiment of the method, the optimal control problem is advantageously continuous in time for further simplifying the calculation or determining a trajectory. Although the simplified optimal control problem is continuous in time, it may be discretized for advantageously making the discretized simplified optimal control problem solvable in a reduced amount of time. In a preferred embodiment of the method, the musculoskeletal model is differentiable, and the optimal control problem is continuous in time for further reducing or simplifying the calculation or determining a trajectory. In a further embodiment of the method, solving the optimal control problem comprises: defining a cost function; and deducing the trajectory based on calculating a minimum of the cost function while respecting also a set of constraints. A cost function is an advantageous method or tool for quantifying or valuing one trajectory relative to another trajectory. Next to quantifying the trajectory with the cost function, the trajectory should also adhere to some constraints, such as for example the at no point in time during the trajectory, the tension on any of the structures of the joint exceeds a certain strain. Other examples of a constraint may be a minimum tension in a particular structure for advantageously achieving for example a training effect in the structure of the joint, a particular pose or pose area that is excluded, or maximum acceleration of the joint or elements of the joint. The combination of a cost function with a set of constrains therefore provides the advantage of not exceeding particular strains while having an optimal path or trajectory. Another example of a constraint may be that the trajectory is coherent with a specific set of differential equations specifying the dynamics of the joint. A possible constraint may be to limit a force or a torque acting on the model. Another possible constraint is a collocation constraint. A direct collocation method may be used to solve or determine the trajectory, typically typed as a numerical trajectory. The collocation method may for example use a trapezoidal collocation and / or a Hermite-Simpson collocation. Whereby it is noticed that the Hermite-Simpson collocation is more commonly used for solving the current trajectory problem. In an embodiment of the method, the cost function advantageously minimizes the strain on the joint for preventing for example tissue damage in any of the structures of the joint. In an embodiment of the method, the cost function advantageously reduces acceleration of the joint for preventing for example tissue damage in any of the structures of the joint. In an embodiment of the method, the cost function advantageously converges towards the destination spatial pose such that the trajectory comes to the end pose or position advantageously for example preventing an endless loop. In an embodiment of the method, the cost function advantageously minimizes the strain on the joint, advantageously reduces acceleration of the joint, and / or advantageously converges towards the destination spatial pose or any combination for providing an advantageous set of constrains. In a further embodiment of the method, x defines the current spatial pose of the musculoskeletal model; xd defines the destination spatial pose of the musculoskeletal model; 0 defines the strain on the joint, preferably an element of the joint; Q is a positive semidefinite matrix; L,, : a(x) defines a strain cost function based on the instantaneous strain; Lace : a'cTQa'c defines an acceleration cost function based on the accelerations; Ld = (x xd)TQ(x xd) defines a distance cost function based on the distance to the destination pose; and the cost function is a combination of the strain cost function, the acceleration cost function, and the distance cost function. The cost function advantageously balances different cost functions for taking into account different interest. In a preferred embodiment, the combination of the different cost functions is a weighted addition. A weighted addition is an advantageously simple way of combining several interests. In an embodiment of the method, the strain cost function is based on the tissue-loading map providing the advantage of reducing the calculations per iteration of the strain cost function. Reducing the calculations advantageously reduces the number of calculations necessarily done in real-time. In a preferred embodiment, the strain cost function is not directly using the musculoskeletal model stipulating the reduction in calculations and subsequently reducing the number of calculations necessarily done in real-time. In a further embodiment of the method, the acceleration cost function is advantageously based on the musculoskeletal model. In an even further embodiment, the acceleration cost function is advantageously not based on the tissue-loading map. In a further embodiment of the method comprises receiving a maximum tissue load threshold, wherein the trajectory causes the joint not to exceed the maximum tissue load threshold. Introducing a maximum tissue load threshold may advantageously prevent overloading, or damage to the joint, more specifically one or more elements of the joint. In a further embodiment of the method comprises receiving a minimum tissue load threshold, wherein the trajectory causes the joint not to subceed the minimum tissue load threshold. The minimum tissue load threshold causes a minimum of stress in the joint, more specifically one or more elements of the joint. The minimum of stress advantageously makes sure that a training effect may be achieved for the joint, or one or more elements of the joint. In a further embodiment of the method comprises receiving a terminal condition, wherein the terminal condition defines when the optimal control problem terminates. The terminal condition advantageously provides a clear end condition for the method. In a further embodiment of the method, the terminal condition is advantageously defined as an acceptable or maximum deviation, or deviation threshold of the destination pose. In an embodiment of the method, determining a trajectory comprises: determining a trajectory segment based on the musculoskeletal model; determining a segment load based on the trajectory segment and the tissue-loading map; and evaluating the trajectory segment based on the segment load and the maximum tissue load threshold. Determining a trajectory segment splits the trajectory in smaller segment for advantageously making the calculative load manageable or more manageable. The segment may be modelled with a lower polynomial while still being accurate enough for the purpose. The lower polynomial modelling the segment reduces, or greatly reduces, the calculative load. The degree of the polynomial of the segment may be selected as three for approximating the evolution of the state x in every specific segment. If the segments are advantageously selected short enough, the trajectory may be considered consistent or substantially consistent typically without the need to integrate the dynamics numerically preventing costly calculations. The segments may be selected or chosen to be of a particular length in time or distance. Instead of the integration, only a set of collocation points may be used to make sure that there the equation of motion (i.e., the dynamics of the joint orjoint element) is perfectly matched. In an embodiment of the method, the robot comprises a robot arm arranged for attaching to the mammal for collaborating with the joint of the mammal. The end of the robot arm typically comprises a donning part for donning a part of the body of the mammal, such as a human. The donning part may don a limb. In an embodiment of the method, the method advantageously comprises communicating the trajectory to the robot and / or the robot arm. BRIEF DESCRIPTION OF THE DRAWINGS The invention will be apparent from and elucidated further with reference to the embodiments described by way of example in the following description and with reference to the accompanying drawings, in which: Figure 1 shows an embodiment of a robot system according to the invention useable as a robotic physiotherapist to optimize therapeutic movements for their patients in real-time while considering tissue loading (i.e. strain) induced in the rotator cuff tendons in the shoulder. Figure 2 shows a visual representation of an embodiment of the methodology. The musculoskeletal model of the human shoulder, shown on the left, is split into skeletal dynamics (comprising a musculoskeletal model) and tissue loading information (named strain map or tissue loading map). An optimization problem may compute the rehabilitation movement leveraging knowledge that comes from the human model or musculoskeletal model, and its output is transformed into the equivalent reference for the robotic controllers or robot system to track. The robots feedback is used to close the sensing loop on the current human status, closing the control loop. Figure 3 shows an overview of the coordinate systems of an embodiment for the robot system interacting with a shoulderjoint. The shoulder frame (green) originates in the center of the glenohumeral joint. The glenohumeral joint DoFs (PE, SE, and AR) are shown in red. The elbow frame (blue) originates in the center of the elbow, and a fixed transformation relates it to the robots EE frame (pink). Figure 4 shows an effect of tuning the cost function parameters on the optimal trajectories for the human DoF. In blue, the influence ofWo on the optimal path, wherein Wo may be defined as weighting factor for the cumulative strain along the trajectory. ln green, the effect of normalizing Ld when weighting the distance to the desired final pose. To guarantee slow motions the parameter Wacc was fixed to 10, wherein Wacc may be defined as weighting factor for the instantaneous human accelerations during the movement. Figure 5 shows a human trajectory visualized on the corresponding strain map or tissue-loading map, where optimized path or trajectory connects the various human poses, minimizing the strain the shoulder tendon will encounter. The corresponding pose of the human subject is shown at the different desired positions in the motion. Figure 6 shows a cartesian coordinates of the robotic EE during the experiment. The second graph highlights the effect of using the personalized musculoskeletal model to inform the gravity compensation of the human arm: the reference given to the controller (solid black) makes it so that the current position (dashed) tracks the real optimal one (solid blue). Figure 7 shows an embodiment of an online trajectory optimization allowing to account for sudden variations in the strain level. Shown is the effect of variations in the strain maps induced by different muscle activation profiles (green: decreasing ramp, white: step) as compared to constant activation levels (in blue). Large activation steps are used here for ease of visualization. Figure 8 shows an embodiment of an online trajectory optimization allowing to account for sudden variations in the strain level. Shown here is the effect of successive rapid variations in a (fabricated) sudden change on the optimal trajectory. Figure 9 shows a different activation causes different strain landscapes for the supraspinatus tendon. Left: no activation - right: activation is increased, causing the lower-strain path to be different and leading the human through different shoulder poses. Figure 10 schematically shows an embodiment of a computer program product, computer readable medium and / or non-transitory computer readable storage medium according to the invention. The figures are purely diagrammatic and not drawn to scale. In the figures, elements which correspond to elements already described may have the same reference numerals. LIST OF REFERENCE NUMERALS DETAILED DESCRIPTION OF THE FIGURES The following figures may detail different embodiments. Embodiments can be combined to reach an enhanced or improved technical effect. These combined embodiments may be mentioned explicitly throughout the text, may be hint upon in the text or may be implicit. The invention presents a new approach where a state-ofthe-art musculoskeletal model of the human shoulder is employed to generate real-time predictive rehabilitation movements through trajectory optimization. The musculoskeletal model is embedded into the optimization pipeline, planning rehabilitation movements that can account both for human dynamics as well as for accurate physiological metrics (i.e., tendon strain in the rotator cuff). The resulting optimized trajectories may be realized by a collaborative robot arm that delivers the movement to, in this case, a healthy human subject through safe impedance control, where for example gravity compensation for the human arm can be obtained as a natural, personalized, and state-dependent output of the model itself. This allows mimicking the early stages of post-traumatic rehabilitation of the rotator cuff, where the subject does not support the weight of their own arm. Through simulations and robotic experiments, a first demonstration of planning and open-loop execution of rehabilitative trajectories was shown that assume position-dependent tendon strain. Then, a move to closed-loop execution for non-passive subject behaviourwas made, accounting in real- time for interactive patient response in terms of muscle activation. Overall, shown is the importance of including a predictive representation of the human tissue loading for safe and adaptive human-robot interaction. Il. METHODS The invention enables efficient generation of optimal,patient-aware rehabilitation trajectories for rotator cuff therapy, on the basis of a musculoskeletal model of the human shoulder (Fig. 2). The human model is decoupled into the equivalent differentiable dynamics for the skeletal system, and tendon strain behaviour as a function of the models state (through the inventive strain maps or alternatively named tissue-loading maps). The skeletal dynamics and strain maps are employed in the cost function and constraints of a trajectory optimization problem, whose output consists of the optimal human trajectories towards a given desired state. These trajectories are in this embodiment of the invention fed to a KUKA 7 iiwa LBR robot, which delivers them to the human while estimating their current pose during therapy. A. Human Musculoskeletal Model Employed is a musculoskeletal model of the human shoulder developed in the biomechanical simulation software OpenSim to inform the robots controller of the complex tissue and skeletal mechanics during its interaction with humans. This model describes the human shoulder, detailing its movement degrees of freedom (DoFs) and the musculotendinous units powering it. As stated, of interest is monitoring the injury risk of the rotator cuff muscles (i.e., supraspinatus, subscapularis, infraspinatus and teres minor), which act as stabilizers for the glenohumeral joint and are commonly involved in injuries to the shoulder. In particular, coupled is the notion of injury risk to mechanical strain, as excessive tension applied to a healing tendon could lead to re- injury. These muscles, represented as 8 elements in the inventive model, only span the glenohumeral joint, which permits mobility of the upper arm (humerus) with respect to the shoulder blade (scapula) through 3 DoFs. As such, a reduced-order model of the human shoulderwas extracted, capturing the mobility of this joint alone. The state of the resulting human model is described as: x = [PE, P'E, SE, S'E,AR,AR]T (1) where PE, SE andAR are the 3 movement DoFs (plane of elevation, shoulder elevation, and axial rotation, represented in Fig 3), and P'E, SE, and A'R are their derivatives with respect to time. The arm size and mass of the human subjects were used to personalize the models properties through the OpenSims scaling functionalities and tabulated anthropometric data. To achieve efficient computations without sacrificing model accuracy, the skeletal dynamics (i.e., how the human body moves) was decouple from the tissue mechanics (i.e., how the individual tendon strain is affected by the movement). Dependency of tissue strain on the human models state are expressed via precomputed strain maps or tissue-loading maps, so that the correlation between the tendon strain and the human models state can be efficiently taken into account. This allows to see the problem of finding good rehabilitation movements as the problem of synthesizing trajectories that keep the state of the human model in low-strain regions of the strain maps. To give an analogy, the invention may be compared to to pushing a cart on a surface where the friction between the wheels and the ground is not constant: given a model of how external forces cause the cart to move (the skeletal dynamics) and a map of the terrain (the strain maps), one wants to find how to push the cart such that energy consumption is minimized. To give another analogy, navigating around potentially unsafe movements in human rehabilitation is like the path planning of an autonomous ship in a bay where underwater reefs are present. To know which manoeuvres allow the ship to navigate safely and efficiently toward a desired position, there is a need for both a dynamic model of the vessel and a map of the underwater reefs, providing non-obvious insights about the safest path. In the inventive situation, the human shoulder dynamics play the role of the vessel, while the strain maps offer insights into what happens beneath the surface (specifically in the recovering tendons). Only by considering the two elements jointly can safe navigation be obtained. 1) Differentiable strain maps: The musculoskeletal model is used to extract quantitative information on tendon strain o, given the current length of a selected tendon |T and its slack length at rest lo: a = +! 100% Biologically, 0 is a function of the human models state and activation of the muscle attached to the tendon. The dependence on velocity may be neglected in the case of rehabilitation movements since safe rehabilitation movements need to be slow. Further, to simplify the understanding of strain level for non-expert users of the inventive system (e.g., physiotherapists and patients), 0 is charted on 2D grids where the strain percentage is visualized as a function of PE and SE, and both AR and the muscular activation a are fixed. To consider different values ofAR and a, other (pre- computed) 2D maps can be employed and envisioned. This representation allows us to target only one tendon at a time or to monitor the strain on the rotator cuff as a whole by constructing maps that consider the highest strain across all the tendons. To leverage more efficient gradient-based methods, the inventive strain maps using 2D Gaussian radial basis functions were interpolated. Through least- squares fitting, the parameter vector 7r = RNPXNG were obtain that describes the combination of the NG Gaussian functions best approximating every strain map, in terms of the Np parameters of every 2D Gaussian. 2) Differentiable skeletal model: After extracting information for the tissue mechanics from the musculoskeletal model, there is a need to account for the human DoFs and inertial properties to fully understand the effect that the human-robot interaction will have on the human skeletal system. However, detailed musculoskeletal models are normally developed to analyze human movement in silico, where real-time performances are not crucial. In this context, a main limitation of OpenSim may be its inability to provide gradients. This forced solutions to employ less efficient gradient-free optimization methods, meaning that out-of-the-box usage for these models in real-time applications has not been possible yet. OpenSimAD is employed as a tool that allows to retrieve a differentiable function from an OpenSim musculoskeletal model. OpenSimAD has been recently developed to allow efficient predictive simulations of human movement, but has not been used in time-critical applications before. In particular, the OpenSimAD pipeline is used to obtain a differentiable representation of the inventive reduced-order model of the human shoulder in terms of a set of ordinary differential equations that describe the dynamics of state x E IRNx of the multibody skeletal system, given a set of generalized forces u E RMI acting on the models DoF: x = f(96; u) (2) where Nq = 3 and Nx = 2Nq in this example. Note that this procedure guarantees that the models joint definitions will be preserved, together with personalized dimensions, mass, and inertial for every existing bone in the original model. B. Musculoskeletal-centred trajectory optimization Information from the interpolated strain maps and the differentiable skeletal model to formulate a musculoskeletal-centred optimal control problem (OCP) are combined. The solution to the OCP is the optimal sequence of controls u driving the human models state toward a desired goal pose. The resulting sequence of optimal controls and states {x*, u*} is input to the robot controller to deliver optimal rehabilitation motion to the human subject. To make sure that the output of the optimization is as easy as possible to comprehend for non-experts, trajectories that are fully contained on a strain map are planned, so that they can be readily visualized on a computer screen. As such, the controlled DoF for the human model are PE and SE, while the currentAR and activation a values are input to select the current strain map to plan onto. In the following, the key elements of the OCP (i.e., cost function and constraints) are defined that allow to set the optimality criterion with respect to which {x*, u*} are found. 1) Cost Function: The cost function is designed to capture the requirements deemed important for a safe rehabilitation trajectory: the movement should minimize the strain on selected tendons, produce low accelerations on the human body, and converge towards the desired final position. These elements are mirrored into the definition of the cost L(x(t),5c(t)), formalized as a weighted sum of the following terms: - L,, : a(x, a), accounting for the instantaneous (non-negative) strain that the selected tendon undergoes; - Lam = a'cTQla'c, accounting for the derivatives of the state variables during the motion. In particular, a positive semidefinite matrix Q1 E 1R6X6 allows us to consider only the relevant accelerations when planning on the current strain map; - Ld =Ë (x xd)TQ2(x xd), accounting for the distance to the final human model pose Xd, where do represents the distance to the desired pose at the beginning of the trajectory and normalizes the contribution of this term. Again, Q2 E 1R6X6 is a positive semidefinite matrix selecting only the relevant human DoF. In the following, reference is made to the weights of these terms as Wo, Wacc and Wd respectively (where the latter does not include the normalization by do introduced above). 2) Constraints: employed in this embodiment may be some constraints to ensure that the OCP solution can be executed safely on the human subject. Their definition and role is detailed below. - Initial condition: it may be assumed that every new trajectory {x*, u*} starts from the current state of the human model, enforcing x(t = 0) = Xinit, where the initial time is set to be 0 without loss of generality. The robots encoders are used to estimate the current state of the human subject (see Sec. II-D), which is used as the initial point for the next instance of the OCP; - Torque limits: to make sure that following the optimal trajectory does not require excessive torque to be exerted on the human DoF, a limitwas imposed to them to be constrained within relatively low bounds by requiring Umin s u(t) s umax, where um, umax e 1R3. This allows to enforce different toque limits on the various DoF accounting, for example, for the fact that torques along SE should counteract gravity; - Terminal condition: to impose an acceptable final state for the human model, prescribe was that (Xt=Tf - Xd) O (Xt=Tf - Xd) S , where Tf represents the length of the planning horizon, and @ the Hadamard product. Here E R6 is defined for every element of the state vector if reaching the final state is possible (eg. if Tf is long enough), otherwise only velocities are limited to ensure recursive feasibility by building a suitable terminal set ST C. Optimal control problem (OCP) transcription Overall, the optimal control problem that aiming to solve reads as follows: x82?) f:f L(x(t),5c(t))dt (3) subject to: x(O) x, = 0 initial state um S u(t) S un torque limits xt=Tf E ST terminal set Once defined in continuous time, it has to be effectively solved. To do so, it is cast into discrete time, transcribing the OCP into an equivalent Non-Linear Programming problem (NLP) that can be solved by structure-exploiting solvers. This may be achieved with orthogonal collocation techniques, hence approximating the state trajectories with suitable dh-order polynomial splines. The overall optimization horizon Tfmay be broken down into N intervals of equal length, and inside the generic interval [tk, tk+1] d = 3 Legendre-Gauss collocation points is selected at which the dynamics as in (2) are enforced. The resulting NLP may be implemented in Python and solved with IPOPT leveraging MA27 as a linear solver, while first- and second- order derivatives were may be provideded by CasADi and OpenSimAD. To clarify the computational advantage of using the latter, the equivalent OpenSim model was also embedded directly in the NLP, allowing CasADi to query it to retrieve the required gradients numerically. D. Human state estimation The real-time trajectory optimization formalized above continuously requires the models current state as input. This is calculated on the basis of the position and orientation of the robots end effector (EE), which can be mapped to the shoulder state x since, during therapy, the human subject may wear a brace that typically guarantees a rigid connection between their elbow and the EE, locking their elbow at 90°(see Fig. 3). An estimation of the full human pose is out of the scope, hence it is assumed for simplicity that the centre of the glenohumeral joint will be stationary during the experiments and that the orientation of the human torso is fixed or substantially fixed. Under these conditions, typically monitored during the experiments, it is possible to reconstruct the shoulder state through the robots encoders. The orientation of the human elbow expressed in the reference frame of the human shoulder is: ÎËRezb = ÎËRbasebaÎËÊEEÛËReLb, where the first and last rotations are known and fixed, while baËËÊEb(t) can be estimated through the robots fon / vard kinematics. Moreover, following the definition of the glenohumeral DoF in the human model, it can be written as: 51,129, = Ry(PE)Rx(SE)Ry(AR). (4) Estimating the human pose solely from the EE orientation is possible but proves to be more subject to noise than leveraging the EE position müßtEU) (likely because the upper arm-brace alignment allows a bit of play). Thus, first obtain are estimates PË and ËË from baËËpEE, and then estimate ÂÎ? through (4): A ble-* (t)ba??? ß = SEER llb:(0b::ll PF = atan2(x,z) (5) ËË = arccos(ß - [0 1 0]Tx) where is the known position of the center of the glenohumeral joint. Velocities of the generalized DoF in the human model are estimated through the body twist of the last link of the robot, obtained through the robots Jacobian: EEVEE = [EEÜËE EEôäEjTeiRô. (6) Following these assumptions, the velocities for the human shoulder model can be retrieved as follows: (??) = withw = @ = _ÎËwËzb with Shwelb = ng,p;j:%::§§vgjb (7) (AT) =_æ where Ltot = Lhum + öL is the distance between the centre of the glenohumeral joint and the robots EE, Shpelb and ShVelb are the position of the human elbow and its velocity expressed in the shoulder frame, and spein and svein the equivalent quantities expressed in the rotated shoulder frame in which SE is defined. An exponential filter with 2 Hz bandwidth may be applied on the estimated variables to guarantee noise rejection, commonly compatible with slow human movements. E. Robot control and model-based gravity compensation Apart from being used for human pose estimation, a key purpose of the robotic arm typically is to deliver therapeutic motion to the human subject based on the continuously optimized trajectory. Mapping the optimal trajectory x* typically results from (3) into the corresponding robots EE reference pose: 2% = batiRshRy(PEURx(5E*)Ry(AR*)eleEE (8) bail-:55}: = baÊÊPaH + baÊÊËEEeÎËPGH (9) The reference poses are computed coherently with the frequency of the NLP solution, meaning that a new reference pose is commanded to the robot every Tf / N seconds. A Cartesian impedance controller, running at 200 Hz, tracks the desired EE poses, and its stiffness and damping parameters are tuned experimentally. However, non-negligible errors may be observed in the tracking of the height of the EE, since the commanded trajectory does not carry information about the dynamic interaction between the human arm and the robot (in particular for what concerns human mass and inertia). To remedy this, the vertical reference may be corrected by integrating the other output of the NLP, i.e. the generalized torques u* (and, more specifically, the one necessary to track the vertical movements along the SE DoF: u*,SE): in; =prE +m (10) where KZ is the stiffness of the impedance controller along the vertical axis. As demonstrated in the experiments, this correction may re-adjust the robots vertical reference, achieving the desired height even when fully supporting the human arm. Note that, through (10), feedfonNard torque is added in the controller without sacrificing the safe human-robot interaction the impedance controller guarantees, improving over other arm known compensation methods. F. Experimental design Two scenarios are considered, both in simulation and on the real robot, to test the inventive approach. In the first, the human is fully passive, meaning that the strain on the rotator cuff tendons is purely position-dependent. Maximum rotator-cuff tendon strain was aggregated in a single strain map, and theAR DoF were locked, so that the complete rehabilitation movement towards the final state% can be optimized as once and then executed. The time horizon of the optimization may be fixed to Tf = 5 seconds and divided into N = 50 equal intervals, and simulation may be used to determine the cost function weights that will be used on the real human-robot experiment. The second scenario introduces online modifications to the strain maps due to active human response during therapy. In particular, there is an interest in how specific muscle activations can be accounted for in the inveitve pipeline. As muscle activation modifies tendons strain, the inventive trajectory optimization must run in a receding-horizon fashion. As such, a shorter planning horizon is considered that allows to compute and update the optimal trajectory in real-time (Tf = 1 second, N = 10 intervals). Simulation is used to demonstrate the reactiveness of the trajectory optimization to different strain map variations, and the parameters used there are then demonstrated on the real robot, showing how therapy for the supraspinatus tendon can be adjusted on the fly when the corresponding muscle is activated. This particular tendon is selected as it is one of the most commonly injured. Since a standardized and repeatable approach is wanted to experimental evaluation of the proposed method, muscular activations through electromyography is not measured. Instead, these activations are emulated and their effect assessed on tendon strain using OpenSim. This can also be done with a real-time algorithm for estimating human muscle activations through a biomechanical model (such as the inventive rapid muscle redundancy (RMR) solver). Since electromyography comes with time-consuming equipping and calibration procedures and potential reliability issues, employing model-based muscle activity estimation would also be more practical for use in real physiotherapy. A healthy human subject acted as a patient in the real-world experiments. The subject wore a rigid thermoplastic brace, mounted to the robot EE (see Fig. 3), and was instructed to keep a constant pose for their torso with respect to the robot base, satisfying the assumption of a stationary glenohumeral joint centre employed in the models state estimation. Computations were performed on a Dell Latitude 7420 laptop with an i7-1185G7 processor, interfaced with a dedicated workstation running the impedance controller. III. RESULTS A. Passive human subject 1) Simulation: trajectory optimization was run in simulation to determine the best relative weights for this scenario. In particular, Fig. 4 visualizes the trajectory found with different weight combinations in the cost function. Further, a fixed-strain- map scenario was selected to allow direct optimizing the full trajectory and simulate its execution in open-loop (without accounting for the dynamics of the human arm). In these conditions, the full terminal constraint allows the optimization to converge even when Wd = 0, traversing low-strain regions, so the corresponding weights were used on the robot. Relying only on the terminal constraint is not feasible when variations in the strain map can happen. Therefore, it was also investigated for the case where wd $ 0, and the effect of normalizing Ld on the optimal trajectory (green trajectories in Fig. 4). Table I reports the average computation times for solving (3) if the system dynamics are retrieved numerically from a normal OpenSim model or through OpenSimAD. TABLE I: COMPUTATION TIMES: A) PASSIVE SUBJECT, B) ACTIVE SUBJECT 2) Demonstration with Real robot: select are a few target poses to which the robot will drive the human subject. Fig. 5 visualizes the optimal trajectories on the strain map and the target poses the human subject achieves. In Fig. 6, shown is the Cartesian reference and the actual EE poses across the duration of the experiment. Note in particular the tracking performance along the vertical axis, guaranteed by (10). B. Active human subject 1) Simulation: Here, the reactiveness and adaptability of the inventive control scheme is investigate when the strain maps change. To make the changes in muscle activity and thus strain map more drastic and challenging for optimization, opted is to show this functionality in simulation. First shown is how varying levels of muscle activation modify the optimal paths between two poses (Fig. 7) and then this is brought to the extreme by considering a simulated case in which sudden changes in the maps are introduced (Fig. 8). Also, these experiments were run both with OpenSimAD and without, the resulting computation times are summarized in the second row of Table |. 2) Real-Time Trajectory Optimization on Real Robot: In this final experiment, the inventive trajectory optimization is used online, closing the loop between sensing, trajectory planning, and control, to explore how information about human muscle activation produces different rehabilitation trajectories. The subject performed the same movement multiple times, during which the strain map varied, mimicking the response due to (time-dependent) muscle activation. In Fig. 9, shown is how the supraspinatus muscles lowest and highest activation levels affected the trajectory that the robot imposed on the human subject. IV. DISCUSSION Demonstrated is that the framework or embodiment of the invention allows to plan and execute robotic rehabilitation trajectories while accounting for musculoskeletal metrics and being reactive to changes that are introduced by the human neuromotor system (e.g., muscle activation or variations along the axial rotation DoF). In the very early stages of rehabilitation, where the patient can be assumed to be fully passive, the inventive approach can guide a patient effectively in exercises aiming at maximizing their shoulder range of motion while protecting them from excessive tendon strain in the rotator cuff (Fig. 5). Accommodating for a more complex scenario where varying muscle activation requires continuous replanning of the human trajectorywas also possible (Fig. 9), thanks to the novel way in which the human model was embedded into the control algorithms. It was proven that resorting to a differentiable model for the human skeletal dynamics (through OpenSimAD) enables real-time computations in the range of 10 Hz, while including directly an equivalent OpenSim model in the inventive pipeline was about 100 times slower (Table |). Beyond the significant computational improvements, the results show that embedding a detailed model of the human musculoskeletal system in the controller has the potential to improve physical HRI in the context of rehabilitation and beyond. For example, it can unlock the design of controllers, which can monitor musculoskeletal quantities that even experienced therapists lack access to. V. CONCLUSION A novel approach to physical human-robot interaction is presented that leverages musculoskeletal-centred trajectory optimization to plan and execute rehabilitation trajectories for a human on a real robot, leveraging a personalized model of the subject. Human movements could be generated online, accounting for strain in the rotator cuff tendons, as opposed to previous robotic approaches to shoulder therapy that have not considered biomechanical metrics. In the fields of computing and computer vision, pose (or spatial pose) typically represents the position and orientation of an object, usually in three dimensions according to Wikipedia. Figure 10 schematically shows an embodiment of a computer program product 1000, computer readable medium 1010 and / or non-transitory computer readable storage medium according to the invention comprising computer readable code 1020. The compounding system typically comprises a controller arranged for executing one or more of the methods as specified throughout the description and claims as typically coded in software. It will also be clear that the above description and drawings are included to illustrate some embodiments of the invention, and not to limit the scope of protection. Starting from this disclosure, many more embodiments will be evident to a skilled person without departing from the scope of the invention as set forth in the appended claims. These embodiments are within the scope of protection and the essence of this invention and are obvious combinations of prior art techniques and the disclosure of this patent. Devices functionally forming separate devices may be integrated in a single physical device. The term substantially herein, such as in substantially all emission or in substantially consists, will be understood by the person skilled in the art. The term substantially may also include embodiments with entirely, completely, all, etc. Hence, in embodiments the adjective substantially may also be removed. Where applicable, the term substantially may also relate to 90% or higher, such as 95% or higher, especially 99% or higher, even more especially995% or higher, including 100%. The term comprise also includes embodiments wherein the term comprises means consists of. The term "functionally" will be understood by, and be clear to, a person skilled in the art. The term substantially as well as functionally may also include embodiments with entirely, completely, all, etc. Hence, in embodiments the adjective functionally may also be removed. When used, for instance in functionally parallel, a skilled person will understand that the adjective functionally includes the term substantially as explained above. Functionally in particular is to be understood to include a configuration of features that allows these features to function as if the adjective functionally was not present. The term functionally is intended to cover variations in the feature to which it refers, and which variations are such that in the functional use of the feature, possibly in combination with other features it relates to in the invention, that combination of features is able to operate or function. For instance, if an antenna is functionally coupled or functionally connected to a communication device, received electromagnetic signals that are receives by the antenna can be used by the communication device. The word functionally as for instance used in functionally parallel is used to cover exactly parallel, but also the embodiments that are covered by the word substantially explained above. For instance, functionally parallel relates to embodiments that in operation function as if the parts are for instance parallel. This covers embodiments for which it is clear to a skilled person that it operates within its intended field of use as if it were parallel. Furthermore, the terms first, second, third and the like in the description and in the claims, are used for distinguishing between similar elements and not necessarily for describing a sequential or chronological order. It is to be understood that the terms so used are interchangeable under appropriate circumstances and that the embodiments of the invention described herein are capable of operation in other sequences than described or illustrated herein. Thus, these terms are not necessarily intended to indicate temporal or other prioritization of such elements. The devices or apparatus herein are amongst others described during operation. As will be clear to the person skilled in the art, the invention is not limited to methods of operation or devices in operation. It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. Use of the verb "to comprise" and to include, and its conjugations does not exclude the presence of elements or steps other than those stated in a claim. Also, the use of introductory phrases such as at least one and one or more in the claims should not be construed to imply that the introduction of another claim element by the indefinite articles "a" or "an" limits any particular claim containing such introduced claim element to inventions containing only one such element, even when the same claim includes the introductory phrases "one or more" or "at least one" and indefinite articles such as "a" or "an." The article "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the device or apparatus claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage. The invention further applies to an apparatus or device comprising one or more of the characterising features described in the description and / or shown in the attached drawings. The invention further pertains to a method or process comprising one or more of the characterising features described in the description and / or shown in the attached drawings. It will be appreciated that the invention also applies to computer programs, particularly computer programs on or in a carrier, adapted to put the invention into practice. The program may be in the form of a source code, a code intermediate source and an object code such as in a partially compiled form, or in any other form suitable for use in the implementation of the method according to the invention. It will also be appreciated that such a program may have many different architectural designs. For example, a program code implementing the functionality of the method or system according to the invention may be sub-divided into one or more sub-routines. Many different ways of distributing the functionality among these sub-routines will be apparent to the skilled person. The sub-routines may be stored together in one executable file to form a self-contained program. Such an executable file may comprise computer-executable instructions, for example, processor instructions and / or interpreter instructions (e.g. Java interpreter instructions). Alternatively, one or more or all of the sub-routines may be stored in at least one external library file and linked with a main program either statically or dynamically, e.g. at run-time. The main program contains at least one call to at least one of the sub-routines. The sub-routines may also comprise function calls to each other. An embodiment relating to a computer program product comprises computer-executable instructions corresponding to each processing stage of at least one of the methods set forth herein. These instructions may be sub- divided into sub-routines and / or stored in one or more files that may be linked statically or dynamically. Another embodiment relating to a computer program product comprises computer-executable instructions corresponding to each means of at least one of the systems and / or products set forth herein. These instructions may be sub- divided into sub-routines and / or stored in one or more files that may be linked statically or dynamically. The carrier of a computer program may be any entity or device capable of carrying the program. For example, the carrier may include a data storage, such as a ROM, for example, a CD ROM or a semiconductor ROM, or a magnetic recording medium, for example, a hard disk. Furthermore, the carrier may be a transmissible carrier such as an electric or optical signal, which may be conveyed via electric or optical cable or by radio or other means. When the program is embodied in such a al, the carrier may be constituted by such a cable or other device or means. rnatively, the carrier may be an integrated circuit in which the program is edded, the integrated circuit being adapted to perform, or used in the performance the relevant method. The various aspects discussed in this patent can be combined in order to vide additional advantages. The mere fact that certain measures are recited in ually different claims does not indicate that a combination of these measures not be used to advantage. Furthermore, some of the features can form the basis one or more divisional applications. EMBODIMENTS 1. Method for trajectory optimization for a robot attachable to a mammal for collaborating with a joint of the mammal, comprising the steps of: - obtaining a musculoskeletal model of the joint; - obtaining a tissue-loading map of the joint, wherein the tissue-loading map is derivable from the musculoskeletal model; - receiving a current spatial pose of the joint; - receiving a destination spatial pose of the joint; - determining a trajectory from the current spatial pose to the destination spatial pose based on the musculoskeletal model and the tissue-loading map. 2. Method for trajectory optimization according to the preceding claim, wherein determining a trajectory comprises: - defining an optimal control problem; and - selecting the trajectory based on solving the optimal control problem. 3. Method for trajectory optimization according to the preceding claim, wherein the musculoskeletal model is differentiable; and / or wherein the optimal control problem is continuous in time. 4. Method for trajectory optimization according to any of the preceding claims 2-3, wherein solving the optimal control problem comprises: - defining a cost function; and - deducing the trajectory based on calculating a minimum of the cost function while respecting also a set of constraints. 5. Method for trajectory optimization according to the preceding claim, wherein the cost function: - minimizes the strain on the joint; - reduces acceleration of the joint; and / or - converges towards the destination spatial pose. 6. Method for trajectory optimization according to any of the preceding claims 4-5, wherein x defines the current spatial pose of the musculoskeletal model; wherein Xd defines the destination spatial pose of the musculoskeletal model; wherein o defines the strain on the joint; wherein Q is a positive semidefinite matrix; wherein L,, : a(x) defines a strain cost function based on the instantaneous strain; wherein Lace : a'cTQa'c defines an acceleration cost function based on the accelerations; wherein Ld = (x xd)TQ(x xd) defines a distance cost function based on the distance to the destination pose; and wherein the cost function is a combination of the strain cost function, the acceleration cost function, and the distance cost function wherein preferably the combination is a weighted addition. 7. Method for trajectory optimization according to the preceding claim, wherein the strain cost function is based on the tissue-loading map; and wherein preferably the strain cost function is not directly using the musculoskeletal model. 8. Method for trajectory optimization according to any of the preceding claims 6-7, wherein the acceleration cost function is based on the musculoskeletal model; and wherein preferably the acceleration cost function is not based on the tissue- loading map. 9. Method for trajectory optimization according to any of the preceding claims48 comprising receiving a maximum tissue load threshold, wherein the trajectory causes the joint not to exceed the maximum tissue load threshold. 10. Method for trajectory optimization according to any of the preceding claims 4-9, comprising receiving a minimum tissue load threshold, wherein the trajectory causes the joint not to subceed the minimum tissue load threshold. 11. Method for trajectory optimization according to any of the preceding claims 4- 10, comprising receiving a terminal condition, wherein the terminal condition defines when the optimal control problem terminates; and wherein preferably the terminal condition is defined as an acceptable deviation of the destination pose. 12. Method for trajectory optimization according to any of the preceding claims, wherein determining a trajectory comprises: - determining a trajectory segment based on the musculoskeletal model; - determining a segment load based on the trajectory segment and the tissue- loading map; and - evaluating the trajectory segment based on the segment load and the maximum tissue load threshold. 13. Method for trajectory optimization according to any of the preceding claims, wherein the robot comprises a robot arm arranged for attaching to the mammal for collaborating with the joint of the mammal. 14. Method for trajectory optimization according to any of the preceding claims, wherein the method comprises communicating the trajectory to the robot. 15. Robot system comprising: - a robot attachable to a mammal for collaborating with a joint of the mammal; and - a controller arranged for executing any of the preceding methods and controlling the robot based on the trajectory. 16. Robot system according to the preceding claim, wherein the robot comprises a robot arm. 17. Data-processing apparatus comprising a processor configured for carrying out the method of any of the claims 1-14. 18. Computer-readable storage medium comprising instructions which, when executed by a computer, cause the computer to carry out the method of any of the claims 1-14. 19. Computer-readable storage medium comprising data comprising a musculoskeletal model of a joint of a mammal, and a tissue-loading map of the joint, wherein the data is for use in any of the methods 1-14, or the robot systems 15-16. 20. Computer-readable storage medium according to the preceding claim, wherein the tissue-loading map is derived from the musculoskeletal model.
Claims
1. Methodology for trajectory optimization for a robot connectable to a mammal for working with a joint of the mammal, comprising the steps by: - obtaining a musculoskeletal model of the joint; - obtaining a tissue load map of the joint, whereby the tissue loading map is derivable from the musculoskeletal model; - achieving a current spatial position of the joint; - receiving a spatial target position of the joint; - determining a trajectory from the current spatial attitude to the spatial target position based on the musculoskeletal model and the tissue load map.
2. Methodology for process optimization according to the preceding conclusion, whereby the Determining a trajectory includes: - defining an optimal control problem; and - selecting the path based on solving the optimal control problem.
3. Method for process optimization according to the preceding solution, where the musculoskeletal model is differentiable; and / or where the optimal control problem is continuous in time.
4. Method for trajectory optimization according to one of the preceding conclusions 2-3, where solving the optimal control problem includes: - defining a cost function; and - deriving the trajectory based on calculating a minimum of the cost function, while also taking into account a series of constraints.
5. Methodology for process optimization according to the preceding conclusion, whereby the cost function: - minimizes the load on the joint; - the acceleration of the joint decreases; and / or - converges towards the spatial target attitude.
6. Methodology for process optimization according to one of the preceding conclusions 4-5, where X is the current spatial position of the musculoskeletal model defines; where Xd defines the spatial target attitude of the musculoskeletal model; where ode defines the load on the joint; where Q is a positive semidefinite matrix; where La : g(x) defines a tax cost function based on the instantaneous load; where Lam : a'cTQa'c defines an acceleration cost function based on the accelerations; where Ld = (x xd)TQ(x xd) defines a distance cost function based on of the distance to the target position; and where the cost function is a combination of the tax cost function, the acceleration cost function and the distance cost function where the combination at preference is a weighted summation.
7. Methodology for process optimization according to the preceding conclusion, where the load cost function is based on the tissue load map; and where the tax cost function preferably does not make direct use of the musculoskeletal model.
8. Methodology for process optimization according to one of the preceding conclusions 6-7, where the acceleration cost function is based on the musculoskeletal model; and where the acceleration cost function is preferably not based on the tissue load map.
9. Methodology for process optimization according to one of the preceding conclusions 4-8, comprising receiving a maximum tissue load threshold value, whereby the trajectory ensures that the joint reaches the maximum tissue load threshold value does not exceed.
10. Methodology for process optimization according to one of the preceding conclusions 4-9, comprising meeting a minimum tissue load threshold value, whereby the trajectory ensures that the joint reaches the minimum tissue load threshold value does not ride underbody.
11. Method for process optimization according to one of the preceding conclusions 4- 10, comprising the receipt of a final condition, where the final Earth defines when the optimal control problem ends; and where the end-von Earth is preferably defined as an acceptable deviation from the target attitude.
12. Methodology for process optimization according to one of the preceding conclusions, where determining a trajectory includes: - determining a trajectory segment based on the musculoskeletal model; - determining a segment load based on the route segment and the tissue load map; and - evaluating the route segment based on the segment load and the maximum tissue load threshold value.
13. Methodology for process optimization according to one of the preceding conclusions, where the robot comprises a robotic arm designed for connecting to the mammal for cooperating with the joint of the mammal.
14. Methodology for process optimization according to one of the preceding conclusions, where the method involves communicating the trajectory to the robot.
15. Robot system comprising: - a robot connectable to a mammal for collaborating with a joint of the mammal; and - a control unit configured to perform one of the previous methods and controlling the robot based on the trajectory.
16. Robot system according to the preceding conclusion, where the robot is a robot arm includes.
17. Data recognition device comprising a recognition unit that is configured to perform the method of one of claims 1-14.
18. Computer-readable storage medium containing instructions which, when executed by a computer, the computer the method of one of the conclusions 1-14 shows carry out.
19. Computer-readable storage medium comprising data comprising a musculoskeletal model of a mammalian joint, and a tissue load map of the joint, where the data are intended for use in one of the working methods 1-14, or the robot systems 15-16.
20. Computer-readable storage medium within the meaning of the preceding conclusion, where the The tissue loading map is derived from the musculoskeletal model.