IEEE Robotics & Automation Magazine - March 2021 - 66

boundary, the velocity is modified such that it has the same
magnitude but its component normal to the boundary is
null. In other words, the robot is constrained to sliding
along the closest obstacle boundary. If this is not possible, a
random suitable velocity is assigned to the robot. Finally, it
is important to note that the three coefficients (k, n, m)
have a fundamental role as they can drastically change
the shape of the velocity
field governing the robot's motion.

It can be observed how

Irradiation and
the APF output velocity
Motion Simulation
Given the model of the
is successfully modified
environment and its surfaces, we could exploit
to allow the robot to
the irradiation model
described in the " Irradimaneuver around the
ation Model " section to
reproduce the evolution
obstacles and go toward
over time, using a discrete time step of the
the surfaces to disinfect.
energy density delivered
by the robot during its
motion. The simulation
involves the execution of the following instructions at each
time step:
1) It involves computing the irradiation function and updating surfaces' energy.
2) It also involves computing the velocity field in the actual
robot position.
3) If E i $ E 0 for all of the surfaces in the environment, the
disinfection is completed. Otherwise, the actual time value
is increased by the time-step value, and the instructions are
repeated starting from point 1.
The output of the simulation is the robot trajectory,
generated as a sequence of coordinates over time that the
robot should track during the disinfection task. As stated
Table 2. The simulation and GA settings.
Parameter

Value

Parameter

Value

Space
discretization

0.3 m

Time step

0.5 s

Maximum
generation

300

Population size 30

66

*

Function
tolerance

10−7

Survivors

6

Selection
function

Tournament,
4m

Crossover
function

Intermediate

Crossover
fraction

0.5

Mutation
function

Gaussian

Subsample
period

2s

Initial k

logsp(1e-2, 1e4)

Initial n

linsp(1,3)

Initial m

linsp(0,20)

IEEE ROBOTICS & AUTOMATION MAGAZINE

*

MARCH 2021

in the previous " Overview " and " APF " sections, different
outcomes are possible by changing the APF coefficients.
The irradiation and motion simulations allow us to verify
whether a particular set of coefficients generates a trajectory suitable for the disinfection of the environment and
to calculate the total time needed to perform the task. At
this point, what is missing is a method to explore different
possible choices of the APF coefficients; this part is played
by the GA.
GA
The GA has been chosen as the method to automatically
explore the different possible trajectories that can be
obtained using the proposed APF. This choice is motivated
by the capability of the GA to explore the solution space in
a stochastic way, allowing for variable values also outside
of the starting range. Therefore, the three coefficients (k, n,
m) are chosen as the genes of a given individual in the
population while the cost function for the optimization is
the total time needed for the disinfection task. We used
MATLAB to run the GA, with the settings reported in
Table 2. Once the optimized values are obtained, they are
employed to run a final simulation that produces a raw
optimized trajectory. The raw optimized trajectory is then
subsampled to obtain a new, smoother one. The subsampling process is automatic and iterative: deleted points are
substituted by new ones obtained from linear interpolation
on the points remaining. This new trajectory is checked
again through simulation to verify whether the process
had compromised the effectiveness of disinfection. In case
of failure, the procedure is repeated with a decreased subsampling period until a positive outcome is obtained.
Simulated Case Studies
The trajectory planner has been tested in different case studies, two significant ones among which we report (Figure 7).
The first is a simple, convex environment with two square
obstacles inside while the second is a nonconvex, H-shaped
environment with four circular obstacles. Importantly,
the trajectory planner could converge to a suitable solution, complying with the complete disinfection constraint, for several different values of the coefficients (k,
n, m) in both cases and, thus, could choose the best solution in terms of time from a wide range of trajectories.
Moreover, especially in the second case study, it can be
observed how the APF output velocity is successfully
modified to allow the robot to maneuver around the
obstacles and go toward the surfaces to disinfect. Finally,
we summarize the whole trajectory generation process in
the flowchart in Figure 8.
Algorithm Evaluation Experiment
The goal of the second experiment was to evaluate the disinfection performance of the optimized trajectory-planning
method described in the previous section. To this end,
we used a meeting room [dimensions 8.6 # 5.6 m (2D



IEEE Robotics & Automation Magazine - March 2021

Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - March 2021

Contents
IEEE Robotics & Automation Magazine - March 2021 - Cover1
IEEE Robotics & Automation Magazine - March 2021 - Cover2
IEEE Robotics & Automation Magazine - March 2021 - Contents
IEEE Robotics & Automation Magazine - March 2021 - 2
IEEE Robotics & Automation Magazine - March 2021 - 3
IEEE Robotics & Automation Magazine - March 2021 - 4
IEEE Robotics & Automation Magazine - March 2021 - 5
IEEE Robotics & Automation Magazine - March 2021 - 6
IEEE Robotics & Automation Magazine - March 2021 - 7
IEEE Robotics & Automation Magazine - March 2021 - 8
IEEE Robotics & Automation Magazine - March 2021 - 9
IEEE Robotics & Automation Magazine - March 2021 - 10
IEEE Robotics & Automation Magazine - March 2021 - 11
IEEE Robotics & Automation Magazine - March 2021 - 12
IEEE Robotics & Automation Magazine - March 2021 - 13
IEEE Robotics & Automation Magazine - March 2021 - 14
IEEE Robotics & Automation Magazine - March 2021 - 15
IEEE Robotics & Automation Magazine - March 2021 - 16
IEEE Robotics & Automation Magazine - March 2021 - 17
IEEE Robotics & Automation Magazine - March 2021 - 18
IEEE Robotics & Automation Magazine - March 2021 - 19
IEEE Robotics & Automation Magazine - March 2021 - 20
IEEE Robotics & Automation Magazine - March 2021 - 21
IEEE Robotics & Automation Magazine - March 2021 - 22
IEEE Robotics & Automation Magazine - March 2021 - 23
IEEE Robotics & Automation Magazine - March 2021 - 24
IEEE Robotics & Automation Magazine - March 2021 - 25
IEEE Robotics & Automation Magazine - March 2021 - 26
IEEE Robotics & Automation Magazine - March 2021 - 27
IEEE Robotics & Automation Magazine - March 2021 - 28
IEEE Robotics & Automation Magazine - March 2021 - 29
IEEE Robotics & Automation Magazine - March 2021 - 30
IEEE Robotics & Automation Magazine - March 2021 - 31
IEEE Robotics & Automation Magazine - March 2021 - 32
IEEE Robotics & Automation Magazine - March 2021 - 33
IEEE Robotics & Automation Magazine - March 2021 - 34
IEEE Robotics & Automation Magazine - March 2021 - 35
IEEE Robotics & Automation Magazine - March 2021 - 36
IEEE Robotics & Automation Magazine - March 2021 - 37
IEEE Robotics & Automation Magazine - March 2021 - 38
IEEE Robotics & Automation Magazine - March 2021 - 39
IEEE Robotics & Automation Magazine - March 2021 - 40
IEEE Robotics & Automation Magazine - March 2021 - 41
IEEE Robotics & Automation Magazine - March 2021 - 42
IEEE Robotics & Automation Magazine - March 2021 - 43
IEEE Robotics & Automation Magazine - March 2021 - 44
IEEE Robotics & Automation Magazine - March 2021 - 45
IEEE Robotics & Automation Magazine - March 2021 - 46
IEEE Robotics & Automation Magazine - March 2021 - 47
IEEE Robotics & Automation Magazine - March 2021 - 48
IEEE Robotics & Automation Magazine - March 2021 - 49
IEEE Robotics & Automation Magazine - March 2021 - 50
IEEE Robotics & Automation Magazine - March 2021 - 51
IEEE Robotics & Automation Magazine - March 2021 - 52
IEEE Robotics & Automation Magazine - March 2021 - 53
IEEE Robotics & Automation Magazine - March 2021 - 54
IEEE Robotics & Automation Magazine - March 2021 - 55
IEEE Robotics & Automation Magazine - March 2021 - 56
IEEE Robotics & Automation Magazine - March 2021 - 57
IEEE Robotics & Automation Magazine - March 2021 - 58
IEEE Robotics & Automation Magazine - March 2021 - 59
IEEE Robotics & Automation Magazine - March 2021 - 60
IEEE Robotics & Automation Magazine - March 2021 - 61
IEEE Robotics & Automation Magazine - March 2021 - 62
IEEE Robotics & Automation Magazine - March 2021 - 63
IEEE Robotics & Automation Magazine - March 2021 - 64
IEEE Robotics & Automation Magazine - March 2021 - 65
IEEE Robotics & Automation Magazine - March 2021 - 66
IEEE Robotics & Automation Magazine - March 2021 - 67
IEEE Robotics & Automation Magazine - March 2021 - 68
IEEE Robotics & Automation Magazine - March 2021 - 69
IEEE Robotics & Automation Magazine - March 2021 - 70
IEEE Robotics & Automation Magazine - March 2021 - 71
IEEE Robotics & Automation Magazine - March 2021 - 72
IEEE Robotics & Automation Magazine - March 2021 - 73
IEEE Robotics & Automation Magazine - March 2021 - 74
IEEE Robotics & Automation Magazine - March 2021 - 75
IEEE Robotics & Automation Magazine - March 2021 - 76
IEEE Robotics & Automation Magazine - March 2021 - 77
IEEE Robotics & Automation Magazine - March 2021 - 78
IEEE Robotics & Automation Magazine - March 2021 - 79
IEEE Robotics & Automation Magazine - March 2021 - 80
IEEE Robotics & Automation Magazine - March 2021 - 81
IEEE Robotics & Automation Magazine - March 2021 - 82
IEEE Robotics & Automation Magazine - March 2021 - 83
IEEE Robotics & Automation Magazine - March 2021 - 84
IEEE Robotics & Automation Magazine - March 2021 - 85
IEEE Robotics & Automation Magazine - March 2021 - 86
IEEE Robotics & Automation Magazine - March 2021 - 87
IEEE Robotics & Automation Magazine - March 2021 - 88
IEEE Robotics & Automation Magazine - March 2021 - 89
IEEE Robotics & Automation Magazine - March 2021 - 90
IEEE Robotics & Automation Magazine - March 2021 - 91
IEEE Robotics & Automation Magazine - March 2021 - 92
IEEE Robotics & Automation Magazine - March 2021 - 93
IEEE Robotics & Automation Magazine - March 2021 - 94
IEEE Robotics & Automation Magazine - March 2021 - 95
IEEE Robotics & Automation Magazine - March 2021 - 96
IEEE Robotics & Automation Magazine - March 2021 - 97
IEEE Robotics & Automation Magazine - March 2021 - 98
IEEE Robotics & Automation Magazine - March 2021 - 99
IEEE Robotics & Automation Magazine - March 2021 - 100
IEEE Robotics & Automation Magazine - March 2021 - 101
IEEE Robotics & Automation Magazine - March 2021 - 102
IEEE Robotics & Automation Magazine - March 2021 - 103
IEEE Robotics & Automation Magazine - March 2021 - 104
IEEE Robotics & Automation Magazine - March 2021 - 105
IEEE Robotics & Automation Magazine - March 2021 - 106
IEEE Robotics & Automation Magazine - March 2021 - 107
IEEE Robotics & Automation Magazine - March 2021 - 108
IEEE Robotics & Automation Magazine - March 2021 - 109
IEEE Robotics & Automation Magazine - March 2021 - 110
IEEE Robotics & Automation Magazine - March 2021 - 111
IEEE Robotics & Automation Magazine - March 2021 - 112
IEEE Robotics & Automation Magazine - March 2021 - 113
IEEE Robotics & Automation Magazine - March 2021 - 114
IEEE Robotics & Automation Magazine - March 2021 - 115
IEEE Robotics & Automation Magazine - March 2021 - 116
IEEE Robotics & Automation Magazine - March 2021 - 117
IEEE Robotics & Automation Magazine - March 2021 - 118
IEEE Robotics & Automation Magazine - March 2021 - 119
IEEE Robotics & Automation Magazine - March 2021 - 120
IEEE Robotics & Automation Magazine - March 2021 - 121
IEEE Robotics & Automation Magazine - March 2021 - 122
IEEE Robotics & Automation Magazine - March 2021 - 123
IEEE Robotics & Automation Magazine - March 2021 - 124
IEEE Robotics & Automation Magazine - March 2021 - 125
IEEE Robotics & Automation Magazine - March 2021 - 126
IEEE Robotics & Automation Magazine - March 2021 - 127
IEEE Robotics & Automation Magazine - March 2021 - 128
IEEE Robotics & Automation Magazine - March 2021 - Cover3
IEEE Robotics & Automation Magazine - March 2021 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com