## 5 Experiments  
The two path generators for the optimization method and the Jacobian matrix with PID were embedded in a prototype system, as shown in Figure 1. The diameter of the robot arms was 6 mm, and the tungsten wire had a dimension of \(\phi\) 0.36 mm and a cross-sectional structure of \(7\times 19\), which means the number of cores and strands in multifilamentary wires. For both methods, we used one Dell Precision T5810 desktop with an Intel Xeon 3.6 GHz processor (12 logical cores, 15-MB cache) and 32 GB of DDR4 RAM for inverse kinematics calculations. In addition, we used one BeckHoff C9900 machine with an Intel I7 (2 logical cores, 2.4-GHz clock speed, 6-MB cache) and 16.0 GB of RAM for motor control software. The operating system installed on both machines was 64-bit Microsoft Windows 7 Enterprise. For the matrix and other mathematical computations, we used the C++ standard math library for trigonometry calculations and the Intel Math Kernel Library (MKL) 10.3 with Armadillo 8.5 (based on Lapack 3.8.0 and OpenBLAS 0.2.20) for matrix multiplication. To acquire a set of reference paths for both methods, a pair of haptic devices (Omega 6 from Force Dimension) was used (left and right). Each of them generates seven-DoF tip poses (x, y, z, roll, pitch, yaw, and grasper) with a frequency range of 3.5 to 4 kHz. In the case of the optimization path generator, the Non-Linear Optimization library (NLOpt) 2.4.2 was used to search for the optimal inverse kinematics solution (the joint angles). In NLOpt, we used the simplex-based COBYLA method for optimal solution exploration within the bounds of the given solution space ([\(-\)67 mm, 150 mm], \(\pm\)2\(\pi\), \(\pm\)\(\pi\)/4, \(\pm\)\(\pi\)/4, \(\pm\)\(\pi\)/2, and \(\pm\)\(\pi\)/2 for translation, rotation, and individual joint angles \(\theta_{1}\) to \(\theta_{4}\), respectively). The maximum search time per iteration was 10 ms, and the search operation could be terminated if the objective function decreased below \(10^{-5}\). The objective function should consider the scale difference between the metric and angular units. Therefore, this work applied a left-invariant vector field to translate the metric and angular distances to an equal normalized space [30]. Each search operation started from the most recent valid solution set. In addition, the search was terminated and returned the current optimized solution with a \"FAILURE\" tag if NLOpt could not find a solution with an object value that was lower than \(10^{-5}\) (because of the joint angle limitations or kinematic singularity). For the path generator with the Jacobian and PID control algorithm, we used MKL and Armadillo for matrix calculation, matrix transpose, rank computation, and singular value decomposition (SVD) calculation for the matrix pseudoinverse. The system calculation time was measured by the Chrono standard library as 680 \(\upmu\)s or less. We applied the same coefficient set to the MATLAB simulation in Table 2.  
Measurements were performed with an electromagnetic (EM) tracking system (Aurora, Northern Digital Inc., Canada). The field generator was set up around the robot arm, and six-DoF sensors were attached to the tip of the robot arm and the reference points, as shown in Figure 20. The position accuracy was 0.48 mm with a 95% confidential interval of 0.88 mm, and the orientation accuracy was 0.30\({}^{\circ}\) with a 95% confidential interval of 0.48\({}^{\circ}\). The actual motion of the robot driven through the path generators was measured according to the desired path. The same desired path as in Figure 11 was applied to the system. The control group was the motion that was operated by the path generator based on the constant-curvature model of the arm configuration and wire length. The articulated robotic arm was simplified as the constant-curvature model. The driving wire length was generated symmetrically based on the curvature model.