Kinematic Model Pruning: A Design Optimization Technique for Simultaneous Optimization of Topology and Geometry

This paper presents a method of optimizing the design of robotic manipulators using a novel kinematic model pruning technique. The optimization departs from an predefined candidate linkage consisting of a initial topology and geometry. It allows simultaneously optimizing the degree of freedom, the link lengths and other kinematic or dynamic performance criteria, while enabling the manipulator to follow the desired end-effector position and avoid collisions with the environment or itself. Current methods for design optimization rely on dedicated and complex frameworks, and solve the design optimization only as decoupled from each other in separate optimization problems. The proposed method only requires the introduction of a simple function, called a pruning function, as an objective function of an optimization problem. The introduced pruning function transforms a discrete topology optimization problem into a continuous problem that then can be solved simultaneously with other continuous objectives, using readily available optimization schemes. Two applications are presented: the optimization of a manipulator for the inspection of radio frequency cavities and a manipulator for maintenance within the future circular collider (FCC).


Introduction
Power plants and big industrial or scientific facilities like the European Organization for Nuclear Research (CERN), are often confronted with very special automation problems in complex environments for their laboratories, experiments or test rigs, see e.g., [1,2]. These frequently lead to specific requirements that do not allow the usage of standard industrial robots. Thus, a robotic design problem with few restrictions on the actual robot design (topology and geometry), but with very hard requirements concerning other parameters, such as workspace, allowed robot space, dexterity and accuracy, has to be solved.
Design optimization in robotics is a recurrent topic and has been discussed in the literature from many different perspectives. Several publications address the continuous optimization problem of minimizing certain deterministic (mainly kinematic or dynamic) performance criteria for a given topology, as shown in [3][4][5][6][7]. All of the above mentioned articles use different performance criteria, optimization techniques and solvers or approaches for collision avoidance, but non of them minimize the degrees of freedom (DoF) of the mechanical structure. The discrete problem of minimizing the DoF/topology is solved, in the literature, by always decoupling it from the previously mentioned continuous optimization tasks. Extensive frameworks for structural synthesis are presented in [8,9], which start by exploring all possible combinations of joints and links. Then, the these topologies can be optimized with respect to deterministic performance criteria. Ref. [10] proposes a smart framework to optimize the link lengths and other performance criteria, but mentions that discrete criteria, such as the number of actuators, cannot be handled, since the optimization strategy requires the first and second derivatives. Based on these findings [11] extends the framework in order to enable the use of discrete criteria, but the optimization of discrete and continuous criteria are still decoupled into two separate optimization problems. Thus, complete design optimizations, in terms of topology and geometry, currently requires dedicated and complex frameworks that optimize both objectives only as decoupled from each other into two separate optimization problems.
In order to alleviate the complexity problem, in the following, a synthesis approach is presented that allows simultaneously optimizing the link length as well as the DoF. The approach is based on a candidate linkage and a pruning method that is used to optimize the candidate linkages. In other words, this work proposes a kinematic model pruning technique to simultaneously optimize discrete (topology/minimizing the DoF) and continuous criteria (link lengths, kinematic and dynamic performance criteria). The focus of this paper is the formulation of the optimization problem, but not its numerical solution (to this end, standard numerical solvers are applied). To achieve the simultaneous optimization of topology and geometric parameters, a certain type of function (hereafter called the pruning function) that facilitates the transformation from a discrete to a continuous problem, is defined. Thus, the presented kinematic model pruning technique allows optimizing the degrees of freedom, the robot link lengths and other kinematic or dynamic criteria, while ensuring that the mechanical structure reaches the desired end-effector position, avoids self collisions and collisions with its surrounding. This will be demonstrated with two applications: • The design optimization of a surface inspection robot for radio frequency (RF) cavities, as used in the Large Hardron Collider (LHC), the Linear Accelerator (LINAC) or the Future Circular Collider (FCC). • The design optimization of a manipulator for the 100-km-long FCC.
Section 2 summarizes the goals and limitations of the design optimization. In Section 3 the methods and work flow of the proposed algorithm are presented, and Section 4 describes the generic formulation of the design optimization algorithm in detail. In Sections 5 and 6 the proposed technique is applied to two specific problems, the cavity inspection robot and the robotic manipulator for the FCC. The last Section 7 summarizes the results and draws conclusions concerning the existing and future work.

Design Optimization Goals and Limitations
The proposed method is capable of modifying an initial and, thus, non-optimal candidate linkage that defines a variety of possible topologies, called design space (see Section 3.1). Simultaneously the geometry of the mechanical structure will be tuned such that the final result provides an optimal and practically feasible solution with respect to certain objectives: • minimize the DoF; • minimize the length of each robot link; and • minimize kinematic and dynamic performance criteria of the mechanical structure.
These objectives should be optimized such that the robot is able to reach all desired positions and avoid collisions with itself as well as with the environment. The algorithm is, in general, applicable under following constraints: • the topology can consist of arbitrary joint types, but only subsequent joints of the same type can be use for reducing the DoF; and • the additional kinematic and dynamic performance criteria subject to optimization should, in the best case, be complementary, but never be in contradiction with each other. Figure 1 visualizes the workflow of the proposed algorithm and shows how the different methods are connected. The design optimization departs from a predefined design space (see Section 3.1), which will then be exploited by the kinematic model pruning method (see Section 3.2) in order to find the optimal design (see Section 3.3).

Design Space
The design space describes a variety of possible topologies based on predefined assumptions by the user. It is defined by a candidate linkage in the form of a topology and geometric parameters, see e.g., Figure 8 and Table 1. The DoF of the predefined design space needs to be greater than the expected optimal solution, since the algorithm is only able to reduce, and not increase, the DoF.

Kinematic Model Pruning
The kinematic model pruning block in Figure 1 consists of a continuous optimization problem that is to be solved using readily available optimization schemes. For detailed information about the implementation and formulation of the optimization problem see Section 4. However, the focus of this paper is the formulation of the optimization problem, but not its numerical solution (to this end standard numerical solvers are applied). As discussed in Section 1 the challenge is to combine the discrete and continuous criteria in order to be able to formulate only one optimization problem that takes all goals from Section 2 into account. At the core of the proposed kinematic model pruning technique is a certain type of function called pruning function, see Definition 1. Setting this function as the objective function enables the transformation of the discrete topology optimization problem into a continuous problem. Therefore, the topology can be optimized simultaneously with other continuous criteria or goals as presented in Section 2. The pruning function is a simple vector function with two inequality constraints on the first and second derivative.
Definition 1 (pruning function). A vector function g = g 1 (l 1 ) g 2 (l 2 ) . . . g N (l N ) : and Constraint (1) ensures that the design parameters will be minimized and constraint (2) drives the design parameters to zero. In other words, constraint (2) facilitates minimization of a discrete problem like the number of DoF in a mechanical structure. In the following Example 1, the behavior of the rather abstract Definition 1 will be demonstrated with the optimization of a simple two-DoF planar robotic manipulator. Furthermore, the results of the optimization with a pruning function will be compared to the results using a quadratic function for the objective function. Example 1. The end effector of an N = 2 link planar manipulator with two DoF should be able to reach exactly one point at position z d = 5. Note that the orientation will not be constrained, thus creating a task redundancy. In Figure 2a the initial design, with two DoF and the link lengths l a 1 and l a 2 , is shown. Departing from this candidate linkage, the optimization should find an optimal design with minimal link lengths and a minimal number of DoF, while still reaching the desired position z d . A corresponding optimization problem with the objective function J(p) can be formalized. f(x, p) denotes the forward kinematics, vector p = l 1 l 2 contains the two geometric parameters or link lengths, vector x = q 1 q 2 contains the two joint angles and vector k T = 1 1 is used as a weighting factor. For demonstration purposes, the optimization will be launched twice with different functions for g. Once with a pruning function (see Definition 1) and once with a quadratic function h : R N → R N , with the well-known properties Note that the second derivative of the quadratic function is, unlike for the pruning function, greater than zero. The optimization result, when using a quadratic objective function h, is shown in Figure 2b. It is obvious that the optimization converges to an optimum, since the links lie on a straight line, in Euclidean space, from the base to the desired end-effector position. However, it is also clear that only one DoF would be sufficient to reach this position. Thus, it is easy to see that the quadratic objective function minimizes the total length l 1 + l 2 , but splits up this length equally over both links, such that l 1 = l 2 and, hence, does not minimize the DoF.
This behavior becomes more clear when looking at the surface and contour plots of the objective function J(p) over the variables l 1 and l 2 as shown in Figures 3 and 4, respectively.  The black line in the l 1 l 2 plane represents the possible combinations of l 1 and l 2 with which the desired end-effector position can be reached and l 1 + l 2 = z d = 5 holds. The projection of this line on the surface of J(p) leads to the curved line J( l 1 , z d − l 1 ) from which the optimal combination of l 1 and l 2 has to be chosen. The dashed red line visualizes the space of optimal combinations of l 1 and l 2 for arbitrary z, which is identical to the space of combinations wherein l 1 = l 2 . This becomes even more clear when looking at the contour plot in Figure 4. The black line l 1 + l 2 = z d shows a -45 • slope and the contour lines are circles of different diameter centered at the origin. Thus, the optimal solution can be found where the line l 1 + l 2 = z d intersects exactly once with a contour line or in other words, where the line l 1 + l 2 = z d is a tangent to the contour line. For arbitrary z, this leads to optimal solution l 1 = l 2 .
In order to minimize the DoF the distance should not be split up equally, but assigned to only one link, while the other link length will be set to zero. The corresponding joint to this link can then be removed, which means decreasing the DoF by one. This behavior can be achieved by using a pruning function (see Definition 1), specifically (4) for g in (3). Running the same optimization problem again with the new objective function, the total link length l 1 + l 2 is still a minimum (straight line in Euclidean space), but is now assigned to only one link. This indicates that not more than one DoF is necessary to reach the position z (see Figure 2c). Thus, the corresponding joint i with l i = 0 can be removed and the link lengths, and the DoF is minimized.
Again, this behavior becomes more clear when looking at the surface and contour plots of the objective function J(p) over the variables l 1 and l 2 , as shown in Figures 5 and 6, respectively. The black line in the l 1 l 2 plane represents the possible combinations of l 1 and l 2 with which the desired end-effector position can be reached, and l 1 + l 2 = z d = 5 holds. The projection of this line on the surface of J(p) leads to the curved line J( l 1 , z d − l 1 ) from which the optimal combination of l 1 and l 2 has to be chosen. The dashed red lines visualize the space of optimal combinations of l 1 and l 2 for arbitrary z. Compared with Figure 3 it can now be seen that for every z d two solutions (l 1 = 0, l 2 = z d ) and (l 1 = z d , l 2 = 0) with the same priority (for the special case k T = 1 1 ) exist. Both solution lie at the lower boundaries of the parameters l 1 and l 2 . This becomes even more clear when looking at the contour plot in Figure 6. The black line l 1 + l 2 = z d shows again a −45 • slope, but now the contour lines are shaped in way such that the optimal solutions lie at the boundaries of l 1 + l 2 = z d . The optimal solution can be found by restricting the parameters with upper bounds in the optimization problem leading to only one solution e.g., (l 1 = z d , l 2 = 0).

Optimal Design
The optimal design consists of the original topology, as defined in the design space, plus a set of optimal design parameters or geometric parameters. If one of the geometric parameters is driven to zero by the kinematic model pruning method, then this indicates a possible reduction of DoF and the corresponding joint can be removed.

Formulation of the Design Optimization Problem
In the following, the implementation and formulation of the optimization problem will be shown in more detail. In this section the problem is described in a generic manner in order to allow an easy extension of the problem with e.g., performance criteria that were not considered in this work. Specific implementations for certain problems are presented in Sections 5 and 6. In Section 4.1 a parameterized model of the initial mechanical structure, including kinematics and dynamics, are defined. General assumptions on the collision avoidance are discussed in Section 4.2. The formulation of the optimization problem is shown in Section 4.3 and the applied objective function is described in Section 4.4.

Kinematic and Dynamic Model
The forward kinematics f : R nµ → R 6µ , with degrees of freedom n and µ in Cartesian positions, can be written in the form with the Cartesian positions and orientations z ∈ R 6µ , the N geometric parameters p ∈ R N and the generalized joint coordinates q ∈ R n for every Cartesian position written in vector An explicit solution for the inverse kinematics is not computed, since it will be taken into account by non-linear equality constraints in the optimization problem.
The forward dynamics or the equation of movement for the entire robot can be written as M(p, q)q + g(p, q,q) = Q, with the mass matrix M(p, q), the non-linear term g(p, q,q) containing gravitational, centrifugal and Coriolis terms and the actuator and external forces and torques Q.

Collision Avoidance
To reduce the computational cost of the simulation, it was assumed that the mechanical design either prevents two consecutive links to collide or the collision avoidance is handled by bounds on the corresponding joint angles. Thus, for an n R serial-link robot self collisions and, in general, collisions with the n E environment have to be monitored.

Problem Formulation
The optimization was set up as a non-linear global optimization problem with nonlinear equality and inequality constraints min with the objective function J(x, p) and the N geometric parameters or link lengths of the candidate linkage The vector x, see (8), contains the generalized coordinates in joint space for µ different desired Cartesian positions The inverse kinematics is included with the equality constraint The vector function c(x, p) ∈ R c RR +c RE contains the minimal distances according to self-collisions and collisions with the environment. The vector functions are upper and lower bounds on the joint angles and link lengths.

Objective Function
As already discussed in Section 2, the desired objective function should minimize the DoF, the robot link lengths and other kinematic and dynamic performance criteria. This is expressed as linear combination of the objectives J(x, p) = k T g(p) In the following Sections 4.4.1 and 4.4.2 the intended effects of J 1 and J 2 on the optimization problem are discussed. The term J 1 penalizes the length of the robot links with a mapping g : R N → R N and the weighting factor k ∈ R N . The term J 2 represents ν kinematic and dynamic criteria summarized in Γ(x, p) ∈ R nµν , which is weighted with the diagonal matrix K ∈ R (nµν)×(nµν) .

Minimizing the DoF and Link Lengths
The term J 1 penalizes the robot link lengths in a way such that both the link lengths and the DoF of the robot are minimized. This requires a specific type of function, called pruning function (see Definition 1), for g in (18). A more detailed demonstration of the behavior of pruning functions is shown in Example 1. As a result, the total link length of the mechanical structure is minimized and, if possible (with respect to all constraints), geometric parameters are driven to zero and, thus, indicate a possible reduction of DoF.

Minimizing Kinematic and Dynamic Performance Criteria
The term J 2 of (18) accounts for arbitrary kinematic or dynamic criteria summarized in vector Γ(x, p) and multiplied with a weighting matrix K. It is important that multiple criteria do not contradict each other or, in the best case, are complementary, in order to avoid ill-conditioned optimization problems. Possible criteria are the motor torque, distance from singularities, error propagation through the mechanical structure or kinematic and dynamic manipulabilities. Examples for such criteria are shown in Sections 5.3 and 6.2.

Application: Cavity Inspection Robot
Radio frequency cavities (see Figure 7) perform the linear acceleration of charged particles in straight sections of accelerator machines and, thus, make up one of the key elements in a collider complex [12]. The cavities structure and geometry define their specific radio-frequency at which the strong electromagnetic field, created inside the tubes, oscillates to accelerate each particle passing through. The inner surface quality of the cavities is critical for withstanding high energy densities, since every scratch or crack leads to higher local resistance and, thus, a rapid increase in temperature during operation and, in the end, to the failure of the system. Therefore, some kind of automated, mechanical structure has to follow the complex cavity geometry and take records of the surface quality after full assembly of the cavities. Finding the optimal topology of such a mechanical structure with respect to certain constraints, such as collision avoidance for different cavity types and minimal error propagation in direction perpendicular to the cavity surface, is a perfect example of the generic problem described in Section 1. Currently, several different system have been developed and are able to partially scan cavities (see [13][14][15][16]). However, those previously developed cavity inspection systems were extensively tested at CERN but did not satisfy the specific requirements concerning the level of automation, accuracy, repeatability and how much of the inner cavity surface could be inspected and mapped. The first prototype of the system developed at CERN and presented in [1] was not able to scan all three cavities with one robotic arm, but had to use two different arms. The aim of this design optimization is to find one topology and geometry that can handle all three cavity types and thus increase robustness and level of automation while decreasing the cost of such a system.
The main challenge for a robotic system is the complex workspace and, especially, the difference in diameter of the entrance of the smallest cavity (FCC) and the point with maximum diameter of the biggest cavity (LHC). Furthermore, the system has to detect surface anomalies of only 10 µm. A 18MP camera with liquid lens, allowing it to focus between 20 to 25 mm, is used. In order to provide one full image of the inner surface, the cavities are rotated around their axes of symmetry, while robotic manipulators are inserted along these axes. The pictures are stitched together after the inspection. Thus, the accuracy error of the end-effector position tangential to cavity surface should be not more than 1.2 mm to obtain only 10% overlapping error and not more than 1mm in the direction perpendicular to the cavity surface, which otherwise changes the contained surface area in the image. In Section 5.1 the initial model and geometry and the projection equation [17] to derive the equation of motion is described. Section 5.2 illustrates the collision-checking procedure and Section 5.3 presents the applied kinematic criteria for this example. Then, the initial states and results of the optimization are shown in Sections 5.4 and 5.5, respectively.

Model
The surrogate model defining the design space has been set up with one translational and four rotational joints with parallel rotation axes, summing up to five DoF, as shown in Figure 8. Table 1 lists the initial link lengths, where l i,j describes the lengths from joint i to joint j. These lengths are evaluated by launching an optimization problem, as described in Section 5.4, that returns feasible initial states. This initial set up has been used as the starting point for the actual optimization problem in (12).  The generalized joint coordinates are set to q = q 1 q 2 q 3 q 4 q 5 T ∈ R 5×1 (19) and the desired Cartesian position and orientation are with the position x d and y d and the orientation around the z-axis γ d always keeping the end-effector orientation perpendicular to the cavity surface. The optimization parameter is set to with the n cav = 3 different cavities and µ different positions leading to x ∈ R (nµn cav )×1 . The parameter vector is defined as

Collision Avoidance
The collisions between robot and environment are calculated by discretizing the cavity surfaces and checking the minimal distances between robot links and points on the cavity surface. First, all points on the cavity surface are transformed into the body fixed coordinate frames for each robot link and then, to decrease the computation time, only points that can possibly collide and, thus, lie in the selected points area (see Figure 9) are considered. The minimal value of the projection of all possible collision points onto the y axis of the bodyfixed coordinate frame is considered the minimal distance. Collisions are taken into account in the function c(x, p) in (12). Self collisions between robot links are not considered, since it is assumed that this is mechanically impossible, as known from Scara robots.

Kinematic and Dynamic Performance Criteria
It is crucial for the cavity inspection robot to provide a very stable base for the camera that is being used for the inspection process, since the errors that should be detected in the surface can be only micro fractures. Thus, the term J 2 of (18) is set up to optimize the error propagation through the mechanical structure in a certain direction of interest. Error propagation describes how errors that originate in joint space are being forwarded to the end-effector, such as, e.g., gear elasticity, backlash or control oscillations. This can be quantified using the directional kinematic manipulability [18] with the unit vector n j representing the direction of interest (perpendicular to the cavity surface) and the major and minor axes of the manipulability ellipsoid σ j,i u j,i obtained from the singular value decomposition of the geometric Jacobian with the linear and angular end-effector velocities v E and ω E , respectively. Looking at the mapping from joint to Cartesian space via the Jacobian and replacing the small changes in joint angles ∆q with an error e, the error in Cartesian space is Thus, for a robot in a singular configuration such as the two-link arm in Figure 2b, the error propagation in direction of the eigenvector corresponding to the smallest singular value is zero and, thus, the repeatability only depends on manufacturing tolerances of the mechanical parts of the robot. This means that the optimization algorithm prefers configurations for which the repeatability is less dependent on the quality of gears or control.
Finally, the directional kinematic manipulability measure can be written in vector form according to (18) as with the weighting martix K ∈ R µ×µ .

Initial Configuration
The initial states, such as joint angles and link lengths, heavily influence the performance of optimization algorithms. It is important to provide feasible (in terms of the given constraints) initial states as a starting point for the optimization solvers. Starting points can be generated by either an inverse kinematics method or, as is done here, by running the optimization with the objective function (18) set to J(x, p) = 0. Thus, the initial states are feasible with respect to all constraints, but non-optimal. The initial configurations and link lengths used as a starting point for the optimization solvers are shown for the three cavities in Figures 10-12.
The black curves represent the cavities and the colored lines represent the robot links. The gray circles indicate the desired end-effector position (x d , y d ) from vector z d = x d y d γ d T .

Optimization Results
The optimization depart from starting points defined for every desired end-effector position and cavity. The starting points have been found by an optimization (described in Section 5.4) and include an initial topology and geometry, as well as the configuration of the arm. Matlab's fmincon function is internally used as a local optimization solver, in this case, applying the interior-point algorithm [19]. The MultiStart and GlobalSearch methods are applied to solve the global optimization problem [20]. In a comparison with evolutionary algorithms, the GlobalSearch and MultiStart methods leads to better results.
In Section 5.5.1 the design optimization is launched using only the LINAC environment for demonstration purposes and in Section 5.5.2 the robotic arm is optimized to operate in all three cavities.

LINAC Cavity
Here, the design optimization is done only for the LINAC cavity in order to demonstrate the behaviour of the algorithm with a simpler, and, hence, more intuitive example. The initial states match the ones presented in Figure 10 and the corresponding optimized design is visualized in Figure 13.
As mentioned in Section 5.1 the desired Cartesian position and orientation z ∈ R 3 is of dimension three and, thus, a mechanical structure with exactly three DoF is able to reach all desired end-effector positions z in an environment without obstacles or other constraints. As shown in Figure 13 the restriction caused by the LINAC cavity allows a three-DoF robotic arm to reach all positions. Thus, the optimization reduces the tentative topology by two DoF, which is visible in Figure 14, but more clear in Table 2, where the lengths set to zero correspond to the removed DoF.   Furthermore, the length of the robotic arm has been minimized, as becomes clear when looking at the furthest point and observing that all links lie on a straight line from joint 2 to the desired end-effector position, and that this line is perpendicular to the x axis. In Figure 14 the schematic drawing of the optimal topology is shown with some joints coinciding with others and, thus, illustrating the reduction of DoF.

Full System
The design optimization for the full system is performed by considering all three cavities as collision objects in the non-linear inequality constraints of the optimization problem. Again, the results of the optimization are shown in Figures 15-17 for the LINAC, LHC and FCC respectively, where the colored lines represent the robot links, the black curves indicate the surface of the cavities and the gray circles show the desired end-effector positions. The resulting topology is shown in Figure 18 and the corresponding link lengths are listed in Table 3.
As is clearly visible in Table 3, at least one link length is set to zero, which means that our requirement for the tentative topology of starting the design optimization with at least one DoF higher than the expected optimal solution holds and, thus, an optimized design for the robotic arm has been found.     Table 3. Optimized geometry.

Application: FCC Manipulator
A detailed report on the design optimization of the FCC Manipulator (a robotic system for CERN's Future Circular Collider) has already been published in [2]. Here, only a brief summary of the assumptions and results are presented to demonstrate the algorithms capabilities.
The Future Circular Collider (FCC) is suggested to unlock observations in higher energy ranges than it is possible, now, with the current accelerator machines at CERN [21]. This particle accelerator is able to generate a center-of-mass energy of 100 TeV and has a planned circumference of 100 km (see [22,23]). The 2020 Update of the European Strategy for Particle Physics has listed the further investigation of the FCC as one of three main priorities and, thus, have launched a Technical Design Report (TDR). One of the studies that has been launched within the TDR concerns the automation of maintenance, inspection and emergency handling along the 100-km-long FCC tunnel. The automation of these tasks plays a significant role for downtime, reliability and safety of particle accelerators and decreases the radiation exposure of workers.
The tasks such an automated system has to handle and the environment it must operate in are well defined, but no restrictions on the actual design of the manipulator in terms of topology and geometry are given. Thus, the presented algorithm has been applied to optimize the tentative design of the FCC robot. In Section 6.1 the model and some assumptions are described. In Section 6.2 the applied objective function, in terms of kinematic and dynamic criteria, is analyzed and finally some results are shown in Section 6.3.

Manipulator and Environment
The process of defining the surrogate model, as shown in Figure 19, is described in detail in [2]. Here, it should just be mentioned that joints 1 and 2 are translational joints, 3-6 and 7-10 form two planar mechanisms in order to fold the arm. Joints 11-13 represent a robotic wrist and, thus, the solution for its position and orientation can be decoupled in point 12, which simplifies the optimization problem. The planar chains allow for minimizing the link lengths between joints with parallel axes, and, thus, possibly eliminating joints connected by links with zero length, hence, eventually reducing the DOF. The initial link lengths in Table 4 have been found by the same means as described in Section 5.4. Figure 19. Design space using VDI2861 (from [2] under CC BY-NC-ND 4.0). Table 4. Initial geometry.

Length
[mm] l 1,2 q 2 l 2,4 288 l 4,5 500 l 5,6 500 l 6,8 400 l 8,9 400 l 9,10 400 l 10,12 200 l 12,E 100 The environment of the FCC tunnel and the robot have been approximated by convex geometric primitives; here, specifically, by Matlab's AlphaShapes [24], which can easily be passed to a function to calculate the minimal distance between two AlphaShapes. The approximation of the FCC environment with cylinders and boxes is indicated by red, dashed lines in Figures 20 and 21 for the FCC-ee and FCC-hh machines, respectively. The manipulator should be able to reach all points of interest (I-V), which represents the most diverse remote maintenance tasks at the current Large Hadron Collider-LHC, see [25][26][27][28].

Kinematic and Dynamic Performance Criteria
A main objective for the design of the manipulator is to reduce the motors' torques, since the workspace, shown in Figures 20 and 21, requires a relatively long robotic arm, compared with the desired payload and weight of the robot. Thus, the dynamic measure applied in term J 2 in the objective function (18) is the motor torque of each joint. A dynamic robot model in the form (9) is used and included in the objective function (18) with Γ(x, p) = Q(q,q,q, p) (27) and the weighting matrix K ∈ R n×n .

Optimization Results
The final results of the design optimization shows a reduced topology by two DoF. This is shown in Figure 22 by the coinciding joints 5/6 and 8/9, which correspond to the lengths l 5,6 = l 8,9 = 0 in Table 5 of the optimized geometry. In Figures 23 and 24 the optimization results are visualized using the collision objects (AlphaShapes) for the two different accelerator machines, FCC-ee and FCC-hh.    Table 5. Optimized geometry.

Discussion and Conclusions
A kinematic model pruning method has been presented that allows transforming discrete optimization criteria into a continuous representation and, thus, enables simultaneous optimization of the topology and geometric parameters. The method has been demonstrated for serial mechanical structures and, therefore, covers a wide variety of robotic manipulators. The algorithm uses well-known and readily available optimization schemes without any additional, complex frameworks. The simplicity of the presented kinematic model pruning method is surely one of its main advantages, next to the simultaneous optimization of all additional criteria. It is especially simple, since no inverse kinematics are computed and, for the case without additional dynamic performance criteria, no dynamic model is needed. Thus, this method can be performed providing only the forward kinematics and (if necessary) collision detection. This allows for very quick prototyping and one does not have to rely on either complex frameworks or an "educated guess" for a new manipulator design, but, instead, can quickly produce quantified results based on deterministic performance criteria. As demonstrated with examples in Sections 5 and 6, the algorithm has led to good results for both the cavity inspection arm and the FCC Manipulator.
The choice of additional kinematic and dynamic criteria needs to be made carefully in order to not generate ill-conditioned optimization problems or even contradictions with the requirements. The weighting matrices in (18) have a major impact on the final results and can, as well, lead to infeasible solutions, in certain cases. Finding guidelines for these optimization parameters based on the mechanical structure and environment would simplify this heuristic process. The current implementation only allows for DoF reduction on two subsequent joints of the same type. An extension of the presented method to a more general use case, including closed kinematic chains, will be the subject of future work. Furthermore, a more general study on stability, convergence rates and the effects of different optimization schemes applying the proposed pruning function will be investigated.

Conflicts of Interest:
The authors declare no conflict of interest.

Abbreviations
The following abbreviations are used in this manuscript: