0% found this document useful (0 votes)
49 views

Robotics 12 00121

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views

Robotics 12 00121

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

robotics

Article
Task-Based Configuration Synthesis of an Underactuated
Resilient Robot
Tan Zhang 1 , Dan Zhang 2 and Wenjun Zhang 3, *

1 College of Intelligent Manufacturing, Shenzhen Technology University, Shenzhen 518118, China;


[email protected]
2 Department of Mechanical Engineering, The Hong Kong Polytechnic University,
Kowloon, Hong Kong, China; [email protected]
3 Department of Mechanical Engineering, University of Saskatchewan, Saskatoon, SK S7N 5A9, Canada
* Correspondence: [email protected]

Abstract: A resilient robot can recover its original function after partial damage of the system. This
paper develops an underactuated resilient robot that utilizes a combination of passive joints, active
joints, adjustable links, and passive links. A novel method based on the genetic algorithm was
proposed to determine the goal configuration of a partially damaged robot. The novelty of the
method lies in the integration of both discrete and continuous variables. This model is illustrated by
a 3-DOF robot manipulator in the simulation.

Keywords: underactuated resilient robot; docking system; configuration synthesis; optimization

1. Introduction
Resilient robots are robots that are able to recover their original function after partial
damage [1,2]. Recovery refers to recovery strategies, i.e., the principle that governs a
recovery process. Three recovery strategies have been proposed in our previous work [1]:
Strategy I: Training a remaining system to perform a new behavior, e.g., regeneration of
a control system; Strategy II: Changing the configuration of a system by re-arranging its
Citation: Zhang, T.; Zhang, D.;
components, which is the reconfigurable robot; Strategy III: Changing component states,
Zhang, W. Task-Based Configuration e.g., changing the length of a component. Combining the above three recovery strategies
Synthesis of an Underactuated results in a general resilient robot. This paper will be focused on an underactuated resilient
Resilient Robot. Robotics 2023, 12, 121. robot. After suffering partial damage, a damaged robot finds the target configuration, upon
https://doi.org/10.3390/robotics which the damaged robot can still function. It should be noted that there are many possible
12050121 target configurations and finding the optimal target configuration is called configuration
synthesis. Configuration synthesis is to generate the optimal configuration to achieve a
Academic Editor: Xinjun Liu
given task. The task is to enable a robotic arm to reach every point of its workspace. The
Received: 19 June 2023 work in [3] used a sequential design procedure based on a traditional kinematic model for
Revised: 10 August 2023 the configuration design of their modular manipulator. Similarly, the work in [4] used D-H
Accepted: 21 August 2023 parameters as design variables with joint limitations as design constraints to design their
Published: 23 August 2023 reconfigurable modular manipulator. The traditional kinematic model does not apply to the
configuration synthesis of modular robots when the number of modules is big. The work
in [5] defined design variables including the number of joints, type of joints, number of
links, type of links, and the link assembly patterns, which are all discrete variables. In their
Copyright: © 2023 by the authors.
work, workspace reachability, joint range availability, and manipulability were defined
Licensee MDPI, Basel, Switzerland.
as design constraints. The minimal degree of freedom (DOF) was considered as a design
This article is an open access article
objective, which expresses a desire for fewer active modules if possible. The work in [6,7]
distributed under the terms and
conditions of the Creative Commons
used a concurrent optimal design approach, which explores the configuration space in
Attribution (CC BY) license (https://
terms of number, type, and dimension. Continuous variables (i.e., the base location and the
creativecommons.org/licenses/by/ length of links) were included in their optimization problem, along with discrete variables
4.0/). that represent the topology of the configuration. The minimum energy consumption was

Robotics 2023, 12, 121. https://doi.org/10.3390/robotics12050121 https://www.mdpi.com/journal/robotics


Robotics 2023, 12, x FOR PEER REVIEW 2 of 12

Robotics 2023, 12, 121 2 of 12

problem, along with discrete variables that represent the topology of the configuration.
The minimum energy consumption was considered as the objective function. The work in
considered as the objective function. The work in [8] searched for the optimal configuration
[8] searched for the optimal configuration using a two-level genetic algorithm.
using a two-level genetic algorithm.
Another type of task specification is to achieve the fault tolerance of a robot (i.e., to
Another type of task specification is to achieve the fault tolerance of a robot (i.e., to
synthesize the configuration that can continue the task after faults). Faults can be classified
synthesize the configuration that can continue the task after faults). Faults can be classified
into actuator faults, sensor faults, and component faults [9]. The present paper focuses on
into actuator faults, sensor faults, and component faults [9]. The present paper focuses
actuator
on faults
actuator andand
faults jointjoint
faults only.
faults Specifically,
only. Specifically,the the
active joints
active maymay
joints be locked
be lockedor un-or
locked due to the loss of control actions. Passive joints may be locked
unlocked due to the loss of control actions. Passive joints may be locked due to being stuck due to being stuck
in the
in the interface.
interface. Note
Note that
that modular
modular robots
robots more easily suffer
more easily suffer from
from these
these faults
faults than
than other
other
robots [6]. Regarding the fault-tolerant configuration, the key point
robots [6]. Regarding the fault-tolerant configuration, the key point is the evaluation of is the evaluation of
fault tolerance, which is the quantification of fault
fault tolerance, which is the quantification of fault tolerance. tolerance.
Identifying the
Identifying the fault-tolerant
fault-tolerant configuration
configuration avoids avoids precarious
precarious configurations
configurations and and
identifies new workspace boundaries. The work in [10] introduced
identifies new workspace boundaries. The work in [10] introduced manipulability for manipulability for
measuring fault
measuring fault tolerance.
tolerance. The The work
work in in [11]
[11] proposed
proposed an approach to
an approach to measure
measure the the fault
fault
tolerance for kinematically redundant serial manipulators. Further,
tolerance for kinematically redundant serial manipulators. Further, the work in [12,13] the work in [12,13]
proposed the
proposed the measure
measureofofthe thefault tolerance
fault tolerance of aofrobot.
a robot.The work
The workin [5] in
proposed an agent-
[5] proposed an
based approach to achieve “fault tolerance” by changing the
agent-based approach to achieve “fault tolerance” by changing the assembly patterns assembly patterns andand in-
creasing thethe
increasing number
number of joint
of jointmodules.
modules. However,
However, a general method
a general methodfor configuration
for configuration syn-
thesis is lacking
synthesis duedue
is lacking to the architecture
to the architecturelimitation.
limitation.
The main contribution of this paper is a computational model model of configuration
configuration syn- syn-
thesis of an
an underactuated
underactuatedresilient resilientrobot.
robot.First, wewe
First, analyze
analyze thethe
architecture
architectureof the under-
of the un-
actuated resilient
deractuated robot,
resilient robot,including
including a rigorous
a rigorous analytical
analytical formulation
formulation to define thethe
to define config-
con-
uration, a genetic
figuration, a geneticalgorithm
algorithm to to
identify
identify thetheoptimal
optimal configuration,
configuration, and anan
and application
application of
thethe
of proposed
proposed approach,
approach, seesee
Figure 1. Second,
Figure 1. Second,we give
we givea computational
a computational model of theofcon-
model the
figuration synthesis
configuration synthesisproblem
problem forfor
thetheproposed
proposedarchitecture.
architecture.Third, Third,aadesign
design case
case is given
demonstratehow
to demonstrate howthetheproposed
proposedmodel modelwork.work.It It
is is noted
noted thatthat
thethe concept
concept of configura-
of configuration
synthesis for thefor
tion synthesis underactuated
the underactuated resilientresilient
robot was robotfirstwas
proposed in our previous
first proposed in ourwork [14].
previous
Compared with [14], with
work [14]. Compared the present
[14], thepaper
present gives
paperthegives
detailed design of
the detailed the resilient
design robot,
of the resilient
the corresponding
robot, the correspondingconfiguration synthesis
configuration model,model,
synthesis and a detailed experiment
and a detailed to illustrate
experiment to il-
this model.
lustrate this model.

(a) (c) (d)

(b)
(e)

Figure 1. The modules of an underactuated


underactuated resilient robot [15]. (a) The 3D view view of
of aa passive
passive module;
module;
(b) the
(b) the 3D
3Dview
viewofofan
anactive
activemodule:
module:servomotor
servomotor (1),
(1), transmission
transmission shaft
shaft (2),(2), small
small gear gear
(3),(3),
big big
geargear
(4),
(4), and output axis (5); (c) the docking system structure with a female inter-face and male
and output axis (5); (c) the docking system structure with a female inter-face and male interface; (d) a interface;
(d) a passive joint connection by pushing male interface along Slot 1 and rotating to Layer 1 of a
passive joint connection by pushing male interface along Slot 1 and rotating to Layer 1 of a female
female interface. Note that a Velcro male side on Slot 1 and 2 prevents the male interface from acci-
interface. Note that a Velcro male side on Slot 1 and 2 prevents the male interface from accidentally
dentally slipping out of Layer 1. (e) A fixed connection by pushing a male interface along Slot 2,
slipping
rotating out
andof Layer 1. Note
releasing. (e) A that
fixedthe
connection
length ofbythepushing a male
new link interfaceby
represented along Slot 2, rotating
a shadowed box inand
(e)
releasing. Note that the length of the new link represented
can be adjusted by changing the relative angle between two modules. by a shadowed box in (e) can be adjusted
by changing the relative angle between two modules.
The paper is organized as follows. Section II introduces the general architecture of
The paper is organized as follows. Section 2 introduces the general architecture of
the underactuated resilient robot. Section III presents the configuration synthesis model.
the underactuated resilient robot. Section 3 presents the configuration synthesis model.
Section IV gives the implementation using a genetic algorithm. The configuration
Section 4 gives the implementation using a genetic algorithm. The configuration synthe-
sis is demonstrated by an example in Section 5. Section 6 outlines the conclusions and
future work.
Robotics 2023, 12, 121 3 of 12

2. General Architecture of an Underactuated Resilient Robot


As discussed in Section 1, there are three recovery strategies, i.e., behavior changing,
configuration changing, and component changing. Behavior changing requires that a sys-
tem performs one function based on many different states or configurations. Configuration
changing requires that two components can be connected and disconnected to change
into different configurations. Component changing requires that the component length is
adjustable. Since there are links, active and passive joints, and all modules can connect to
achieve configuration changes, this robot is called an underactuated resilient robot. The
general architecture of the resilient robot is detailed as follows.
(1) An underactuated resilient robot consists of two types of fundamental modules,
passive modules (Figure 1a) and active modules (Figure 1b). There are active joints and
passive joints (Figure 1d). A link is formed by two modules with a fixed connection,
which is called an adjustable link (Figure 1e).
(2) All the modules are structured to have two pairs of docking systems on each of the
four sides. The servomotors on each active module are the power supply of both
locomotion and reconfiguration.
(3) A robot changes its configuration through a series of docking actions (Figure 1c) be-
tween two modules, i.e., locking (forming a fixed connection) and unlocking (forming
a passive joint), and disconnection (separation).
(4) The male interfaces of active modules provide actuation for both locomotion and
reconfiguration.
Both linear and rotation motion are required to connect a female interface and a male
interface. To connect a pair of the docking system, the male interface of one module is
engaged to either Layer 1 or Layer 2 of the female interface of another module along Slot
1. To release, the male interface is driven to this slot and released to disengage with the
female interface. When a male interface inserts along Slot 1 and rotates to Layer 1 of a
female interface and is released, the two interfaces are connected to form a passive joint,
see Figure 1d. Rotate the male interface to Slot 1 and release the male interface, and the two
interfaces are disconnected, and the passive joint is disassembled.
When a male interface is pushed along Slot 2 and rotated, it will be spring-backed to
the position between two teeth, and the two modules are locked and become a rigid link,
see Figure 1e. The length of the new link can be adjusted by changing the relative angle
between two modules, i.e., unlocking the connections (i.e., pushing the male port to the
bottom of the female interface) and then locking the connection (i.e., releasing when the
male interface is rotated between another two teeth). The adjustable length of a link formed
by two modules is represented by a shadowed box in Figure 1e. The adjustable connection
can be disassembled by rotating the male interface to Slot 2 and then rotating to Slot 1 and
then releasing the male interface. It is noted that there are male sides on Slot 1 and 2 to
prevent the male interface from accidentally slipping out of Layer 1 if the bits of the male
interface are aligned with the slots, see Figure 1c.
One advantage of this architecture is that the cost is reduced as the reconfigurations
share the same motor with locomotion. Also, the whole system has a relatively low energy
consumption due to the passive joints. Another advantage is that the system is more
resilient as the modules can change their roles based on the docking system instead of
rendering the module or even the whole system useless. For instance, this robot can deal
with two types of common failures, i.e., joints are locked and unlocked, as these two types
of failures can be viewed as the adjustable link (for a failure of a locked active joint) and the
passive joint (for the failure of the unlocked active joint).

3. Configuration Synthesis
The architecture of a system determines its configuration as the architecture specifies
the properties of components. The configuration determines what and how these com-
Robotics 2023, 12, x FOR PEER REVIEW 4 of 12

Robotics 2023, 12, 121 The architecture of a system determines its configuration as the architecture specifies
4 of 12
the properties of components. The configuration determines what and how these compo-
nents are distributed. To determine a target configuration, the representation of the con-
figuration
ponentsisare
thedistributed.
first step. To determine a target configuration, the representation of the
configuration is the first step.
3.1. Configuration Representation
3.1.
InConfiguration
this paper, a Representation
configuration describes the kinematic connections between modules,
including bothpaper,
In this types aofconfiguration
modules anddescribes
connections. We use a matrix
the kinematic to represent
connections between the con-
modules,
figuration.
including Each
both row andofeach
types columnand
modules represent
connections. modules.WeIfusethere are m modules
a matrix in anthe
to represent
configuration.
assembly, Eachisrow
the matrix m ×and each column
m. Each elementrepresentrepresents modules.
how two there are m
If modules ormodules in an
objects are
assembly,
connected, the matrix
namely, is m × m. Each
the information on the element
connection represents howthe
ports and two modules or
connection objects
type. Noteare
that connected,
there are two namely,types theofinformation
connections: onfixed
the connection
connectionports and the
or relative connection type. Note
motion.
that there areeach
Therefore, two types
element of connections:
in the matrixfixed has fiveconnection
numbersorthatrelative
give motion.
information of the
ports ofTherefore, each element
the two respective in the
modules inmatrix
connection.has five Fornumbers
instance,thatfor give
row pinformation
and columnofk,the
ports of the two respective modules in connection. For instance,
the element has the following format <i1, i2, i3, i4, i5>, where i1 represents the type of for row p and column
Modulek, the
element
p. i2 represents has the following format <i
port of Module p, which , i , i
1 2 3will , i , i
4 be >, where
5 connected i1 with Module k. Similarly, i3 p.
represents the type of Module
andi2 irepresents
4 represent the the type
port of Module kp,and
of Module which will of
the port be Module
connected with
k that Module
will k. Similarly,
be connected with i3
and i 4 represent the type of Module k and the port of Module
Module p. Note that i1 and i3 are “1” or “2”, where “1” means link and “2” means active k that will be connected with
Module p. Note that i1 and i3 are “1” or “2”, where “1” means link and “2” means active
joint. Both i2 and i4 are “1”, “2”, “3”, or “4”, which represent the port ID on one module.
joint. Both i2 and i4 are “1”, “2”, “3”, or “4”, which represent the port ID on one module.
The last number, i5, denotes the connection type of Module k and Module p. Particularly,
The last number, i5 , denotes the connection type of Module k and Module p. Particularly, i5
i5 isis“1”
“1” or “2”, where“1”
or “2”, where “1” means
means passive
passive connection
connection or or joint
joint and “2” means
and “2” means fixed
fixed connection
connec-
tion oror joint.Note
joint. Notethat thatthe
theelement
element(i,(i,j)j)takes
takes00ififModule
Moduleiiand andModule
Module jj are
are not
not connected.
connected.
Based on the above description, the matrix is diagonal.
Based on the above description, the matrix is diagonal. Figure 2 shows Figure 2 shows thethe
matrix
matrix
representation for the robot shown in
representation for the robot shown in Figure 3. Figure 3.

Robotics 2023, 12, x FOR PEER REVIEW 5 of 12

Figure 2. The representation of the configuration in Figure 4.


Figure 2. The representation of the configuration in Figure 4.

Types of Connections between modules,


Ji (i = 1,2,3)
where i identifies a connection in
an assembly. Respectively, 1, 2,
and 3 denote fixed connection, ac-
tive joint connection, and passive
joint connection. Note that the de-
fault connection is a fixed connec-
tion if it is not pointed out. There-
fore, J refers to types of joints.
Mi (i = 1,2,…,6) Type of modules. Note that the infor-
mation about the type of a module
is included in J, so M is not included
in the variables.
Li (i = 1,2,3) Length of a link, i.e., the length be-
tween adjacent joints.

Pi (i = 1,2,…,6) Assembly pattern of each module.


There are eight assembly patterns
for each module.

Figure 3. A 3-DOF manipulator.

Figure 3. A 3-DOF manipulator.

In Figure 2, the element in row 1 and column 2 has the following meanings. The first
number, 2, means that Module 1 is an active joint module. The third number, 1, means
that Module 2 is a link module. The second number, 4, and the fourth number, 2, mean
that Port 4 of Module 1 connects Port 2 of Module 2. The fifth number, 2, means that this
where FG is the measure for a configuration candidate for a task. k1 and k2 are the two
weights of manipulability and energy consumption, respectively.

4. Implementation by Genetic Algorithm


As there are continuous and discrete variables, the configuration determination be-
Robotics 2023, 12, 121 5 of 12
comes difficult. Thus, we used a genetic algorithm (GA) to create the optimal configura-
tion. A fixed-length binary string is used to represent design variables, see Figure 4.

Figure 4.
Figure 4. Encoding
Encoding aa configuration
configuration with
with aa string
string [14].
[14].

In Figure
4.1. Genetic 2, the element in row 1 and column 2 has the following meanings. The first
Code
number, 2, means that Module 1 is an active joint module. The third number, 1, means thatT
In the optimization model, the variable is represented as a vector X = (x1, x2, …, xn) .
Module 2 is a link module. The second number, 4, and the fourth number, 2, mean that Port
The gene string can be encoded into a chromosome with a string in Figure 4.
4 of Module 1 connects Port 2 of Module 2. The fifth number, 2, means that this connection
is fixed.
4.2. Design of the Fitness Function
The GA initially generated an initial population of several random chromosomes.
3.2. Variables
The fitness of a configuration
Configuration is as follows.
synthesis involves formulating an optimal configuration to achieve a
given task. The variables, constraints, 𝐹𝐺 = and
−𝑘1 objectives
× 𝐷 − 𝑘2 ×are𝐸 included. This paper focuses (13)
on configuration synthesis for task-oriented underactuated resilient robots. Specifically,
the task is defined as a set of points in the workspace that is followed by the end-effector
4.3. Design
without lossofof
Operators
the generality of discussions.
AThe roulette wheel
configuration method isby
is determined used as a selection
the variables. Theseoperator
variablesto are
pick individuals.
coded The
sequentially,
configuration
and that has
the code thus good fitness
represents is selected forof
the configuration crossover
a robot, via a random
including thecrossover
kinematicpoint,
and
dynamic
see Figurevariables
5a, thus or parameters
creating of the robot. Specifically,
new configurations. The mutation theoperation
variables isinclude (1) ran-
to select the
joint
domtype; (2) thefor
segments assembly pattern;
mutation, (3) the
and then lengthsthem
replace of links;
withand (4) the
other base location.
random segments, Note
see
that the first two variables are discrete, and the latter two are continuous variables. It is
noted that assembly pattern is the type of the assembly between two ports. There are six
assembly patterns. Each module has two femal ports (Port 1 and Port 2) and two male
ports (Port 3 and Port 4). Port 1 of Module 1 connects Port 3 or Port 4 of Module 1, and Port
2 of Module 1 connects Port 3 or Port 4 of Module 2. Port 1 of Module 2 connects Port 3 or
Port 4 of Module 1, and Port 2 of Module 2 connects Port 3 or Port 4 of Module 1. Thus,
there are eight assembly patterns.
Figure 3 shows an example of a configuration determined by the above variables. The
robot is a 3-DOF robotic manipulator with two active joint modules and three link modules.
The variables are marked in Figure 3, along with the explanation of the variables.

3.3. Constraints
Constraints achieve the feasibility of a robot configuration for performing a given task.
In this paper, both kinematic and dynamic requirements will be considered. The kinematic
constraints restrict the mobility direction, and the dynamic constraints achieve the dynamic
balance [16]. Different configurations have different kinematic and dynamic parameters.
The method of the automatic generation of D-H kinematic and dynamic parameters was
studied, which can be referred to in the previous work [6,17].
For an underactuated robot, the kinematic relationship among θa , θp , and x is ex-
pressed using the Jacobian matrix [18]:
. . .
x = J p θ p + Ja θa (1)

.. .. . . .. . .
x = J p θ p + J p θ p + Ja θa + Ja θa (2)
where θa , θp is the generalized coordinate for active and passive joints, respectively. x is the
position of the end-effector. x = [x1 , x2 , . . ., xm ]T , and is the given task (i.e., points). Ja and
Jp are the Jacobian matrices for the active and passive joints, respectively.
Robotics 2023, 12, 121 6 of 12

The dynamic model for fully actuated robots [12] is similar to underactuated robots,
which is generally expressed as follows:
 " .. #    
Haa Hap θa b τ
.. + a = a (3)
HTap H pp θ p bp 0

where Haa , Hap , and Hpp are inertia matrices. bp and ba are centrifugal, Coriolis, and gravity
forces on passive and active joints, respectively. τa is the vector of torques on active joints.
The kinematic requirement of joint j at the task point i is modeled as

θ jmin ≤ θij ≤ θ jmax (4)

where θ jmin and θ jmax are the displacement limits.


The forces/torque on the joint modules can be obtained if the payload at the task space
for a point k is given. The described payload, fi , is modeled as follows by the following
constraints:
| f ik |≤ f kmax (5)
where f kmax is the maximum driving force/torque that a joint module generates.

3.4. Objectives
There are two types of criteria used to evaluate the robot configurations: manipulability
and energy consumption. Manipulability is defined as “the ability to position and orient
the end-effector” in [10]. Here, the dynamic manipulability in [12] is used to quantify the
manipulator’s dexterity.

di1 ...i p (θ) = w[i1 ...i p ( JH −1 )]= w[Ji1 ...i p ( H −1 )] (6)

q
w(J) = det( J J T ) (7)

. .
x = Jθ (8)
where di1 ...i p denotes the robot dexterity whose passive joints are i1 . . . i p . Note that the
passive joints are considered to be free-swing joints. i1 ...i p ( H −1 ) denotes the matrix H −1
with its i1 . . . i p columns removed. H and J are the inertia matrix and Jacobian matrix of the
fully actuated robot.
There are three types of failures for a resilient robot: (i) one or more active joints are
locked, (ii) one or more active joints are unlocked, and (iii) some active joints are locked,
and some are unlocked. The dynamic manipulability of a robot with these three types of
failures can be expressed as
il1 ...il p i ...i
di
u1 ...iup
(θ) = w[il1 ...il p J il1 ...il p iu1...i up ( H −1 )] (9)
l1 l p,

The superscript “u” and “l” represents unlocked active joints and locked active joints,
il1 ...il p
respectively. di is the dexterity of the robot with unlocked active joints iu1 . . . iup and
u1 ...iup
il1 ...il p, iu1 ...iup
locked joints il1 . . . il p . il1 ...il p, ( H −1 ) denotes H −1 whose il1 . . . il p rows and columns
are removed, and iu1 . . . iup columns are removed. il1 ...il p J denotes the matrix J with its
il1 . . . il p columns removed. The criterion of manipulability to be minimized is as

1
D= (10)
1 + d(θ)
Robotics 2023, 12, 121 7 of 12

Passive joint decreases energy consumption. The index of the power consumption
in [19] is used as energy consumption in this paper.
Z
n
E=
Tra
∑i=1 |τi (θ )|dθi (11)

where E is the energy consumption along the desired trajectory, n is the number of joints of
a configuration; Tra is the space consisting of all working points, and τ i (θ) is the torque on
joint i.
The objective function for evaluating the configuration is as follows:

FG = min(k1 × D + k2 × E) (12)

where FG is the measure for a configuration candidate for a task. k1 and k2 are the two
weights of manipulability and energy consumption, respectively.

4. Implementation by Genetic Algorithm


As there are continuous and discrete variables, the configuration determination be-
comes difficult. Thus, we used a genetic algorithm (GA) to create the optimal configuration.
A fixed-length binary string is used to represent design variables, see Figure 4.

4.1. Genetic Code


In the optimization model, the variable is represented as a vector X = (x1 , x2 , . . ., xn )T .
The gene string can be encoded into a chromosome with a string in Figure 4.

4.2. Design of the Fitness Function


The GA initially generated an initial population of several random chromosomes. The
fitness of a configuration is as follows.

FG = −k1 × D − k2 × E (13)

4.3. Design of Operators


Robotics 2023, 12, x FOR PEER REVIEW 8 of 12
The roulette wheel method is used as a selection operator to pick individuals. The
configuration that has good fitness is selected for crossover via a random crossover point,
see Figure 5a, thus creating new configurations. The mutation operation is to select random
Figure 5b.for
segments The ratios ofand
mutation, thethen
mutation
replaceand crossover
them operations
with other random are denoted
segments, byFigure
see rc and5b.
ra,
respectively.
The ratios of the mutation and crossover operations are denoted by rc and ra , respectively.

(a) (b)
Figure5.5.(a)
Figure (a)Crossover
Crossoveroperation.
operation.(b)
(b)Mutation
Mutationoperation
operation[14].
[14].

5.5.Case
CaseStudy
Study
In
In thissection,
this section,configuration
configurationsynthesis will
synthesis be be
will illustrated using
illustrated a 3-DOF
using underactuated
a 3-DOF underactu-
robot. Table Table
ated robot. 1 shows the task
1 shows specification
the with five
task specification points
with fivealong the
points desired
along the trajectory. The
desired trajec-
robot
tory. should
The robotreach each reach
should of these points
each with points
of these null accelerations and speeds. and
with null accelerations One speeds.
of the ports
One
of the last links of the robot passes through the task points.
of the ports of the last links of the robot passes through the task points.

Table 1. The specification of the task.

Point Position (mm)


1 (465, −65, 140)
2 (340, 220, −40)
3 (100, 200, −135)
4 (140, 65, 140)
5 (60, 120, −130)
Robotics 2023, 12, 121 8 of 12

Table 1. The specification of the task.

Point Position (mm)


1 (465, −65, 140)
2 (340, 220, −40)
3 (100, 200, −135)
4 (140, 65, 140)
5 (60, 120, −130)

The user requires a 3-DOF robot to achieve the task so that there are three joints that
could be passive or active. Therefore, the total design variables include (i) three variables
for the joint types; (ii) three variables for the base location; (iii) three variables for the link
length; and (iv) 3 − (m + 3) variables for the assembly pattern. m is determined by the
length of links. For example, if m can be formed by two link modules, m is equal to 2. It
is noted that the number of modules could be different in different configurations. For
example, one single link module is enough when the length of a link is the same as that of
a single link module.
This experiment served as an example of configuration synthesis for a robot that was
under actuated. As indicated in Table 1, the task specification calls for the manipulator
to pass through five places. At each point, the acceleration and velocity are both zero. To
complete the task, the user needs a 3-DOF robot with three joints that can be passive or
active. As a result, the total design variables in the model of configuration synthesis are
(i) three variables for joint type; (ii) three variables for base location; (iii) three variables for
link length; and (iv) three—(m + 3) variables for assembly pattern. The size of the linkages
affects m. For instance, m is equal to 2 if m can be constructed by two link modules. It is
important to keep in mind that different configurations may have a varying number of
modules. When the length of a link is equal to that of a single link module, for instance,
one single link module suffices.
The genetic algorithm’s parameters are specified as follows for implementation. There
are 100 samples in the initial population, and there are 100 samples in each subsequent
generation. Overall, 100 generations are required for the GA program to terminate. Figure 6
depicts the progression of the solution. Thirty generations later, the answer converged.
Robotics 2023, 12, x FOR PEER REVIEW 9 of 12
Figure 7 depicts the evolution of the design variables and demonstrates that after thirty
generations, the design variables also converged.

Figure 6. Best/average fitness.


Figure 6. Best/average fitness.
Optimal design variables vs generation
joint type 1
8
joint type 2
joint type 3
7
link length 1
link length 2
6
link length 3
5 base x
Robotics 2023, 12, 121 9 of 12

Figure 6. Best/average fitness.


Optimal design variables vs generation
joint type 1
8
joint type 2
joint type 3
7
link length 1
link length 2
6
link length 3
5 base x
base y
x

4 base z
joint assembly 1
3 joint assembly 2
joint assembly 3
2 link assembly 1
link assembly 2
1 link assembly 3
link assembly 4
0 link assembly 5
0 20 40 60 80 100 link assembly 6
Generation

Optimaldesign
Figure7.7.Optimal
Figure designvariables.
variables.

Figure 8 shows the optimal configuration. In order to illustrate the configuration syn-
Figure 8 shows the optimal configuration. In order to illustrate the configuration syn-
thesis algorithm, two individuals with lower fitness compared to the optimal configuration,
thesis algorithm, two individuals with lower fitness compared to the optimal configura-
Robotics 2023, 12, x FOR PEER REVIEW
Configuration I and Configuration II, see Figure 9. The two configurations are feasible to
tion, Configuration I and Configuration II, see Figure 9. The two configurations are10feasi-
of 12
achieve the task. Each of them consists of more link modules and consumes more energy,
ble to achieve the task. Each of them consists of more link modules and consumes more
as compared with the optimal configuration.
energy, as compared with the optimal configuration.

Figure 8.
Figure An optimal
8. An optimal configuration
configurationconsisting
consistingof
oftwo
twoactive
activejoints,
joints,three
threelinks
linksformed
formedby
byfive
five link
link
modules, and one passive joint formed by two link modules (fitness = − 9.7911).
modules, and one passive joint formed by two link modules (fitness = −9.7911).
Robotics 2023, 12, Figure
1218. An optimal configuration consisting of two active joints, three links formed by five link 10 of 12
modules, and one passive joint formed by two link modules (fitness = −9.7911).

(a) (b)
Figure 9. (a) Feasible
FigureConfiguration I consisting ofI consisting
9. (a) Feasible Configuration three active jointsactive
of three and three linksthree
joints and formed
linksby six by six
formed
link modules (fitness = −36.1318).
link modules (b)= Feasible
(fitness −36.1318).Configuration II consisting
(b) Feasible Configuration II of three active
consisting joints
of three and
active joints and
three links formed bylinks
three six link modules
formed by six (fitness = −20.2094).
link modules (fitness = −20.2094).

The algorithms Thewere


algorithms were implemented
implemented in the platform.
in the Matlab Matlab platform. Foractive
For the the active
mod-modules,
ules, the torque of the actuator is 13.1Nm. The velocity is 3.768 m/s. The mass of the and
the torque of the actuator is 13.1Nm. The velocity is 3.768 m/s. The mass of the active
passive modules is 0.9 g and 0.33 g, respectively. The length of the module is 50 mm. The
active and passive modules is 0.9 g and 0.33 g, respectively. The length of the module
Matlab Robotic Toolbox and the GA Toolbox were used. The experiment was conducted
is 50 mm. TheonMatlab Robotic Toolbox and the GA Toolbox were used. The experi-
a PC with 2.40 GHz and 3.00 GB RAM. In the simulation, the parameters of the genetic
ment was conducted
algorithmonare
a PC with 2.40
empirically set GHz and 3.00 GB RAM. In the simulation, the
as follows.
parameters of the genetic algorithm are empirically set as follows.
• The initial population of the individuals of planning is 100.
• The initial• population
Crossover of theisindividuals
ratio 0.9. of planning is 100.
• Crossover• ratio is 0.9. ratio is 0.2.
Mutation
• Mutation •ratioThe
is termination
0.2. condition for the GA program is 100 generations.
• The termination condition for the GA program is 100 generations.
6. Conclusions and Future Work
In this paper, an underactuated modular robot was presented. The architecture is
featured that each module cannot be divided further and the fixed connection could be
switched to the passive joint through a novel docking system. With the docking system,
the minimum number of fundamental modules (i.e., active modules and passive modules)
is needed, and the reconfiguration and locomotion share the same motor, thus increasing
the overall resource utilization as well as reducing the cost.
In the GA-based configuration synthesis method, both continuous and discrete vari-
ables were included. The optimal configuration not only possesses the resilience ability but
also consumes less energy. This approach was illustrated by a 3-DOF robot manipulator in
the simulation. It was concluded that the configuration that includes passive joints reduces
the cost.
There are, however, some issues that remain to be investigated considering the man-
ufacturing difficulties. As was expected, gravitational deformation was the most severe
problem. To reduce the complexity of the reconfiguration, we have not considered the
passive docking, which is formed by a male interface from a passive module and a female
interface from any other module, and this will be included in our next step. The mecha-
nism must not only be stiff to reduce errors but also flexible to tolerate positioning errors.
Furthermore, it is also important to consider more dynamic aspects of the whole system.
The controller used for the robot in this paper is all centralized offline. In the future, other
types of failures will be included, and the configuration synthesis model will be improved
Robotics 2023, 12, 121 11 of 12

accordingly. In the future, we will fabricate physically resilient robots using the metal
material and will test the configuration synthesis model on the physical robot. Finally, we
will also formulate the synthesis problem using the topology optimization approach [20]
and the machine learning approach [21].

Author Contributions: Conceptualization, T.Z. and W.Z.; methodology, T.Z. and W.Z.; software,
T.Z.; validation, T.Z.; formal analysis, T.Z.; investigation, T.Z.; resources, T.Z.; data curation, T.Z.;
writing—original draft preparation, T.Z.; writing—review and editing, D.Z. and W.Z., visualization,
T.Z.; supervision, W.Z.; project administration, W.Z.; funding acquisition, T.Z. All authors have read
and agreed to the published version of the manuscript.
Funding: This research was funded by NSERC Discovery Grant (RGPIN06007-2016), Shenzhen
Overseas Talent Program (W202360002050016), Industry-University-Research Fund (2021JQR003;
2022010802011).
Data Availability Statement: Not applicable.
Conflicts of Interest: The authors declare no conflict of interest.

References
1. Zhang, T.; Zhang, D.; Gupta, M.M.; Zhang, W.J. Design of a General Resilient Robotic System Based on Axiomatic Design Theory.
In Proceedings of the 2015 IEEE/ASME International Conference on Advanced Intelligent Mechatronics, Pusan, Republic of
Korea, 7–11 July 2015; pp. 71–78.
2. Zhang, T.; Gupta, M.M.; Zhang, W.J. Resilient Robots: Concept, Review, and Future Directions. Robotics 2017, 6, 22. [CrossRef]
3. Matsumaru, T. Design and control of the modular robot system: TOMMS. In Proceedings of the 2007 IEEE International
Conference on Robotics and Automation, Nagoya, Aichi, Japan, 21–27 May 1995; pp. 2125–2131.
4. Paredis, C.J.J.; Khosla, P.K. An Approach for Mapping Kinematic Task Specifications into a Manipulator Design. In Proceedings
of the 5th International Conference on Advanced Robotics, Pisa, Italy, 19–22 June 1991; Volume 1, pp. 556–561.
5. Chen, I.-M.; Burdick, J.W. Determining Task Optimal Modular Robot Assembly Configurations. In Proceedings of the IEEE
International Conference on Robotics and Automation, Nagoya, Aichi, Japan, 21–27 May 1995; pp. 132–137.
6. Bi, Z.M.; Zhang, W.J. Concurrent Optimal Design of Modular Robotic Configuration. J. Robot. Syst. 2001, 18, 77–87. [CrossRef]
7. Bi, Z.M.; Lin, Y.; Zhang, W.J. The architecture of adaptive robotic systems for manufacturing applications. Robot. Comput.-Integr.
Manuf. 2010, 26, 403–540. [CrossRef]
8. Sakka, S.; Chocron, O. Optimal design and configurations of a mobile manipulator using genetic algorithms. In Proceedings of the
10th IEEE International Workshop on Robot and Human Interactive Communication, Bordeaux, Paris, France, 18–21 September
2001; pp. 268–273.
9. Thavamani, S. Fault Tolerant Control of a Ship Propulsion System. Ph.D. Thesis, Department of Electrical Engineering, State
University of New York, Binghamton, NY, USA, 2006.
10. Yoshikawa, T. Manipulability of robot manipulators. Int. J. Robot. Res. 1985, 4, 3–9. [CrossRef]
11. Roberts, R.G.; Maciejewski, A.A. A local measure of fault tolerance for kinematically redundant manipulators. IEEE Trans. Robot.
Autom. 1996, 12, 543–552. [CrossRef]
12. Roberts, R.G. The dexterity and singularities of an underactuated robot. J. Robot. Syst. 2001, 18, 159–169. [CrossRef]
13. Roberts, R.G.; Yu, H.G.; Maciejewski, A.A. Fundamental limitations on designing optimally fault-tolerant redundant manipulators.
IEEE Trans. Robot. 2008, 24, 1224–1237. [CrossRef]
14. Zhang, T.; Liu, C.; Qian, Z.; Zhang, D.; Gupta, M.M.; Zhang, W.J. Configuration synthesis of underactuated resilient robotic
systems. In Proceedings of the 2014 IEEE/ASME International Conference on Advanced Intelligent Mechatronics, Besançon,
France, 7–11 July 2014; pp. 721–726.
15. Zhang, T.; Zhang, W.J.; Gupta, M.M. An Underactuated Self-Reconfigurable Robot and the Reconfiguration Evolution. Mech.
Mach. Theory 2018, 124, 248–258. [CrossRef]
16. Arai, H. Controllability of a 3-DOF manipulator with a passive joint under a nonholonomic constraint. In Proceedings of the 1996
IEEE International Conference on Robotics and Automation, Minneapolis, MN, USA, 22–28 April 1996; Volume 4, pp. 3707–3713.
17. Zhang, T.; Backstrom, K.; Prince, R.; Liu, C.; Qian, Z.; Zhang, D.; Zhang, W.J. Robotic dynamic sculpture. IEEE Robot. Autom. Mag.
2014, 21, 96–104. [CrossRef]
18. Yoshida, K. A general formulation for underactuated manipulators. In Proceedings of the 1997 IEEE/RSJ International Conference
on Intelligent Robots and Systems, Grenoble, France, 11 September 1997; pp. 1651–1957.
19. Paredis, C.J.J. An Agent-Based Approach to the Design of Rapidly Deployable Fault Tolerant Manipulators. Ph.D. Thesis,
Carnegie Mellon University, Pittsburgh, PA, USA, 1996.
Robotics 2023, 12, 121 12 of 12

20. Cao, L.; Dolovich, A.T.; Schwab, A.L.; Herder, J.L.; Zhang, W.J. Towards a Unified Design Approach for both Compliant
Mechanisms and Rigid-Body Mechanisms: Module Optimization. ASME J. Mech. Des. 2015, 137, 122301. [CrossRef]
21. Zhang, W.J.; Yang, G.; Lin, Y.; Gupta, M.M.; Ji, C. On Definition of Deep Learning. In Proceedings of the 2018 World Automation
Congress (WAC), Stevenson, WA, USA, 3–6 June 2018. [CrossRef]

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual
author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to
people or property resulting from any ideas, methods, instructions or products referred to in the content.

You might also like