SoftManiSim: A Fast Simulation Framework for Multi-Segment Continuum Manipulators Tailored for Robot Learning
Authors: Mohammadreza Kasaei
Hamidreza Kasaei
Mohsen Khadem
Venue: CoRL 2024 (2024)
Keywords: Simulation Framework
Soft Robotics
Mathematical Modelling
Robot Learning
TL;DR: This paper introduces SoftManiSim, a novel simulation framework for multi-segment continuum manipulators.

Abstract: This paper introduces SoftManiSim, a novel simulation framework for multi-segment continuum manipulators. Existing continuum robot simulators often rely on simplifying assumptions, such as constant curvature bending or ignoring contact forces, to meet real-time simulation and training demands. To bridge this gap, we propose a robust and rapid mathematical model for continuum robots at the core of SoftManiSim, ensuring precise and adaptable simulations. The framework can integrate with various rigid-body robots, increasing its utility across different robotic platforms. SoftManiSim supports parallel operations for simultaneous simulations of multiple robots and generates synthetic data essential for training deep reinforcement learning models. This capability enhances the development and optimization of control strategies in dynamic environments. Extensive simulations validate the framework's effectiveness, demonstrating its capabilities in handling complex robotic interactions and tasks. We also present real robot validation to showcase the simulator's practical applicability and accuracy in real-world settings. To our knowledge, SoftManiSim is the first open-source real-time simulator capable of modeling continuum robot behavior under dynamic point/distributed loading. It enables rapid deployment in reinforcement learning and machine learning applications. 
This simulation framework can be downloaded from https://github.com/MohammadKasaei/SoftManiSim.

SoftManiSim: A Fast Simulation Framework for Multi-Segment Continuum Manipulators Tailored for Robot Learning
Mohammadreza Kasaei School of Informatics University of Edinburgh, UK m. wksaaiiieeee @ed. ac .u
Hamidreza Kasaei
Department of Artificial Intelligence, Bernoulli Institute University of Groningen, The Netherlands hamidreze kasaei Seaai@rrg.rr
Mohsen Khadem
School Informatics University of Edinburgh, UK
mohsen. kwwdem@ed.dc.. .cc uk
Abstract: This paper introduces SoftManiSim, a novel simulation framework for multi-segment continuum manipulators. Existing continuum rohot simulators often rely on simplifying assumptions, such as constant curvature bending or ig- noring contact forces, meet real-time simulation and training demands. To bridge this gap, propose robust and rapid mathematical model for continuum robots at the core of SoftManiSim, ensuring precise and adaptable simulations. The framework can integrate with various rigid-body robots, increasing its utility across different robotic platforms. SoftManiSim supports parallel operations for simultaneous simulations of multiple robots and generates synthetic data essen- tial for training deep reinforcement learning models. This capability enhances the development and optimization of control strategies dynamic environments. Extensive simulations validate the framework's 's effectiveness, demonstrating its ca- pabilities in handling complex robotic interactions and tasks. We also present real robot validation to showcase the simulator's practical applicability and accuracy in real-world settings. To our knowledge, SoftManiSim is the first open-source real-time simulator capable of modeling continuum robot behavior under dynamic point/distributed loading. enables rapid deployment in reinforcement learning and machine learning applications. This simulation framework can be downloaded from attps://gt thub. http://oaaaaaaaaaaeeeeeaeaeaaeee MotaaadaaaaaaaeeeStaaaaaa
Keywords: Simulation Framework, Soft Robotics, Mathematical Modeling.
Introduction
Figure I: Various simulation scenarios using the SoftManiSim framework and Pybullet demonstrate the versatility of multi-segment continuum robots integrated with different robotic systems. These scenarios highlight the framework's capability to model complex interactions, precise manipulations, and integration with various robotic systems, leveraging advanced mathematical formulations.
Continuum robots, distinguished by their jointless, flexible structures, pivotal in applications requiring high maneuverability and precision. These robots excel in navigating confined spaces,
8th Conference Robot Learning (CoRL 2024), Munich, Germany.

---

Table 1: Overview of existing simulation frameworks and their capabilities.
Framerock.
approach
Modeling
Plysies model
complecit
robuts
Righ
Conchrum
robuts
shape information
Continuun robot
shaps radution
Adapliee
Support shape
estenshiliy
bybrid robuts
Rigs-sodt
sounx
Open
BuBulieBuuiet (17)
body
Gaodo (19]
Fipahbeally plynicx
MalaDa (30)
riakhhully physics
low
Webces (25)
riidd body plysies
Jow
Banng a.l (23]
Oieert mods
modium--iih
ChoinQuees (27)
Particle-gnd
SOeA [22)
FEM
high
PyBulle- SoMo (18)
ridd bods plesics
Jow
SofMannSii
Aged bods plesics
Coocral
making them suitable for intricate tasks in various settings, particularly in search and rescue op- erations, exploration, and surgical domains [1]. Several methodologies have been proposed to control such robots, falling into two broad categories: model-based [2. 3, 4, 5] and data-driven approaches [6, 7, 8, 9, 10, 11, 12]. detailed review of model-based approaches for soft robots presented in [13]. In recent years, data-driven methods, particularly those leveraging deep rein- forcement learning (DRL), have become increasingly popular for controlling soft continuum robots. These techniques excel in managing the robots' complex, nonlinear behaviors and high degrees of freedom, which are challenging to address with traditional control strategies.
DRL approaches rely on large datasets to effectively predict and adapt to a robot's dynamic inter- actions and deformations real-time [14, 15, 16). This capability is crucial for precision- -critical applications, such minimally invasive surgery. Accurate simulation plays a key role in generating the extensive data needed for training DRL models. Thus, the ability to produce detailed and realistic simulation data is essential for leveraging the full potential of DRL. Existing simulators like [17, 18] often represent these robots as series of discrete, spring connected links - method that doesn't t fully capture their continuous nature. This simplification leads to significant gaps between how the robots perform simulations versus real life, reducing their effectiveness in tasks where precision is critical. Recent popular simulation frameworks such as PyBulle [17], Gazebo [19], and MuJoCo [20] primarily designed for rigid-body dynamics, offering limited support for the nuanced modeling of continuum robots. While more specialized frameworks like Elastica [21], SOFA [22], and Huang et al. [23] address some of these challenges using advanced models like Cosserat rods [24], they often come with increased computational complexity and reduced accessibility.
In this paper, we present SoftManiSim, a novel framework that integrates advanced continuum robot modeling with the robust PyBullet simulator. SoftManiSim combines the simplicity of rigid-body physics with the detailed modeling of Cosserat rods. providing comprehensive toolset for simulating both continuum and rigid-cone continuun robots. The Cosserat rod theory is commonly used to model continuum and soft robots [25]. This approach, though accurate, involves solving complex boundary value problems (BVPs), which can be computationally intensive. To address this, we propose a novel solver that rapidly estimates the Cosserat rod equations under dynamic loading without solving the BVP. The solver uses temporal observer to estimate the robot's initial curvature, transforming the BVP into a parallelizable initial value problem (IVP), thus improving computational efficiency.
The simulator benefits from this solver offer adaptive shape resolutions, shape extensibility, and leverages PyBullet's pow- erful physics engine for enhanced simulation capabilities. This integration ensures a balance between accuracy and computa- tional efficiency, making SoftManiSim ideal platform for de- veloping and optimizing hybrid robotic systems. An overview of existing simulation frameworks and their capabilities is pre-
Gym Environment
User Interface
Pybullet Simulator
Rigio body/ Coll dotection Rendoring camris iage (Intarccaa envverrment
Cantinuum Robot Modelling
sented in Table 1, illustrating the advantages and versatility of SoftManiSim in addressing the limitations of current methods. Figure demonstrates various simulation scenarios using Soft- ManiSim framework, highlighting its versatility and capability to model complex interactions and precise manipulations.
Propased
Entire Body Madaling
Modal Peram, Lewrinng
Figure 2: Overview of the frame- work.
This paper is structured follows: Section 2 explains the methodologies employed in the development of SoftManiSim, including the mathematical models

---

and simulation integration. In Section 3, we detail the approaches for real-time control and policy optimization using our simulation framework. To showease the efficacy of our simulation and control strategies, a series of simulations are conducted in Section 4, and the results are discussed. Section presents detailed validation process using real hardware to demonstrate the efficacy of our sim-to- real methodology and the robustness of the control policies developed in simulated environments. Finally, Section 6 concludes the paper with discussion of the findings, limitations, and potential future work.
2
SoftManiSim
This section presents SoftManiSSm general framework for simulating multi-segment contin- uum robots. We begin with the mathematical modeling of single segment which is the core of the proposed framework, extend this to multi-segment representation, and finally discuss the integration of this model within the PyBullet physics engine to enhance simulation capabilities and interactive functionalities. The overall architecture of this framework is depicted in Figure 2.
2.1 Entire Body Shape Modeling
f(+)
Here, first use the Cosserat rod equations [24] and follow the approach outlined in [28] to model continuum robot flexible rod. We discuss challenges in solving these equations in real-time and propose a novel solution for rapid estimation of robot shape under dynamic loading. Figure. 3 shows a con- tinuum robot modelled as a rod defined as a curve in space, r(s) [0, (] - R and its orientation, R(s)= [0, (] SO(3) functions of the rod arclength s E [0, 4). can derive the constitutive equations for calculating the instantaneous curva- ture of the rod u()) and the overall shape of the rod [29, 28]:
TJalon
Figure Schematic of a contin- uum robot with two pull wires un- der point load F and external dis- (la) tributed load The robot is com- posed of two pull wires running in (1b) parallel and constrained with spect to each other using spacers. Spacers fixed to elastic tube (Ic) commonly called the main back- bone. TDCR curvature can be con- trolled by pulling the pull wires.
(s) = R(s)e3,
R' (s) (uss,
a' d((s) k-1 [u(s)), u²)+
[e3], (() S(' f(..))do)).
((s, (|se))=|le3+++++ [ee3+[u(s]],44 [u(s)],d/ll i= 1. ..
(1d)
where denotes derivative with respect are length s. the [-], operator is the isomorphism between vector in R and its skew-symmetric cross product matrix, es [0, O, 1]" is the unit vector aligned with the z-axis of the global coordinate frame. u² denotes the pre-curvature of the rod in its reference configuration, K = diag E1, E1, GJ) is the stiffness matrix for the rod, is the rod's Young's 's modulus, is the second moment of inertia, G is the shear modulus, J is the polar moment of inertia, and F(1) and and denote the external load at the rod's tip, number pull wires.
The model accepts pull wires length input via boundary conditions. It can be solved using the following boundary conditions:
r(0) O R(0) Tax3,
(2a)
"z (0) 0, 4(0, 0, 4(e,)) 1,(1), i= 1......
(2b)
where Lt(r) is the desired length of th pull wire at time The model outlined in (1) and (2) form boundary value problem.
3

---

IPS
Conrgnationn
0.1
1P
9gP
1-M
Obeener
130
Mithed
(b)
Figure 4: (a) A comparison between the solutions of BVP solvers and the proposed solver for the robot trajectory without external force under the constant curvature assumption. (b) A comparison of computational efficacy between various BVP solvers and the proposed solver.
To solve the equations, it is assumed that given time, time-dependent variables (pull wire length and forces) are constant, and the equations are solved in the spatial domain (with respect to s) using an ordinary differential equation solver such as Runge-Kutta methods. Next, shooting methods can be used to solve the boundary value problem. A shooting method consists of using a nonlinear root-finding algorithm to iteratively converge on values for u00. r). in order to satisfy the correct boundary condition for pull wire lengths (1) in (2). Next, the time-dependent variables are updated and the equations are solved again the spatial domain. Of note, under the assumption of constant curvature bending and no external loading, which is prevalent in the literature [25], curvatures can be analytically estimated from pull-wire lengths to avoid solving the BVP and estimate robot shape in real-time. However, this assumption significantly limits the application of the model.
Our main goal here is to design solver that will estimate the initial curvature of the robot (00, () based on pull wire lengths (t) real-time to form an IVP system of differential equations and avoid the need solve the BVP iteratively. The solver modifies boundary conditions into the following initial conditions:
r(0) 00 R(0) = 13x3, (0) = 0, (00, 0.
(3a)
1( = 13x3, t) 0xx3x3, r(0,t) Isxms u(0,t) = =- --f"" PI (e.
(3b)
The new variables introduced (3b) are
r(s,t) du (,, D(s,t) OR(s)
il(s,))
J(s,t) @u(s)
(4)
Ou())))
Ou(),r)
and P(r) the solution of the differential Riccati equation
-P()) - (C.VT
(5)
P(ty) Po.
Q. V, and Po are all symmetric positive definite matrices. Details of derivation of (3b) are discussed in Appendix A. The model combined with the initial conditions can now be solved as an IVP. To find the shape of the robot, first the equations in (1) are solved with respect given the initial values (3). Then, time dependant variables including u00,t) and solver's optimal gain P are updated through (3b) and (5), respectively. At the first time step, the initial eurvature a(0, /) of the robot is assumed to be zero. For multi-segment continuum robot, each segment is defined with its own centroids and transformations. By concatenating these transformations and curvature vectors, we model the entire robot's configuration.
Simulations were conducted to evaluate the proposed solver by comparing its predictions with solu- tions obtained using four different shooting methods: the Interior Point method (IP), the Levenberg- Marquardt method (L-M), and Sequential Quadratic Programming (SQP). These methods, using different root-finding algorithms, are standard BVP solvers. Additionally, compared the solver's

---

performance with model assuming constant curvature, commonly used in the literature. The robot was simulated to follow 500 randomly selected points the workspace, with root-finding algorithms optimized to a tolerance of 10-3, and the initial curvature estimate at each sample time used as the starting guess for subsequent steps. Simulation parameters matched those of the actual robot described in Appendix C. In simulations, to model the robot's behavior in the presence of contact, applied distributed force of f [1, 1, IJ N/m to the robot body and 3D random foree with magnitude of O to 2 N on the robot tip at random angles between and Comprehensive evaluation of the proposed solver is presented in Appendix B.
Figure 4(a) compares the robot tip position using different solvers with the robot tip position in the absence of force. It evident that the constant curvature assumption (i.e., neglecting external forces) results in significant errors. Additionally, the proposed solver produces smoother estimation of the robot tip position compared other BVP solvers. Figure 4(b) compares the computational efficacy of the solvers. All BVP solvers were set to tolerance below 1 x 10 m. As shown, our solver offers the smallest sampling time (15 ms) with the least standard deviation (3 ms). Furthermore, to compare the accuracy of all solvers in terms of satisfying boundary values, we compared the estimated cost. The results showed that our solver provides the best accuracy on par with the L-M method, with the overall boundary value error estimation below 5 10 4 m. Considering that the best. BVP solver, the L-M method, runs at 153 106 ms, we can conclude that our solver is approximately 10 times faster than the most accurate solver. More details provided in Appendix B.
2.2 PyBullet Integration
We integrate this model into PyBullet [17], to leverage its potential in creating interactable environ- ments and rendering realistic camera images. This integration is crucial for tasks requiring interaction with environments and visual data processing like visual reinforcement learning, enabling the simu- lation of visual feedback mechanisms essential for real-world applications like navigation and object manipulation. Additionally, PyBullet's comprehensive suite of tools supports functionalities such collision detection and real-time environmental adjustments. This fusion not only enhances the accuracy and visual appeal of the simulations but also expands the functional scope of the robot model, making powerful platform for detailed monitoring and adaptation in complex scenarios.
2.3 Interface and Custom Gym Environment
The SoftMani class is developed to fa- cilitate the simulation of soft robots using, Pybullet physics engine. This class serves as a comprehensive interface that initial- izes and manages various aspects of the simulation environment, ensuring seamless and flexible setup process. To enhance policy learning for continuum robots, we have developed a set of custom Gym environments within our SoftMani Sim framework, specifically designed to address the dynamic and complex behaviors inherent to these robots. Fach environment is defined as a Markov Decision Process (MDP), represented by the tuple (Sy, ar ay ((5r11(1s (;) (S5t+1(s,, a,)), where and a, denote the state and action at time f, respec- tively. The environments are enriched with soft manipulators, rigid obstacles, dynamically moving objects, and other robotic systems, providing a robust and varied context for effective training. Ad- ditionally, the gym environments parallel execution of multiple instances maximize training efficiency, Detailed information about the interface, its parameters, and more information about the custom Gyms are provided in Appendix D.
env SoftManiSim (number of segment=5) shape world frame. shape_rofe rrrotrroofaaaaeeee env move wwwemmoveerbooe robot_ori (actions base_pos basc_orin)
3 Model-Based Control and Policy Learning
In this section, we explore model- based control techniques and policy learning methods for multi- segment continuum robot equipped with dynamically adjustable base.
5

---

Figure 5: Trajectory tracking results: the robot is tasked with following various paths in both 2D and 3D spaces. The red and black lines indicate the actual and desired paths, respectively.
Model-Based Control : Here, we elaborate on the design of kinematic controller tailored for multi-segment continuum robot with dynamically adjustable base. The system's kinematics integrate both segment articulations and base mobility, requiring a comprehensive Jacobian matrix that correlates the robot's end-effector velocity to its configuration space velocities, inclusive of the additional base movements. Utilizing the entire body shape model presented in the previous section, the Jacobian matrix J, which encapsulates the kinematic dependencies, assumed to accommodate the multi-segment and base mobility features:
(6) where r(C,) E RR3 represents the Cartesian coordinates of the robot's end-effector, and E RR represents the control input vector that includes the length n cables for m segments and the transnational movements of the robot base. The columns of the Jacobian can be estimated using finite difference as
x= Jq.
J; (4 L4 61)
x² (a- --4
bqi
where 6, represents each unit vector of the canonical basis in input space, and Aqi denotes small perturbations applied to the i-th input to facilitate the numerical Jacobian approximation. The Jacobian matrix supports the development of a robust control strategy, enabling precise manipulation and path-following behaviors.
One can develop trajectory tracking controller leveraging the pseudo-inverse of the Jacobian matrix, J", guide the robot's end-effector, x()), along desired trajectory, (t). Utilizing a proportional control law, we aim to minimize the positional error ē = xx based the error dynamics, ú = J [ + Kē], where K is symmetric positive definite matrix acting as the proportional gain, encompassing both constant and variable components. This control strategy formulated to effectively zero out the trajectory error, enhancing the robot's accuracy in following the specified path. In the next section, set of simulations will be conducted to assess the performance of the controller.
by adjusting the control inputs
This method enables the agent learn from interacting with the environment continuously, aiming to maximize the expected future return R, y rr=r with as the discount factor. The optimal policy x² is sought, which maximizes the expected return for all states and actions, guided by the Bellman equation. In the next section, we will outline the training scenarios and the policy optimization using customized gym environments based on SoftManiSim, ensuring that the agents can effectively learn and adapt to complex robotic tasks.
Policy learning:
4 Simulation
Here, a series of simulation scenarios will be designed to evaluate the effectiveness of the proposed framework exploring the diverse strategies for controlling soft and continuum robots.
Trajectory Tracking: The robot follows various trajectories in 2D and 3D spaces, including: i) a square on the X-Y plane (0.4 meters sides); ii) figure-eight curve defined by 0.2 2t and y 0.2 sin [z for from 20 seconds; iii) a circle in the X-Y plane (0.2 meters radius); iv) helical trajectory along the Z-axis (0.2 meters radius, 0.1 meters pitch); square-helical trajectory along the Z-axis (0.2 meters sides, 0.02 meters pitch).

---

Figure 6: These snapshots illustrate the telcoperation task involving box exploration. this task, the operator maneuvers the robot through the box and inspects its contents. The operator's camera views are shown the top right of each image.
Performance Five-Segvee Five-Semment Continuum Robot in 3D Environment. The first three images show the robot reaching a target (red sphere), while the last three depict obstacle avoidance around a yellow bar, highlighting skills developed through reinforcement learning.
Figure 7:
Designed to showcase inspection confined spaces, URS robot with a two- segment extendable continuum robot (each segment extending up 0.03 m) tele-operated via keyboard inputs. The robot navigates through confined entry into box, using camera inspect the interior. The continuum segments' flexibility and extendability allow thorough inspection, demonstrating precise maneuvers in tight spaces.
Box Exploration:
Reaching Target: five-segment continuum robot learns reach a target in two difficulty levels: i) without obstacles; ii) with bar obstacle to avoid. The learning objective is to develop policy optimizing the path, minimizing distance to the target while avoiding obstacles.
Non-Prehensile Object Manipulation: three-segment continuum robot, acting as a neck quadruped robot (Unitree Al), pushes cube towards a target. The robot controls its movements using sinusoidal functions, sin( (ur), where and the amplitude and frequency. This setup ensures smooth and precise control, facilitating effective pushing actions.
4.1 Results and Discussions
Our evaluation of trajectory tracking for diverse shapes, including square, circle, figure-eight, and helical paths, demonstrates high precision with low mean squared error (MSE). The average MSE for the square, figure-eight, and circle trajectories were 351 10"6m2 409 10. and 195x 10-6m² respectively, indicating exceptional accuracy 2D space. The 3D trajectories, such the helical and square-helical paths, maintained MSE of 153 10-6m² and 268 10-6m², respectively, highlighting the robot's capability to execute complex movements. Figure shows representative results (details in Appendix E).
In the box exploration task, initial challenges in maneuvering the continuum robot inside the box were addressed by allowing the operator to disable the movement of rigid body parts, enhancing maneuverability. This adjustment significantly improved the precision and efficiency of internal inspections. In ten tests, the operator successfully completed the task each time, demonstrating the reliability of the control enhancements. Figure 6 illustrates the operational stages and outcomes.
Training a five-segment continuum robot using the Soft Actor-Critic (SAC) algorithm [30] to reach targets with varying difficulty levels showed effective learning and adaptability. The robot suc- cessfully reached targets and avoided obstacles, demonstrating proficiency complex scenarios (Figure 17). Additionally, in non-prehensile object manipulation tasks, the robot effectively pushed cube towards target, showcasing its ability adjust its trajectory and handle the object efficiently (Figure 8). Further results and details provided in Appendix F.
7

---

Figure 8: Sequential snapshots showing quadruped with three-segment continuum neck, manip- ulating a cube towards a target (red dot).
The snapshots in Figure highlight test result where the robot demonstrates its learned skills in non-prehensile object manipulation using SAC. The robot's strategy, driven by reward function that values both making contact with the object and minimizing the distance the target, showcases its ability push the object toward the goal. As the robot progresses through the sequence, effectively adjusts its trajectory and handling of the cube, leading to successful alignment with the target in the final snapshot. Further details are provided in Appendix G. video showing all the results is available online at
Real Robot Validation
In this section, we explore the potential of SoftManiSim for simulating the behavior of a continuum robot and val- idating this through real-robot experiments. The scenario involves trajectory-tracking tasks, where the simulated and real robots programmed to track set of trajectories. First, collect data from the real robot, validate the model, and fine-tune the model's parameters, thereby re- ducing the sim-to-real gap. Then, we train control policy in our simulation framework that can be applied to the real robot. Figure shows the flexible soft manipulator used this experiment and its digital version simulated using SoftManiSim.
Figure 9: Digital twin and real robot setup.
Table 2: Trajectory tracking results
After training control policy and deploying it the robot, we analyzed the RMSE values summarized in Table 7. These promising results demonstrate the accuracy of our method and validate the effectiveness of the SoftManiSim simulation in closely mirroring real-world dynamics. Detailed information about the robot, experiment setup, experiment details, and more results are provided in Appendix H.
RMSE (mm)
x
y
Triangle
2.87
3.14
3,08
Square
3.08
3.89
3.82
Circle
1.38
1.88
2.19
Conclusion and Limitations
In this paper, we introduced SoftManiSim, an innovative simulation framework for multi-segment continuum manipulators. By integrating advanced continuum robot modeling with PyBullet simula- tor, SoftManiSim offers comprehensive toolset that bridges the gap between simplified assumptions and the realistic modeling of continuum robots. The framework ability to support parallel operations and generate synthetic data is crucial for training deep reinforcement learning models, enhancing the development and optimization of control strategies in dynamic environments. Extensive simulations and real robot validations demonstrated the framework's effectiveness, showeasing its capability to handle complex robotic interactions and tasks with high accuracy and computational efficiency.
Despite its advantages, SoftManiSim has several limitations. First, while the proposed solver sig- nificantly improves computational efficiency, it may still face challenges in scenarios with extremely high dynamic complexity or when dealing with highly non-linear behaviors not captured by the current model. Additionally, the integration with PyBullet, while robust, might not fully leverage the detailed physies of more specialized soft robot simulation frameworks, potentially limiting accuracy in some specific cases. Lastly, while our framework supports integration with various higid-boyy robots, it may require further optimization and tuning to handle broader range of hybrid robotic systems seamlessly.

---

7 Acknowledgement
This work is supported by the Medical Research Council [MR/T0232521J]
References
[1] C. Lee, M. Kim, Y. J. Kim, N. Hong, S. Ryu, H. J. Kim, and Kim. Soft robot review. International Journal of Control, Automation and Systems, 15(1):3-15, Feb 2017.
[2] C. Della Santina and D. Rus. Control oriented modeling of soft robots: the polynomial curvature case. IEEE Robotics and Automation Letters, 5(2):290-298, 2019.
[3] R. K. Katzschmann, M. Thieffry, O. Goury, A. Kruszewski, T.-M. Guerra, C. Duriez, and D. Rus. Dynamically closed-loop controlled soft robotic arm using reduced order finite element model with state observer. In 2019 2nd IEEE international conference soft robotics (RoboSoft), pages 717-724. IEEE, 2019.
[4] C. Della Santina, R. K. Katzschmann, A. Biechi, and D. Rus. Dynamic control of soft robots interacting with the environment. In 2018 IEEE International Conference on Soft Robotics (RoboSoft), pages 46-53. IEEE, 2018.
[5] C. Della Santina, R. K. Katzschmann. A. Bicchi, and D. Rus. Model-based dynamic feedback control of a planar soft robot: trajectory tracking and interaction with the environment. The International Journal of Robotics Research, 39(4):490-513 2020.
[6] M. Kasaei, K. K. Babarahmati, Z. Li, and M. Khadem. Data-efficient non-parametric modelling and control of an extensible soft manipulator. In 2023 IEEE International Conference on Robotics and Automation (ICRA), pages 2641-2647 IEEE, 2023.
[7] M. Kasaei, K. K. Babarahmati, Li, and M. Khadem. data-efficient neural ode framework for optimal control of soft manipulators. In The Conference on Robot Learning 2023, pages 1-14. PMLR, 2023.
[8] B. Thamo, F. Alambeigi. Dhaliwal, and M. Khadem. A hybrid dual jacobian approach for autonomous control of concentric tube robots in unknown constrained environments. In 2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pages 2809-2815. 2021. 1oi: 1091110/ 16..1168..000 2021..02...0 196169666085.
[9] J. M. Bern, Y. Schnider, P. Banzet, N. Kumar, and S. Coros. Soft robot control with learned differentiable model. In 2020 3rd IEEE International Conference on Soft Robotics (RoboSoft), pages 417-423, IEFF, 2020.
[10] G. Thuruthel, E. Falotico, F. Renda, and C. Laschi. Learning dynamic models for open loop predictive control of soft robotic manipulators. Bioinspiration & biomimetics, 12(6))066003, 2017.
[11] D. Bruder, C. D. Remy, and R. Vasudevan. Nonlinear system identification of soft robot dynamics using koopman operator theory. 2019 International Conference on Robotics and Automation (ICRA), pages 6244 6250. IEEE, 2019.
[12] G. Mengaldo, F. Renda, S. L. Brunton, M. Bächer, M. Calisti, C. Duriez, G. S. Chirikjian, and C. Laschi. A concise guide modelling the physics of embodied intelligence in soft robotics. Nature Reviews Physics, 4(9):595-610, Sept. 2022.
[13] C. Armanini, C. Messer, A. T. Mathew, Boyer, Duriez, and F, Renda. Soft robots modeling: literature unwinding, 2021.
[14] 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 Robotics, 35 (1): 12:-144334, 2018

---

[15] T. George Thuruthel, F. Renda, and F. lida. First-order dynamic modeling and control of soft robots. Frontiers in Robotics and AI, 7:95, 2020.
[16] G. Fang, Y.
Tian, Z.-X. Yang, J. M. Geraedts, and C. C. Wang. Efficient jacobian- based inverse kinematics with sim-to-real transfer of soft robots by learning. JEEE/ASME Transactions Mechatronics, 2022.
[17] E. Coumans and Y. Bai. Pybullet, a python module for physics simulation for games, robotics and machine learning. http://pybullee org, 2016-2020.
[18] M. A. Graule, C. B. Teeple, T. P. McCarthy, G. R. Kim, R. C. S. Louis, and J. Wood. Somo: Fast and accurate simulations of continuum robots in complex environments. In 2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pages 2021.
IEEE,
[19] N. Koenig and A. Howard. Design and use paradigms for gazebo, open-source multi- robot simulator. In 2004 IEEE/RSJ international conference on intelligent robots and systems (IROS)IEEE Cat. No. 04CH37566), volume 3, pages 2149-2154, Iece, 2004.
[20] E. Todorov, T. Erez, and Y. Tassa. Mujoco: A physics engine for model-based control. In 2012 IEEE/RSJ international conference intelligent robots and systems, pages 5026-5033. IEEE, 2012.
[21] M. Gazzola, L. Dudte, A. McCormick, and L. Mahadevan. Forward and inverse problems in the mechanics of soft filaments. Royal Society open science, 5(6):171628, 2018
[22] F. Faure, C. Duriez, H. Delingette, J. Allard, B. Gilles, S. Marchesseau, H. Talbot, H. Courte- cuisse, G. Bousquet, I. Peterlik, et al. Sofa: A multi-model framework for interactive physical simulation. Soft tissue biomechanical modeling for computer assisted surgery, pages 283-321, 2012.
[23] W. Huang, X. Huang. C. Majidi, and M. K. Jawed. Dynamic simulation of articulated soft robots. Nature communications, 11(1):2233, 2020..
[24] S. Antman. Nonlinear Problems of Elasticity; 2nd ed. Springer, Dordrecht, 2005. doi:
10.1007/0-387-276992 URL https: cern. wtt.:eeee.n.ccccc//eeeeae ht/////ord/1200200.
[25] P. Rao, Q. Peyron, S. Lilge, and J. Burgner- Kahrs.. How to model tendon-driven continuum robots and benchmark modelling performance. Frontiers in Robotics and A1, 7, Feb. 2021. ISSN 2296-9144. doi: 10i::10.38990 wt..:3//ffoobb.2220003333 2020. 630245.
URL http://dsx doi. dow..oo/o..oo/000 ffoott.
[26] O. Michel. Cyberbotics Itd. WMbots professional mobile robot simulation. International Journal of Advanced Robotic Systems, 1(1):5, 2004.
[27] Y. Hu, Liu, Spielberg, B. Tenenbaum, T. Freeman, Wu, D. Rus, and W. Ma- tusik. Chainqueen: A real-time differentiable physical simulator for soft robotics. In 2019 International conference roboties and automation (ICRA), pages 6265-6277 IEEE, 2019.
[28] Z. Mitros, B. Thamo, C. Bergeles, L. da Cruz, K. Dhaliwal, and M. Khadem. Design and modelling of continuum robot for distal lung sampling in mechanically ventilated patients in critical care. Frontiers Robotics and AI, 8, 2021.
[29] D. C. Rucker and R. J. Webster III. Statics and dynamics of continuum robots with general tendon routing and external loading. IEEE Trans. on Robotics, 276)) 2011.
[30] T. Haarnoja, A. Zhou, P. Abbeel, and S. Levine. Soft actor-critic: Off-policy maximum entropy deep reinforcement learning with stochastic actor. In International conference machine learning, pages 1861-1870. PMLR, 2018.
10

---

[31] F. Callier and J. Willems. Criterion for the convergence of the solution of the riccati differential equation. JEEE Transactions on Automatic Control, 1332-122222 1981.
[32] J. Till and D. C. Rucker. Elastic stability of cosserat rods and parallel continuum robots. IEEE Trans. Robotics, 33(3):118-733, 2017. 2017.
[33] D. Rucker, Jones, and R. J. Webster. A geometrically exact model for externally loaded concentric-tube continuum robots. IEEE Trans. Robotics, 26(5):669-780, 2010.
[34] F. Renda, M. Cianchetti, H. Abidi, J. Dias, and L. Seneviratne. Screw-Based Modeling of Soft Manipulators With Tendon and Fluidic Actuation. Journal of Mechanisms and Robotics, (4), 05 2017.
[35] L. F. Shampine. Some practical runge-kutta formulas. Mathematics of Computation, 46: 135-150, 1986. URL
www.ppiissmmaicscch.l.... www./oooosSD: wttpa//atttttao.roooooooooooooo. 26665577
[36] L.. F. Shampine and M. K. Gordon. Computer solution of ordinary differential equations
: the initial value problem. W.H. Freeman, San Francisco, 1975. ISBN 07 0716704617;
9780716704614.
[37] E. Hairer and G. Wanner. Solving Ordinary Differential Equations II. Springer Berlin Heidelberg, 1991. ISBN 9783662099476. 000:100.007/978---66---09990 URL http: doi. wttg/10.// 1007 --77788--62--8-1 3-666-0997-6--66
//dx.doi..o
[38] R. H. Byrd, M. E. Hribar, and J. Nocedal. An interior point algorithm for large-scale nonlinear programming, SIAM Journal on Optimization, 977:8777,00, Jan. 1999. ISSN 1095-7189, doi: 10. 10.1137/61052223493331111
URL http:h/tt..ddee ort./....g..... http://....11//1/111221297221111
[39] T. F. Coleman and Y. Li. A reflective newton method for minimizing a quadratic function subject to bounds on some of the variables. SIAM Journal on Optimization, 6(4): Nov. 1996. ISSN 1095-7189.
Utt.ttp:: ori.
10. 10.117//11526229942200000
[40] M. J. D. Powell. A fast algorithm for nonlinearly constrained optimization calculations, page 144-157. Springer Berlin Heidelberg, 1978. ISBN 9783540359722. doi: 10.11007//b00077003. URL http::tttx.ddda org 1007 /BBB6667006.
[41] S. Garrido-Jurado, R. M. noz Salinas, F. Madrid-Cuevas, and M. Marín-Jiménes Auto- matic generation and detection of highly reliable fiducial markers under occlusion. Pattern Recognition, 47(6))2280 2292, 2014. ISSN 0031-3203. httptppp//ck.ddi.rr/110...0000.. apatcog.2014.0111 005. URL 50031320314000235.
[42] S. Garrido-Jurado, R. M. noz Salinas, F. Madrid-Cuevas, and R. Medina-Carnicer. Generation of fiducial marker dictionaries using mixed integer linear programming. Pattern Recognition,
51:481 491, 2016. ISSN 0031-3203. ootttt//ww.kkoooo//////////pp/pp URL http: httt:://www... sci scciennedireet.... htt.a//cca....aa..c......ce/aaaa
[43] F. Renda, F. Boyer, J. Dias, and L. Seneviratne. Discrete cosserat approach for multisection soft manipulator dynamics. IEEE Transactions on Robotics, 34(6):1518-1533, 2018. doi:
N0.1109/TR.2011..365
[44] SOFA Framework. System resolution linear solver, 2024. U thub. htt.://liooooiiiiiiaetteeeeeoerr Accessed: 2024-08-13.

---

Appendix A Real-time and Parallelizable Solver for Continuum Robots
To address the challenges in solving the continuum robot model, we design nonlinear observer that rapidly estimates the rod's initial curvature u (s,)) without explicitly solving the BVP. This observer transforms the BVP into an initial value problem (IVP) solvable with common ODE solvers. All the parameters and variables used in this section defined in Table. 3.
To this end, we assume we have an initial estimation for the robot's curvature at = 0 given by @00, f). Using this value and the first four initial conditions given in (2), we can solve (1). However, as (0, f) not accurate, the predicted robot shape and consequently pull wires' length are inaccurate. The error in the estimation of the pull wires' length
e()) = =(C,)) L,(1,,
(8)
where / [4, "4' is the vector containing the pull wires' lengths, and denotes inaccurate estimations due to inaccurate initial curvature.
To design the observer, let us first define an auxiliary variable I:
[(s,t) t) = Ou(
(9)
where u00, r) vector consisting of the initial curvature and the initial twist curvatures of the robot, and x matrix, where is the number of pull wires. Now, we can take the time derivative of the error given in (8) and obtain:
e(r) (O)))) L,
(10)
Symbol r(s)
Description
Center line of the robot as a function of length s Orientation of the robot as function of length
R(s)
Overall length the rod Instantancous curvature of the rod ((s)
C
Unit vector equal to [0, 0, 1]" Pre-curvature of the rod in its reference configuration Stiffness matrix equal to diag E1,, GJ) K
e3
E
Young's 's modulus of the rod Second moment of inertia Shear modulus
I
G
J
Polar moment of inertia External load at the rod's tip
F(1)
f(s.t)
External distributed force
Distance between the pull wire and the rod, see Figure. Distance from the robot's centroid to the tubes Relative angular position of each pull wire, see Figure.
Bi
4(s,))
Total are length of each pull wire
L(()
Desired length of the tth pull wire at time / Initial estimation of the robot's curvature Error in estimation of pull wires' length
a(0.))
e(r)
r(s,t)
Auxiliary variable for partial derivatives Symmetric positive definite matrix used in the Riccati equation
V
P())
Solution of the differential Riccati equation
Q
Symmetric positive definite matrix
Flx
Skew-symmetric cross product matrix operator Levi-Civita symbol in three dimensions
e
D(s,))
Partial derivative of R(s) with respect to u(0,
1(s,))
Partial derivative of (s)) with respect (0,
@n.m
Tensor product operator with contract along and
Table Nomenclature of Variables
12

---

Equation (10) is a first-order linear system of equations and can be optimised using the Riccati equations [31] to estimate the initial curvature u(0, r) that minimises the prediction error of the observer et) over time. The optimal solution is given as
--f PT (C.))
=(0, = (00,t)=-
(11)
where P()) is the solution of the differential Riccati equation
-P()) -P(())) - (CN)))()))))))))))))))))))) P(ty) Po-
(12)
Q, V. and Po are all symmetric positive definite matrices. At each time step, e(r) and r(C,r) are updated, then u is determined by solving (11) and (12).
So far, we have shown that given the value I, one can design an observer to estimate the initial curvature of the robot and update the robot shape accordingly without the need solve the robot model iteratively. Now, to find I we transform the model given in (1) into observable form. We define some additional partial derivatives, namely, / and D as:
QR(s) Ou(O,,)' J(s,t) = Ou(0,r)
@u(s)
D(s,t)
(13a)
We then take a partial derivative the robot's model in (1) with respect u(0, starting by (1d).
We get:
r(s, (e3 +
[d,I,
(14)
|lez + [u(s)],di] dill
In deriving the above equation, we used the following identities:
d
8(x)² dg(x) [xg(x) dx
dx (ll((x)))
(15a)
a ([a],b) [b], da Ôb Ōc
+ [a]
(15b)
dc
dc
Equation (14) gives as a function J, now to estimate / we take partial derivative (1b) ) and (1c) with respect to u(0,1) r):
([ul 82,2 D)T + 82,2 (E 02,1 J),
(16a)
J' k-1 [K(u- 1o-==u)) n')l, [u] KJ-
(16b)
[esl. 62,1 (F(1)+ S' s(..o)doo)
where e the Levi-Civita symbol in three dimensions defined as
+1 if ji, is an even permutation of (1, Eijk -1 if (i, k)) is an odd permutation of (1,2,3),
(17)
0
if any two indices are equal.
In (16), we removed the (s notation for simplicity and the process of deriving (16), we used the chain rule of differentiation, and the following definitions.
Definition Given vector Re and a differentiable matrix M (xx R Ruxn let N(x)
m.xxxl be a partial derivative of M (x) w.r. Then
(M;
(x) (x) = 0xk
(18)
13

---

Definition 2 Let F(x) BR' - m and G(x) R R be differentiable matrices. Then ((F(x)G(x)) (G" (x) 82,2
(F(x)
dx
0x
(19)
8G(x)
F(x) 62.2
where the transpose operation T for 3 dimensional tensor defined by FT Fjik- Operator @n.m indicates product of two tensors with and m denoting which dimensions contract in each lensor, respectively. For instance, H = F 82,2 G is defined as
Hijk
Fuy
Fuj Gulk
(20)
1=1
Equations (16), (14), and (1) form the generalised model of the robot and can be solved together with the following initial conditions:
r(0) [00 R(0) Lax3,
(21a)
(0) 0, (0. 0. ((C,t) L,(1, i= 1 1,...
(21b)
The initial conditions for the system are:
r(0) [000]*, R(0) 13x3+
(22a)
(²(0) 0, 4(00,) = 0,
(22h)
J(0. IIx33+
(22c)
D(O, r) 03x3x3,
(22d)
r(0, = Inxn
(22e)
#00,1) = =- S. Pr (e.
(22f)
The model combined with the initial conditions now be solved as an IVP.
To find the shape of the robot, first the equations in (16), (14), and (1) are solved with respect to given the initial values in (22). Then, time dependant variables including u(0, r) and observer gain are updated through (22f) and (12), respectively. At the first time step, the initial curvature u(00,) r) of the robot is assumed be zero.
Appendix B
Comprehensive Evaluation of the Proposed Solver
Here, we have performed comprehensive evaluation of the proposed solver within the SoftManiSim framework, benchmarking it against widely used solvers in the field.
As illustrated in Figure 10, traditional techniques solve a variation of the Cosserat Rod model as a boundary value problem (BVP) [32, 33, 34]. This involves forward pass using ordinary differential equation solvers, such as the Euler Method or Runge- Kutta methods, to estimate the robot's are parameters. Subsequently, a BVP solver iterates on the solution using an optimization algorithm to find the correct initial condition that satisfies the boundary condition the robot's end, indicated by the red arrow. Our novel approach enhances this model by solving the equations an initial value problem, where the optimal initial curvature is estimated using a bespoke observer. This observer estimates the temporal evolution of boundary values based on the spatial evolution of the robot's are parameters, as detailed in the paper. This significantly improves the computational efficiency of the solver by eliminating the iterative loop required in BVP solvers. Notably, both methods can solve the problem an initial value problem in the absence of external forces. However, complexities arise in the presence of contact forces such non-constant bending curvature, which commonly neglected in the literature but essential to bridge the sim-to-real gap in soft robot simulators. This
14

---

Joint Space
Arc Parameters
Task Space
F(O), f(s,1)
r(s)
Classic Solvers
(t
ODE Solver
R(s) (())
xxt)
1
x<0))
BVP Solver
Closed-loop Control
F()), fs.
r(s)
(,(t)
ODE Solver
Proposed Solver
R(s)
xx()
1 11
u(s)
1 Au(0)
Observer
Closed-loop Control
Figure 10: The schematic compares the traditional continuum robot modeling with the proposed solver. Classic techniques either assume the rod bend under constant curvature without any external force/contact solve variation of the Cosserat Rod model as boundary value problem (BVP) to estimate robot tip position defined as x(r) r(((r)) in task space. This involves a forward pass which uses ordinary differential equation solvers such as Euler Method or Runge- Kutta methods to estimate robot arc parameters. Later a BVP solver that uses an optimisation algorithm iterates on the solution to find the right initial condition that satisfies the boundary condition at the robot end. This process is shown with a red arrow. The new approach augments this model to solve the equations initial value problem, estimating the optimal initial curvature using bespoke observer. This significantly improves the computational efficacy of the solver as it includes only a forward pass and avoids the iterative loop used in BVP solver.
negates one of the most important benefits of soft robots, i.e, capability interact with environment safely.
To evaluate our method systematically, we first assessed the ODE solver and then the BVP solver. To select the optimal ODE solver, we conducted an experiment by moving a simulated robot (a replica of exact experimental setup detailed in the paper) across 500 randomly selected points within its workspace. These points and the robot's workspace shown in Figure 11()). In the first scenario, to isolate the ODE solver's performance, assumed external forces acting on the robot.
We tested state-of-the-art solvers implemented in Python, including the explicit Runge- (4,5) formula [35], explicit Runge-Kutta (2,3) formula [35], Adams Bashforth Moulton Method [36], and second-order Rosenbrock method [37]. The results show that all non-stiff methods performed similarly, with the Runge-Kutta (2,3) method achieving the fastest sampling time (8.1 ms) and the least standard deviation (1.5 ms). Therefore, selected it as our main ODE solver for the remainder of the simulations.
Next, we compared our method, which involves only a forward pass, with several existing BVP solvers. All BVP solvers aim to estimate the initial value of the robot curvature, u(0), to minimize the error the cable lengths, given as an end boundary condition defined by:
costgvp I|ī(C, -())ll
(23)
where ||-I| denotes the L2 norm, L()) [l. L, the vector of the actual lengths of the pull wires f wires, 1 -e,.-.. 2.7 is the vector of the pull wires' lengths estimated by the model, and " indicates inaccuracies due to an incorrect initial curvature.
15

---

0.15
Space Tested Positions
Robet Shape
0.1
0.4
0.05
Compaziie
0
6-2
0.1
0.1
Expiest Runge Ketta (4.5
Expiett Rucgo Kons (2.1
Adama Hedioni
Secnd Onler kosechor
0.1
0.05
y [m]
-0.1
-0.1
-0.05
x [m]
ODB Sobe
(a)
(b)
Figure 11: (a) The robot's workspace and 500 randomly selected points. (b) comparison of the computational efficacy of various ODE solvers across 500 points.
We selected three well-known optimizers solve the BVP: the Interior Point (IP) method [38], the Levenberg-Marquarrdt (L.-M) method [39], and the Sequential Quadratic Programming (SQP) method [40]. These methods represent the core solvers utilized in many existing papers and simulators [32, 33, 34] and provide a robust baseline for comparative analysis. To ensure fair comparison, we focused on the performance of the solvers using their standard Python implementations in the SciPy library.
Our benchmarks focused on both computational time and accuracy in estimating the correct boundary value cost function defined in (23). To model the robot's behavior in the presence of contact, we applied a distributed force of f = [1, 1, 1] N/m to the robot body and 3D random force with magnitude to 2 N on the robot tip at random angles between -π and л. We selected N as the maximum force as forces beyond this value would result in more than 30% strain permanently damaging the robot. The magnitude of the forces for each tested point is shown at the bottom of Figure 12(c). Figure 12(a) compares the robot tip position using different solvers with the robot tip position in the absence of force. It is evident that the constant curvature assumption (i.e., neglecting external forces) results in significant errors. Additionally, the proposed solver produces a smoother estimation of the robot tip position compared to other BVP solvers. Figure 12(b) compares the computational efficacy of the solvers. All BVP solvers were set to a tolerance below x 10-4 m. As shown, our solver offers the smallest sampling time (15 ms) with the least standard deviation (3 ms). Furthermore, to compare the accuracy of all solvers in terms of satisfying boundary values, compared the estimated cost in (23) for each method in Figure 12(c). As can be seen, our solver provides the best accuracy par with the L-M method, with the overall boundary value error estimation below 5 10-4 m. Considering that the best BVP solver, the L-M method, runs at 153 106 ms, we can conclude that our solver is approximately 10 times faster than the most accurate solver.
These results demonstrate that our proposed solver not only enhances computational efficiency but also improves the accuracy of simulations compared to existing state-of-the-art methods, thereby setting new benchmark in the field of continuum robot simulation.
Appendix C Robot Prototype
Figure 13 depicts the robot used in our experiments, consisting of a flexible backbone stabilized by spacers. At the gripper end, four cables are fixed and pass through the spacers, providing the flexible backbone of the robot. The spacers have enough clearance to follow the curvature of the main backbone. The cables are running in parallel and constrained with respect to each other using
16

---

SQP Hakel
g
645
ner
0.7
2.3
Computation Time
0.6
305
X00
[e]
0.5
L-3 Mittel
Preprea Madied
04
0.3
122
0.2
510
0.1
0.0
0.5
0
SQP
L-M
Observer
200
104
Method (b)
x0
0.5
200
Boundary Value Enror [m]
0.01
0.006
www
0
50
100
150
200
250
300
350
400
450
500
x110
200
x
Proposed Salver
Force Magnituti [N]
0
50
100
150
200
250
300
350
400
450
500
150
200
400
Targot Point Number
(c)
Figure 12: (a) A comparison between the solutions of BVP solvers and the proposed solver for the
robot trajectory without external force under the constant curvature assumption. (b) A comparison of computational efficacy between various BVP solvers and the proposed solver. (c) The estimated
boundary value error for each method at each of the 5000 tested points the robot workspace and the magnitude of the force the robot each point.
17

---

spacers. The backbone curvature can be manipulated by pulling and pushing the cables. The robot is powered by four brushless DC motors from Maxon Motors, each equipped with quadratic encoder. The motors are controlled by PID position controller modules (EPOS4 Compact 50/5 CAN), which receive feedback from the encoders and interface with a PC via the CAN protocol for setting and retrieving control parameters. A Logitech RGB camera mounted on the robot's base and for precise location tracking of the robot's tip, ArUco marker [41, 42] is attached to which serves as critical component in the feedback loop of the control system.
Camera
Gripper
Cables
Marker
Spacers
Motors
Position
Controllers
Figure 13: Prototype of our cable-driven continuum robot: The main backbone curvature can be manipulated by pulling and pushing the cables which are controlled by four brushless DC motors, each equipped with quadratic encoder and position controllers.
Physical parameters of the robot used in the simulations are given Table 4. In the model verification experiment, the robot's initial length (f(O),, second moment of inertia, and polar moment of inertia were measured manually. Later, the robot's tip position calculated from the mathematical model of the robot compared with the camera measurements at 10 points across the robot's 's workspace. A least squares algorithm was used to fit model predictions to experimental data to find values of the robot's s stiffness and shear modulus. All these parameters are reported in Table 4.
Table Physical parameters of the robot.
((0) [m]
[m*]
[m=*]
E [kPa]
G [kPa]
0.07
7.363x10
1.4726x10-
300
70
Throughout this work, for all training scenarios, we used the same network architecture and almost the same hyperparameters as described in Table 6.
Appendix D Custom Gym Environments
Using SoftManiSim framework, we have developed ten different customized gym environments specifically tailored for continuum robots. Illustrated in Figure 14, these environments crafted to challenge the robots with variety of scenarios, each designed to mimic different aspects of real-world applications and the complex physical interactions that continuum robots may face. For detailed examples of how these environments can be applied, please refer to examples'ggyn gymms.
This development is particularly beneficial for the robotics community as provides rich set of tools for testing and refining robotic control policies. By offering a variety of standardized yet challenging scenarios, these environments enable researchers and developers benchmark and enhance the performance of their robotic systems under controlled but varied conditions. Moreover,
18

---

Figure 14: Ten different customized gym environment; To enhance policy learning for continuum robots, we have developed set of custom Gym environments within our SoftManiSim frameworks that can be used as a baseline.
Figure 15: Trajectory tracking results: the robot is tasked with following various paths in both 2D and 3D spaces. The red and black lines indicate the actual and desired paths, respectively.
sharing these resources fosters collaborative atmosphere within the community, promoting shared learning and accelerating innovation in robotic design and functionality. The availability of these environments ensures that both new and experienced researchers can explore the nuances of robot- environment interaction, thus contributing significantly to the field of continuum robotics.
Appendix E Detailed Results of Trajectory Tracking
In this task, a URS robot integrated with two-segment extendable and bendable continuum robot, each segment capable of extending up 0.03 m, utilized. The simulated robot was programmed follow various complex trajectories in both 2D and 3D spaces, designed test its precision and control capabilities. These trajectories included square in the X-Y plane with 0.4 meters sides, figure-eight curve described by specific sinusoidal equations for and y coordinates over 20-second period, a circular path with 0.2-meter radius, helical trajectory with 0.2-meter radius and a 0- meter pitch, and a square-helical path combining square and helical movements. The effectiveness of robot's path following was quantitatively assessed by calculating the Mean Squared Errors (MSE) the X, Y. and Z coordinates for each trajectory. The results, summarized the provided Table and shown in Figure 15, indicate varied performance across different trajectories. The helical trajectory showed the most precise control, with the lowest average MSE of 0.000153, suggesting that the robot manages consistent vertical movements well. The circular trajectory also exhibited low error rates, emphasizing the robot's ability to maintain steady curvilinear motion. In contrast, the figure-cight and square trajectories had higher MSEs, particularly in the horizontal plane, indicating challenges in managing more complex path changes and corner navigation. The square-helical trajectory achieved a moderate average MSE, highlighting blend challenges in maintaining precision in both linear and vertical displacements. These insights can guide further refinements in control algorithms, particularly focusing improving accuracy in trajectories involving abrupt direction changes and complex geometric patterns.
19

---

Table Mean Squared Errors (MSE) for Different Trajectories.
Trajectory
MSE X
MSE Y
MSE Z
Average MSE
Square
0.000592
0.000398
0.000062
0.000351
Circle
0.000214
0.000341
0.000030
0.000195
Eight Figure
0,000930
0.000223
0.000075
0.000409
Helix
0.000190
0.000256
0.000014
0.000153
Moving Square
0.000431
0.000333
0.000041
0.000268
Appendix F Detailed Information About Reaching Target Task
In the reaching scenario, each episode begins with initializing the environment by ran- domly placing target within the robot's working area (depicted by green cubes in Fig- 17 and Figuire 18), effectively setting new goal for each session. The length of each episode is set to one, meaning that upon each reset, the robot receives only one observa- tion the position of the random target This setup compels the robot to rapidly adapt and optimize its policy to minimize the positional error in a single step. The SAC algorithm continuously updates this policy based on the rewards and penalties received, which assess how closely the robot's end-effector reaches the target while remaining within operational bounds. This stringent single-step episode struc- ture accelerates the learning process, demanding high effi- ciency and accuracy from the robot's decision-making strate- gies.
and must immediately decide on an action.
Traning Staze
Figure 16: Reward progressions during training.
Appendix F.1 Reward Function
The reward function for the soft manipulator robot is designed
to finely control the robot's behavior in dineeninniiii workspace, across two scenarios: reach- ing a target and reaching while avoiding an obstacle. The function is defined as:
reward penalty -50x (distancee)
where distance is the Fuclidean distance between the robot's end-effector and the target position. The penalty component tailored to ensure that the robot operates within its designated bounds and adapts to additional task complexities when an obstacle present.
For the basic reaching task, the penalty is applied as follows:
-0.5 if > 0.28 or 2 < 0.07
penalty = 0 otherwise
this penalty discourages the robot from moving beyond predefined vertical boundaries, effectively reducing the reward when the robot operates outside safe operational zones, thereby enforcing adherence safe and efficient paths.
In the reaching task with obstacle avoidance, an additional penalty is introduced:
{o-
-1.0 the robot contacts the obstacle
obstacle penalty
otherwise
this ensures that the robot not only aims to reach the target but also learns to navigate around obstacles, further complicating the learning process by penalizing contact with obstacles. Such a mechanism promotes the development of more complex navigation strategies and enhances the robot's ability to handle real-world environments where obstacles are common.
The of the exponential decay function, -50x(distanee)) is critical in both scenarios. It creates strong incentive for the robot to minimize distance to the target, as rewards diminish rapidly with
20

---

Table Network architecture and hyperparameters
Component
Details
MLP with hidden layers
Actor Network
Each layer: 256 units, ReLU activation
Output layer: Action size, tanh activation MLP with 2 hidden layers (Twin Crities) Each layer: 256 units, ReLU activation Output: Single value (Q-value), no activation
Critic Network
Learning Rate
0.0003
Batch Size
64
Discount Factor (y)
0.99
Replay Buffer Size
50000
Number of epoch
2 x 10
Figure 17:
Performance a five-segment continuum robot in a 3D environment. The robot learned how to reach target (red sphere), highlighting skills developed through reinforcement learning.
increased distance. This sharp gradient is crucial for reinforcing precise and controlled movements of the end-effector towards the target, thereby playing pivotal role in the learning algorithm by enhancing the speed and accuracy of the robot's operational capabilities in varied task environments.
Figure shows the progression of mean rewards received during the training of two policies over 2 million steps. This plot illustrates the learning progression for two teacher scenarios: where the robot solely focuses reaching target ("Reacher"), ) and another where it must reach the target while also avoiding an obstacle ("Reacher with Obstacle"). In both cases, the rewards trend upward, indicating successful learning and adaptation to their respective tasks. However, the introduction of an obstacle in the second scenario introduces a complexity that slightly delays convergence compared to the first scenario. This reflected in the different trajectories of the reward eurves, with the "Reacher with Obstacle" scenario showing slightly more gradual ascent and later stabilization. The final plateau at high reward value in both scenarios suggests that the robot effectively learned to reach the target under both sets of conditions, optimizing its path and strategy maximize the received reward, thereby demonstrating the capability of the reinforcement learning model to adapt to increased task complexity.
In the evaluation of the performance over 100 trials, the mean Fuclidean distance between the end- effector and the target was found be 0.0109 meters with standard deviation of 0,00471 meters in the scenario without obstacles. This demonstrates high degree of accuracy and consistency in reaching the target. In contrast, when obstacles were introduced, the average distance increased to
21

---

Figure 18: Performance five-segment continuum robot in a 3D environment: Demonstrating advanced reaching Skills through reinforcement learning. This robot learned to reach target (red sphere) while skillfully avoiding a yellow bar obstacle, showcasing its refined abilities acquired from reinforcement learning techniques.
0.0167 meters, and the standard deviation widened to 0.00864 meters. This increase in both the mean and variability indicates noticeable impact of obstacle presence on the robot's 's ability reach the target precisely, reflecting the added complexity and navigational challenges introduced by the obstacles.
Appendix G Detailed Results of Non-Prehensile Object Manipulation
In this simulation, a continuum robot integrated onto a Unitree Al quadruped is tasked with non- prehensile object manipulation, specificalyy pushing a cube towards a target. During the initialization phase in each run (test/train), the environment is set up which positions the target at a randomly determined location with the x-coordinate between 0.55 0.7 meters and the y-coordinate between -0.1 0.1 meters, ensuring variability and challenge in starting positions for each trial. The reward function is articulated as follows:
-3000 (distancce + 0.5 x (touch)
reward = e
where distance obj is the Euclidean distance the target, and touch a binary indicator that adds bonus if the robot's tip makes contact with the cube, thus encouraging effective interaction with the object.
After training using SAC algorithm, the results demonstrate high precision the robot's 's performance. The average absolute errors for 50 trials in reaching the target's x and coordinates are approximately 0.048 and 0.046, respectively, and the average distance from the target 0.092 meters. These results highlight the effectiveness of the control strategy in enabling the robot adapt and accurately manipulate objects towards varying target positions. Figure 19 shows sequential snapshots showing quadruped with three-segment continuum neck, manipulating cube towards target. A video showing the results is available online at
Appendix H
Real Robot Experiments
Appendix H.1 Training Dataset
We aim to generate dataset to validate and to fine-tune mathematical model. A series of demonstrations was performed by operator, who adjusted the lengths of various cables to enable
22

---

Figure 19: Sequential snapshots showing a quadruped with a three-segment continuum neck, ma- nipulating a cube towards a target (red sphere).
Figure 20: Trajectory tracking results in SoftManiSim: The simulated robot is set to follow set of predefined trajectories.
the robot's tip to move in multiple directions. Data capturing involved recording both the robot inputs, u, E R and the Cartesian coordinates the robot tip, X2 R., at a frequency of 15 Hz, forming the training dataset D (x/. )=) N 100000. The camera and marker were used to track the robot's position. We employed the collected dataset, comparing the model's outputs with the corresponding targets from the dataset to verify and refine mathematical model parameters. Subsequently, the mismatches were utilized to train shallow neural network, designed address and compensate for any mismatches in the model.
Appendix H.2
Control Policy Learning
After verifying and refining the mathematical model using the dataset, the next step involves designing a control policy capable of effectively managing the dynamics of the continuum robot. The control policy aims to map observed robot states to actions that drive the robot towards a desired state.
We used our customized gym environment for the robot and SAC algorithm to train control policy. Each episode begins with random reset of target positions simulating different starting scenarios and enhancing the robustness of the learning process. The reward function is designed to encourage the agent to minimize the distance between the robot's current end-effector position and the desired position. The reward at each step is calculated as:
reward -500x (distance")
This exponential decay ensures that rewards are higher when the robot's end-effector is closer to the target, providing a strong gradient for learning. After each interaction, the transitions (state, action, reward, next state) are stored in a replay buffer. The SAC algorithm samples batches from this buffer update the policy and value networks. The learning process involves adjusting the networks to predict accurate value estimates and propose actions that maximize these estimates plus the entropy term.
Post- tott-raiinig, the learned policy is validated both in simulated scenarios and real-world tests to ensure its effectiveness. In these simulations and also the real robot experiments, the robot is programmed follow designated trajectories two-dimensional space, including: an equilateral triangle on the XY plane, with each side being 0.04 meters long; ii) square trajectory on the X-Y plane with each side extending 0.025 meters; iii) circular trajectory in the XY plane with radius of 0.02 meters.
23

---

Representative snapshots of the robot while performing the trajectory tracking task (please watch the video at https: //so:t///uuuuuu be/TYqyS4Z0x6k).
Figure 21:
Figure 20 shows the simulation results, as demonstrated, the robot successfully tracked the trajecto- ries. The robot achieved precision with Mean Absolute Errors (MAE) in the x, y, and directions as follows:
for the equilateral triangle: 1.77, 1.63, 2.02 mm.
for the square trajectory: 2.03, 2.92 mm.
for the circular trajectory: 2.54, 1.97, 1.81 mm.
These values demonstrate the robot's accuracy in tracking the designated trajectories, providing detailed quantitative assessment of the learned policy's effectiveness in both simulated and real-world environments.
Appendix H.3 Experiments Results
Table 7 presents the Root Mean Square Error (RMSE) measurements in millimeters for trajectory tracking on real robot, encapsulating its precision across three different geometric paths: triangle, square, and circle. here are the results of trajectory tracking the real robot:
Table Trajectory tracking results
RMSE (mm)
x
y
2
Triangle
2.87
3.14
3.08
Square
3.08
3.89
3.82
Circle
1.38
1.88
2.19
For the triangular trajectory, the robot exhibited an
RMSE of 2.87 mm, 3.14 mm, and 3.08 mm the x, y, and z directions respectively, indicating consistent level of precision across all three axes. The square trajectory showed slightly higher errors, with RMSE values of 3.08 mm in.x, 3.89 mm in y, and 3.82 mm in z, reflecting the additional challenges this shape may pose in maintaining accuracy. Notably, the circular trajectory demonstrated the best tracking performance with the lowest RMSE values 1.38 mm in x, 1.88 mm in and 2.19 mm Z - highlighting the robot's enhanced capability to handle continuous, curvilinear paths with higher precision. Figure 21 shows a set of representative snapshots of the robot while performing this task. A video showing the results is available online at
Appendix I Python Interface
The SoftMani class designed to facilitate the simulation of soft robots using Pybullet physics engine. This class serves as a comprehensive interface that initializes and manages various aspects of the simulation environment, ensuring seamless and flexible setup process. The construc- tor of the Sii class takes several parameters, including an optional bullet instance, number of segments (_number_od Sfaobbrrr___ssee of__segmett] color configurations for the robot's body and head the
(body_color) and (head_color), the radius the body spheres Seclyyssheeeerrdduee number of spheres composing the robot's body (number_of saweer_oof_sss _f__epeeree,,.....op the number of segments in the robot (number_of... of _f__s_emee_)_._..______-______") and a boolean to toggle the graphical user interface (GUI). If no bullet instance provided, the constructor initializes new Pybullet instance. The create_robot method is invoked at the end of the constructor to assemble the robot based on the provided pa- rameters, ensuring that all necessary components correctly instantiated and configured. This

---

methodical and thorough initialization process makes the SoftManiSim class powerful tool for researchers and developers, offering a high degree of control and customization over the soft robot simulation, ultimately contributing to more efficient and accurate experimental setups in the field of soft robotics.
Appendix 1.1 API Documentation
Below is the API documentation for the SoftMani Sim class, detailing essential methods, their arguments and functionalities:
Table 8: API Descriptions of SoftManiSim
Method
Argument
Description
t_.
bullet
Optional physics engine instance, defaults None, ini- tializes PyBullet not provided.
color head_ color
RGBA color for the robot's body.
RGBA color for the robot's 's's head.
body Sphyresphere.o radius
Radius of spheres used to build the robot's body.
number_ _i sphere
Number of spheres constructing the robot's body. Number of segments in the robot's body.
number_ segmmmnt
gui
Booleun to toggle graphical interface, defaults to True.
create_robot
No arguments, sets up the robot's 's physical structure within the simulation. This function is invoked at the end of the constructor.
move_robot_ori
Array actions defining movement commands segments.
base_pos
The buse position of the robot in the simulation space.
base_orin
The base orientution of the robot, specified as Euler an- gles.
camera_man marker
Boolean to display camera markers, defaults True.
all__tip_pos
action
Array of actions affecting the tip's position and orienta- tion.
base_pos
The base position from which the tip's 's calculations start.
hase oorin
Base orientation affecting the tip's calculation.
capture image
jemnveBackground
Boolean to decide whether to remove background from image, defaults False.
hand hand_cameraaa__mmaaaaaaaaaaaaaae cawura_captuueeeeeeccccmm image
No arguments, captures image from the robot's in-hand camera.
is_ re_roboo_iine in_ contact
ubj_id Jd
Object ID to check for contact with the robot.
is_gripper wwe.grpper_in_cottaee in_iiinnntaaa contact
obj ld
Object ID to check for contact with the robot's s gripper.
enable
Booleun to enable or disable the suction grusp mechanism.
set set_grasp_width
grasp_ width wiiil__erreeetttt
Percentage maximum grasp width to set for the gripper.
add_a_cube
pos
Position to place the cube in the simulation.
Orientation the cube, given as quaternion.
size
Dimensions of the cube.
mass
Mass of the cube.
color
RGBA color of the cube. Optional texture for the cube's surface.
texture Uniquel
wait
Sec
Duration seconds to delay simulation.
Appendix Comparison with SOFA
SOFA is a seneral-purpose solver that uses Finite Element Method (FEM), which fundamentally differs from the direct solution of continuum mechanics equations provided by our fast model. We performed simulations to highlight these differences. We implemented our robot in SOFA in two different versions: tendon-driven robot with multiple pull/push wires and simple rod without pull/push wires. The second model is an exact replica of the Cosserat rod plugin for FEM-based Cosserat rod simulation in SOFA [43].
For both models, all physical parameters, including Young's modulus, shear modulus, and physical dimensions, were set equal to the model identified the paper. The stiffness matrix for both models was K diag EI, EI, GJ] diag[0.002] 0.0022, 0.001]. In the simulation, we applied a point load varying from 0 to 0.7 N along the y-axis of the rod in its global frame. A load of 0.7 N was found to be the maximum allowable force, forces higher than this caused bend of more than 60
25

---

== 0.3 N
Step
Step =
Step =4
Step = 6
Step = 8
= Step
Step =
Step
Step
Step 5
F= 0.5
Step =1
Step 2
Step 4
Step 6
Step =
F= 0.5 Step =1
Step =2
Step 7
Step = 10
Step = 12
F Step =1
Step =
Step 4
Step =
Step 9
F 0.7 Step =1
Step =
Step = 10
Step = 80
Step Co
Figure 22: A comparison between the proposed solver embedded in SOFA shown in purple and SOFA's native Cosserat rod plugin.
around the x-axis at the rod's s tip. This bend causes the projection of the force on the rod's neutral axis to exceed the critical buckling load, leading to instability the rod.
The critical buckling load Per for a rod with one end fixed and the other end free can approximated by Euler's formula:
X2EI
Por (KI.)2
(24)
where E is the Young's modulus of the material, / is the second moment of area (area moment of inertia), is the length of the rod, and K is the effective length factor. For fixed-free end condition,
Given the defined rod parameters, the critical buckling load for the rod with fixed-free end condition approximately 0. This occur when the tip bending angle approaches 50 degrees with force of 0.7 N along the global y-axis (leads to 0.7N x sin(50) = 0.5 N along robot neutral axis). It should be noted that Euler's formula is an approximation; however, our results also confirm that the maximum allowable force before singularity is 0.7 N.
Results of the simulation are shown Figure 22. As can seen, our solver embedded in SOFA capable of solving the equations up the singularity with computational consistency. However, SOFA's results highly dependent selected meshes and time steps. We were able to perform
26

---

one segment SOFA
SOFA
two segments
SOFA
three segments
SOFA
SOFA
SOFA
SOFA
SOFA
SOFA
Figure 23: Multi-segmmntt continuum robots simulated using SOFA based proposed solver.
simulations SOFA's Cosserat plugin up 0.6 N, beyond which becomes unstable evident in Figure 22. Additionally, the results' convergence is highly dependent on the number of meshes and sampling times. Table 9 summarises the simulation results, comparing number of samples and overall time required to solve the equations for both methods. Our solver consistently solves the equations at maximum of 9 time steps for all force values including forces close to singularity. SOFA's computational efficiency is variable and depends on meshes and force magnitudes. Finally, the simulation revealed another minor issue with general FEM-based libraries like SOFA. our model, have direct access all the robot's arc parameters (e.g., curvature and pose any arclength), allowing seamless use of these parameters during modeling to define constraints apply forces. For instance, we can easily apply a force that is always tangent to the robot tip by measuring its orientation. However, implementing such forces in SOFA proved to be quite complex, requiring the use of constraints and specific solvers, which we struggled to get to converge.
This simulation highlights the differences between our solver and SOFA:
Computational Cost: FEM can be computationally expensive, especially for large-scale problems, high-resolution meshes, highly nonlinear problems such continuum robots under time-varying forces. This makes real-time applications diffieult and resource- intensive, which is highlighted in their manual as well [44]. The computational performance of SOFA, which is an FEM-based solver, is not comparable with ours.
2. Complex Setup and Implementation: FEM requires careful meshing, which can be com- plex and time-consuming. Poor mesh quality can lead to inaccurate results or convergence issues.
3. Numerical Stability and Convergence: FEM suffer from convergence issues, espe- cially in highly nonlinear problems involving large bending complex boundary conditions (e.g., under forces), requiring careful tuning of numerical methods and parameters.
4. Generalization: FEM is highly versatile and general, but this be drawback for methods like ours that directly solve Cosserat rod equations. However, provide these benefits, we have implemented our solver in SOFA and made the code available online, so it can be used in more general settings, specifically in contact with other soft objects modeled in SOFA.
Table 9: A comparison between proposed solver embedded in SOFA and SOFA's Cosserat rod plugin.
SOFA
MontManiSim
Force [N]
Avg. step
Avg. time [S]
Avg. step
Avg. time [s]
0.20
5
0.05
0.08
0.40
7
0.07
8
0.08
0.50
12
0.12
0.08
0.60
24
0.24
0.08
0.70
X
X
9
0.09
27

---

As discussed, the proposed solver for the robot is imported into the SOFA simulator. Creating robot under dynamic loads with SOFA very cumbersome and requires defining various rods in tandem with specific constraints. However, ours is seamless as the solver can handle any type of rods in any configuration. Figure 23 shows a set of snapshots of SOFA simulating multi-segment continuum robots based on our solver.
28


Reviews:
[{"review_id": "eRz7sqizaK", "reviewer": "Reviewer_Vw2X", "summary": "", "questions": "", "limitations": "", "rating": 3, "confidence": 3, "soundness": null, "presentation": null, "contribution": null, "strengths": "", "weaknesses": "", "quality": null, "clarity": null, "significance": null, "originality": 2, "strengths_and_weaknesses": "", "was_revised": false, "final_justification": "", "rebuttal": "", "claims_and_evidence": "", "methods_and_evaluation_criteria": "", "theoretical_claims": "", "experimental_designs_or_analyses": "", "relation_to_broader_scientific_literature": "", "essential_references_not_discussed": "", "other_strengths_and_weaknesses": "", "other_comments_or_suggestions": "", "questions_for_authors": "", "summary_of_paper": "SoftManiSim provides a pybullet implementation of cosserat rod equations, enabling fast, accurate learning of multi-segment continuum/hybrid manipulators", "summary_of_recommendation": "The work is technically strong and of use to the field as a piece of engineering, but does not demonstrate substantial novelty", "technical_quality": 3, "clarity_of_presentation": 3, "potential_impact": 2, "robotics_focus": 4, "quality_of_limitations": 2, "questions_for_rebuttal": "1) Could you clarify the major contributions of this paper? I note the authors make some fairly lofty claims about the \n2) How does this method compare to other state of this art methods quantitatively? Could you benchmark on time/accuracy?\n3) In table 1, benefits of this methods are listed as including \"Continuum robot shape information\", \"Adaptive shape resolutions\" and \"Support shape extensibility\", Could you elaborate on what these mean?\n4) In section 5, very little information is given about how the tests were conducted, could you clarify the procedure? i.e how was the model validation and fine tuning performed, what was the speed of movement etc", "reasons_to_accept": "", "reasons_to_reject": "", "questions_to_authors": "", "extra_scores": {}}, {"review_id": "K7lSAyKbf2", "reviewer": "Reviewer_Entu", "summary": "", "questions": "", "limitations": "", "rating": 3, "confidence": 5, "soundness": null, "presentation": null, "contribution": null, "strengths": "", "weaknesses": "", "quality": null, "clarity": null, "significance": null, "originality": 3, "strengths_and_weaknesses": "", "was_revised": false, "final_justification": "", "rebuttal": "", "claims_and_evidence": "", "methods_and_evaluation_criteria": "", "theoretical_claims": "", "experimental_designs_or_analyses": "", "relation_to_broader_scientific_literature": "", "essential_references_not_discussed": "", "other_strengths_and_weaknesses": "", "other_comments_or_suggestions": "", "questions_for_authors": "", "summary_of_paper": "The authors present an open-source simulation framework that allows for both rigid and soft robotic/continuum robotic manipulators. The authors also validate the real-world use case for the framework with a trajectory tracking example on a tendon-driven continuum robot.", "summary_of_recommendation": "The paper is generally clearly written and the introduction of Coserat rod continuum robot modeling to this simulation environment is quite interesting as it has not been done before. I have some concerns about the applicability and the usability of the framework in the contexts beyond what was presented in the paper as the paper results are just limited to just one type of a continuum robot.", "technical_quality": 4, "clarity_of_presentation": 4, "potential_impact": 3, "robotics_focus": 4, "quality_of_limitations": 1, "questions_for_rebuttal": "- The authors claim that \"SoftManiSim is the first open-source real-time simulator capable of modeling continuum robot behavior under dynamic point/distributed loading.\" However, I believe SofaGym is a pretty well-established tool for this. Could the authors define their contributions more clearly?\n\n- Could the authors shed some light on the clear limitations of this simulation framework's application? What kind of soft robots can this be applied to?\n \n- The authors show sim2real results for a relatively simple trajectory tracking example. I do not think this is the most exciting result to see because I have seen similarly good results from simulators/models relying on piece-wise constant curvature assumptions. Could the authors show some results with more complex environments?\n\n- The authors should present some comparison results on comparing accuracy and runtime against other simulation environments (e.g.,SOFA) that do continuum robot simulations with contact modeling. I get that it is indeed novel that the SoftManiSim allows for rigid robots to be also in the environment but in practice, the rigid robots can usually be abstracted away by directly controlling the base 6DoF pose of the soft robotic manipulator. So more concrete performance comparisons on the soft robot part of this would be helpful.\n\n- How do the speed (dynamic effects) and external contact affect the simulator's accuracy w.r.t the real world?\n\n- How sensitive is the framework to simulation parameters, as well as parameters related to material properties?", "reasons_to_accept": "", "reasons_to_reject": "", "questions_to_authors": "", "extra_scores": {}}, {"review_id": "WrxUkcHdit", "reviewer": "Reviewer_osAG", "summary": "", "questions": "", "limitations": "", "rating": 3, "confidence": 4, "soundness": null, "presentation": null, "contribution": null, "strengths": "", "weaknesses": "", "quality": null, "clarity": null, "significance": null, "originality": 2, "strengths_and_weaknesses": "", "was_revised": false, "final_justification": "", "rebuttal": "", "claims_and_evidence": "", "methods_and_evaluation_criteria": "", "theoretical_claims": "", "experimental_designs_or_analyses": "", "relation_to_broader_scientific_literature": "", "essential_references_not_discussed": "", "other_strengths_and_weaknesses": "", "other_comments_or_suggestions": "", "questions_for_authors": "", "summary_of_paper": "In this paper, the authors introduce a novel real-time simulation framework for continuum soft robots, called SoftManiSim. Real time simulation of soft robots is always challenging as their flexible structure results in time-consuming simulations, leading to a trade-off between accuracy and computational time. The authors claim the existing frameworks have some issues and, thus, introduced this novel framework using cosserat rods and Pybullet to overcome these limitations.", "summary_of_recommendation": "The paper introduced a novel simulation framework but lacks any detailed analysis or numerical evaluation so that the relevance is questionable.", "technical_quality": 2, "clarity_of_presentation": 3, "potential_impact": 3, "robotics_focus": 4, "quality_of_limitations": 3, "questions_for_rebuttal": "Please address the issues mentioned in the “review” section", "reasons_to_accept": "", "reasons_to_reject": "", "questions_to_authors": "", "extra_scores": {}}]

Author rebuttal:

Meta-review: This paper received mixed reviews, leaning to negative.  

Strengths:
Paper is generally well written, and well structured
Problem is well motivated
Faster soft simulation is a good research aim with significant interest in the field


For Weaknesses, the reviewers largely focused on a lack of benchmarks, and a lack of comparison to other simulators.  Providing a thorough analysis of the computational time and accuracy in comparison to the listed existing frameworks would significantly strengthen the paper.  As it stands, we currently do not know how well the approach compares to state of the art, and furthermore cannot say that the approach is worthwhile or useful to the community.

The authors should present some comparison results on comparing accuracy and runtime against other simulation environments (e.g.,SOFA) that do continuum robot simulations with contact modeling , including concrete performance metrics.

More detail is required to show how the tests themselves were conducted - e.g., model validation, tuning. 

Some sim2real experiments would also be welcomed - e.g.
--How do the speed (dynamic effects) and external contact affect the simulator's accuracy w.r.t the real world?
--How sensitive is the framework to simulation parameters, as well as parameters related to material properties?



Update

The paper has been imrproved and the authors have been responsive to reviewer comments.
Decision: Accept