# Optimization of a Truss Structure Used to Design of the Manipulator Arm from a Set of Components
## 1 Introduction  
Robots are designed to perform a large number of tasks in different fields, such as agriculture [1], the nuclear industry [2], aerospace [3], civil engineering [4], etc. The limitations of robots (accuracy, deformation, speed of movement, etc.) arise from their own purpose and are due to a combination of the mechanical structure and the controller. Good performance of the mechanical structure can be obtained via an optimization process, which may also include the optimization of robotic arms [5], other parts such as the base [6] or the whole robotic configuration [7, 8]. Robotic arms are designed from component catalogues (e.g., [9, 10]) or through an optimization process, as already mentioned. One of the modular robotic systems includes links and joints. Designing the optimal configuration of links/joints is one of the key steps in using modular systems. A number of methods are used to design the optimal configuration of a modular system: in [8], the authors used a two-level genetic algorithm. A complex optimization model (which contains both discrete and continuous variables) for modular systems is presented in [7], where agenetic algorithm is used to solve it. A topology optimization of a link module (an arm of a manipulator) presented, e.g., in [11], is the next step of the optimization process, and a module designed by the topology optimization can be made using 3D printing (additive manufacturing), e.g., [12]. The combination of these two approaches (optimization of the module configuration/topology) requires a different approach. In [13], modular robotic components were used where passive components can be formed into static structures. The choice of components is tied to the optimization of a shape and a truss structure, as shown in [14]. The use of a truss structure as a basis for design link modules has a few advantages:  
* The task, the solution of the truss structure, can be created as a box, independent of the solution method;
* The solution of the truss structure is easy;
* Various methods for the design of the optimal truss structure are available;
* Various methods for shape optimization of the truss structure are available;
* The resulting structure can be produced as a modular system. For the solution of the truss structure, the Finite Element Method (FEM) [15] can be used. Commercial software based on FEM (e.g., ANSYS(r) [16]) offers a variety of elements and allows them to be combined in different types of analysis with different settings. They can also be used to solve components made from a variety of materials, including composites. Details, such as notches or joints, can be solved by submodelling methods, etc. One of the advantages of optimizing truss systems is the large number of available methods: the Swarm optimization algorithm [17], Differential Evolution [18], the Artificial Bee Colony algorithm [19], the Simulated Annealing algorithm [20], the Firefly algorithm [21], the Search Group algorithm [22], a genetic algorithm (GA) [23; 24; 25], etc. For application to continuous design variables, see, e.g., [24], or to discrete variables, see, e.g., [26]. For the transformation of continuous variables into discrete variables, it is possible to use the algorithm presented in [27]. A typical task of optimization is a weight minimization [23] subject to displacements, stresses [24], allowable buckling stress [26], modal analysis [17], etc. The truss structures are frequently used indirectly to design structures [28] but can be used to solve practical tasks [29]. The truss structure can also be made using a construction kit, e.g., Merkur(r) [30], where the components have relatively simple geometries, and it can be used to build many complex systems. The design of the component system is presented in [13; 31], but using a truss structure can be an easy alternative. The construction kit can be made with different shapes (for a truss structure represented by a cross-section area) or materials.