ISSN: 2994-418X
Annals of Robotics and Automation
Research Article       Open Access      Peer-Reviewed

Optimization of concentric tube continuum robot based on accuracy and overall length of the robot via genetic algorithm

Atoosa Davarpanah, Mostafa Khazaee, Amin Moslemi and SE Khadem*

Department of Mechanical Engineering, Tarbiat Modares University, Tehran, Iran
*Corresponding author: SE Khadem, Professor, Department of Mechanical Engineering, Tarbiat Modares University, Tehran, Iran, Tel: (+9821) 82883388; Fax: (+9821) 82883388; E-mail:
Received: 18 July, 2020 | Accepted: 30 July, 2020 | Published: 31 July, 2020
Keywords: Continuum robot; Concentric Tube Robot (CTR); Inverse kinematic; Genetic algorithm; Optimization

Cite this as

Davarpanah A, Khazaee M, Moslemi A, Khadem SE (2020) Optimization of concentric tube continuum robot based on accuracy and overall length of the robot via genetic algorithm. Ann Robot Automation 4(1): 007-012. DOI: 10.17352/ara.000003

Concentric Tube Continuum Robot (CTR) is a group of continuum robots which is composed of concentric tubes that can be axially translated and rotated at the base relative to one another. Their inverse kinematic is challenging due to their redundancy. On the other hand, knowledge about the inverse kinematics of the concentric-tube continuum robot is essential for control purposes. There are many solutions for reaching to a specific target point because of the redundancy of these kinds of robots. In this paper, a new method for solving the inverse kinematics of these kinds of robots is presented. The most common type of these robots consisting of three tubes is considered for this study, and the genetic algorithm technique is employed to optimize the solution of this problem. Minimum energy principle equations are used in this method. It is assumed that the robot moves in a free space, so the environment force on this robot is neglected. Also, it is supposed that the curvature of each tube remains constant along the tube. According to the results, a small error of the order 0.01mm was observed using the presented method, which is acceptable for most applications. Finally, the parameters of robot is optimized with concentration on accuracy and the overall length of the robot, which is an important parameter for stability.


Robots can be classified into two groups: rigid-link robots and continuum robots. The advancement of science has increased robot’s applications in our daily life. In some applications continuum robots are more useful. Also, they are newer than rigid robots and they are still attractive fields of study. Concentric tube continuum robots are made up of some pre-curved tubes. Each tube can rotate and inner tubes can move through outer tubes. Figure 1 shows a concentric tube continuum robot.

In many papers, each tube is supposed to be a section of a circle with constant curvature [2-4]. In 2008, Webster, et al. presented a method for direct kinematics of concentric tube continuum robots. They assumed that active cannula is composed of sections with constant curvature [5]. In the same year, Walker, et al. represented a geometrical method for solving the inverse kinematic of concentric tube continuum robot [6]. In 2009, Webster, et al. employed Minimum Energy method to obtain the configuration of concentric tube continuum robot. [7] Webster and Rucker discussed the design and kinematics of continuum robots with constant curvature in 2010 [8]. Dupont, et al. in 2011 represented an algorithm for designing concentric tube continuum robots [9]. In 2013, Walker investigated the categorization of continuum robots [10]. In 2016, Su Li, et al. discussed the design, modeling and experimental evaluation of MRI-guided concentric tube continuum robotic system [11].

This paper concerns with the concentric tube continuum robot. The robot is made from three tubes; each tube has three parameters that should be determined. We have 9 parameters for robot and we want to reach one target that has three coordinates in space. So redundancy in this robot is sensed. Redundancy in a system cause different solutions for one answer. Therefore the inverse kinematic of this robot is challenging. Here, Genetic Algorithm optimization approach is used to solve the inverse kinematics. At first, the kinematics of concentric tube continuum robots is discussed. Then the robot is optimized for different target points. We also obtain different optimal solutions for one problem. Finally, the optimal robot with the smallest length is achieved.


e Objective function

k Curvature

l Overall length of robot

Greek symbols

μ Weighting coefficient

θ O MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiUde3aaWbaaSqabeaacaWGpbaaaaaa@38A9@ Angle at initial point of a curve

θ S MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiUde3aaWbaaSqabeaacaWGtbaaaaaa@38AD@ Angle at the end point of a curve

Kinematics of concentric tube continuum robots

The kinematics of the robot is based on Cosserat rod theory, in which a homogenous transfer function (g(s)) is used to describe the configuration of the robot.

g(s)=( R(s) P(s) 0 1 )     (1) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcaaKaam4zaiaacIcacaWGZbGaaiykaiabg2da9OWaaeWaaKaaafaafaqabeGacaaabaGaamOuaiaacIcacaWGZbGaaiykaaqaaiaadcfacaGGOaGaam4CaiaacMcaaeaacaaIWaaabaGaaGymaaaaaiaawIcacaGLPaaakiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabgdacaqGPaaaaa@4971@

In equation (1), P(s) shows the central line of curve and R(s) shows the direction. They are functions of s, where s is the length from the base to the intended point of the robot. g(s) is shown in Figure 2.

The schematic of a curve in plane is depicted in Figure 3. The parameters in this figure are used to obtain the transfer matrix of the curve.

In order to obtain the transfer matrix for each curve, three transfer matrix should be multiplied. These matrixes are:

T 1 =[ cos( θ O ) sin( θ O ) 0 0 sin( θ O ) cos( θ O ) 0 0 0 0 1 0 0 0 0 1 ]      (2) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamivamaaBaaaleaacaqGXaaabeaakiabg2da9maadmaajaaqbaqbaeqabqabaaaaaeaaciGGJbGaai4BaiaacohacaGGOaGaeqiUdeNcdaahaaqcbauabeaacaWGpbaaaKaaajaacMcaaeaacqGHsislciGGZbGaaiyAaiaac6gacaGGOaGaeqiUdeNcdaahaaqcbauabeaacaWGpbaaaKaaajaacMcaaeaacaaIWaaabaGaaGimaaqaaiGacohacaGGPbGaaiOBaiaacIcacqaH4oqCkmaaCaaajeaqbeqaaiaad+eaaaqcaaKaaiykaaqaaiGacogacaGGVbGaai4CaiaacIcacqaH4oqCkmaaCaaajeaqbeqaaiaad+eaaaqcaaKaaiykaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIXaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaigdaaaaacaGLBbGaayzxaaGccaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeOmaiaabMcaaaa@6883@

T1 shows the transfer function between the frame on curve at the initial point and the straight line

T 2 =[ 1 0 0 0 0 1 0 d 0 0 1 0 0 0 0 1 ]      (3) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamivamaaBaaaleaacaqGYaaabeaakiabg2da9maadmaajaaqbaqbaeqabqabaaaaaeaacaaIXaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaigdaaeaacaaIWaaabaGaamizaaqaaiaaicdaaeaacaaIWaaabaGaaGymaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIXaaaaaGaay5waiaaw2faaOGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabodacaqGPaaaaa@4CD3@

T2 shows the transfer function between the initial point and last point in the straight line.

T 3 =[ cos( θ S ) sin( θ S ) 0 0 sin( θ S ) cos( θ S ) 0 0 0 0 1 0 0 0 0 1 ]     (4) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamivamaaBaaaleaacaqGZaaabeaakiabg2da9maadmaajaaqbaqbaeqabqabaaaaaeaaciGGJbGaai4BaiaacohacaGGOaGaeqiUdeNcdaahaaqcbauabeaacaWGtbaaaKaaajaacMcaaeaacqGHsislciGGZbGaaiyAaiaac6gacaGGOaGaeqiUdeNcdaahaaqcbauabeaacaWGtbaaaKaaajaacMcaaeaacaaIWaaabaGaaGimaaqaaiGacohacaGGPbGaaiOBaiaacIcacqaH4oqCkmaaCaaajeaqbeqaaiaadofaaaqcaaKaaiykaaqaaiGacogacaGGVbGaai4CaiaacIcacqaH4oqCkmaaCaaajeaqbeqaaiaadofaaaqcaaKaaiykaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIXaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaigdaaaaacaGLBbGaayzxaaGccaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabIcacaqG0aGaaeykaaaa@67F4@

T3 is the transfer function between the last point on the straight line and the last point on the curve.

Finally the general transfer matrix is

T=[ cos( θ O + θ S ) sin( θ O + θ S ) 0 dsin( θ O ) sin( θ O + θ S ) cos( θ O + θ S ) 0 dcos( θ O ) 0 0 1 0 0 0 0 1 ]     (5) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamivaiabg2da9maadmaajaaibaqbaeqabqabaaaaaeaaciGGJbGaai4BaiaacohacaGGOaGaeqiUdeNcdaahaaqcbasabeaacaWGpbaaaKaaGiabgUcaRiabeI7aXPWaaWbaaKqaGeqabaGaam4uaaaajaaicaGGPaaabaGaeyOeI0Iaci4CaiaacMgacaGGUbGaaiikaiabeI7aXPWaaWbaaKqaGeqabaGaam4taaaajaaicqGHRaWkcqaH4oqCkmaaCaaajeaibeqaaiaadofaaaqcaaIaaiykaaqaaiaaicdaaeaacqGHsislcaWGKbGaci4CaiaacMgacaGGUbGaaiikaiabeI7aXPWaaWbaaKqaGeqabaGaam4taaaajaaicaGGPaaabaGaci4CaiaacMgacaGGUbGaaiikaiabeI7aXPWaaWbaaKqaGeqabaGaam4taaaajaaicqGHRaWkcqaH4oqCkmaaCaaajeaibeqaaiaadofaaaqcaaIaaiykaaqaaiGacogacaGGVbGaai4CaiaacIcacqaH4oqCkmaaCaaajeaibeqaaiaad+eaaaqcaaIaey4kaSIaeqiUdeNcdaahaaqcbasabeaacaWGtbaaaKaaGiaacMcaaeaacaaIWaaabaGaamizaiGacogacaGGVbGaai4CaiaacIcacqaH4oqCkmaaCaaajeaibeqaaiaad+eaaaqcaaIaaiykaaqaaiaaicdaaeaacaaIWaaabaGaaGymaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIXaaaaaGaay5waiaaw2faaOGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeynaiaabMcaaaa@854F@

The general transfer matrix T can also be written in the form below

T=[ cos(sk) sin(sk) 0 1 k [cos(sk)1] sin(sk) cos(sk) 0 1 k sin(k) 0 0 1 0 0 0 0 1 ]      (6) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamivaiabg2da9maadmaajaaibaqbaeqabqabaaaaaeaaciGGJbGaai4BaiaacohacaGGOaGaam4CaiaadUgacaGGPaaabaGaeyOeI0Iaci4CaiaacMgacaGGUbGaaiikaiaadohacaWGRbGaaiykaaqaaiaaicdaaeaakmaalaaajaaibaGaaGymaaqaaiaadUgaaaGaai4waiGacogacaGGVbGaai4CaiaacIcacaWGZbGaam4AaiaacMcacqGHsislcaaIXaGaaiyxaaqaaiGacohacaGGPbGaaiOBaiaacIcacaWGZbGaam4AaiaacMcaaeaaciGGJbGaai4BaiaacohacaGGOaGaam4CaiaadUgacaGGPaaabaGaaGimaaqaaOWaaSaaaKaaGeaacaaIXaaabaGaam4AaaaaciGGZbGaaiyAaiaac6gacaGGOaGaam4AaiaacMcaaeaacaaIWaaabaGaaGimaaqaaiaaigdaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaabaGaaGymaaaaaiaawUfacaGLDbaakiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabIcacaqG2aGaaeykaaaa@72FE@

In this paper, it is assumed that the outer tubes have larger stiffness than inner tubes. Therefore, the shape of robot in each section is the same as the outer tube in that section. This concept is depicted in Figure 4.

Optimization of the robot parameters for a specific target point with the smallest error

A concentric tube continuum robot with three tubes is considered. The optimization of robot’s parameters is adjusted to the target point a = (1, 0.5, 0.8).

The main idea for this optimization is to minimize the error. The objective function in this problem is defined as follows:

e= 1 m a [ (xx(a)) 2 + (yy(a)) 2 + (zz(a)) 2 ]      (7) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcaaMaamyzaiabg2da9OWaaSaaaKaaGfaacaaIXaaabaGaamyBaOWaaSbaaKqaGfaacaWGHbaabeaaaaqcaaMaai4waiaacIcacaWG4bGaeyOeI0IaamiEaiaacIcacaWGHbGaaiykaiaacMcakmaaCaaajeaybeqaaiaaikdaaaqcaaMaey4kaSIaaiikaiaadMhacqGHsislcaWG5bGaaiikaiaadggacaGGPaGaaiykaOWaaWbaaKqaGfqabaGaaGOmaaaajaaycqGHRaWkcaGGOaGaamOEaiabgkHiTiaadQhacaGGOaGaamyyaiaacMcacaGGPaGcdaahaaqcbawabeaacaaIYaaaaKaaGjaac2facaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaae4naiaabMcaaaa@5E7A@

(x, y, z) shows the coordinate of the tip and m a MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyBamaaBaaaleaacaWGHbaabeaaaaa@37F6@ is obtained by the following equation:

m a = x (a) 2 +y (a) 2 +z (a) 2        (8) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyBamaaBaaaleaacaWGHbaabeaakiabg2da9maakaaabaGaamiEaiaacIcacaWGHbGaaiykamaaCaaaleqabaGaaGOmaaaakiabgUcaRiaadMhacaGGOaGaamyyaiaacMcadaahaaWcbeqaaiaaikdaaaGccqGHRaWkcaWG6bGaaiikaiaadggacaGGPaWaaWbaaSqabeaacaaIYaaaaaqabaGccaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabIdacaqGPaaaaa@4DF1@

The optimal parameters of the robot including length, curvature and rotation angle of each tube can be observed in Table 1.

Figure 5 shows the process of the optimization in genetic algorithm for different generations. According to the results of the objective function in genetic algorithm, which is related to the best fitness in Figure 5, the error is

error= e = 5.135 ×0.0001=2.266× 10 4 dm=2.266× 10 2 mm MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcaaSaamyzaiaadkhacaWGYbGaam4BaiaadkhacqGH9aqpkmaakaaajaaWbaGaamyzaaqcbaCabaqcaaSaeyypa0JcdaGcaaqcaaCaaiaaiwdacaGGUaGaaGymaiaaiodacaaI1aaajeaWbeaajaaWcqGHxdaTcaaIWaGaaiOlaiaaicdacaaIWaGaaGimaiaaigdacqGH9aqpcaaIYaGaaiOlaiaaikdacaaI2aGaaGOnaiabgEna0kaaigdacaaIWaGcdaahaaqcbaCabeaacqGHsislcaaI0aaaaKaaalaadsgacaWGTbGaeyypa0JaaGOmaiaac6cacaaIYaGaaGOnaiaaiAdacqGHxdaTcaaIXaGaaGimaOWaaWbaaKqaahqabaGaeyOeI0IaaGOmaaaajaaWcaWGTbGaamyBaaaa@687D@

Thus, the order of error is 0.01 mm which is very small in comparison to other methods that have the error of order 1 mm. For instance, the Error in Ref. [11] was 1.94 mm and 2.17mm.

The simulation of the robot by MATLAB program is depicted in figure 6. The tubes are separated with a small line and they have different colors. Target point is shown by a red star. The first tube with the highest stiffness is black, the second tube is red and the third tube is blue.

According to redundancy of these robots, we may have different solutions for one problem. Here is another solution for the previous problem. The optimal results for the second solution are shown in Table 2.

The genetic algorithm diagram which shows the process of solving according to generation is shown in Figure 7. In order to calculate the error in this problem, the best fitness for the objective function in Figure 7 is used.

error= e = 1.281 ×0.0001=1.132× 10 4 dm=1.132× 10 2 mm MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcaaSaamyzaiaadkhacaWGYbGaam4BaiaadkhacqGH9aqpkmaakaaajaaWbaGaamyzaaqcbaCabaqcaaSaeyypa0JcdaGcaaqcaaCaaiaaigdacaGGUaGaaGOmaiaaiIdacaaIXaaajeaWbeaajaaWcqGHxdaTcaaIWaGaaiOlaiaaicdacaaIWaGaaGimaiaaigdacqGH9aqpcaaIXaGaaiOlaiaaigdacaaIZaGaaGOmaiabgEna0kaaigdacaaIWaGcdaahaaqcbaCabeaacqGHsislcaaI0aaaaKaaalaadsgacaWGTbGaeyypa0JaaGymaiaac6cacaaIXaGaaG4maiaaikdacqGHxdaTcaaIXaGaaGimaOWaaWbaaKqaahqabaGaeyOeI0IaaGOmaaaajaaWcaWGTbGaamyBaaaa@6869@

The simulation of the robot for the second solution can be observed in Figure 8.

Now we want to show that this method can be a general solution and it does not depend on the target point. Thus, another target point (b) is chosen as (0.6, -1.2, 0.3). The optimal results for the target point b is written in Table 3.

The genetic algorithm diagram for the best fitness is depicted in Figure 9. Again the error is calculated by using the best fitness for the objective function.

error= e = 4.881 ×0.0001=2.209× 10 4 dm=2.209× 10 2 mm MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcKba4aiaadwgacaWGYbGaamOCaiaad+gacaWGYbGaeyypa0JcdaGcaaqcKba4aeaacaWGLbaajqwaGdqabaqcKba4aiabg2da9OWaaOaaaKazaaoabaGaaGinaiaac6cacaaI4aGaaGioaiaaigdaaKazbaoabeaajqgaGdGaey41aqRaaGimaiaac6cacaaIWaGaaGimaiaaicdacaaIXaGaeyypa0JaaGOmaiaac6cacaaIYaGaaGimaiaaiMdacqGHxdaTcaaIXaGaaGimaOWaaWbaaKazbaoabeqaaiabgkHiTiaaisdaaaqcKba4aiaadsgacaWGTbGaeyypa0JaaGOmaiaac6cacaaIYaGaaGimaiaaiMdacqGHxdaTcaaIXaGaaGimaOWaaWbaaKazbaoabeqaaiabgkHiTiaaikdaaaqcKba4aiaad2gacaWGTbaaaa@6E2A@

The simulation of the optimal robot for target point b is shown in Figure 10. In this figure the tubes are also separated by small lines and different colors.

We have optimized 9 parameters in a robot simultaneously for each target point. It is assumed that the robot is consisted of three tubes. Three parameters such as length, curvature and rotation angle for each tube are optimized. The accuracy of the robot is considerably great in each case.

One of the important parameters that makes the robot more stable, is the overall length of the robot, so we have also optimized the robot for reaching a target point by the smallest length. Accordingly, a parameter is added to the objective function and it is changed into the following equation:

OF= 1 m a [ (xx(a)) 2 + (yy(a)) 2 + (zz(a)) 2 ]      (9) +μl MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGceaqabeaajaaqcaWGpbGaamOraiabg2da9OWaaSaaaKaaafaacaaIXaaabaGaamyBaOWaaSbaaKqaafaacaWGHbaabeaaaaGcdaWadaqcaauaaiaacIcacaWG4bGaeyOeI0IaamiEaiaacIcacaWGHbGaaiykaiaacMcakmaaCaaajeaqbeqaaiaaikdaaaqcaaKaey4kaSIaaiikaiaadMhacqGHsislcaWG5bGaaiikaiaadggacaGGPaGaaiykaOWaaWbaaKqaafqabaGaaGOmaaaajaaqcqGHRaWkcaGGOaGaamOEaiabgkHiTiaadQhacaGGOaGaamyyaiaacMcacaGGPaGcdaahaaqcbauabeaacaaIYaaaaaqcaaKaay5waiaaw2faaOGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabMdacaqGPaaabaGaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7jaaycqGHRaWkcqaH8oqBcaWGSbaaaaa@6E88@

where, l shows the overall length of robot. Parameter μ is an optimal weighting coefficient obtained by trial and error method. The optimal result for μ is obtained as below:

μ= 1 500 m a      (10) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcaaMaeqiVd0Maeyypa0JcdaWcaaqcaawaaiaaigdaaeaacaaI1aGaaGimaiaaicdacaWGTbGcdaWgaaqcbawaaiaadggaaeqaaaaakiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabgdacaqGWaGaaeykaaaa@44EC@

The optimal parameters by considering the length of robot for target point a is determined in “Table 4”

Figure 11 shows the process of solving problem with target point and for the smallest length of robot. It shows the result for each generation in Genetic Algorithm.

In Figure 12 we see that besides the small length of robot, it has a great accuracy for reaching to target point a.

By comparing Figure 12 with Figure 6 and Figure 8, the short length of robot and stability of CTR is obviously observed in Figure 12. So the Genetic Algorithm method of optimization can be used for different purposes in continuum robot problems.


In this paper, we optimized the inverse kinematics of concentric tube continuum robots via genetic algorithm method. The problem of reaching a determined target point is discussed and the error is significantly small. In order to evaluate this method, the parameters of the robot are optimized for different target points. The problem for one target point is solved two times to show the fact that we have different optimal answers for redundant systems. In all cases the accuracy of the robot for reaching the target point is great and the order of error is 0.01mm. Finally, another quality is added to our optimization. The parameter related to overall length of robot for reaching a target point is also added to the optimization equation. When the overall length of a robot is decreased, the robot is more stable. So in the last optimization, we solved the problem for the smaller length of the robot with acceptable accuracy. In this case, the accuracy of the robot is decreased a little in comparison to the cases that the overall length of robot is not considered. But its error is still negligible. The stability is a very important parameter in a robot, so the last optimization has its special benefit. Using each optimization form relates to the situation and the application of robot and choosing the best equation relates to the case.


In this paper, the main goal is to reach to a target point with a high accuracy. 9 parameters are optimized simultaneously for each target point and this is one of the advantages of this method. According to the obtained results, the accuracy is great and the error is in the order of 0.01mm; which is very small in comparison to others. Thus, the genetic algorithm can be a good optimization solver for continuum robots because of its multi objective premium.

  1. Dupont PE, Lock J, Itkowitz B, Butlar E (2010) Design and Control of Concentric-Tube Robots. IEEE Transactions on Robotics 26. Link:
  2. Xu K, Simaan N (2008) An investigation of the intrinsic force sensing capabilities of continuum robots. IEEE Transactions on Robotics 24: 576-587. Link:
  3. Webster RJ, Romano JM, Cowan NJ (2009) Mechanics of Precurved-Tube Continuum Robots. IEEE Transactions on Robotics 25: 67-78. Link:
  4. Neppalli S, Jones BA (2007) Design, construction and analysis of a continuum Robot. IEEE/RSJ International Conference on Intelligent Robots and Systems 1503-1507. Link:
  5. Webster RJ, Romano JM, Cowan NJ (2008) Kinematics and Calibration of Active Cannulas. IEEE International Conference on Robotics and Automation, Pasadena, CA, USA. Link:
  6. Neppalli S, Csecsits MA, Jones BA, Walker I (2008) A Geometrical Approach to Inverse Kinematics for Continuum Manipulatores. IEEE/RSJ International Conference on Intelligent Robots and Systems. Link:
  7. Jones AB, Gray RL, Turlapati K (2009) Three Dimentional Statics for continuum robotics. IEEE/RSJ International Conference on Intelligent Robots and Systems 2659-2664. Link:
  8. Webster RJ, Jones BA (2010) Design and Kinematic Modeling of Constant Curvature Continuum Robots: A Review. International Journal of Robotics Research 29. Link:
  9. Anor T, Madsen JR, Pierre D (2011) Algorithms for Design of Continuum Robots Using the Concentric Tubes Approach: A Neurosurgical Example. IEEE International Conference on Robotics and Automation, Shanghai International Conference Center Shanghai, China. Link:
  10. Walker ID (2013) Continuous Backbone “continuum” Robot Manipulator. International Scholarly Research Notices 2013: 726506. Link:
  11. Su H, Li G, Caleb Rucker D, Webster RJ, Fischer GJ (2016) A Concentric Tube Continuum Robot with Piezoelectric Actuation for MRI-Guided Closed-Loop Targeting. Annals of Biomedical Engineering 44: 2863-2873. Link:
  12. Pascal J, Sigrid L, Joachim L, Michael O (2010) A discrete mechanics approach to Cosserat rod theory, Part: static equilibria. CA, USA, International Journal for Numerical Methods in Engineering 85: 31-60. Link:
© 2020 Davarpanah A, et al. This is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.

Help ?