IEEE Robotics & Automation Magazine - June 2017 - 51
Cachegrind software package when
compiled with the Intel C++ compiler
Table 3. The computational time for 100,000 random configurations.
(ICC) 2016.3. It shows improvements
Time
Ratio*
Time
Ratio*
Time
Ratio*
Implemenof more than an order of magnitude
tation
ICC 2016.3
GCC 6.1
Clang 3.8
between the template code and
Variadic
1.75 s
100%
2.94 s
100%
2.80 s
100%
the completely dynamic code. The
template
improvements between the variadic-
Simple
1.88 s
107%
3.25 s
111%
2.93 s
105%
template code and the simple-tem-
template
plate code are also significant, ranging
Completely
27.68 s 1580%
32.28 s 1100%
31.58 s 1129%
from 13.7% (instruction references)
dynamic
to 42.4% (last-level cache references).
*The ratio of the time compared to the respective fastest algorithm.
Therefore, it is expected that computa-
tion time will significantly improve for
the variadic-template implementation.
The computation times for the three implementations, requires highly curved CTRs that are prone both to instabil-
listed in Table 3, validate this expectation. The computa- ities and to collisions with the anatomy (see robot parame-
tional-time reduction between the completely dynamic ters in Table 5).
implementation and the template code is more than an
In the experiment, four novice female and ten novice
order of magnitude. Depending on the compiler choice, male participants, ages 25-35, had to maneuver the CTR
the variadic-template code ran up to 15.8 times faster. In toward 13 cauterization points using a haptic device
comparison with the simple-template code, an improve- (Geomagic Touch). The task was performed in two dif-
ment of 7% is measured using the ICC. This evolutionary ferent modes: guidance and free. The order of the modes
improvement justifies an increased initial implementation was randomized for every participant. The experimental
complexity because usability and computational precision protocol used a seven-level Likert scale to record metrics
are identical and the source-code maintenance became on factors such as execution time, frustration, ease of tele-
simpler using the variadic template. The compiler flags manipulation, and more. Each participant could activate
were tuned individually for all examined compilers to
guarantee that each one performed at its best. The binaries
produced by GCC and Clang had a similar runtime,
Table 4. The duration to sample workspace
whereas the ICC produced a significantly faster code.
time to complete sampling (s) versus
There were less relative improvements from ICC to GCC
acceptance rate (%).
or Clang for the completely dynamic implementation. Link-
Scaling
Configurations Configurations Parametriing the GCC and Clang executable to the Intel Math Kernel
(c { )
250,000
1,000,000
zation
Library increases performance such that the advantage of ICC
0.1
107.9 s
550.8 s
e arc,fk
reduces to ≈10%.
Creation of the Road Map
Durations for computing safe configuration samples for the
road maps are listed in Table 4. The results show timings and
acceptance rates for the respective translational scaling factor
( c { ). Obtaining a graph with 1,048,576 vertices and 209,715
vertices per c { ! [0.12, 0.25, 0.35, 0.70, 0.90] took 186.8 s,
with 149.4 s for the sampling and 37.4 s for defining the edges
of the graph in the local planning step.
User Experiment
This section describes the benefits of the developed frame-
work from the operator's perspective, evaluating the value of
interactive-rate inverse kinematics and IACs. The simulated
clinically scenario is based on an intervention that involves
cauterization of the choroid plexus in hydrocephalic ventri-
cles. In this procedure, an elongated CTR needs to access the
base of the ventricles and cauterize them to limit the pro-
duction of cerebrospinal fluid as a means to indirectly re-
duce ventricle pressure. The procedure is envisioned as an
alternative to endoscopic third ventriculostomy [7], and it
0.044%
0.046%
1mm
21.5 s
81.1 s
e arc,sta
2.38%
2.55%
2mm
16.9 s
70.4 s
e a,sta
10.6%
10.7%
1˚
1.0
17.4 s
60.7 s
thres
d thres
col / d sta
(uniform)
20.9%
20.4%
1mm/5˚
0.4
0.7
Table 5. The robot parameters
(three sections, four tubes).
Robot
Section
Type
Curvature
[mm-1]
Straight/Curved
Length [mm]
Stiffness
Ratio
Tube
Index
VC
0.0522
0.00/66.47
5:1
1, 2
FC
0.05263
66.47/66.70
1:1
3
FC
0.0
113.17/12.65
0.05:1
4
June 2017
*
IEEE ROBOTICS & AUTOMATION MAGAZINE
*
51
Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - June 2017
IEEE Robotics & Automation Magazine - June 2017 - Cover1
IEEE Robotics & Automation Magazine - June 2017 - Cover2
IEEE Robotics & Automation Magazine - June 2017 - 1
IEEE Robotics & Automation Magazine - June 2017 - 2
IEEE Robotics & Automation Magazine - June 2017 - 3
IEEE Robotics & Automation Magazine - June 2017 - 4
IEEE Robotics & Automation Magazine - June 2017 - 5
IEEE Robotics & Automation Magazine - June 2017 - 6
IEEE Robotics & Automation Magazine - June 2017 - 7
IEEE Robotics & Automation Magazine - June 2017 - 8
IEEE Robotics & Automation Magazine - June 2017 - 9
IEEE Robotics & Automation Magazine - June 2017 - 10
IEEE Robotics & Automation Magazine - June 2017 - 11
IEEE Robotics & Automation Magazine - June 2017 - 12
IEEE Robotics & Automation Magazine - June 2017 - 13
IEEE Robotics & Automation Magazine - June 2017 - 14
IEEE Robotics & Automation Magazine - June 2017 - 15
IEEE Robotics & Automation Magazine - June 2017 - 16
IEEE Robotics & Automation Magazine - June 2017 - 17
IEEE Robotics & Automation Magazine - June 2017 - 18
IEEE Robotics & Automation Magazine - June 2017 - 19
IEEE Robotics & Automation Magazine - June 2017 - 20
IEEE Robotics & Automation Magazine - June 2017 - 21
IEEE Robotics & Automation Magazine - June 2017 - 22
IEEE Robotics & Automation Magazine - June 2017 - 23
IEEE Robotics & Automation Magazine - June 2017 - 24
IEEE Robotics & Automation Magazine - June 2017 - 25
IEEE Robotics & Automation Magazine - June 2017 - 26
IEEE Robotics & Automation Magazine - June 2017 - 27
IEEE Robotics & Automation Magazine - June 2017 - 28
IEEE Robotics & Automation Magazine - June 2017 - 29
IEEE Robotics & Automation Magazine - June 2017 - 30
IEEE Robotics & Automation Magazine - June 2017 - 31
IEEE Robotics & Automation Magazine - June 2017 - 32
IEEE Robotics & Automation Magazine - June 2017 - 33
IEEE Robotics & Automation Magazine - June 2017 - 34
IEEE Robotics & Automation Magazine - June 2017 - 35
IEEE Robotics & Automation Magazine - June 2017 - 36
IEEE Robotics & Automation Magazine - June 2017 - 37
IEEE Robotics & Automation Magazine - June 2017 - 38
IEEE Robotics & Automation Magazine - June 2017 - 39
IEEE Robotics & Automation Magazine - June 2017 - 40
IEEE Robotics & Automation Magazine - June 2017 - 41
IEEE Robotics & Automation Magazine - June 2017 - 42
IEEE Robotics & Automation Magazine - June 2017 - 43
IEEE Robotics & Automation Magazine - June 2017 - 44
IEEE Robotics & Automation Magazine - June 2017 - 45
IEEE Robotics & Automation Magazine - June 2017 - 46
IEEE Robotics & Automation Magazine - June 2017 - 47
IEEE Robotics & Automation Magazine - June 2017 - 48
IEEE Robotics & Automation Magazine - June 2017 - 49
IEEE Robotics & Automation Magazine - June 2017 - 50
IEEE Robotics & Automation Magazine - June 2017 - 51
IEEE Robotics & Automation Magazine - June 2017 - 52
IEEE Robotics & Automation Magazine - June 2017 - 53
IEEE Robotics & Automation Magazine - June 2017 - 54
IEEE Robotics & Automation Magazine - June 2017 - 55
IEEE Robotics & Automation Magazine - June 2017 - 56
IEEE Robotics & Automation Magazine - June 2017 - 57
IEEE Robotics & Automation Magazine - June 2017 - 58
IEEE Robotics & Automation Magazine - June 2017 - 59
IEEE Robotics & Automation Magazine - June 2017 - 60
IEEE Robotics & Automation Magazine - June 2017 - 61
IEEE Robotics & Automation Magazine - June 2017 - 62
IEEE Robotics & Automation Magazine - June 2017 - 63
IEEE Robotics & Automation Magazine - June 2017 - 64
IEEE Robotics & Automation Magazine - June 2017 - 65
IEEE Robotics & Automation Magazine - June 2017 - 66
IEEE Robotics & Automation Magazine - June 2017 - 67
IEEE Robotics & Automation Magazine - June 2017 - 68
IEEE Robotics & Automation Magazine - June 2017 - 69
IEEE Robotics & Automation Magazine - June 2017 - 70
IEEE Robotics & Automation Magazine - June 2017 - 71
IEEE Robotics & Automation Magazine - June 2017 - 72
IEEE Robotics & Automation Magazine - June 2017 - 73
IEEE Robotics & Automation Magazine - June 2017 - 74
IEEE Robotics & Automation Magazine - June 2017 - 75
IEEE Robotics & Automation Magazine - June 2017 - 76
IEEE Robotics & Automation Magazine - June 2017 - 77
IEEE Robotics & Automation Magazine - June 2017 - 78
IEEE Robotics & Automation Magazine - June 2017 - 79
IEEE Robotics & Automation Magazine - June 2017 - 80
IEEE Robotics & Automation Magazine - June 2017 - 81
IEEE Robotics & Automation Magazine - June 2017 - 82
IEEE Robotics & Automation Magazine - June 2017 - 83
IEEE Robotics & Automation Magazine - June 2017 - 84
IEEE Robotics & Automation Magazine - June 2017 - 85
IEEE Robotics & Automation Magazine - June 2017 - 86
IEEE Robotics & Automation Magazine - June 2017 - 87
IEEE Robotics & Automation Magazine - June 2017 - 88
IEEE Robotics & Automation Magazine - June 2017 - 89
IEEE Robotics & Automation Magazine - June 2017 - 90
IEEE Robotics & Automation Magazine - June 2017 - 91
IEEE Robotics & Automation Magazine - June 2017 - 92
IEEE Robotics & Automation Magazine - June 2017 - 93
IEEE Robotics & Automation Magazine - June 2017 - 94
IEEE Robotics & Automation Magazine - June 2017 - 95
IEEE Robotics & Automation Magazine - June 2017 - 96
IEEE Robotics & Automation Magazine - June 2017 - Cover3
IEEE Robotics & Automation Magazine - June 2017 - 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