# Knowledge-Based Automated Mechanical Design of a Robot Manipulator
## 1 Introduction  
When robots in manufacturing are concerned, we often think of their universality as a good thing. However, a case can be made for the utility of a robot which is tailored for a specific task, in the sense of a single-purpose machine. Such a robot would have the kinematic structure optimized for the task at hand and hypothetically should be more energy efficient than a universal robot, which must carry its drive units even if the task does not require their use. This single-purpose robot would need to be designed on a task-specific basis. Nevertheless, optimizing the kinematics, designing, manufacturing, and assembling a whole new robot is a lengthy process that requires a lot of expertise and time. The process of creating a new robot for a specific task would require considerable resources, and the profitability of such a system is uncertain, even if it promises lower operating costs. The return of investment becomes interesting when we start lowering the cost of designing the task-specific robot. To reduce the cost of the design process cost, we need a robust methodology with as much automation as possible. Ideally, instead of having a team of expert engineers designing the robot, we would have a computer program that one person could use to explore the design possibilities. Parametric CAD software packages can alleviate many of the routine design processes in general engineering tasks, e.g., bolt placement. For more domain-specific design tasks, there is a method usually referred to as Knowledge-Based Engineering (KBE). There are many definitions of KBE systems [1]. An elaborate description is given by [PERSON] and [PERSON] [2] in which they state that 'KBE represents an evolutionary step in Computer-Aided Engineering (CAE) and is an engineering method that represents a merging of Object-Oriented Programming (OOP), artificial intelligence (AI) and Computer-Aided Design (CAD) technologies, giving benefit to customized or variant design automation solutions. Many KBE methods are built on a set of design rules or a decision tree [3]. However, some systems do incorporate optimizations of the design. [PERSON] et al. [4] have implemented amulti-objective pareto optimization algorithm to deal with diverse design objectives and constrains. A knowledge-based system for containership cargo tank structural design was presented by [PERSON] and [PERSON] [5]. Their approach employs Multi-island Genetic Algorithms as a last step in the design process. [PERSON] et al. [6] used structural analysis and multi-level optimization of aircraft wings in their generative model for aircraft wings. Optimizations in KBE can take many forms, whether it is an optimization of mechanism topology and structure [5, 7] or a topological optimization of individual parts or multiple parts at once [8]. In Figure 1, a generic structure of a KBE system is indicated, similar structures can be found in [1, 9, 10, 11]. An interesting feature of optimizations in KBE systems is the placement of the optimization step. Some researchers have placed the optimization function block towards the beginning of the design process. Some consider optimization to be one of the last steps in the process [5]. This difference is most likely due to the design rules that are being applied in the process and the nature of the optimization. Kinematic structures of robots are often a subject of optimizations in the field of evolutionary robotics [12, 13, 14]. In this paper we took a similar evolutionary approach to the design of kinematic structure of manipulators. Although KBE methods are used across engineering fields, the authors have not found a similar approach to produce a viable mechanical design of task-based robots in the literature. It should be stated that in most case studies in the literature, a KBE system is built on top of the already functioning design process in order to make it faster and more efficient.