Soft Synergies: Model Order Reduction of Hybrid Soft-Rigid Robots via Optimal Strain Parameterization

Abdulaziz Y. Alkayas, Anup Teejo Mathew, Daniel Feliu-Talegon, ** Deng,
 Thomas George Thuruthel and Federico Renda
This work was supported by the US Office of Naval Research Global under Grant N62909- 21-1-2033 and in part by Khalifa University under Awards No. RIG-2023-048, RC1-2018-KUCARS.A. Y. Alkayas, D. Feliu-Talegon, A. T. Mathew, P. Deng and F. Renda are with the Mechanical and Nuclear Engineering Department, Khalifa University, Abu Dhabi, UAE.A. Y. Alkayas and T. G. Thuruthel are with the Department of Computer Science, University College London, London, UK.A. T. Mathew and F. Renda are with Khalifa University Center for Autonomous Robotic Systems (KUCARS), Khalifa University, Abu Dhabi, UAE.Email Adresses: [email protected] (Abdulaziz Y. Alkayas), [email protected] (Daniel Feliu-Talegon), [email protected] (Anup Teejo Mathew), [email protected] (** Deng), [email protected] (Thomas George Thuruthel), [email protected] (Federico Renda)
Abstract

Soft robots offer remarkable adaptability and safety advantages over rigid robots, but modeling their complex, nonlinear dynamics remains challenging. Strain-based models have recently emerged as a promising candidate to describe such systems, however, they tend to be high-dimensional and time consuming. This paper presents a novel model order reduction approach for soft and hybrid robots by combining strain-based modeling with Proper Orthogonal Decomposition (POD). The method identifies optimal coupled strain basis functions -or mechanical synergies- from simulation data, enabling the description of soft robot configurations with a minimal number of generalized coordinates. The reduced order model (ROM) achieves substantial dimensionality reduction while preserving accuracy. Rigorous testing demonstrates the interpolation and extrapolation capabilities of the ROM for soft manipulators under static and dynamic conditions. The approach is further validated on a snake-like hyper-redundant rigid manipulator and a closed-chain system with soft and rigid components, illustrating its broad applicability. Finally, the approach is leveraged for shape estimation of a real six-actuator soft manipulator using only two position markers, showcasing its practical utility. This POD-based ROM offers significant computational speed-ups, paving the way for real-time simulation and control of complex soft and hybrid robots.

Index Terms:
Modeling, control, and learning for Soft Robots, Reduced order modeling, Proper orthogonal decomposition, Strain parameterization, Cosserat Rod.

I Introduction

THE interest in soft robotics emerges from the pressing need to create robotic systems capable of seamlessly adapting to complex and dynamic environments [1]. Soft robots, characterized by their compliant and flexible nature, offer a remarkable solution to overcome the constraints of rigid robots, which are limited by a finite number of degrees of freedom. Soft robots can deform and change their shape, allowing them to adapt to a wide range of environments, handle fragile objects without causing damage, interact directly with humans, and engage in collaborative tasks in shared workspaces, among other capabilities. The importance of these robots has attracted the interest of a great number of researchers in recent decades, especially in the development of mathematical models [2] that can accurately describe their behavior without requiring heavy computational loads.

Refer to caption
Figure 1: An overview of our order reduction method. The last element of each row in the snapshots, which is the strain field solution, is the sum of the preceding elements, each governed by separate coordinates. This example shows the reduction of a single soft, slender manipulator with multiple actuators.

Slender soft robots, inspired by animal tentacles, trunks, and slender biological organisms such as snakes and certain types of plants, constitute a common class of soft robots. Various approaches have been explored to model these systems. Finite-Element Methods (FEM) are widely used to model this type of soft robot [3], [4]. However, their computational cost is very high, and solvers may struggle to converge on a solution. To reduce the computational load in simulating these systems, many researchers in the field of soft robotics have developed mathematical models that consider one physical dimension longer than the other two, such as in tentacle-like systems. These models effectively approximate the entire configuration by neglecting volumetric deformations and focusing on the behavior of the central axis. The exact description of the dynamics of rod-like structures can be obtained by using the continuous Kirchhoff-Clebsch-Love and Cosserat rod theories [5]. Recent works have proposed simplifying these rod-like models by restricting the range of possible shapes to a finite-dimensional functional space. Among these models is the Piecewise Constant Curvature (PCC) model, which is the most commonly used in the field of soft robotics [6],[7]. The PCC model describes the central axis of the soft robot as a finite number of stitched circular arcs. [8] introduces the Piecewise Constant Strain (PCS) model, which extends PCC models to encompass torsion and shears, in addition to curvature and elongation and generalize circular arcs to screw arcs. In [9], the Piecewise Linear Strain (PLS) model was introduced utilizing linear strain bases in a fashion similar to most FEM approaches. Furthermore, the Geometric Variable Strain (GVS) model [10], [11] was introduced. This approach proposes that the soft manipulator can be completely described by a finite set of strain bases, which are not necessarily constant. In such models, the coefficients of these bases play the same role as that of the joint vector or the Degrees of Freedom (DOFs) in traditional robotics. The aforementioned strain-based modeling approaches offer several advantages over other models. They provide excellent accuracy even for extreme deformations by treating the geometry and balance equations exactly. Despite this accuracy, they maintain low computational complexity compared to FEM models. Moreover, these models are generic and do not rely on specific assumptions about the robot’s cross-section or actuator routing, making them applicable to a wide range of designs. Importantly, unlike position-based models, these models can accommodate discontinuities in the strain fields, providing more flexibility in their parameterization.

Although smaller in dimension compared to other approaches such as FEM, previously discussed models usually result in large, high-dimensional models that are still expensive to solve. This led to an interest in improving the computational efficiency of simulating soft robots, especially for real-time control applications, introducing the field of Model Order Reduction (MOR). These methods are widely used in the computational mechanics community to reduce the computational cost of FEM simulations. They enable the reduction of the degrees of freedom in the computed mechanical system while maintaining precision. One of the main methods for accomplishing this is Proper Orthogonal Decomposition (POD) [12]. This method, based on the collection of system configuration data, simplifies a complex set of interconnected variables by transforming them into a reduced set of uncorrelated variables, capturing the majority of the variability in the original dataset. Some previous works that use the MOR technique for FEM simulations can be found in [13] for simple soft robots or [14, 15] for more generic and complex soft robots, which was implemented for a control application in [16]. Another interesting work that uses FEM with model order reduction is [17], which proposes an approach for constrained optimal control of soft robots. An equivalent approach used for dimensionality reduction and feature extraction in data analysis is principal component analysis. It has been effectively applied to find hand synergies by using a low-dimensional subspace of the hand DOFs space (see e.g. [18], [19]). Another popular MOR technique is Balanced Model Reduction (BMR), which takes into account the input matrix to obtain the most controllable reduced modes [20]. The authors propose a fast simulation framework for soft objects with intermittent contacts, performing BMR for each contact mode and switching between the reduced-order models based on the contact areas/locations.

Many researchers nowadays focus on data-driven modeling and control of soft robots to overcome the challenges associated with their inherent nonlinearities and high DOFs. Koopman operator theory has emerged as a promising approach for learning globally linear representations of nonlinear dynamics, enabling the application of linear control techniques to soft robotic systems [21]. One variation is Deep Koopman Networks (DKNs), which have been employed to learn Koopman eigenfunctions and linear dynamics from data, capturing the intrinsic properties of the system [22]. These approaches have been successfully applied to the control of soft continuum arms, demonstrating improved performance compared to traditional model-based controllers [23]. Additionally, spectral analysis of the learned Koopman operators has provided insights into the physical characteristics of the system, such as oscillation frequencies and energy distributions [24]. Other data-driven approaches, such as machine learning and neural networks, have been used to model soft robots [25]. Mainly, recurrent neural networks (RNNs) have been used to model the complex dynamics of soft robotic manipulators, as demonstrated in several recent works [26, 27, 28]. These learned models have then been employed for develo** open-loop and closed-loop controllers for soft manipulators [29, 30]. Spectral Submanifold Reduction (SSMs) was presented in [31] as a data-driven approach for learning low-dimensional models of high-dimensional robots on spectral submanifolds, by learning the dynamics on generic low-dimensional attractors. Unlike analytical models, such data-driven models are completely learned from data and are representative of the specific datasets used for their training, making them not generalizable nor interpretable. Combining data-driven approaches with model-based techniques hence could lead to streamlined mathematical models that are more computationally efficient and system specific.

In this paper, we unite two primary principles developed thus far: the aforementioned strain-based GVS model for the mechanics of soft robots and the POD method to find the optimal strain bases required to describe the system. Despite being the state-of-the-art general purpose soft robot model, the GVS still exhibits high dimensionality and computational load. By combining it with POD, we achieve significantly reduced-order, interpretable and generalizable models. Our approach differs from other POD-based ROMs in that we do not acquire reduced-order solutions to the system; instead, we obtain coupled modes or synergies capable of efficiently describing the system using the fewest possible DOFs. It is crucial to emphasize that our approach is not an entirely data-driven model, such as Koopman operators or machine learning techniques. Rather, we employ a data-driven tool to find the optimal parameterization for the strain-based model, as depicted in Fig. 1. By leveraging the strengths of both the GVS model and the POD method, we create a highly efficient and accurate representation of the soft robot’s mechanics. We thoroughly analyze the performance of the proposed ROM in terms of accuracy and computational demand, showing the capability of achieving real-time simulations in specific cases. Additionally, we apply the proposed reduction approach to a variety of challenging robotic prototypes, including cable-driven soft, hyper-redundant rigid, and hybrid soft-rigid prototypes, to showcase its versatility. Finally, we implement a shape estimation algorithm using a few position markers, enabled by the knowledge and insights acquired from the system reduction, demonstrating impressive qualitative and quantitative performance. The shape estimation algorithm is tested on a six-actuator, multi-section, soft robotic manipulator, further validating the effectiveness and applicability of our approach in real-world applications.

The structure of this paper is organized as follows: Section II provides an overview of the GVS approach. Section III introduces the POD method and explains how we integrate it with the GVS to create optimal reduced-order models. In Section IV, we present the implementation and analysis of our reduction method applied to various soft manipulators. Section V extends the application of our method to hyper-redundant rigid and hybrid prototype. In Section VI, we showcase the experimental application of the ROM to a soft manipulator shape estimation problem, validating the practicality of our approach in real-world scenarios. Finally, Section VII concludes the paper by summarizing our work and discussing potential future research directions.

II Geometric Variable Strain Model

In this section, we recall the essential components of the Geometric Variables Strain (GVS) approach used for simulating a single soft manipulator. Additionally, we provide a summary of its extension to include a hybrid multibody system. For a detailed description of the GVS approach, the reader is referred to [32].

II-A Kinematics

Refer to caption
Figure 2: Schematics of the GVS model: (A) Soft manipulator with a representative strain and velocity field. The recursive computation from Xj1subscript𝑋𝑗1X_{j-1}italic_X start_POSTSUBSCRIPT italic_j - 1 end_POSTSUBSCRIPT to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT using two Zannah points, Z1𝑍1Z1italic_Z 1 and Z2𝑍2Z2italic_Z 2, is highlighted. (B) A generic hybrid multibody system with branched and close-loop joints.

A soft manipulator can be modeled as a Cosserat rod, a continuous stack of non-deformable cross-sections parameterized by a curvilinear abscissa X[0,L]𝑋0𝐿X\in[0,L]italic_X ∈ [ 0 , italic_L ] where L𝐿Litalic_L is the length of the rod (Fig. 2A). By rigidly attaching local coordinate frames to each of these cross-sections, with the local x-axis perpendicular to the cross-section, the configuration space can be fully defined as a directed spatial curve, 𝒈():X𝒈(X)SE(3):𝒈𝑋𝒈𝑋𝑆𝐸3\bm{g}(\bullet):X\rightarrow\bm{g}(X)\in SE(3)bold_italic_g ( ∙ ) : italic_X → bold_italic_g ( italic_X ) ∈ italic_S italic_E ( 3 ). The homogenous transformation matrix 𝒈(X)𝒈𝑋\bm{g}(X)bold_italic_g ( italic_X ) is given by:

𝒈(X)=[𝑹𝒓𝟎1×31]𝒈𝑋delimited-[]𝑹𝒓superscript0131\bm{g}(X)=\left[\begin{array}[]{cc}\bm{R}&\bm{r}\\ \bm{0}^{1\times 3}&1\end{array}\right]bold_italic_g ( italic_X ) = [ start_ARRAY start_ROW start_CELL bold_italic_R end_CELL start_CELL bold_italic_r end_CELL end_ROW start_ROW start_CELL bold_0 start_POSTSUPERSCRIPT 1 × 3 end_POSTSUPERSCRIPT end_CELL start_CELL 1 end_CELL end_ROW end_ARRAY ] (1)

where 𝒓(X)3𝒓𝑋superscript3\bm{r}(X)\in\mathbb{R}^{3}bold_italic_r ( italic_X ) ∈ blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT is the position vector to the origin of the local frame and the rotation matrix 𝑹(X)SO(3)𝑹𝑋𝑆𝑂3\bm{R}(X)\in SO(3)bold_italic_R ( italic_X ) ∈ italic_S italic_O ( 3 ) represents the orientation of the local frame with respect to the spatial frame. The spatial ()superscript(\cdot)^{\prime}( ⋅ ) start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT and temporal ()˙˙\dot{(\cdot)}over˙ start_ARG ( ⋅ ) end_ARG partial derivative of Equation (1) defines the screw strain (𝝃𝝃\bm{\xi}bold_italic_ξ) and screw velocity (𝜼𝜼\bm{\eta}bold_italic_η) of the Cosserat rod:

𝒈(X)=𝒈𝝃^;𝒈˙(X)=𝒈𝜼^formulae-sequencesuperscript𝒈𝑋𝒈^𝝃˙𝒈𝑋𝒈^𝜼\bm{g}^{\prime}(X)=\bm{g}\hat{\bm{\xi}};\hskip 19.91684pt\dot{\bm{g}}(X)=\bm{g% }\hat{\bm{\eta}}bold_italic_g start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_X ) = bold_italic_g over^ start_ARG bold_italic_ξ end_ARG ; over˙ start_ARG bold_italic_g end_ARG ( italic_X ) = bold_italic_g over^ start_ARG bold_italic_η end_ARG (2)

where the operator ()^^\hat{(\bullet)}over^ start_ARG ( ∙ ) end_ARG indicates the isomorphism from 6superscript6\mathbb{R}^{6}blackboard_R start_POSTSUPERSCRIPT 6 end_POSTSUPERSCRIPT to se(3)𝑠𝑒3se(3)italic_s italic_e ( 3 ). 𝝃^(X)^𝝃𝑋\hat{\bm{\xi}}(X)over^ start_ARG bold_italic_ξ end_ARG ( italic_X ). Using reference strain or the stress-free configuration derivative, 𝝃(X)superscript𝝃𝑋\bm{\xi}^{*}(X)bold_italic_ξ start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ( italic_X ), we define,

𝝃^𝝃^=[𝒌~𝒍𝟎1×30]se(3),^𝝃superscript^𝝃delimited-[]~𝒌𝒍superscript0130𝑠𝑒3\hat{\bm{\xi}}-\hat{\bm{\xi}}^{*}=\left[\begin{array}[]{cc}\tilde{\bm{k}}&\bm{% l}\\ \bm{0}^{1\times 3}&0\end{array}\right]\in se(3),\;over^ start_ARG bold_italic_ξ end_ARG - over^ start_ARG bold_italic_ξ end_ARG start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT = [ start_ARRAY start_ROW start_CELL over~ start_ARG bold_italic_k end_ARG end_CELL start_CELL bold_italic_l end_CELL end_ROW start_ROW start_CELL bold_0 start_POSTSUPERSCRIPT 1 × 3 end_POSTSUPERSCRIPT end_CELL start_CELL 0 end_CELL end_ROW end_ARRAY ] ∈ italic_s italic_e ( 3 ) ,

where 𝒌(X)=[kx,ky,kz]T𝒌𝑋superscriptsubscript𝑘𝑥subscript𝑘𝑦subscript𝑘𝑧𝑇\bm{k}(X)=[k_{x},\;k_{y},\;k_{z}]^{T}bold_italic_k ( italic_X ) = [ italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT , italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT , italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT and 𝒍(X)=[lx,ly,lz]T𝒍𝑋superscriptsubscript𝑙𝑥subscript𝑙𝑦subscript𝑙𝑧𝑇\bm{l}(X)=[l_{x},\;l_{y},\;l_{z}]^{T}bold_italic_l ( italic_X ) = [ italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT , italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT , italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT are the angular and linear strains in the local frame. The operator ()~~\tilde{(\bullet)}over~ start_ARG ( ∙ ) end_ARG indicates the isomorphism between 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT and the algebra of skew-symmetric matrices so(3)𝑠𝑜3so(3)italic_s italic_o ( 3 ). The velocity and strain twists are related through the equality of the mixed partial derivatives, yielding:

𝜼=𝝃˙ad𝝃𝜼superscript𝜼˙𝝃subscriptad𝝃𝜼\bm{\eta}^{\prime}=\dot{\bm{\xi}}-\text{ad}_{\bm{\xi}}\bm{\eta}bold_italic_η start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = over˙ start_ARG bold_italic_ξ end_ARG - ad start_POSTSUBSCRIPT bold_italic_ξ end_POSTSUBSCRIPT bold_italic_η (3)

where ad()subscriptadbold-∙\text{ad}_{(\bm{\bullet})}ad start_POSTSUBSCRIPT ( bold_∙ ) end_POSTSUBSCRIPT is the adjoint operator of se(3)𝑠𝑒3se(3)italic_s italic_e ( 3 ). Integrating equations (2) (the first part) and (3) over space yields:

𝒈(X)=exp(𝛀^(X)),𝒈𝑋exp^𝛀𝑋,\bm{g}(X)=\text{exp}\left(\widehat{\bm{\Omega}}(X)\right)\;\text{,}bold_italic_g ( italic_X ) = exp ( over^ start_ARG bold_Ω end_ARG ( italic_X ) ) , (4)
𝜼(X)=Ad𝒈10XAd𝒈𝝃˙𝑑s𝜼𝑋subscriptAdsuperscript𝒈1superscriptsubscript0𝑋subscriptAd𝒈˙𝝃differential-d𝑠\bm{\eta}(X)=\text{Ad}_{\bm{g}^{-1}}\int_{0}^{X}\text{Ad}_{\bm{g}}\dot{\bm{\xi% }}dsbold_italic_η ( italic_X ) = Ad start_POSTSUBSCRIPT bold_italic_g start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_X end_POSTSUPERSCRIPT Ad start_POSTSUBSCRIPT bold_italic_g end_POSTSUBSCRIPT over˙ start_ARG bold_italic_ξ end_ARG italic_d italic_s (5)

where Ad𝒈subscriptAd𝒈\text{Ad}_{\bm{g}}Ad start_POSTSUBSCRIPT bold_italic_g end_POSTSUBSCRIPT is the adjoint representation of the homogenous matrix 𝒈𝒈\bm{g}bold_italic_g, and 𝛀𝛀\bm{\Omega}bold_Ω is the Magnus expansion of 𝝃(X)𝝃𝑋\bm{\xi}(X)bold_italic_ξ ( italic_X ). The GVS model discretizes the Cosserat rod strains to introduce the generalized coordinates. The continuous strain field of the rod is modeled using a finite set of strain bases:

𝝃(X)𝝃(X)=𝚽ξ(X)𝒒𝝃𝑋superscript𝝃𝑋subscript𝚽𝜉𝑋𝒒\bm{\xi}(X)-\bm{\xi}^{*}(X)=\bm{\Phi}_{\xi}(X)\bm{q}bold_italic_ξ ( italic_X ) - bold_italic_ξ start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ( italic_X ) = bold_Φ start_POSTSUBSCRIPT italic_ξ end_POSTSUBSCRIPT ( italic_X ) bold_italic_q (6)

where 𝚽ξ(X)6×nsubscript𝚽𝜉𝑋superscript6𝑛\bm{\Phi}_{\xi}(X)\in\mathbb{R}^{6\times n}bold_Φ start_POSTSUBSCRIPT italic_ξ end_POSTSUBSCRIPT ( italic_X ) ∈ blackboard_R start_POSTSUPERSCRIPT 6 × italic_n end_POSTSUPERSCRIPT is the matrix function whose columns form the basis for the strain field, 𝒒n𝒒superscript𝑛\bm{q}\in\mathbb{R}^{n}bold_italic_q ∈ blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT (with n𝑛nitalic_n being the number of generalized coordinates) is the vector of generalized coordinates which spans the chosen basis. Substituting Equation (6) into equation (3) we get,

𝜼(X)=Ad𝒈(X)10XAd𝒈𝚽ξ𝑑s𝒒˙=𝑱(𝒒,X)𝒒˙𝜼𝑋superscriptsubscriptAd𝒈𝑋1superscriptsubscript0𝑋subscriptAd𝒈subscript𝚽𝜉differential-d𝑠˙𝒒𝑱𝒒𝑋˙𝒒\bm{\eta}(X)=\mathrm{Ad}_{\bm{g}(X)}^{-1}\int_{0}^{X}\mathrm{Ad}_{\bm{g}}\bm{% \Phi}_{\xi}ds\dot{\bm{q}}=\bm{J}(\bm{q},X)\dot{\bm{q}}bold_italic_η ( italic_X ) = roman_Ad start_POSTSUBSCRIPT bold_italic_g ( italic_X ) end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_X end_POSTSUPERSCRIPT roman_Ad start_POSTSUBSCRIPT bold_italic_g end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ end_POSTSUBSCRIPT italic_d italic_s over˙ start_ARG bold_italic_q end_ARG = bold_italic_J ( bold_italic_q , italic_X ) over˙ start_ARG bold_italic_q end_ARG (7)

where 𝑱6×n𝑱superscript6𝑛\bm{J}\in\mathbb{R}^{6\times n}bold_italic_J ∈ blackboard_R start_POSTSUPERSCRIPT 6 × italic_n end_POSTSUPERSCRIPT is the geometric Jacobian. A time derivative of (7) defines the acceleration twist 𝜼˙˙𝜼\dot{\bm{\eta}}over˙ start_ARG bold_italic_η end_ARG and 𝑱˙˙𝑱\dot{\bm{J}}over˙ start_ARG bold_italic_J end_ARG:

𝜼˙(X)=𝑱(𝒒,X)𝒒¨+𝑱˙(𝒒,𝒒˙,X)𝒒˙˙𝜼𝑋𝑱𝒒𝑋¨𝒒˙𝑱𝒒˙𝒒𝑋˙𝒒\dot{\bm{\eta}}(X)=\bm{J}(\bm{q},X)\ddot{\bm{q}}+\dot{\bm{J}}(\bm{q},\dot{\bm{% q}},X)\dot{\bm{q}}over˙ start_ARG bold_italic_η end_ARG ( italic_X ) = bold_italic_J ( bold_italic_q , italic_X ) over¨ start_ARG bold_italic_q end_ARG + over˙ start_ARG bold_italic_J end_ARG ( bold_italic_q , over˙ start_ARG bold_italic_q end_ARG , italic_X ) over˙ start_ARG bold_italic_q end_ARG (8)

For a general 𝝃(X)𝝃𝑋\bm{\xi}(X)bold_italic_ξ ( italic_X ), the configuration, Jacobian and its derivative cannot be computed explicitly. Instead, these elements are determined through a recursive formulation that is applied from one discrete point to the next, employing the Zannah quadrature approximation of the Magnus expansion. The procedure involves the computation of strain and its time derivatives at Zannah quadrature points that lie in between the discrete points (Fig. 2A). The details of the recursive scheme can be found in [33].

II-B Dynamics and Statics

Projecting the free dynamics of the Cosserat rod [11] using the geometric Jacobian through D’Alembert’s principle and integrating over the length of the soft link yields the generalized dynamics of the system in the standard Lagrangian form [34]:

𝑴(𝒒)𝒒¨+(𝑪(𝒒,𝒒˙)+𝑫(𝒒))𝒒˙+𝑲𝒒=𝑩(𝒒)𝑻+𝑭(𝒒),𝑴𝒒¨𝒒𝑪𝒒˙𝒒𝑫𝒒˙𝒒𝑲𝒒𝑩𝒒𝑻𝑭𝒒,\bm{M}(\bm{q})\ddot{\bm{q}}+(\bm{C}(\bm{q},\dot{\bm{q}})+\bm{D}(\bm{q}))\dot{% \bm{q}}+\bm{K}\bm{q}=\bm{B}(\bm{q})\bm{T}+\bm{F}(\bm{q})\;\text{,}bold_italic_M ( bold_italic_q ) over¨ start_ARG bold_italic_q end_ARG + ( bold_italic_C ( bold_italic_q , over˙ start_ARG bold_italic_q end_ARG ) + bold_italic_D ( bold_italic_q ) ) over˙ start_ARG bold_italic_q end_ARG + bold_italic_K bold_italic_q = bold_italic_B ( bold_italic_q ) bold_italic_T + bold_italic_F ( bold_italic_q ) , (9)

where 𝑴(𝒒)𝑴𝒒\bm{M}(\bm{q})bold_italic_M ( bold_italic_q ), is the generalized mass matrix, 𝑪(𝒒,𝒒˙)𝑪𝒒˙𝒒\bm{C}(\bm{q},\dot{\bm{q}})bold_italic_C ( bold_italic_q , over˙ start_ARG bold_italic_q end_ARG ) is the Coriolis matrix, 𝑫(𝒒)𝑫𝒒\bm{D}(\bm{q})bold_italic_D ( bold_italic_q ) is the elastic dam** matrix, 𝑲𝑲\bm{K}bold_italic_K is the stiffness matrix, 𝑩(𝒒)𝑩𝒒\bm{B}(\bm{q})bold_italic_B ( bold_italic_q ) is the actuation matrix, 𝑭(𝒒)𝑭𝒒\bm{F}(\bm{q})bold_italic_F ( bold_italic_q ) is the vector of generalized external forces, and 𝑻𝑻\bm{T}bold_italic_T is the vector of applied actuation strengths. To compute 𝑲𝑲\bm{K}bold_italic_K and 𝑫𝑫\bm{D}bold_italic_D, a linear Hook-like elastic and Kelvin-Voigt dam** model is used [35]. For soft bodies that are internally actuated by threadlike actuators (Fig. 2A), the internal actuation wrench exerted by the actuator on the rod’s centerline is modeled as:

𝓕a(X)=k=1na[𝒅~k𝒕k𝒕k]Tk=𝚽a(𝒒,X)𝑻subscript𝓕𝑎𝑋superscriptsubscript𝑘1subscript𝑛𝑎delimited-[]subscript~𝒅𝑘subscript𝒕𝑘subscript𝒕𝑘subscript𝑇𝑘subscript𝚽𝑎𝒒𝑋𝑻\bm{\mathcal{F}}_{a}(X)=\sum_{k=1}^{n_{a}}\left[\begin{array}[]{c}\tilde{\bm{d% }}_{k}\bm{t}_{k}\\ \bm{t}_{k}\end{array}\right]T_{k}=\bm{\Phi}_{a}(\bm{q},X)\bm{T}bold_caligraphic_F start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ( italic_X ) = ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUPERSCRIPT [ start_ARRAY start_ROW start_CELL over~ start_ARG bold_italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT bold_italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL bold_italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW end_ARRAY ] italic_T start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = bold_Φ start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ( bold_italic_q , italic_X ) bold_italic_T (10)

where 𝚽a(𝒒,X)6×nasubscript𝚽𝑎𝒒𝑋superscript6subscript𝑛𝑎\bm{\Phi}_{a}(\bm{q},X)\in\mathbb{R}^{6\times n_{a}}bold_Φ start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT ( bold_italic_q , italic_X ) ∈ blackboard_R start_POSTSUPERSCRIPT 6 × italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is the actuation basis matrix, nasubscript𝑛𝑎n_{a}italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT is the number of actuators, 𝒅k(X)=[0,pyk,pzk]Tsubscript𝒅𝑘𝑋superscript0subscript𝑝subscript𝑦𝑘subscript𝑝subscript𝑧𝑘𝑇\bm{d}_{k}(X)=[0,\;p_{y_{k}},\;p_{z_{k}}]^{T}bold_italic_d start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ( italic_X ) = [ 0 , italic_p start_POSTSUBSCRIPT italic_y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_z start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT is the vector from the center-line to actuator k𝑘kitalic_k, and 𝒕k(X)subscript𝒕𝑘𝑋\bm{t}_{k}(X)bold_italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ( italic_X ) is the unit vector tangent to the actuator’s path.

The generalized static equilibrium equation is derived by equating all time derivatives (𝒒˙˙𝒒\dot{\bm{q}}over˙ start_ARG bold_italic_q end_ARG, 𝒒¨¨𝒒\ddot{\bm{q}}over¨ start_ARG bold_italic_q end_ARG) in (9) to zero:

𝑲𝒒=𝑩(𝒒)𝑻+𝑭(𝒒)𝑲𝒒𝑩𝒒𝑻𝑭𝒒\bm{K}\bm{q}=\bm{B}(\bm{q})\bm{T}+\bm{F}(\bm{q})bold_italic_K bold_italic_q = bold_italic_B ( bold_italic_q ) bold_italic_T + bold_italic_F ( bold_italic_q ) (11)

II-C Hybrid Multibody System

In the GVS framework, the distributed strain of the soft body and the twist of a rigid joint are analyzed through a unified approach. This method facilitates the modeling of hybrid multibody systems by integrating rigid and soft links. The formulation also supports the modeling of robots that are branched chain structures or closed-chain systems (Fig. 2B). The form of generalized dynamics (9) and statics (11) remain the same. However, the components are calculated by summing the contributions from all links, each projected using corresponding Jacobians. Readers may refer to Appendix B for their formulae.

For closed-chain systems, the methodology outlined in [36] can be adopted to include closed-loop constraints. This involves integrating constraint forces into the generalized dynamics and adding constraint equations in Pfaffian form (at the velocity level).

The generalized dynamics is solved using an ODE integrator, while the static equilibrium is obtained by numerical root-finding methods. To implement and solve the GVS model, we used the MATLAB toolbox SoRoSim [32]. The toolbox allows the creation of soft and rigid links with rigid joints and the assembly of these links to form serial, branched, or closed-chain robots. It uses MATLAB functions, such as ode45𝑜𝑑𝑒45ode45italic_o italic_d italic_e 45 for the time integration and fsolve𝑓𝑠𝑜𝑙𝑣𝑒fsolveitalic_f italic_s italic_o italic_l italic_v italic_e for solving static equilibrium. Readers interested in the validation of the GVS model for static and dynamic scenarios are referred to [32].

III Reduction of the GVS using POD

Our model order reduction technique is based on the snapshot Proper Orthogonal Decomposition (POD), a well-established method for identifying optimal basis sets in ROMs. In the POD framework, we first collect high-fidelity data snapshots that capture the spatio-temporal characteristics of the quantity of interest. These snapshots are then vectorized and assembled into what is termed the snapshot matrix 𝚵p×s𝚵superscript𝑝𝑠\bm{\Xi}\in\mathbb{R}^{p\times s}bold_Ξ ∈ blackboard_R start_POSTSUPERSCRIPT italic_p × italic_s end_POSTSUPERSCRIPT, where p𝑝pitalic_p is the number of sampling points, and s𝑠sitalic_s is the number of snapshots. The snapshot matrix 𝚵𝚵\bm{\Xi}bold_Ξ is then subjected to Singular Value Decomposition (SVD), given by:

𝚵=𝑼𝚺𝑽𝑻𝚵𝑼𝚺superscript𝑽𝑻\bm{\Xi}=\bm{U\Sigma V^{T}}bold_Ξ = bold_italic_U bold_Σ bold_italic_V start_POSTSUPERSCRIPT bold_italic_T end_POSTSUPERSCRIPT (12)

where 𝑼p×p𝑼superscript𝑝𝑝\bm{U}\in\mathbb{R}^{p\times p}bold_italic_U ∈ blackboard_R start_POSTSUPERSCRIPT italic_p × italic_p end_POSTSUPERSCRIPT and 𝑽s×s𝑽superscript𝑠𝑠\bm{V}\in\mathbb{R}^{s\times s}bold_italic_V ∈ blackboard_R start_POSTSUPERSCRIPT italic_s × italic_s end_POSTSUPERSCRIPT are orthogonal matrices that contain the left and right singular vectors, respectively, and the rectangular diagonal matrix 𝚺p×s𝚺superscript𝑝𝑠\bm{\Sigma}\in\mathbb{R}^{p\times s}bold_Σ ∈ blackboard_R start_POSTSUPERSCRIPT italic_p × italic_s end_POSTSUPERSCRIPT comprises the singular values of 𝚵𝚵\bm{\Xi}bold_Ξ. The columns of 𝑼𝑼\bm{U}bold_italic_U are employed as the optimal basis vectors for the ROM and are ordered in accordance with their associated singular values in descending order, and we will address them as the decomposition modes. Essentially, the magnitude of a singular value serves as an indicator of the extent to which its corresponding mode encapsulates information from the original data. While it is possible to reconstruct lower-rank approximations of 𝚵𝚵\bm{\Xi}bold_Ξ by utilizing only the leading r𝑟ritalic_r columns of 𝑼𝑼\bm{U}bold_italic_U and 𝑽𝑽\bm{V}bold_italic_V, as well as the principal r×s𝑟𝑠r\times sitalic_r × italic_s submatrix of 𝚺𝚺\bm{\Sigma}bold_Σ in equation (12), our focus is not on data dimensionality reduction. Instead, we are particularly interested in the identification of optimal bases that effectively represent the original high-fidelity data.

III-A Reduction in Continuous Domain

Incorporating the POD methodology into the GVS model is a relatively straightforward process. The objective is to identify an optimal basis matrix 𝚽ξsubscript𝚽𝜉\bm{\Phi}_{\xi}bold_Φ start_POSTSUBSCRIPT italic_ξ end_POSTSUBSCRIPT that efficiently captures the system behaviour using a minimal number of generalized coordinates 𝒒𝒒\bm{q}bold_italic_q. This approach condenses high-order descriptions into a few key components. Moreover, in our earlier studies, we manually specified the basis matrix based on a chosen order. However, in that approach, each column of the basis matrix contained only a single non-zero element to ensure the independence of multiple strain modalities (e.g., bending and elongation) on the same coordinate, as identifying a priori coupling between these modes is a challenging task. To illustrate this, let 𝔦(X)subscript𝔦𝑋\mathcal{L}_{\mathfrak{i}}(X)caligraphic_L start_POSTSUBSCRIPT fraktur_i end_POSTSUBSCRIPT ( italic_X ) represent a Legendre polynomial of order 𝔦𝔦\mathfrak{i}fraktur_i, which is scaled to the interval [0,L]0𝐿[0,L][ 0 , italic_L ] rather than the conventional interval [1,1]11[-1,1][ - 1 , 1 ]. A basis matrix can then be defined as follows:

𝚽ξ=[0(X)1(X)00000000000(X)1(X)2(X)000000000000000]subscript𝚽𝜉delimited-[]subscript0𝑋subscript1𝑋0000000000subscript0𝑋subscript1𝑋subscript2𝑋000000000000000\small\bm{\Phi}_{\xi}=\left[\begin{array}[]{ccccc}\mathcal{L}_{0}(X)&\mathcal{% L}_{1}(X)&0&0&0\\ 0&0&0&0&0\\ 0&0&\mathcal{L}_{0}(X)&\mathcal{L}_{1}(X)&\mathcal{L}_{2}(X)\\ 0&0&0&0&0\\ 0&0&0&0&0\\ 0&0&0&0&0\end{array}\right]bold_Φ start_POSTSUBSCRIPT italic_ξ end_POSTSUBSCRIPT = [ start_ARRAY start_ROW start_CELL caligraphic_L start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL caligraphic_L start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL caligraphic_L start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL end_ROW end_ARRAY ] (13)

This matrix specifies that the torsion is represented by the first two Legendre polynomials, while bending about the z-axis is represented by the first three Legendre polynomials. The remaining strain fields are assumed to be negligible. It is apparent that each column is responsible for a single strain modality. Our proposed approach overcomes this limitation, while identifying a few primary contributing modes, thereby significantly reducing the number of generalized coordinates.

To start, let 𝒌xsubscript𝒌𝑥\bm{k}_{x}bold_italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT represent a discrete form of the continuous torsional strain field kx(X)subscript𝑘𝑥𝑋k_{x}(X)italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ( italic_X ) as follows:

𝒌x:=[kx(0),kx(X1),kx(X2),,kx(Xp2),kx(L)]Tp,assignsubscript𝒌𝑥superscriptsubscript𝑘𝑥0subscript𝑘𝑥subscript𝑋1subscript𝑘𝑥subscript𝑋2subscript𝑘𝑥subscript𝑋𝑝2subscript𝑘𝑥𝐿𝑇superscript𝑝\small\bm{k}_{x}:=[k_{x}(0),k_{x}(X_{1}),k_{x}(X_{2}),\dots,k_{x}(X_{p-2}),k_{% x}(L)]^{T}\in\mathbb{R}^{p},bold_italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT := [ italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ( 0 ) , italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) , italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) , … , italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_p - 2 end_POSTSUBSCRIPT ) , italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ( italic_L ) ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT , (14)

where, X1,X2,,Xp2subscript𝑋1subscript𝑋2subscript𝑋𝑝2X_{1},X_{2},\ldots,X_{p-2}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , italic_X start_POSTSUBSCRIPT italic_p - 2 end_POSTSUBSCRIPT denote intermediate points that are sampled arbitrarily along the abscissia X𝑋Xitalic_X. Applying the same sampling technique to the other strain modalities yields corresponding column vectors 𝒌ysubscript𝒌𝑦\bm{k}_{y}bold_italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT, 𝒌zsubscript𝒌𝑧\bm{k}_{z}bold_italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT, 𝒍xsubscript𝒍𝑥\bm{l}_{x}bold_italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT, 𝒍ysubscript𝒍𝑦\bm{l}_{y}bold_italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT, and 𝒍zsubscript𝒍𝑧\bm{l}_{z}bold_italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT \in psuperscript𝑝\mathbb{R}^{p}blackboard_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT.

The different strain modalities are vertically concatenated to form a single column vector of length 6p6𝑝6p6 italic_p, which constitutes a snapshot of the system in the following manner:

Ξ=[𝒌xT,𝒌yT,𝒌zT,𝒍xT,𝒍yT,𝒍zT]T6p.Ξsuperscriptsuperscriptsubscript𝒌𝑥𝑇superscriptsubscript𝒌𝑦𝑇superscriptsubscript𝒌𝑧𝑇superscriptsubscript𝒍𝑥𝑇superscriptsubscript𝒍𝑦𝑇superscriptsubscript𝒍𝑧𝑇𝑇superscript6𝑝\Xi=[\bm{k}_{x}^{T},\bm{k}_{y}^{T},\bm{k}_{z}^{T},\bm{l}_{x}^{T},\bm{l}_{y}^{T% },\bm{l}_{z}^{T}]^{T}\in\mathbb{R}^{6p}.roman_Ξ = [ bold_italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 6 italic_p end_POSTSUPERSCRIPT . (15)

Then the snapshot matrix is assembled as:

𝚵=[Ξ1,Ξ2,,Ξs]6p×s.𝚵subscriptΞ1subscriptΞ2subscriptΞ𝑠superscript6𝑝𝑠\bm{\Xi}=[\Xi_{1},\Xi_{2},\dots,\Xi_{s}]\in\mathbb{R}^{6p\times s}.bold_Ξ = [ roman_Ξ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Ξ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , roman_Ξ start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ] ∈ blackboard_R start_POSTSUPERSCRIPT 6 italic_p × italic_s end_POSTSUPERSCRIPT . (16)

where s𝑠sitalic_s is the total number of snapshots. The reason behind the vertical concatenation can be explained by the analogy between Equations (6) and (12). It can be seen that 𝚽ξsubscript𝚽𝜉\bm{\Phi}_{\xi}bold_Φ start_POSTSUBSCRIPT italic_ξ end_POSTSUBSCRIPT is analogous to 𝑼𝑼\bm{U}bold_italic_U, and 𝒒𝒒\bm{q}bold_italic_q is analogous to 𝚺𝑽𝑻𝚺superscript𝑽𝑻\bm{\Sigma V^{T}}bold_Σ bold_italic_V start_POSTSUPERSCRIPT bold_italic_T end_POSTSUPERSCRIPT. In this context, the columns of 𝑽𝑽\bm{V}bold_italic_V serve as scaling factors for the corresponding modes (columns of 𝑼𝑼\bm{U}bold_italic_U). These scaling factors describe the evolution of each mode in every snapshot, a role analogous to that of 𝒒𝒒\bm{q}bold_italic_q in relation to 𝚽ξsubscript𝚽𝜉\bm{\Phi}_{\xi}bold_Φ start_POSTSUBSCRIPT italic_ξ end_POSTSUBSCRIPT. Therefore, vertically concatenating the sampled strain vectors results in coupled modes that are governed by the same generalized coordinate.

Upon completing the SVD of the snapshot matrix 𝚵𝚵\bm{\Xi}bold_Ξ, the resulting 𝑼𝑼\bm{U}bold_italic_U matrix is then:

𝑼=[𝒖1,𝒖2,,𝒖6p]6p×6p𝑼subscript𝒖1subscript𝒖2subscript𝒖6𝑝superscript6𝑝6𝑝\bm{U}=[\bm{u}_{1},\bm{u}_{2},\dots,\bm{u}_{6p}]\in\mathbb{R}^{6p\times 6p}bold_italic_U = [ bold_italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , bold_italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , bold_italic_u start_POSTSUBSCRIPT 6 italic_p end_POSTSUBSCRIPT ] ∈ blackboard_R start_POSTSUPERSCRIPT 6 italic_p × 6 italic_p end_POSTSUPERSCRIPT (17)

and the cthsuperscript𝑐𝑡c^{th}italic_c start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT mode is composed of:

𝒖c=[𝒖ckxT,𝒖ckyT,𝒖ckzT,𝒖clxT,𝒖clyT,𝒖clzT]T6psubscript𝒖𝑐superscriptsuperscriptsubscriptsuperscript𝒖subscript𝑘𝑥𝑐𝑇superscriptsubscriptsuperscript𝒖subscript𝑘𝑦𝑐𝑇superscriptsubscriptsuperscript𝒖subscript𝑘𝑧𝑐𝑇superscriptsubscriptsuperscript𝒖subscript𝑙𝑥𝑐𝑇superscriptsubscriptsuperscript𝒖subscript𝑙𝑦𝑐𝑇superscriptsubscriptsuperscript𝒖subscript𝑙𝑧𝑐𝑇𝑇superscript6𝑝\bm{u}_{c}=\left[{\bm{u}^{k_{x}}_{c}}^{T},{\bm{u}^{k_{y}}_{c}}^{T},{\bm{u}^{k_% {z}}_{c}}^{T},{\bm{u}^{l_{x}}_{c}}^{T},{\bm{u}^{l_{y}}_{c}}^{T},{\bm{u}^{l_{z}% }_{c}}^{T}\right]^{T}\in\mathbb{R}^{6p}bold_italic_u start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT = [ bold_italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 6 italic_p end_POSTSUPERSCRIPT (18)

This yields coupled optimal basis vectors in discrete form, which can subsequently be transformed into continuous fields (uckx(X),ucky(X),uckz(X),uclx(X),ucly(X),uclz(X))subscriptsuperscript𝑢subscript𝑘𝑥𝑐𝑋subscriptsuperscript𝑢subscript𝑘𝑦𝑐𝑋subscriptsuperscript𝑢subscript𝑘𝑧𝑐𝑋subscriptsuperscript𝑢subscript𝑙𝑥𝑐𝑋subscriptsuperscript𝑢subscript𝑙𝑦𝑐𝑋subscriptsuperscript𝑢subscript𝑙𝑧𝑐𝑋(u^{k_{x}}_{c}(X),u^{k_{y}}_{c}(X),u^{k_{z}}_{c}(X),u^{l_{x}}_{c}(X),u^{l_{y}}% _{c}(X),u^{l_{z}}_{c}(X))( italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ( italic_X ) , italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ( italic_X ) , italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ( italic_X ) , italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ( italic_X ) , italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ( italic_X ) , italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ( italic_X ) ) through interpolation for inclusion in equation (6). The optimal basis matrix can then be constructed for n𝑛nitalic_n generalized coordinates by selecting n𝑛nitalic_n columns of (17) and rearranging them as:

𝚽ξ𝒪(X)=[u1kx(X)u2kx(X)unkx(X)u1ky(X)u2ky(X)unky(X)u1kz(X)u2kz(X)unkz(X)u1lx(X)u2lx(X)unlx(X)u1ly(X)u2ly(X)unly(X)u1lz(X)u2lz(X)unlz(X)]subscript𝚽subscript𝜉𝒪𝑋delimited-[]subscriptsuperscript𝑢subscript𝑘𝑥1𝑋subscriptsuperscript𝑢subscript𝑘𝑥2𝑋subscriptsuperscript𝑢subscript𝑘𝑥𝑛𝑋subscriptsuperscript𝑢subscript𝑘𝑦1𝑋subscriptsuperscript𝑢subscript𝑘𝑦2𝑋subscriptsuperscript𝑢subscript𝑘𝑦𝑛𝑋subscriptsuperscript𝑢subscript𝑘𝑧1𝑋subscriptsuperscript𝑢subscript𝑘𝑧2𝑋subscriptsuperscript𝑢subscript𝑘𝑧𝑛𝑋subscriptsuperscript𝑢subscript𝑙𝑥1𝑋subscriptsuperscript𝑢subscript𝑙𝑥2𝑋subscriptsuperscript𝑢subscript𝑙𝑥𝑛𝑋subscriptsuperscript𝑢subscript𝑙𝑦1𝑋subscriptsuperscript𝑢subscript𝑙𝑦2𝑋subscriptsuperscript𝑢subscript𝑙𝑦𝑛𝑋subscriptsuperscript𝑢subscript𝑙𝑧1𝑋subscriptsuperscript𝑢subscript𝑙𝑧2𝑋subscriptsuperscript𝑢subscript𝑙𝑧𝑛𝑋\bm{\Phi}_{\xi_{\mathcal{O}}}(X)=\left[\begin{array}[]{cccc}u^{k_{x}}_{1}(X)&u% ^{k_{x}}_{2}(X)&\dots&u^{k_{x}}_{n}(X)\\ u^{k_{y}}_{1}(X)&u^{k_{y}}_{2}(X)&\dots&u^{k_{y}}_{n}(X)\\ u^{k_{z}}_{1}(X)&u^{k_{z}}_{2}(X)&\dots&u^{k_{z}}_{n}(X)\\ u^{l_{x}}_{1}(X)&u^{l_{x}}_{2}(X)&\dots&u^{l_{x}}_{n}(X)\\ u^{l_{y}}_{1}(X)&u^{l_{y}}_{2}(X)&\dots&u^{l_{y}}_{n}(X)\\ u^{l_{z}}_{1}(X)&u^{l_{z}}_{2}(X)&\dots&u^{l_{z}}_{n}(X)\end{array}\right]bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_X ) = [ start_ARRAY start_ROW start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL … end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) end_CELL end_ROW start_ROW start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL … end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) end_CELL end_ROW start_ROW start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL … end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) end_CELL end_ROW start_ROW start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL … end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) end_CELL end_ROW start_ROW start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL … end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) end_CELL end_ROW start_ROW start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) end_CELL start_CELL … end_CELL start_CELL italic_u start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) end_CELL end_ROW end_ARRAY ] (19)

It is worth noting that now -as expected- a single coordinate is capable of producing all modalities of strain, i.e. coupling is achieved. This concept is the soft variant of synergies in rigid robots [37], but extended for spatial coupling and multi-directional strains. It is also worth mentioning that the SVD is computationally very cheap, having the decomposition done in a matter of seconds for large snapshot matrices. For example, a snapshot matrix dealt with in this paper, as discussed in Section IV-C, with 6k snapshots and an abscissa discretization of 102 points, i.e. 𝚵612×6000𝚵superscript6126000\bm{\Xi}\in\mathbb{R}^{612\times 6000}bold_Ξ ∈ blackboard_R start_POSTSUPERSCRIPT 612 × 6000 end_POSTSUPERSCRIPT, was decomposed in just 1.2 s when run on an average computer.

III-B Reduction in Discrete Domain

To integrate the reduction approach with the discrete domain implementation of the kinematics discussed at the end of Section II-A, we follow a simpler process. This process facilitates the application to rigid joints and hybrid soft-rigid multibody systems. Assuming that there are p𝑝pitalic_p points at which Cosserat rod strains of all soft bodies and joint twists of all rigid joints are computed, a concatenated vector of strains can be defined as:

ΞC:=[𝝃1T𝝃1T,𝝃2T𝝃2T,,𝝃pT𝝃pT]T6passignsubscriptΞ𝐶superscriptsuperscriptsubscript𝝃1𝑇superscriptsubscript𝝃1absent𝑇superscriptsubscript𝝃2𝑇superscriptsubscript𝝃2absent𝑇superscriptsubscript𝝃𝑝𝑇superscriptsubscript𝝃𝑝absent𝑇𝑇superscript6𝑝\Xi_{C}:=[\bm{\xi}_{1}^{T}-\bm{\xi}_{1}^{*T},\bm{\xi}_{2}^{T}-\bm{\xi}_{2}^{*T% },...,\bm{\xi}_{p}^{T}-\bm{\xi}_{p}^{*T}]^{T}\in\mathbb{R}^{6p}roman_Ξ start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT := [ bold_italic_ξ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT - bold_italic_ξ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ italic_T end_POSTSUPERSCRIPT , bold_italic_ξ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT - bold_italic_ξ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ italic_T end_POSTSUPERSCRIPT , … , bold_italic_ξ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT - bold_italic_ξ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ italic_T end_POSTSUPERSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 6 italic_p end_POSTSUPERSCRIPT (20)

where 𝝃j𝝃jsubscript𝝃𝑗superscriptsubscript𝝃𝑗\bm{\xi}_{j}-\bm{\xi}_{j}^{*}bold_italic_ξ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - bold_italic_ξ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT is the strain at the jthsuperscript𝑗𝑡j^{th}italic_j start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT computational point. Note that the computational points include the rigid joints, the quadrature points of the space integration, and the Zannah quadrature points used for the approximation of Magnus expansion.

Applying POD and reduction of multiple snapshots of ΞCsubscriptΞ𝐶\Xi_{C}roman_Ξ start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT gives an optimal concatenated basis 𝚽ξ𝒪6p×nsubscript𝚽subscript𝜉𝒪superscript6𝑝𝑛{\bm{\Phi}_{\xi_{\mathcal{O}}}}\in\mathbb{R}^{6p\times n}bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 6 italic_p × italic_n end_POSTSUPERSCRIPT. The concatenated vector of reduced order strain is then given by:

𝝃C=𝚽ξ𝒪𝒒+𝝃Csubscript𝝃𝐶subscript𝚽subscript𝜉𝒪𝒒superscriptsubscript𝝃𝐶\bm{\xi}_{C}={\bm{\Phi}_{\xi_{\mathcal{O}}}}\bm{q}+\bm{\xi}_{C}^{*}bold_italic_ξ start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT = bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT bold_italic_q + bold_italic_ξ start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT (21)

where 𝝃Csuperscriptsubscript𝝃𝐶\bm{\xi}_{C}^{*}bold_italic_ξ start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT is the concatenated reference strain, 𝒒n𝒒superscript𝑛\bm{q}\in\mathbb{R}^{n}bold_italic_q ∈ blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT is the DOF of the reduced order model. The strain value at the jthsuperscript𝑗𝑡j^{th}italic_j start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT computational point can be extracted from (21) according to:

𝝃j=𝓔j𝚽ξ𝒪𝒒+𝝃jsubscript𝝃𝑗subscript𝓔𝑗subscript𝚽subscript𝜉𝒪𝒒superscriptsubscript𝝃𝑗\bm{\xi}_{j}=\bm{\mathcal{E}}_{j}{\bm{\Phi}_{\xi_{\mathcal{O}}}}\bm{q}+\bm{\xi% }_{j}^{*}bold_italic_ξ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = bold_caligraphic_E start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT bold_italic_q + bold_italic_ξ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT (22)

where, 𝓔j=[𝟎6×6(j1)𝑰6 06×6(pj)]subscript𝓔𝑗delimited-[]superscript066𝑗1subscript𝑰6superscript 066𝑝𝑗\bm{\mathcal{E}}_{j}=[\bm{0}^{6\times 6(j-1)}\;\bm{I}_{6}\;\bm{0}^{6\times 6(p% -j)}]bold_caligraphic_E start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = [ bold_0 start_POSTSUPERSCRIPT 6 × 6 ( italic_j - 1 ) end_POSTSUPERSCRIPT bold_italic_I start_POSTSUBSCRIPT 6 end_POSTSUBSCRIPT bold_0 start_POSTSUPERSCRIPT 6 × 6 ( italic_p - italic_j ) end_POSTSUPERSCRIPT ]. The reduced basis for the jthsuperscript𝑗𝑡j^{th}italic_j start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT computational point is given by 𝓔j𝚽ξ𝒪subscript𝓔𝑗subscript𝚽subscript𝜉𝒪\bm{\mathcal{E}}_{j}{\bm{\Phi}_{\xi_{\mathcal{O}}}}bold_caligraphic_E start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT. Since the computational points include all quadrature points, this process avoids the interpolation step during space intergration. The formulae for coefficients of generalized statics and dynamics remain the same, except for 𝑫𝑫\bm{D}bold_italic_D, 𝑲𝑲\bm{K}bold_italic_K, and 𝑩𝑩\bm{B}bold_italic_B. The updated formulas for the reduced basis are provided in Appendix B.

III-C Truncation Evaluation

A standard approach to evaluate the relative energy content of each mode in POD involves comparing the cthsuperscript𝑐𝑡c^{th}italic_c start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT singular value σcsubscript𝜎𝑐\sigma_{c}italic_σ start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT to the remaining singular values. A commonly employed metric for this assessment is given by the equation:

ε(r)=c=1rσc2c=1sσc2.𝜀𝑟superscriptsubscript𝑐1𝑟superscriptsubscript𝜎𝑐2superscriptsubscript𝑐1𝑠superscriptsubscript𝜎𝑐2\varepsilon(r)=\frac{\sum_{c=1}^{r}\sigma_{c}^{2}}{\sum_{c=1}^{s}\sigma_{c}^{2% }}.italic_ε ( italic_r ) = divide start_ARG ∑ start_POSTSUBSCRIPT italic_c = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT italic_σ start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_c = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_s end_POSTSUPERSCRIPT italic_σ start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG . (23)

Here ε𝜀\varepsilonitalic_ε quantifies the proportion of total relative energy captured when using the first r𝑟ritalic_r modes of the decomposition. It’s crucial to keep in mind that while this equation offers insights into the accuracy of the rank r𝑟ritalic_r reconstruction of the original data and the relative importance of each mode, for base selection in model reduction, configuration-based metrics are required instead.

IV Reduction of Soft Manipulators

In this section, we present multiple static and dynamic simulation scenarios to showcase our proposed reduction approach. This analysis focuses on cable-driven soft manipulators with different actuators’ routings and number of actuators. The dimensions and material parameters of the manipulators are detailed in Table I. We compare the ROM solution to the High-Order Model (HOM) solution (model used for data generation) using the tip position error metric. As discussed earlier in Section II-B, the static equilibrium is solved using root finding methods, with the straight, undeformed configuration being the initial guess for all the presented cases. As for the dynamics, the differential equation (9) is integrated using various numerical integrators. Both solvers are implemented in the MATLAB toolbox SoRoSim [34].

TABLE I: Parameters of the cable driven soft manipulators.
Single/Three-Actuators Six-Actuators
Length 25cm25𝑐𝑚25\;cm25 italic_c italic_m 60cm60𝑐𝑚60\;cm60 italic_c italic_m
Base Radius 1.25cm1.25𝑐𝑚1.25\;cm1.25 italic_c italic_m 2cm2𝑐𝑚2\;cm2 italic_c italic_m
Tip Radius 0.5cm0.5𝑐𝑚0.5\;cm0.5 italic_c italic_m 1cm1𝑐𝑚1\;cm1 italic_c italic_m
Density 1000kg/m31000𝑘𝑔superscript𝑚31000\;kg/m^{3}1000 italic_k italic_g / italic_m start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT
Young’s Modulus 1MPa1𝑀𝑃𝑎1\;MPa1 italic_M italic_P italic_a
Poisson’s Ratio 0.50.50.50.5
Dam** Constant 104Passuperscript104𝑃𝑎𝑠10^{4}\;Pa\cdot s10 start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT italic_P italic_a ⋅ italic_s

IV-A Single-Actuator Manipulator

In this scenario, we introduce a manipulator actuated by a single planar actuator. By ”planar” we imply that in an undeformed state, the actuator and the manipulator’s centerline 𝒓(X)𝒓𝑋\bm{r}(X)bold_italic_r ( italic_X ) coexist in a single plane. The actuator path is linear, defined by 𝒅1(0)=[0,0,1]Tcmsubscript𝒅10superscript001𝑇𝑐𝑚\bm{d}_{1}(0)=[0,0,1]^{T}\;cmbold_italic_d start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( 0 ) = [ 0 , 0 , 1 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_c italic_m and 𝒅1(L)=[0,0,0.3]Tcmsubscript𝒅1𝐿superscript000.3𝑇𝑐𝑚\bm{d}_{1}(L)=[0,0,0.3]^{T}\;cmbold_italic_d start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_L ) = [ 0 , 0 , 0.3 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_c italic_m at the base and tip of the manipulator, respectively.

Refer to caption
Figure 3: The resulting 1stsuperscript1𝑠𝑡1^{st}1 start_POSTSUPERSCRIPT italic_s italic_t end_POSTSUPERSCRIPT mode of the decomposition for the scenario in Section IV-A. As inset, the corresponding family of shapes produced from different scaling of the mode.
Refer to caption
Figure 4: The resulting first four modes of the decomposition for the scenario in Section IV-A with dynamics and gravitational load. As inset, the corresponding family of shapes produced from different scalings of each mode. The relative energy is indicated above each mode. The colors follow the same scheme of Figs. 3,5 and 6. However, only the red (y-bending) is apparent due to the planar routing in the xz𝑥𝑧x-zitalic_x - italic_z local plane, while the other strains are almost zero.

IV-A1 Statics

In statics, we define the strain fields (6D) using high-order polynomials. This approach is employed to generate high-fidelity simulation data. In this example, the basis matrix is defined to describe each of the 6 strains with Legendre polynomials up to the 10thsuperscript10𝑡10^{th}10 start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT order, resulting in 66 degrees of freedom. As the computational demand of solving the statics is low, this large number of degrees of freedom are initially defined to converge to the true solution. However, it’s worth noting that a smaller number could suffice. For instance, if certain strains are not activated, their corresponding basis terms can be omitted. Similarly, the polynomial order can be lowered if higher-order terms offer no significant advantages.

The strain snapshots are collected and organized according to the methodology discussed in Section III. Each snapshot is associated with an actuation value ranging from -5 N to 5 N in steps of 0.5 N, resulting in 21 snapshots. Following the execution of the POD technique previously discussed, we examine the resulting decomposition modes. Fig. 3 showcases the first mode obtained. It is apparent that unidirectional bending dominates, with insignificant shear and elongation components. For this principal mode, the contribution is ε(1)100%𝜀1percent100\varepsilon(1)\approx 100\%italic_ε ( 1 ) ≈ 100 %, indicating that this mode alone can single-handedly describe the system’s behavior. This reveals two key points: i) in this specific scenario, a single coordinate is sufficient to describe the system, and ii) all original data snapshots are merely scaling variations of this single mode, enabling its acquisition through a single snapshot instead of multiple ones.

Owing to the lack of external forces in this specific case, the static equilibrium equation, as represented by Equation (11), is reduced to 𝑲𝒒=𝑩(𝒒)𝑻𝑲𝒒𝑩𝒒𝑻\bm{Kq}=\bm{B}(\bm{q})\bm{T}bold_italic_K bold_italic_q = bold_italic_B ( bold_italic_q ) bold_italic_T. Generally, the dependence of 𝑩𝑩\bm{B}bold_italic_B on 𝒒𝒒\bm{q}bold_italic_q is minimal for planar actuator routes and non-existent for parallel (to the centerline) routing, assuming no external load is applied. This fact explains the presence of a single mode that can fully characterize the system, in agreement with [33].

IV-A2 Dynamics

Furthermore, we extend our study to the dynamic behavior of the soft manipulator under the influence of gravity. To clearly see what the decomposition modes resulting from the dynamics are, we simulate a step input in this case until steady-state is reached. Due to the high computational demand of dynamic simulations, we reduced the order of the HOM. We describe the manipulator with a second-order Legendre polynomial for each of the torsional, elongation, and both shearing strains, along with a fourth-order Legendre polynomial for each of the two bending strains. This parametrization results in a total of 22 DOFs.

We find that a single step input with excited transients, in the presence of gravity, results in performance comparable to longer babbling sequences when tested. Thus, we proceed with a single step of 5 N for 1.25 seconds (until the transients die out). This process consumes about 4 seconds of computation. We sample the strain snapshots at 100 Hz, resulting in a total of 126 snapshots. Fig. 4 shows the resulting first four main modes along with their relative energy contribution. It can be noted that now the gravitational load along with the transients of the dynamic behaviour introduce small, yet non-trivial modes to the decomposition.

IV-B Three-Actuator Manipulator

In this scenario, we explore a case involving multiple actuators. The manipulator under consideration has three actuators, with the same dimensions and properties as Section IV-A scenario, as detailed in Table I. The first actuator is exactly the one described previously in Section IV-A. The second is a non-planar, linear actuator, defined by 𝒅2(0)=[0,1,0]Tcmsubscript𝒅20superscript010𝑇𝑐𝑚\bm{d}_{2}(0)=[0,1,0]^{T}\;cmbold_italic_d start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( 0 ) = [ 0 , 1 , 0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_c italic_m and 𝒅2(L)=[0,0,0.3]Tcmsubscript𝒅2𝐿superscript000.3𝑇𝑐𝑚\bm{d}_{2}(L)=[0,0,-0.3]^{T}\;cmbold_italic_d start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_L ) = [ 0 , 0 , - 0.3 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_c italic_m. The third actuator is aligned parallel to the centerline with 𝒅3(X)=[0,0.5,0]Tcmsubscript𝒅3𝑋superscript00.50𝑇𝑐𝑚\bm{d}_{3}(X)=[0,-0.5,0]^{T}\;cmbold_italic_d start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_X ) = [ 0 , - 0.5 , 0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_c italic_m. We employ the same basis definition for data generation as discussed in Section IV-A statics scenario.

Given that now there are three actuators, the actuation space needs to be sampled comprehensively. This requires dividing the actuation space into equal increments and testing all possible combinations, resulting in exponential complexity. In this specific case, we use 11 steps within the [5,5]55[-5,5][ - 5 , 5 ] N range, yielding a total of 113=1331superscript113133111^{3}=133111 start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT = 1331 snapshots.

Upon performing the decomposition, a set of modes is generated that collectively represent the system. The main three primary modes, whose sum of relative energies are almost 100%, are depicted in Fig. 5, highlighting that all rotational strains now contribute to the deformation of the manipulator.

Refer to caption
Figure 5: The first three modes of Section IV-B scenario decomposition, with their respective family of shapes below. The relative energy is indicated above each mode. The blue, red, yellow, purple, green and light blue curves are the modes of the torsional, y-bending, z-bending, elongation, y-shearing and z-shearing strains respectively.
Refer to caption
Figure 6: The resulting first ten modes of the decomposition for the scenario in Section IV-C. As inset, the corresponding family of shapes produced from different scaling of each mode. The relative energy is indicated above each mode. It is observed that the planes of bending in mode 1 and 2 are perpendicular, and so is the case with mode 3 and 4. The blue, red, yellow, purple, green and light blue curves are the modes of the torsional, y-bending, z-bending, elongation, y-shearing and z-shearing strains respectively.

IV-C Six-Actuator Multisection Manipulator

In this section, we present a six-actuator manipulator where the actuation domain of three span the whole body while the other three span only half of it. The actuators are placed 60 degrees apart and alternating in their actuation domain, their path is straight, and at the surface of the manipulator. The manipulator is positioned vertically and subjected to gravitational load, in contrast to the cantilever position presented earlier. The dimensions and material properties of the manipulator can be seen in Table I.

The cables affecting only half of the manipulator introduce strain discontinuities at the terminal point. These discontinuities can affect solutions approximated by continuous functions. To address this, while defining the HOM, we split the abscissa domain X𝑋Xitalic_X into two sections, assigning separate strain bases to each. This approach effectively captures the discontinuity. For each manipulator section, we use a first-order Legendre polynomial (linear) for torsional, elongation, and shear strains, and a second-order Legendre polynomial (quadratic) for bending strains. This results in 28 DOFs for the entire manipulator. Note that a discontinuous basis covering the whole manipulator, with non-zero values only at either sections, can be used equivalently.

Considering the presence of multiple actuators, exploring the actuation space requires a different approach. In statics, this involves dividing the actuation space into equal segments and evaluating all combinations, leading to exponential complexity. However, we shift our attention now, presenting an appropriate method to cover the actuation space for dynamics. We find that babbling is most effective in covering the actuation space. Babbling is generally the process of repeatedly executing a randomized actuation signal for some period of time. It can be implemented in various ways, however, we do so by holding a random actuation value within a specific range for a specific time per actuator. To further improve on this, we do not fix the holding time; instead, we vary it randomly within a chosen interval. This way, the number of possible combinations increases, maximizing the actuation space coverage. For our case, we actuate the manipulator within the range [20 20]Ndelimited-[]2020𝑁[-20\;20]\;N[ - 20 20 ] italic_N, and the holding time is within [0.5 1]sdelimited-[]0.51𝑠[0.5\;1]\;s[ 0.5 1 ] italic_s, changing independently for each actuator.

We simulate 1 minute of variable-hold babbling, sampled at 100 Hz. Upon gathering and arranging the 6k strain snapshots, we perform the POD. The resulting decomposition modes, their respective family of shapes and relative energy can be seen in Fig. 6. The benefit of dividing the domain into multiple sections can already be seen from the resulting modes. That is because the jump in strain introduced by the shorter actuators would have been tough to capture using a single section. In addition, the resulting optimal mode is discontinuous, and treats the whole manipulator as one section, further reducing the required DOFs. Accommodating discontinuities in strain fields is one of the advantages over position-based models, as discussed in [33]. It is worth noting that the first two modes generally represent the deformation caused by the longer actuators. The planes of deformation for these two modes are orthogonal, thus linear combinations of both modes can rotate the plane of deformation. As for the following two modes, they correspond to the shorter actuators, and the deformation planes are orthogonal as well. These present a good example of embodied orthogonality seen from the POD. The higher modes correspond to the remaining motions induced by the transients and gravitational load.

IV-D ROM Testing

Refer to caption
Figure 7: Comparison between the HOM and ROM solutions for the scenario in Section IV-A.
Refer to caption
Figure 8: Tip position error (between the ROM and HOM) and normalized computation time against the number of DOFs for the ROM for the scenario in Section IV-C. The average (solid) and the standard deviation (envelope) of the tip position error along the 10 seconds of testing are shown in the shaded error envelope. The error converges to almost zero starting from 18 DOFs, marking a clear choice for the number of DOFs.
Refer to caption
Figure 9: Interpolation-extrapolation abilities for multiple cases of different snapshots. The error axis is limited to what is presented due to the difference in the order of magnitude for the single snapshot case (blue), where the error reaches 0.092 and 0.045 m at 0 and -10 N respectively.

While in previous sections we performed our reduction approach, analyzed the results, and visualized the decomposition modes, we never used these modes to parameterize the strain fields and solve the statics or dynamics of the system. In this section, the performance, computational load and the interpolation-extrapolation abilities of the new ROM are presented. Our analysis aims to utilize minimal data, subsequently comparing the ROM, varying in the number of degrees of freedom, with the HOM.

IV-D1 Single-Actuator Manipulator

Utilizing the single obtained coupled mode in the static, zero-gravity analysis in Section IV-A, we solve the equilibrium equation for multiple actuation values that fall inside and outside the original data range. The resulting configuration is then compared with the HOM, as depicted in Fig. 7. We can see an almost perfect match between both configurations, with tip position errors of (0,11.96,34.33,44.21)μm011.9634.3344.21𝜇𝑚(0,11.96,34.33,44.21)\;\mu m( 0 , 11.96 , 34.33 , 44.21 ) italic_μ italic_m at the actuation levels of (0,2,5,10)02510(0,-2,-5,-10)( 0 , - 2 , - 5 , - 10 ) N respectively. It is worth noting that using a single snapshot for the POD (i.e. the snapshot is the mode), the tip errors are almost unchanged, confirming our earlier remark. In addition, we assess the computational cost reduction for the dynamic case with gravity, whose modes are shown in Fig. 4. It is observed that simulating 10 seconds of continuously changing actuation required only 2 seconds of computation while using all 4 main modes, allowing for utilization in real-time applications.

IV-D2 Three-Actuator Manipulator

To validate the ROM, the least number of modes is employed to solve the statics of Section IV-B system. It is found that a minimum of three modes is necessary to achieve a configuration that closely resembles the HOM, as the solution deviates significantly when using one or two modes. We conclude, as anticipated, there exists a lower limit on the number of modes needed for a reliable reduced-order representation. Generally, the number of modes should be at least equal to the number of actuators, i.e. nna𝑛subscript𝑛𝑎n\geq n_{a}italic_n ≥ italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT. Using these three modes, the system’s static equilibrium is then solved for multiple actuation levels, within and beyond that of the original data, similar to what was done in earlier. The resulting configurations match almost perfectly with the HOM solutions, exhibiting errors in the order of micrometers. Multiple comparison cases can be seen in the supplementary video for this scenario, as well as the single actuator case, where we report the RMSE metric using multiple points along the manipulators body.

IV-D3 Six-Actuator Multisection Manipulator

We test our ROM in dynamics for the scenario presented in Section IV-C. A random discrete signal of 1 Hz is applied to each actuator for 10 seconds. Then, the tip position of the ROM solution is compared to that of the original HOM. The range of actuation is 150% larger than that used for the HOM. The error between both tip positions can be seen in Fig. 8 when using various numbers of DOFs. It can be seen that, as expected, the error monotonically decreases as the degrees of freedom increase. At 18 DOFs, the error drops to almost zero, showing the applicability of the ROM to actuation ranges beyond the original. As seen from the relative energy content of each mode in Fig. 6, the cumulative sum does not represent how the system will perform. For instance, the cumulative relative energy content of the first 10 modes is ε(10)=99.634%𝜀10percent99.634\varepsilon(10)=99.634\%italic_ε ( 10 ) = 99.634 %. While this might seem significant, a substantial error is exhibited at that number of degrees of freedom, as seen in Fig. 8. This indicates that the position error metric is a more appropriate method of truncation than the relative energy content. This is due to the existence of specific higher modes that allow small, yet important deformations essential for the full description of the dynamics.

IV-D4 Interpolation-Extrapolation Performance

To show the effect of snapshot amount and the interpolation extrapolation abilities, we study statics of Section IV-A scenario with gravity. We chose this case due to the apparent non-linearity present due to the gravitational load, that introduce additional non-trivial modes to the decomposition. In the study, we solve the static equilibrium of the system under a range of actuation, specifically [-10 0] N, for five different cases. Each case corresponds to a different number of snapshots used to acquire the optimal strain bases used to solve the system. The snapshots are taken equidistantly within the [-5 0] N range. For instance, the three snapshots case utilizes the strain acquired from 0, -2.5 and -5 N of actuation. The special case of a single snapshot uses just one actuation value at -5 N. The error in tip position between the resulting ROM and the HOM is shown in Fig. 9 for the different cases. It is intuitive that as the number of snapshots increases, the interpolation capabilities are better, and this is clearly seen from the figure. However, what is remarkable here is the extrapolation abilities that are drastically improved over a wide range outside the snapshots’ domain, when more snapshots are used. It is worth noting here that we use as many modes as snapshots for each presented case. While this would make the comparison a bit unfair, the insights gained from the study are valuable, and the same would apply for the cases of multiple actuators and snapshots.

V Reduction of Hybrid Soft-Rigid Robots

This section demonstrates the use of our POD-based ROM technique in contexts beyond slender soft manipulators. We aim to illustrate the versatility and effectiveness of this approach in a variety of robotic systems, including hyper-redundant rigid robots and hybrid closed-chain prototypes.

V-A Cable-Driven Hyper-Redundant Manipulator

The first example we apply our approach to is a robot that resembles a soft, slender manipulator but consists of 24 rigid parts connected by spherical joints, resulting in a total of 72 DOFs. The manipulator is driven by six cables, separated by 60 degrees, and alternating in their actuation domain, similar to that presented in Section IV-C. The spherical joints have non-linear stiffness that rises significantly at a specific angle (governed by the geometry), modeling the contact between the rigid parts. A system diagram is presented in Fig. 10.

Refer to caption
Figure 10: Schematic of the cable-driven hyper-redundant manipulator. (A) 24 rigid bodies are connected to each other through spherical joints with a nonlinear stiffness model, as shown in the inset. (B) Actuation model

The actuation force of the cables is computed according to Fig. 10B. Consider kthsuperscript𝑘𝑡k^{th}italic_k start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT cable and adjacent rigid bodies i𝑖iitalic_i and i+1𝑖1i+1italic_i + 1. A fixed transformation matrix from the center of mass (CM) of the body i𝑖iitalic_i to the cable outlet on the right side is given by 𝒈Ri,ksubscriptsubscript𝒈𝑅𝑖𝑘{\bm{g}_{R}}_{i,k}bold_italic_g start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT. Similarly, 𝒈Li+1,ksubscriptsubscript𝒈𝐿𝑖1𝑘{\bm{g}_{L}}_{i+1,k}bold_italic_g start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i + 1 , italic_k end_POSTSUBSCRIPT is the fixed transformation matrix that connects the CM of the body i+1𝑖1i+1italic_i + 1 to the cable outlet on its left side. Hence, the transformation matrix from the global frame to the location of kthsuperscript𝑘𝑡k^{th}italic_k start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT cable on each body is given by 𝒈CMi𝒈Ri,ksubscriptsubscript𝒈𝐶𝑀𝑖subscriptsubscript𝒈𝑅𝑖𝑘{\bm{g}_{CM}}_{i}{\bm{g}_{R}}_{i,k}bold_italic_g start_POSTSUBSCRIPT italic_C italic_M end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT bold_italic_g start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT and 𝒈CMi+1𝒈Li+1,ksubscriptsubscript𝒈𝐶𝑀𝑖1subscriptsubscript𝒈𝐿𝑖1𝑘{\bm{g}_{CM}}_{i+1}{\bm{g}_{L}}_{i+1,k}bold_italic_g start_POSTSUBSCRIPT italic_C italic_M end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT bold_italic_g start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i + 1 , italic_k end_POSTSUBSCRIPT. Using this, we can compute the direction of the actuation force on body i𝑖iitalic_i (𝑻Ri,ksubscriptsubscript𝑻𝑅𝑖𝑘{\bm{T}_{R}}_{i,k}bold_italic_T start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT) and i+1𝑖1i+1italic_i + 1 (𝑻Li+1,ksubscriptsubscript𝑻𝐿𝑖1𝑘{\bm{T}_{L}}_{i+1,k}bold_italic_T start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i + 1 , italic_k end_POSTSUBSCRIPT). Every rigid body, except the terminal one, is subject to cable tension on the left and right sides. The combined actuation wrench on body i𝑖iitalic_i is given by,

𝓕ai=Σk=1na(Ad𝒈Li,k[𝟎𝑻LTi,k]T+Ad𝒈Ri,k[𝟎𝑻RTi,k]T).subscript𝓕subscript𝑎𝑖superscriptsubscriptΣ𝑘1subscript𝑛𝑎subscriptsuperscriptAdsubscriptsubscript𝒈𝐿𝑖𝑘superscriptdelimited-[]0subscriptsuperscriptsubscript𝑻𝐿𝑇𝑖𝑘𝑇subscriptsuperscriptAdsubscriptsubscript𝒈𝑅𝑖𝑘superscriptdelimited-[]0subscriptsuperscriptsubscript𝑻𝑅𝑇𝑖𝑘𝑇{\bm{\mathcal{F}}}_{a_{i}}=\Sigma_{k=1}^{n_{a}}\left(\text{Ad}^{*}_{{\bm{g}_{L% }}_{i,k}}[\bm{0}\;{\bm{T}_{L}^{T}}_{i,k}]^{T}+\text{Ad}^{*}_{{\bm{g}_{R}}_{i,k% }}[\bm{0}\;{\bm{T}_{R}^{T}}_{i,k}]^{T}\right).bold_caligraphic_F start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT = roman_Σ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( Ad start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT bold_italic_g start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT [ bold_0 bold_italic_T start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT + Ad start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT bold_italic_g start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT [ bold_0 bold_italic_T start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ) . (24)

In statics, we apply only 0 and -25 N for each cable, resulting in 64 snapshots. Those are basically the corners of the 6D hypercube in the actuation space. The snapshots of the solution -in this case angles- are then arranged and decomposed as discussed in Section III. The resulting modes of decomposition are then used to solve the ROM.

Upon finding the decomposition matrices, the first n𝑛nitalic_n left singular vectors are used as the reduced system basis matrix 𝚽ξ𝒪(24×6)×nsubscript𝚽subscript𝜉𝒪superscript246𝑛{\bm{\Phi}_{\xi_{\mathcal{O}}}}\in\mathbb{R}^{(24\times 6)\times n}bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT ( 24 × 6 ) × italic_n end_POSTSUPERSCRIPT. This reduced basis matrix maps the reduced generalized coordinates 𝒒𝒒\bm{q}bold_italic_q to the HOM joint twist 𝝃isubscript𝝃𝑖\bm{\xi}_{i}bold_italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT as follows:

𝝃i=𝓔i𝚽ξ𝒪𝒒subscript𝝃𝑖subscript𝓔𝑖subscript𝚽subscript𝜉𝒪𝒒\bm{\xi}_{i}=\bm{\mathcal{E}}_{i}{\bm{\Phi}_{\xi_{\mathcal{O}}}}\bm{q}bold_italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = bold_caligraphic_E start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT bold_italic_q (25)

where, 𝝃i=[θx,θy,θz, 0, 0, 0]iTsubscript𝝃𝑖subscriptsuperscriptsubscript𝜃𝑥subscript𝜃𝑦subscript𝜃𝑧 0 0 0𝑇𝑖\bm{\xi}_{i}=[\theta_{x},\;\theta_{y},\;\theta_{z},\;0,\;0,\;0]^{T}_{i}bold_italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = [ italic_θ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT , italic_θ start_POSTSUBSCRIPT italic_z end_POSTSUBSCRIPT , 0 , 0 , 0 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. The resulting modes now couple all rotations of the spherical joint for all joints, rather than each direction of each joint being governed by a separate coordinate. This clearly shows how our approach extends the concept of robot synergies to spatial coupling and multi-directional strains/twists.

Refer to caption
Figure 11: Solutions comparison between the HOM and the ROM of the cable-driven multi-joint manipulator. Each panel has the solution of five different actuation combinations of the six cables for the 72 DOFs HOM (opaque gray body) as well as the ROM (transparent red body). Table II details the actuation values used. The total tip position error is the sum of each corresponding tip position error for the five actuation levels. The solution time speedup factor is calculated for each case, and the average is reported.

The ROM is then solved and compared to the HOM. For different numbers of DOFs, both solutions are compared at 5 different actuation levels, outlined in Table II. The resulting configurations, along with errors and computation speed-up factors, are shown in Fig. 11. It can be observed that at 16 DOFs, the total tip position error is minimal, and the configurations of the HOM and ROM solutions are indistinguishable. This is a significant reduction from the original 72 DOFs, while exhibiting negligible errors and speeding the computational time needed by a factor of 3.2.

V-B Soft-Legged Platform

So far, we have applied our proposed ROM method to entirely soft, strain-parametrized prototypes (Section IV), as well as an entirely discrete-jointed prototype (Section V-A). In this section, we test the method on a hybrid system that consists of both soft and rigid components with discrete joints. The system consists of a triangular (40cm40𝑐𝑚40\;cm40 italic_c italic_m isosceles), rigid platform with three soft legs (30cm30𝑐𝑚30\;cm30 italic_c italic_m with rectangular 6×3cm263𝑐superscript𝑚26\times 3\;cm^{2}6 × 3 italic_c italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT cross-section) connected to the center of each triangle edge through a revolute joint. Two of the legs are connected to the ground with revolute joints, while the third is connected with a fixed joint for a restoring force, making the resulting system a hybrid, closed-chain prototype. A diagram of the system can be shown in Fig. 12.

Each soft leg is parameterized with a third-order Legendre polynomial for each of the 6 strains, i.e. 18 DOFs per leg. With three degrees of freedom for the revolute joints, the total becomes 57 DOFs. The remaining two revolute joints are closed-loop joints and are not counted as degrees of freedom. The prototype is excited by a random 6D wrench applied at the CM of the rigid platform. The wrench changes every 0.25 to 0.5 seconds, and the system is simulated for 50 seconds. Snapshots of the system response are then gathered and arranged as discussed in Section III-B. Upon performing the POD, we acquire bases that encompass both the soft (strain coefficients) and rigid (joint angles) coordinates. The new bases are used to solve the system.

TABLE II: The five actuation levels for the cable-driven hyper-redundant manipulator comparison cases shown in Fig. 11.
Actuation Level (N)
1 2 3 4 5
Cable 1 -12.5 -50 -12.5 -25 -25
Cable 2 -12.5 0 -12.5 0 0
Cable 3 0 0 0 -10 -30
Cable 4 0 0 0 0 -10
Cable 5 0 0 -25 -40 -10
Cable 6 0 0 -10 -10 0
Refer to caption
Figure 12: Schematic of the closed chain soft-legged platform. The crossed square represents a fixed joint, while the semicircular arrows represent revolute joints. The dashed semicircular arrows are closed-loop revolute joints.
Refer to caption
Figure 13: Solution snapshots comparison for the 10 s testing between the 57 DOFs HOM and the 25 DOFs ROM of the soft-legged platform. Both HOM and ROM configurations are overlaid in each panel, with the ROM being the transparent one (which can be clearly seen in the third panel only). The trail of the chosen error points over the preceding second are plotted for both HOM (solid black) and ROM (dashed blue) solutions.
Refer to caption
Figure 14: Total error (between the ROM and HOM) and normalized computation time against the number of DOFs for the ROM of the soft-legged platform (Section V-B). The total error is the sum of the errors of six points, the midpoint of each soft leg, and the tips of the triangular platform. The average (solid) and the standard deviation (envelope) of the total error along the 10 seconds of testing are shown in the shaded error envelope. The modes up to 10 DOFs did not allow for any reaction to the input, kee** the error constant, hence not showing most of them.

We simulate 10 seconds of a new random wrench excitation within the same range using different DOFs for the ROM. To assess the performance of the ROM, we choose the error to be the summation of six points, the midpoint of each soft leg, and the tips of the triangular platform. The average and standard deviation of the total error over the 10 seconds are reported in Fig. 14. In the same figure, the normalized computation time (inverse of the speed-up factor) is shown as well. A clear decision about the number of DOFs for the ROM can be made from this analysis, as 23-27 DOFs hold the best error-computation time balance. In addition to using less than half the HOM DOFs, using this range of DOFs results in a speed-up factor of more than 13. The configurations of both HOM and ROM solutions using 25 DOFs at different instants are shown in Fig. 13. In addition, the trail of the six chosen error points over the preceding second is compared, showing the close matching of both solutions.

TABLE III: Speed-up factors for different scenarios that correspond to ROMs with 5% tip position error (normalized by one body length). For the soft-legged platform (Section V-B), the average of the six chosen points is used, and the length of one leg is used as a body length.
Scenario Section Simulation type Speed-up factor
IV-A Dynamic 5.25.25.25.2
IV-B Static 6.86.86.86.8
IV-C Dynamic 2.72.72.72.7
V-A Static 12.612.612.612.6
V-B Dynamic 16.816.816.816.8

VI Application to Shape Estimation

To evaluate the potential benefits of employing the proposed method for high-dimensional soft robots, we utilize our reduction approach in the context of shape estimation. We achieve this through: (1) modeling and simulating a complex six-cable soft manipulator; (2) obtaining the strain modes capable of efficiently describing the system by decomposing the simulation data; and then (3) utilizing the extracted modes and decomposition insights in a shape estimation task using a minimal number of sensory inputs. This process allows us to verify and demonstrate the applicability of our approach.

In recent years, there has been increasing interest in estimating the state of continuum robots using sensor data. For instance, in [38], [39] and [40], the pose (position and orientation) of certain markers is utilized with an electromagnetic tracking system for shape estimation. ROMs hold promise in enhancing shape estimation methods by significantly reducing the variables required to describe the 3D geometry of soft robots. This reduction not only minimizes the sensor requirements but also lowers the computational costs of the algorithms involved. Here, we propose an estimation approach that predicts the shape of soft robots based solely on the measured positions of a limited number of markers. Our method differs from other approaches in that it only tracks the positions of markers placed along the soft robot, rather than measuring both position and orientation. This simplifies sensor placement requirements to some extent.

VI-A Experimental prototype

We use a silicone-based soft robot prototype with dimensions matching those of the single-actuator manipulator described in Table I. The actuation cables are routed externally through disk-guides, which are 3D printed with polylactic acid (PLA), and integrated with the silicone body. The radius of these disks is 3 mm larger than the manipulator’s radius at their respective locations. The manipulator is equipped with 6 linearly independent actuators, with 3 of them extending from the base to the tip of the manipulator, while the remaining 3 terminate at the midpoint of the manipulator. In this case, accurately modeling tension loss due to friction at the contact points is crucial. To quantify this frictional effect, we employ the Capstan equation [41]:

Tk,d+1Tk,d=eμϕkd,subscript𝑇𝑘𝑑1subscript𝑇𝑘𝑑superscript𝑒𝜇subscriptitalic-ϕ𝑘𝑑\frac{T_{k,d+1}}{T_{k,d}}=e^{-\mu\phi_{kd}},divide start_ARG italic_T start_POSTSUBSCRIPT italic_k , italic_d + 1 end_POSTSUBSCRIPT end_ARG start_ARG italic_T start_POSTSUBSCRIPT italic_k , italic_d end_POSTSUBSCRIPT end_ARG = italic_e start_POSTSUPERSCRIPT - italic_μ italic_ϕ start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUPERSCRIPT , (26)

where:

ϕkd=cos1(𝒗LkdT𝒗Rkd),subscriptitalic-ϕ𝑘𝑑superscript1superscriptsubscript𝒗subscript𝐿𝑘𝑑𝑇subscript𝒗subscript𝑅𝑘𝑑\phi_{kd}=\cos^{-1}(-\bm{v}_{L_{kd}}^{T}\bm{v}_{R_{kd}}),italic_ϕ start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT = roman_cos start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( - bold_italic_v start_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_italic_v start_POSTSUBSCRIPT italic_R start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) , (27)

μ𝜇\muitalic_μ is the coefficient of friction, and k𝑘kitalic_k is the actuator index and 𝒗Lkd,𝒗Rkdsubscript𝒗subscript𝐿𝑘𝑑subscript𝒗subscript𝑅𝑘𝑑\bm{v}_{L_{kd}},\bm{v}_{R_{kd}}bold_italic_v start_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT , bold_italic_v start_POSTSUBSCRIPT italic_R start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT are unit vectors in the kthsuperscript𝑘𝑡k^{th}italic_k start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT actuator directions on both sides of the dthsuperscript𝑑𝑡d^{th}italic_d start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT guiding disk (see Fig. 15). The resultant actuation force 𝒇kdsubscript𝒇𝑘𝑑\bm{f}_{kd}bold_italic_f start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT is:

𝒇kd=𝒗LkdTk,d+𝒗RkdTk,d+1,subscript𝒇𝑘𝑑subscript𝒗subscript𝐿𝑘𝑑subscript𝑇𝑘𝑑subscript𝒗subscript𝑅𝑘𝑑subscript𝑇𝑘𝑑1\bm{f}_{kd}=\bm{v}_{L_{kd}}T_{k,d}+\bm{v}_{R_{kd}}T_{k,d+1},bold_italic_f start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT = bold_italic_v start_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_T start_POSTSUBSCRIPT italic_k , italic_d end_POSTSUBSCRIPT + bold_italic_v start_POSTSUBSCRIPT italic_R start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_T start_POSTSUBSCRIPT italic_k , italic_d + 1 end_POSTSUBSCRIPT , (28)

which can then be considered a concentrated force at the cable hole. The corresponding actuation wrench acting on disk center d𝑑ditalic_d is given by:

𝓕𝒂𝒅(X)=k=1naAd𝒈𝒇kd[𝟎𝒗Lkd+𝒗Rkdeμϕkd]eμj=1d1ϕkjTksubscript𝓕subscript𝒂𝒅𝑋superscriptsubscript𝑘1subscript𝑛𝑎subscriptsuperscriptAdsubscript𝒈subscript𝒇𝑘𝑑delimited-[]0subscript𝒗subscript𝐿𝑘𝑑subscript𝒗subscript𝑅𝑘𝑑superscript𝑒𝜇subscriptitalic-ϕ𝑘𝑑superscript𝑒𝜇superscriptsubscript𝑗1𝑑1subscriptitalic-ϕ𝑘𝑗subscript𝑇𝑘\small\bm{\mathcal{F}_{a_{d}}}(X)=\sum_{k=1}^{n_{a}}\text{Ad}^{*}_{\bm{g}_{\bm% {f}_{kd}}}\left[\begin{array}[]{c}\bf{0}\\ \bm{v}_{L_{kd}}+\bm{v}_{R_{kd}}e^{-\mu\phi_{kd}}\end{array}\right]e^{-\mu\sum_% {j=1}^{d-1}\phi_{kj}}{T}_{k}bold_caligraphic_F start_POSTSUBSCRIPT bold_italic_a start_POSTSUBSCRIPT bold_italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_X ) = ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT end_POSTSUPERSCRIPT Ad start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT bold_italic_g start_POSTSUBSCRIPT bold_italic_f start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT end_POSTSUBSCRIPT [ start_ARRAY start_ROW start_CELL bold_0 end_CELL end_ROW start_ROW start_CELL bold_italic_v start_POSTSUBSCRIPT italic_L start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT + bold_italic_v start_POSTSUBSCRIPT italic_R start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_e start_POSTSUPERSCRIPT - italic_μ italic_ϕ start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUPERSCRIPT end_CELL end_ROW end_ARRAY ] italic_e start_POSTSUPERSCRIPT - italic_μ ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_d - 1 end_POSTSUPERSCRIPT italic_ϕ start_POSTSUBSCRIPT italic_k italic_j end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_T start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT (29)

where ndsubscript𝑛𝑑n_{d}italic_n start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT is the number of guiding disks. The wrench can then be projected onto the generalized coordinates space through the Jacobian at the point of application: soft body centerline. The properties of the prototype were identified experimentally, yielding a Young’s modulus of 0.75MPa0.75MPa0.75\;\text{MPa}0.75 MPa, a density of 1349.5kg/m31349.5superscriptkg/m31349.5\;\text{kg/m}^{3}1349.5 kg/m start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT, and a friction coefficient of 0.350.350.350.35.

Refer to caption
Figure 15: Externally disk-guided actuation model. The transformation 𝒈𝒇kdsubscript𝒈subscript𝒇𝑘𝑑\bm{g}_{\bm{f}_{kd}}bold_italic_g start_POSTSUBSCRIPT bold_italic_f start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT is from the local robot frame at disk d𝑑ditalic_d location Xdsubscript𝑋𝑑X_{d}italic_X start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT, to the contact point between the kthsuperscript𝑘𝑡k^{th}italic_k start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT actuator and the disk through translation only (𝑹𝒇kd=𝑰subscript𝑹subscript𝒇𝑘𝑑𝑰\bm{R}_{\bm{f}_{kd}}=\bm{I}bold_italic_R start_POSTSUBSCRIPT bold_italic_f start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT = bold_italic_I and 𝒓kd=𝒅k(Xd\bm{r}_{kd}=\bm{d}_{k}(X_{d}bold_italic_r start_POSTSUBSCRIPT italic_k italic_d end_POSTSUBSCRIPT = bold_italic_d start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT)).
Refer to caption
Figure 16: Comparison of the true shape and estimated shape using the experimental prototype.

VI-B Shape Estimation

The proposed approach is to estimate the generalized coordinates 𝒒𝔢superscript𝒒𝔢\bm{q}^{\mathfrak{e}}bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT that define the manipulator’s shape such that the markers’ positions match the measurements 𝒑𝔪superscript𝒑𝔪\bm{p}^{\mathfrak{m}}bold_italic_p start_POSTSUPERSCRIPT fraktur_m end_POSTSUPERSCRIPT. Given the estimated generalized coordinates vector 𝒒𝔢superscript𝒒𝔢\bm{q}^{\mathfrak{e}}bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT with an optimal basis parametrization, the strain is:

𝝃𝔢(X,𝒒𝔢)=𝚽ξ𝒪(X)𝒒𝔢+𝝃,superscript𝝃𝔢𝑋superscript𝒒𝔢subscript𝚽subscript𝜉𝒪𝑋superscript𝒒𝔢superscript𝝃\bm{\xi}^{\mathfrak{e}}(X,\bm{q}^{\mathfrak{e}})={\bm{\Phi}_{\xi_{\mathcal{O}}% }}(X)\bm{q}^{\mathfrak{e}}+\bm{\xi}^{*},bold_italic_ξ start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ( italic_X , bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ) = bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_X ) bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT + bold_italic_ξ start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , (30)

which can be integrated using equation (4) to get the full robot configuration. The estimated transformation matrix of the mthsuperscript𝑚𝑡m^{th}italic_m start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT marker can be expressed as follows:

𝒈m𝔢(𝒒𝔢)=𝒈(Xm,𝒒𝔢)𝒈m,subscriptsuperscript𝒈𝔢𝑚superscript𝒒𝔢𝒈subscript𝑋𝑚superscript𝒒𝔢subscript𝒈𝑚\bm{g}^{\mathfrak{e}}_{m}(\bm{q}^{\mathfrak{e}})=\bm{g}(X_{m},\bm{q}^{% \mathfrak{e}})\bm{g}_{m},bold_italic_g start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ) = bold_italic_g ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT , bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ) bold_italic_g start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT , (31)

where Xmsubscript𝑋𝑚X_{m}italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT is the distance along the manipulator’s centerline until the cross-section at which the mthsuperscript𝑚𝑡m^{th}italic_m start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT marker is attached, and 𝒈msubscript𝒈𝑚\bm{g}_{m}bold_italic_g start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT is the known transformation between the centerline of the manipulator at Xmsubscript𝑋𝑚X_{m}italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT and the marker position (𝑹m=𝑰subscript𝑹𝑚𝑰\bm{R}_{m}=\bm{I}bold_italic_R start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT = bold_italic_I and 𝒓m=[0,pym,pzm]Tsubscript𝒓𝑚superscript0subscript𝑝subscript𝑦𝑚subscript𝑝subscript𝑧𝑚𝑇\bm{r}_{m}=[0,\;p_{y_{m}},\;p_{z_{m}}]^{T}bold_italic_r start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT = [ 0 , italic_p start_POSTSUBSCRIPT italic_y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_z start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_POSTSUBSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT). The estimated position of the markers 𝒑m𝔢(𝒒𝔢)superscriptsubscript𝒑𝑚𝔢superscript𝒒𝔢\bm{p}_{m}^{\mathfrak{e}}(\bm{q}^{\mathfrak{e}})bold_italic_p start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ), can be obtained directly from 𝒈m𝔢(𝒒𝔢)superscriptsubscript𝒈𝑚𝔢superscript𝒒𝔢\bm{g}_{m}^{\mathfrak{e}}(\bm{q}^{\mathfrak{e}})bold_italic_g start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ). We can define the error for the measurement in the mthsuperscript𝑚𝑡m^{th}italic_m start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT marker as:

𝒆m(𝒒𝔢)=𝒑m𝔢(𝒒𝔢)𝒑m𝔪subscript𝒆𝑚superscript𝒒𝔢subscriptsuperscript𝒑𝔢𝑚superscript𝒒𝔢subscriptsuperscript𝒑𝔪𝑚\bm{e}_{m}(\bm{q}^{\mathfrak{e}})={\bm{p}^{\mathfrak{e}}_{m}(\bm{q}^{\mathfrak% {e}})-\bm{p}^{\mathfrak{m}}_{m}}bold_italic_e start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ) = bold_italic_p start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ) - bold_italic_p start_POSTSUPERSCRIPT fraktur_m end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT (32)

Then, we define the following minimization problem:

min𝒒𝔢subscriptsuperscript𝒒𝔢\displaystyle\min_{\bm{q}^{\mathfrak{e}}}roman_min start_POSTSUBSCRIPT bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT 𝒆(𝒒𝔢)22\displaystyle\lVert\bm{e}(\bm{q}^{\mathfrak{e}})\lVert_{2}^{2}∥ bold_italic_e ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ) ∥ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT (33)
s.t. 𝒒max>𝒒𝔢>𝒒minsubscript𝒒𝑚𝑎𝑥superscript𝒒𝔢subscript𝒒𝑚𝑖𝑛\displaystyle\bm{q}_{max}>\bm{q}^{\mathfrak{e}}>\bm{q}_{min}bold_italic_q start_POSTSUBSCRIPT italic_m italic_a italic_x end_POSTSUBSCRIPT > bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT > bold_italic_q start_POSTSUBSCRIPT italic_m italic_i italic_n end_POSTSUBSCRIPT

where 𝒆=[𝒆1T,𝒆2T,,𝒆nmT]T𝒆superscriptsuperscriptsubscript𝒆1𝑇superscriptsubscript𝒆2𝑇superscriptsubscript𝒆subscript𝑛𝑚𝑇𝑇\bm{e}=[\bm{e}_{1}^{T},\bm{e}_{2}^{T},...,\bm{e}_{n_{m}}^{T}]^{T}bold_italic_e = [ bold_italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , bold_italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , … , bold_italic_e start_POSTSUBSCRIPT italic_n start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, nmsubscript𝑛𝑚n_{m}italic_n start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT is the number of markers used for the shape estimation and 𝒒maxsubscript𝒒𝑚𝑎𝑥\bm{q}_{max}bold_italic_q start_POSTSUBSCRIPT italic_m italic_a italic_x end_POSTSUBSCRIPT, 𝒒minsubscript𝒒𝑚𝑖𝑛\bm{q}_{min}bold_italic_q start_POSTSUBSCRIPT italic_m italic_i italic_n end_POSTSUBSCRIPT are the upper and lower bounds of 𝒒𝔢superscript𝒒𝔢\bm{q}^{\mathfrak{e}}bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT, respectively.

The approach of estimating the shape with a few markers is made possible by the availability of the optimal bases obtained through the reduction approach discussed in Section III. In Section IV, we demonstrated that the relative energy content ε𝜀\varepsilonitalic_ε of the modes does not necessarily indicate the performance when included in the GVS model. However, this is not the case with the shape estimation problem. While including a few modes in the model could constrain the solution according to the allowed synergies, the shape estimation problem involves finding a linear combination of the chosen modes to minimize specific shape errors. In this sense, the shape estimation problem is similar to the SVD lower rank data reconstruction discussed in Section III-C. Consequently, ε𝜀\varepsilonitalic_ε becomes a suitable metric for choosing the number of modes in this problem.

To find the optimal bases, we simulate 100 seconds of random actuation for our experimental prototype, similar to the approach presented in Section IV-C. We then perform the POD of the resulting strain fields. Upon analyzing the decomposition results, we find that for the first 6 modes capture, ε(6)=99.65%𝜀6percent99.65\varepsilon(6)=99.65\%italic_ε ( 6 ) = 99.65 %, which we consider satisfactory. Consequently, the optimal bases are constructed from the leading 6 columns of the left singular matrix 𝑼𝑼\bm{U}bold_italic_U.

Another significantly important aspect of the decomposition is the insight we gain from the product of the singular values and the right singular matrix, 𝚺𝑽𝑻𝚺superscript𝑽𝑻\bm{\Sigma V^{T}}bold_Σ bold_italic_V start_POSTSUPERSCRIPT bold_italic_T end_POSTSUPERSCRIPT. While 𝑼𝑼\bm{U}bold_italic_U provides the optimal modes in the data, 𝚺𝑽𝑻𝚺superscript𝑽𝑻\bm{\Sigma V^{T}}bold_Σ bold_italic_V start_POSTSUPERSCRIPT bold_italic_T end_POSTSUPERSCRIPT reveals how these modes are scaled to obtain the different snapshots in the original data, whether it is a different instant of time or actuation value, as discussed earlier in Section III. In other words, knowledge of 𝚺𝑽𝑻𝚺superscript𝑽𝑻\bm{\Sigma V^{T}}bold_Σ bold_italic_V start_POSTSUPERSCRIPT bold_italic_T end_POSTSUPERSCRIPT is equivalent to knowledge of the generalized coordinates 𝒒𝒒\bm{q}bold_italic_q of the data if it were generated by the optimal bases. Therefore, if the actuation range in the data is representative of the operating range, the limits of each mode, i.e., the maximum and minimum values of the generalized coordinates, 𝒒maxsubscript𝒒\bm{q}_{\max}bold_italic_q start_POSTSUBSCRIPT roman_max end_POSTSUBSCRIPT and 𝒒minsubscript𝒒\bm{q}_{\min}bold_italic_q start_POSTSUBSCRIPT roman_min end_POSTSUBSCRIPT, are known. This knowledge has been shown to significantly enhance the estimation process by providing bounds for the generalized coordinates during shape estimation from limited sensor measurements.

We use 2 position markers to estimate the 6 strain coefficients. We include an additional intermediate marker along the manipulator’s body solely for evaluation purposes. To establish a position and orientation reference frame, three markers are placed at the base of the manipulator. These markers remain stationary throughout the experiment and serve as a fixed reference for the moving markers on the manipulator’s body.

During the experiment, the robot is actuated manually over 62 seconds, by pulling different tendons to obtain complex shapes and cover various areas within the robot’s workspace. The marker positions are recorded using a motion capture system, which tracks the 3D coordinates of each marker over time. The resulting data consists of the time-varying positions of the markers along the manipulator’s body, as well as the fixed reference markers at the base. This dataset will be used to validate the accuracy of our shape estimation algorithm and assess its performance in reconstructing the manipulator’s shape based on the limited marker measurements.

Once the measurements are collected and preprocessed, we use the Levenberg-Marquardt nonlinear least squares algorithm, implemented through the MATLAB function lsqnonlin, to solve the minimization problem in Eq. (33). We derive the error Jacobian of 𝒆(𝒒𝔢)𝒆superscript𝒒𝔢\bm{e}(\bm{q}^{\mathfrak{e}})bold_italic_e ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ), which can be used in the MATLAB function lsqnonlin to implement the Jacobian error of the optimization problem. This significantly enhances the efficiency of the optimization process towards achieving the optimal solution. The Jacobian of the components of 𝒆(𝒒𝔢)𝒆superscript𝒒𝔢\bm{e}(\bm{q}^{\mathfrak{e}})bold_italic_e ( bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT ) can be computed as follows:

𝒆m𝒒𝔢=subscript𝒆𝑚superscript𝒒𝔢absent\displaystyle\frac{\partial\bm{e}_{m}}{\partial\bm{q}^{\mathfrak{e}}}=divide start_ARG ∂ bold_italic_e start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_ARG start_ARG ∂ bold_italic_q start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT end_ARG = [ϑm,1𝔰,ϑm,2𝔰,,ϑm,n𝔰]subscriptsuperscriptbold-italic-ϑ𝔰𝑚1subscriptsuperscriptbold-italic-ϑ𝔰𝑚2subscriptsuperscriptbold-italic-ϑ𝔰𝑚𝑛\displaystyle[\bm{\vartheta}^{\mathfrak{s}}_{m,1},\bm{\vartheta}^{\mathfrak{s}% }_{m,2},...,\bm{\vartheta}^{\mathfrak{s}}_{m,n}][ bold_italic_ϑ start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m , 1 end_POSTSUBSCRIPT , bold_italic_ϑ start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m , 2 end_POSTSUBSCRIPT , … , bold_italic_ϑ start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m , italic_n end_POSTSUBSCRIPT ] (34)
=\displaystyle== [𝑱^1𝔰(Xm)𝒑¯m𝔢,𝑱^2𝔰(Xm)𝒑¯m𝔢,,𝑱^n𝔰(Xm)𝒑¯m𝔢]3subscriptsubscriptsuperscript^𝑱𝔰1subscript𝑋𝑚subscriptsuperscript¯𝒑𝔢𝑚subscriptsuperscript^𝑱𝔰2subscript𝑋𝑚subscriptsuperscript¯𝒑𝔢𝑚subscriptsuperscript^𝑱𝔰𝑛subscript𝑋𝑚subscriptsuperscript¯𝒑𝔢𝑚3\displaystyle[\hat{\bm{J}}^{\mathfrak{s}}_{1}(X_{m})\overline{\bm{p}}^{% \mathfrak{e}}_{m},\hat{\bm{J}}^{\mathfrak{s}}_{2}(X_{m})\overline{\bm{p}}^{% \mathfrak{e}}_{m},...,\hat{\bm{J}}^{\mathfrak{s}}_{n}(X_{m})\overline{\bm{p}}^% {\mathfrak{e}}_{m}]_{3}[ over^ start_ARG bold_italic_J end_ARG start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) over¯ start_ARG bold_italic_p end_ARG start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT , over^ start_ARG bold_italic_J end_ARG start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) over¯ start_ARG bold_italic_p end_ARG start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT , … , over^ start_ARG bold_italic_J end_ARG start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) over¯ start_ARG bold_italic_p end_ARG start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ] start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT

where 𝒑¯m𝔢=[(𝒑m𝔢)T,1]Tsubscriptsuperscript¯𝒑𝔢𝑚superscriptsuperscriptsubscriptsuperscript𝒑𝔢𝑚𝑇1𝑇\overline{\bm{p}}^{\mathfrak{e}}_{m}=[(\bm{p}^{\mathfrak{e}}_{m})^{T},1]^{T}over¯ start_ARG bold_italic_p end_ARG start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT = [ ( bold_italic_p start_POSTSUPERSCRIPT fraktur_e end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , 1 ] start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT, ϑm,c𝔰subscriptsuperscriptbold-italic-ϑ𝔰𝑚𝑐\bm{\vartheta}^{\mathfrak{s}}_{m,c}bold_italic_ϑ start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m , italic_c end_POSTSUBSCRIPT is the increment in the spatial velocity of the mthsuperscript𝑚𝑡m^{th}italic_m start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT marker due to a small variation of the cthsuperscript𝑐𝑡c^{th}italic_c start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT generalized coordinate, 𝑱^c𝔰subscriptsuperscript^𝑱𝔰𝑐\hat{\bm{J}}^{\mathfrak{s}}_{c}over^ start_ARG bold_italic_J end_ARG start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT is the cthsuperscript𝑐𝑡c^{th}italic_c start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT column of spatial Jacobian associated with the cthsuperscript𝑐𝑡c^{th}italic_c start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT mode, and []3subscriptdelimited-[]3[\bullet]_{3}[ ∙ ] start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT extracts the first three rows of a homogeneous vector. The spatial Jacobian can be defined as 𝑱𝔰(X)=Ad𝒈(X)𝑱(X)superscript𝑱𝔰𝑋subscriptAd𝒈𝑋𝑱𝑋\bm{J}^{\mathfrak{s}}(X)=\mathrm{Ad}_{\bm{g}(X)}\bm{J}(X)bold_italic_J start_POSTSUPERSCRIPT fraktur_s end_POSTSUPERSCRIPT ( italic_X ) = roman_Ad start_POSTSUBSCRIPT bold_italic_g ( italic_X ) end_POSTSUBSCRIPT bold_italic_J ( italic_X ).

In our experiment, we validate the real-time capabilities of our shape estimation approach. When including the Jacobian, we achieve an average computation time of 34.3 ms, with a standard deviation of 14.1 ms for each sample. However, without including the Jacobian, the average computation time rises to 78.7 ms, with a standard deviation of 22.8 ms. Fig. 16 displays the results of several shapes alongside their corresponding 3D reconstructions, demonstrating the effectiveness of our method in accurately estimating the robot’s shape.

To quantitatively evaluate the performance of our shape estimation approach, we analyze the position errors of the three markers throughout the full experiment, as shown in Fig. 17. Markers 1 and 3, whose errors are being minimized in the optimization process, exhibit low errors as expected, with an average of 1.2 mm and a maximum of 10 mm. Marker 2, which is used for independent validation, also shows very small errors, with an average of 5.8 mm and a maximum of 20 mm. These results demonstrate the high accuracy and applicability of our method. While we restrict our experiment to use only two position markers and six modes for the shape estimation, using more modes and markers would further decrease the error.

The successful performance of our shape estimation approach in this example illustrates its potential to impact various other fields where accurate modeling and control of soft robots are crucial. The proposed method’s ability to accurately reconstruct the robot’s shape based on limited sensor data highlights its importance and opens up new possibilities for applications in diverse domains.

TABLE IV: Marker positions for the experimental prototype used in the shape estimation problem. Marker 2 is used for evaluation, while markers 1 and 3 are used for the estimation problem.
Marker index
Xm(m)subscript𝑋𝑚𝑚X_{m}(m)italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ( italic_m )
pym(m)subscript𝑝subscript𝑦𝑚𝑚p_{y_{m}}(m)italic_p start_POSTSUBSCRIPT italic_y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_m )
pzm(m)subscript𝑝subscript𝑧𝑚𝑚p_{z_{m}}(m)italic_p start_POSTSUBSCRIPT italic_z start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_m )
1 0.1250.1250.1250.125 00 0.0250.0250.0250.025
2 0.180.180.180.18 0.020.020.020.02 00
3 0.250.250.250.25 0.010.010.010.01 00
Refer to caption
Figure 17: Errors for the three position markers. Marker 2, which used for evaluation exhibit higher errors than markers 1 and 3, whose errors are being minimized for the estimation problem.

VII Discussion and Conclusion

This work introduced a novel POD-based reduced order modeling approach for soft and hybrid robots combined with the GVS formulation. By learning optimal strain basis functions from data, the method allows a minimal set of generalized coordinates to efficiently describe robot configurations. Extensive simulations and experiments validated the accuracy and computational benefits of the ROM across diverse soft robotic systems. Notably, the ROM enabled shape estimation for a physical soft manipulator using only two position markers, demonstrating its practical value.

The proposed approach offers several key advantages. First, it achieves substantial dimensionality reduction without compromising accuracy. This resulted in a significant reduction in the computational cost of simulations, as the system dimension is one of the main factors governing the computational cost. Figs. 8, 14, and 11 demonstrate this reduction using both the speed-up factor metric (HOM solution time divided by ROM solution time) and its inverse, the normalized computation time, where the HOM corresponds to a value of 1 for both metrics. Additionally, in Table III, we report the speed-up factors that correspond to ROMs exhibiting 5% tip position errors for our presented scenarios. Notably, we achieve speed-up factors exceeding 16 while maintaining acceptable performance. The computational efficiency of our model allows simulations to run faster than real-time on an average computer (in specific cases), paving the way for real-time applications. For example, in the scenario depicted in Fig. 4, we computed 10 seconds of dynamics under continuously changing actuation within just 2 seconds, utilizing all four main modes. This demonstrates our approach’s suitability for real-time applications in specific cases, such as control and estimation. Second, it provides physically interpretable soft synergies in the form of coupled strain modes. These modes provide insights on the system behaviour, showcasing the dominant features in the system, and their corresponding contributions to the solution, as seen in Figs. 3,4, and 6. Such understanding of the system allowed us to estimate the entire shape of a complex soft manipulator, using only the position of two markers along its body. Third, the ROM exhibits strong interpolation and extrapolation capabilities, facilitating its use within and beyond the original data range. Finally, the unified treatment of strains and joint twists allows seamless application to entirely rigid or hybrid rigid-soft systems.

Future work will explore further applications of the ROM, such as model-based control, motion planning, and contact modeling for soft robots. In addition, incorporating modal derivatives [42], i.e., how the modes change according to the system state, offers a promising way to introduce further enhancement to the reduction and accuracy of our approach. Also, using deep-learning methods to reduce a non-linearly strain-parameterized model holds potential to provide further reduction to the system dimensionality, in contrast to linear strain bases presented in this work. Furthermore, improvement in other factors that affect the computation time, such as time integration methods, hold the potential of making such simulations faster and more reliable. With growing interest in soft robotics for safe and adaptable human-robot interaction, ROMs enhanced with data-driven approaches will play an increasingly important role in their modeling, control, estimation, etc. The approach presented here offers a promising foundation for realizing the full potential of soft robots in real-world applications.

Acknowledgments

This work was supported by the US Office of Naval Research Global under Grant N62909-21-1-2033 and in part by Khalifa University under Awards No. RIG-2023-048, RC1-2018-KUCARS.

Appendix A Multimedia Appendix

The appendix features supplementary video material that showcases the performance of our proposed approach compared to HOMs including static and dynamic simulations of the presented prototypes using varying numbers of DOFs. Furthermore, the video provides a side-by-side comparison between the real prototype used in the shape estimation experiment and the estimated shape obtained using our method, showcasing the high qualitative performance of the shape estimation.

Appendix B Coefficients of generalized dynamics

For a hybrid multibody system with N𝑁Nitalic_N links,

𝑴(𝒒)=i=1N0Li𝑱iT𝓜¯𝑱i𝑑Xi𝑴𝒒superscriptsubscript𝑖1𝑁superscriptsubscript0subscript𝐿𝑖superscriptsubscript𝑱𝑖𝑇¯𝓜subscript𝑱𝑖differential-dsubscript𝑋𝑖\displaystyle\bm{M}\left(\bm{q}\right)=\sum_{i=1}^{N}\int_{0}^{L_{i}}\bm{J}_{i% }^{T}\mkern 1.5mu\overline{\mkern-1.5mu\bm{\mathcal{M}}\mkern-1.5mu}\mkern 1.5% mu\bm{J}_{i}dX_{i}bold_italic_M ( bold_italic_q ) = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT bold_italic_J start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT over¯ start_ARG bold_caligraphic_M end_ARG bold_italic_J start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_d italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (35a)
𝑪(𝒒,𝒒˙)=i=1N0Li𝑱iT(ad𝜼i𝓜¯𝑱i+𝓜¯𝑱˙i)𝑑Xi𝑪𝒒˙𝒒superscriptsubscript𝑖1𝑁superscriptsubscript0subscript𝐿𝑖superscriptsubscript𝑱𝑖𝑇superscriptsubscriptadsubscript𝜼𝑖¯𝓜subscript𝑱𝑖¯𝓜subscript˙𝑱𝑖differential-dsubscript𝑋𝑖\displaystyle\bm{C}\left(\bm{q},\dot{\bm{q}}\right)=\sum_{i=1}^{N}\int_{0}^{L_% {i}}\bm{J}_{i}^{T}\left(\mathrm{ad}_{\bm{\eta}_{i}}^{*}\mkern 1.5mu\overline{% \mkern-1.5mu\bm{\mathcal{M}}\mkern-1.5mu}\mkern 1.5mu\bm{J}_{i}+\mkern 1.5mu% \overline{\mkern-1.5mu\bm{\mathcal{M}}\mkern-1.5mu}\mkern 1.5mu\dot{\bm{J}}_{i% }\right)dX_{i}bold_italic_C ( bold_italic_q , over˙ start_ARG bold_italic_q end_ARG ) = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT bold_italic_J start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ( roman_ad start_POSTSUBSCRIPT bold_italic_η start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT over¯ start_ARG bold_caligraphic_M end_ARG bold_italic_J start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + over¯ start_ARG bold_caligraphic_M end_ARG over˙ start_ARG bold_italic_J end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) italic_d italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (35b)
𝑫=diagi=1N(0Li𝚽ξiT𝚼i𝚽ξi𝑑Xi)𝑫superscriptsubscriptdiag𝑖1𝑁superscriptsubscript0subscript𝐿𝑖superscriptsubscript𝚽subscript𝜉𝑖𝑇subscript𝚼𝑖subscript𝚽subscript𝜉𝑖differential-dsubscript𝑋𝑖\displaystyle\bm{D}=\text{diag}_{i=1}^{N}\left(\int_{0}^{L_{i}}\bm{\Phi}_{\xi_% {i}}^{T}\bm{\Upsilon}_{i}\bm{\Phi}_{\xi_{i}}dX_{i}\right)bold_italic_D = diag start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ( ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_Υ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_d italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) (35c)
𝑲=diagi=1N(0Li𝚽ξiT𝚺i𝚽ξi𝑑Xi)𝑲superscriptsubscriptdiag𝑖1𝑁superscriptsubscript0subscript𝐿𝑖superscriptsubscript𝚽subscript𝜉𝑖𝑇subscript𝚺𝑖subscript𝚽subscript𝜉𝑖differential-dsubscript𝑋𝑖\displaystyle\bm{K}=\text{diag}_{i=1}^{N}\left(\int_{0}^{L_{i}}\bm{\Phi}_{\xi_% {i}}^{T}\bm{\Sigma}_{i}\bm{\Phi}_{\xi_{i}}dX_{i}\right)bold_italic_K = diag start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ( ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_Σ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_d italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) (35d)
𝑩(𝒒)=diagi=1N(𝑺iT or 0Li𝚽ξiT𝚽ai𝑑Xi)𝑩𝒒superscriptsubscriptdiag𝑖1𝑁superscriptsubscript𝑺𝑖𝑇 or superscriptsubscript0subscript𝐿𝑖superscriptsubscript𝚽subscript𝜉𝑖𝑇subscript𝚽subscript𝑎𝑖differential-dsubscript𝑋𝑖\displaystyle\bm{B}\left(\bm{q}\right)=\text{diag}_{i=1}^{N}\left(\bm{S}_{i}^{% T}\text{ or }\int_{0}^{L_{i}}\bm{\Phi}_{\xi_{i}}^{T}\bm{\Phi}_{a_{i}}dX_{i}\right)bold_italic_B ( bold_italic_q ) = diag start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ( bold_italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT or ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_Φ start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_d italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) (35e)
𝑭(𝒒,𝒒˙,t)=i=1N0Li𝑱iT𝓕¯ei𝑑Xi𝑭𝒒˙𝒒𝑡superscriptsubscript𝑖1𝑁superscriptsubscript0subscript𝐿𝑖superscriptsubscript𝑱𝑖𝑇subscript¯𝓕subscript𝑒𝑖differential-dsubscript𝑋𝑖\displaystyle\bm{F}\left(\bm{q},\dot{\bm{q}},t\right)=\sum_{i=1}^{N}\int_{0}^{% L_{i}}\bm{J}_{i}^{T}\mkern 1.5mu\overline{\mkern-1.5mu\bm{\mathcal{F}}\mkern-1% .5mu}\mkern 1.5mu_{e_{i}}dX_{i}bold_italic_F ( bold_italic_q , over˙ start_ARG bold_italic_q end_ARG , italic_t ) = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT bold_italic_J start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT over¯ start_ARG bold_caligraphic_F end_ARG start_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_d italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (35f)

where, 𝓜¯¯𝓜\mkern 1.5mu\overline{\mkern-1.5mu\bm{\mathcal{M}}\mkern-1.5mu}\mkern 1.5muover¯ start_ARG bold_caligraphic_M end_ARG is the screw inertia density matrix, 𝚼𝚼\bm{\Upsilon}bold_Υ is the screw dam** matrix, 𝚺𝚺\bm{\Sigma}bold_Σ is the screw elasticity matrix, 𝑺isubscript𝑺𝑖\bm{S}_{i}bold_italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the joint actuation basis, and 𝓕¯eisubscript¯𝓕subscript𝑒𝑖\mkern 1.5mu\overline{\mkern-1.5mu\bm{\mathcal{F}}\mkern-1.5mu}\mkern 1.5mu_{e% _{i}}over¯ start_ARG bold_caligraphic_F end_ARG start_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT is the distributed external force like gravity. Note that the space integration is evaluated using a numerical integration scheme such as Gauss quadrature:

0Li𝒇(X)𝑑X=j=1Qiwj𝒇(Xj)superscriptsubscript0subscript𝐿𝑖𝒇𝑋differential-d𝑋superscriptsubscript𝑗1subscript𝑄𝑖subscript𝑤𝑗𝒇subscript𝑋𝑗\int_{0}^{L_{i}}\bm{f}(X)\,dX=\sum_{j=1}^{Q_{i}}w_{j}\bm{f}(X_{j})∫ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT bold_italic_f ( italic_X ) italic_d italic_X = ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT bold_italic_f ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT )

where Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the number of quadrature points on ithsuperscript𝑖𝑡i^{th}italic_i start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT link, wjsubscript𝑤𝑗w_{j}italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is the jthsuperscript𝑗𝑡j^{th}italic_j start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT quadrature weight.

The equation also applies to rigid bodies by eliminating the integrals and substituting the distributed quantities with their lumped equivalents. The generalized external forces due to point wrenches are computed by projecting them with the Jacobian at the points of application of the wrenches: 𝑱T𝓕psuperscript𝑱𝑇subscript𝓕𝑝\bm{J}^{T}\bm{\mathcal{F}}_{p}bold_italic_J start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_caligraphic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT.

For the reduced order basis, 𝑫𝑫\bm{D}bold_italic_D, 𝑲𝑲\bm{K}bold_italic_K, and 𝑩𝑩\bm{B}bold_italic_B are modified into:

𝑫=i=1Nj=1Qiwj(𝓔k𝚽ξ𝒪)T𝚼j(𝓔k𝚽ξ𝒪)𝑫superscriptsubscript𝑖1𝑁superscriptsubscript𝑗1subscript𝑄𝑖subscript𝑤𝑗superscriptsubscript𝓔𝑘subscript𝚽subscript𝜉𝒪𝑇subscript𝚼𝑗subscript𝓔𝑘subscript𝚽subscript𝜉𝒪\displaystyle\bm{D}=\sum_{i=1}^{N}\sum_{j=1}^{Q_{i}}w_{j}(\bm{\mathcal{E}}_{k}% {\bm{\Phi}_{\xi_{\mathcal{O}}}})^{T}\bm{\Upsilon}_{j}(\bm{\mathcal{E}}_{k}{\bm% {\Phi}_{\xi_{\mathcal{O}}}})bold_italic_D = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( bold_caligraphic_E start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_Υ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( bold_caligraphic_E start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) (36a)
𝑲=i=1Nj=1Qiwj(𝓔k𝚽ξ𝒪)T𝚺j(𝓔k𝚽ξ𝒪)𝑲superscriptsubscript𝑖1𝑁superscriptsubscript𝑗1subscript𝑄𝑖subscript𝑤𝑗superscriptsubscript𝓔𝑘subscript𝚽subscript𝜉𝒪𝑇subscript𝚺𝑗subscript𝓔𝑘subscript𝚽subscript𝜉𝒪\displaystyle\bm{K}=\sum_{i=1}^{N}\sum_{j=1}^{Q_{i}}w_{j}(\bm{\mathcal{E}}_{k}% {\bm{\Phi}_{\xi_{\mathcal{O}}}})^{T}\bm{\Sigma}_{j}(\bm{\mathcal{E}}_{k}{\bm{% \Phi}_{\xi_{\mathcal{O}}}})bold_italic_K = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( bold_caligraphic_E start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_Σ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( bold_caligraphic_E start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) (36b)
𝑩(𝒒)=i=1N(𝑺iT or j=1Qiwj(𝓔k𝚽ξ𝒪)T𝚽aj)𝑩𝒒superscriptsubscript𝑖1𝑁superscriptsubscript𝑺𝑖𝑇 or superscriptsubscript𝑗1subscript𝑄𝑖subscript𝑤𝑗superscriptsubscript𝓔𝑘subscript𝚽subscript𝜉𝒪𝑇subscript𝚽subscript𝑎𝑗\displaystyle\bm{B}\left(\bm{q}\right)=\sum_{i=1}^{N}\left(\bm{S}_{i}^{T}\text% { or }\sum_{j=1}^{Q_{i}}w_{j}(\bm{\mathcal{E}}_{k}{\bm{\Phi}_{\xi_{\mathcal{O}% }}})^{T}\bm{\Phi}_{a_{j}}\right)bold_italic_B ( bold_italic_q ) = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ( bold_italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT or ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( bold_caligraphic_E start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT bold_Φ start_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT caligraphic_O end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_Φ start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) (36c)

where k𝑘kitalic_k is the index of the computational point of the multibody system corresponding to the jthsuperscript𝑗𝑡j^{th}italic_j start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT quadrature point of the link.

References

  • [1] C. Laschi, B. Mazzolai, and M. Cianchetti, “Soft robotics: Technologies and systems pushing the boundaries of robot abilities,” Science robotics, vol. 1, no. 1, p. eaah3690, 2016.
  • [2] C. Armanini, F. Boyer, A. T. Mathew, C. Duriez, and F. Renda, “Soft robots modeling: A structured overview,” IEEE Transactions on Robotics, 2023.
  • [3] M. S. Xavier, A. J. Fleming, and Y. K. Yong, “Finite element modeling of soft fluidic actuators: Overview and recent developments,” Advanced Intelligent Systems, vol. 3, no. 2, p. 2000187, 2021.
  • [4] C. Tawk and G. Alici, “Finite element modeling in the design process of 3d printed pneumatic soft actuators and sensors,” Robotics, vol. 9, no. 3, p. 52, 2020.
  • [5] M. Tummers, V. Lebastard, F. Boyer, J. Troccaz, B. Rosa, and M. T. Chikhaoui, “Cosserat rod modeling of continuum robots from newtonian and lagrangian perspectives,” IEEE Transactions on Robotics, 2023.
  • [6] I. S. Godage, G. A. Medrano-Cerda, D. T. Branson, E. Guglielmino, and D. G. Caldwell, “Dynamics for variable length multisection continuum arms,” The International Journal of Robotics Research, vol. 35, no. 6, pp. 695–722, 2016.
  • [7] R. J. Webster III and B. A. Jones, “Design and kinematic modeling of constant curvature continuum robots: A review,” The International Journal of Robotics Research, vol. 29, no. 13, pp. 1661–1683, 2010.
  • [8] F. Renda, F. Boyer, J. Dias, and L. Seneviratne, “Discrete cosserat approach for multisection soft manipulator dynamics,” IEEE Transactions on Robotics, vol. 34, no. 6, pp. 1518–1533, 2018.
  • [9] H. Li, L. Xun, and G. Zheng, “Piecewise linear strain cosserat model for soft slender manipulator,” IEEE Transactions on Robotics, vol. 39, no. 3, pp. 2342–2359, 2023.
  • [10] F. Renda, C. Armanini, V. Lebastard, F. Candelier, and F. Boyer, “A geometric variable-strain approach for static modeling of soft manipulators with tendon and fluidic actuation,” IEEE Robotics and Automation Letters, vol. 5, no. 3, pp. 4006–4013, 2020.
  • [11] F. Boyer, V. Lebastard, F. Candelier, and F. Renda, “Dynamics of continuum and soft robots: A strain parameterization based approach,” IEEE Transactions on Robotics, vol. 37, no. 3, pp. 847–863, 2020.
  • [12] G. Kerschen, J.-c. Golinval, A. F. Vakakis, and L. A. Bergman, “The method of proper orthogonal decomposition for dynamical characterization and order reduction of mechanical systems: an overview,” Nonlinear dynamics, vol. 41, pp. 147–169, 2005.
  • [13] J. Chenevier, D. González, J. V. Aguado, F. Chinesta, and E. Cueto, “Reduced-order modeling of soft robots,” PloS one, vol. 13, no. 2, p. e0192052, 2018.
  • [14] O. Goury and C. Duriez, “Fast, generic, and reliable control and simulation of soft robots using model order reduction,” IEEE Transactions on Robotics, vol. 34, no. 6, pp. 1565–1576, 2018.
  • [15] O. Goury, B. Carrez, and C. Duriez, “Real-Time Simulation for Control of Soft Robots With Self-Collisions Using Model Order Reduction for Contact Forces,” IEEE Robotics and Automation Letters, vol. 6, pp. 3752–3759, Apr. 2021.
  • [16] M. Thieffry, A. Kruszewski, O. Goury, T.-M. Guerra, and C. Duriez, “Dynamic Control of Soft Robots,” IFAC World Congress, Toulouse, France, July 2017.
  • [17] S. Tonkens, J. Lorenzetti, and M. Pavone, “Soft robot optimal control via reduced order finite element models,” in 2021 IEEE International Conference on Robotics and Automation (ICRA), pp. 12010–12016, IEEE, 2021.
  • [18] M. Santello, M. Flanders, and J. F. Soechting, “Postural hand synergies for tool use,” Journal of neuroscience, vol. 18, no. 23, pp. 10105–10115, 1998.
  • [19] M. T. Ciocarlie and P. K. Allen, “Hand posture subspaces for dexterous robotic gras**,” The International Journal of Robotics Research, vol. 28, no. 7, pp. 851–867, 2009.
  • [20] J. Yoon, I. Hong, and D. Lee, “Passive Model Reduction and Switching for Fast Soft Object Simulation with Intermittent Contacts,” in 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), (Macau, China), pp. 6963–6970, IEEE, Nov. 2019.
  • [21] J. Wang, B. Xu, J. Lai, Y. Wang, C. Hu, H. Li, and A. Song, “An Improved Koopman-MPC Framework for Data-Driven Modeling and Control of Soft Actuators,” IEEE Robotics and Automation Letters, vol. 8, pp. 616–623, Feb. 2023.
  • [22] D. Bruder, X. Fu, R. B. Gillespie, C. D. Remy, and R. Vasudevan, “Data-Driven Control of Soft Robots Using Koopman Operator Theory,” IEEE Transactions on Robotics, vol. 37, pp. 948–961, June 2021.
  • [23] D. A. Haggerty, M. J. Banks, E. Kamenar, A. B. Cao, P. C. Curtis, I. Mezić, and E. W. Hawkes, “Control of soft robots with inertial dynamics,” Science Robotics, vol. 8, p. eadd6864, Aug. 2023.
  • [24] N. Komeno, B. Michael, K. Kuchler, E. Anarossi, and T. Matsubara, “Deep Koopman with Control: Spectral Analysis of Soft Robot Dynamics,” in 2022 61st Annual Conference of the Society of Instrument and Control Engineers (SICE), (Kumamoto, Japan), pp. 333–340, IEEE, Sept. 2022.
  • [25] D. Kim, S.-H. Kim, T. Kim, B. B. Kang, M. Lee, W. Park, S. Ku, D. Kim, J. Kwon, H. Lee, et al., “Review of machine learning methods in soft robotics,” Plos one, vol. 16, no. 2, p. e0246102, 2021.
  • [26] T. G. Thuruthel, E. Falotico, F. Renda, and C. Laschi, “Learning dynamic models for open loop predictive control of soft robotic manipulators,” Bioinspiration & Biomimetics, vol. 12, p. 066003, Oct. 2017.
  • [27] Thomas George Thuruthel, Federico Renda, and Fumiya Iida, “First-Order Dynamic Modeling and Control of Soft Robots,” Frontiers in Robotics and AI, vol. 7, p. 95, July 2020.
  • [28] A. Tariverdi, V. K. Venkiteswaran, M. Richter, O. J. Elle, J. Tørresen, K. Mathiassen, S. Misra, and O. G. Martinsen, “A Recurrent Neural-Network-Based Real-Time Dynamic Model for Soft Continuum Manipulators,” Frontiers in Robotics and AI, vol. 8, p. 631303, Mar. 2021.
  • [29] T. G. Thuruthel, E. Falotico, M. Manti, and C. Laschi, “Stable Open Loop Control of Soft Robotic Manipulators,” IEEE Robotics and Automation Letters, vol. 3, pp. 1292–1298, Apr. 2018.
  • [30] T. G. Thuruthel, E. Falotico, F. Renda, and C. Laschi, “Model-Based Reinforcement Learning for Closed-Loop Dynamic Control of Soft Robotic Manipulators,” IEEE Transactions on Robotics, vol. 35, pp. 124–134, Feb. 2019.
  • [31] J. I. Alora, M. Cenedese, E. Schmerling, G. Haller, and M. Pavone, “Data-Driven Spectral Submanifold Reduction for Nonlinear Optimal Control of High-Dimensional Robots,” in 2023 IEEE International Conference on Robotics and Automation (ICRA), (London, United Kingdom), pp. 2627–2633, IEEE, May 2023.
  • [32] A. T. Mathew, I. B. Hmida, C. Armanini, F. Boyer, and F. Renda, “Sorosim: A matlab toolbox for hybrid rigid–soft robots based on the geometric variable-strain approach,” IEEE Robotics & Automation Magazine, vol. 30, no. 3, pp. 106–122, 2023.
  • [33] F. Renda, C. Armanini, A. Mathew, and F. Boyer, “Geometrically-exact inverse kinematic control of soft manipulators with general threadlike actuators’ routing,” IEEE Robotics and Automation Letters, vol. 7, no. 3, pp. 7311–7318, 2022.
  • [34] A. T. Mathew, I. M. B. Hmida, C. Armanini, F. Boyer, and F. Renda, “Sorosim: A matlab toolbox for hybrid rigid-soft robots based on the geometric variable-strain approach,” IEEE Robotics and Automation Magazine, pp. 2–18, 2022.
  • [35] F. Renda, M. Giorelli, M. Calisti, M. Cianchetti, and C. Laschi, “Dynamic model of a multibending soft robot arm driven by cables,” IEEE Transactions on Robotics, vol. 30, no. 5, pp. 1109–1122, 2014.
  • [36] C. Armanini, I. Hussain, M. Z. Iqbal, D. Gan, D. Prattichizzo, and F. Renda, “Discrete cosserat approach for closed-chain soft robots: Application to the fin-ray finger,” IEEE Transactions on Robotics, vol. 37, no. 6, pp. 2083–2098, 2021.
  • [37] M. Santello, M. Bianchi, M. Gabiccini, E. Ricciardi, G. Salvietti, D. Prattichizzo, M. Ernst, A. Moscatelli, H. Jörntell, A. M. Kappers, K. Kyriakopoulos, A. Albu-Schäffer, C. Castellini, and A. Bicchi, “Hand synergies: Integration of robotics and neuroscience for understanding the control of biological and artificial hands,” Physics of Life Reviews, vol. 17, pp. 1–23, July 2016.
  • [38] P. L. Anderson, A. W. Mahoney, and R. J. Webster, “Continuum reconfigurable parallel robots for surgery: Shape sensing and state estimation with uncertainty,” IEEE robotics and automation letters, vol. 2, no. 3, pp. 1617–1624, 2017.
  • [39] S. Lilge, T. D. Barfoot, and J. Burgner-Kahrs, “Continuum robot state estimation using gaussian process regression on se (3),” The International Journal of Robotics Research, vol. 41, no. 13-14, pp. 1099–1120, 2022.
  • [40] J. M. Ferguson, D. C. Rucker, and R. J. Webster, “Unified Shape and External Load State Estimation for Continuum Robots,” IEEE Transactions on Robotics, vol. 40, pp. 1813–1827, 2024.
  • [41] W. S. Rone and P. Ben-Tzvi, “Continuum Robot Dynamics Utilizing the Principle of Virtual Power,” IEEE Transactions on Robotics, vol. 30, pp. 275–287, Feb. 2014.
  • [42] L. Wu, P. Tiso, K. Tatsis, E. Chatzi, and F. Van Keulen, “A modal derivatives enhanced Rubin substructuring method for geometrically nonlinear multibody systems,” Multibody System Dynamics, vol. 45, pp. 57–85, Jan. 2019.