On the use of advanced optimization methods in mechanical design - Oliveira, Miguel Jorge Guimarães de (2018)
Advanced optimization methods are widely applied to mechanical design, mainly for its abilities to solve complex problems that traditional optimization techniques such as gradient-based methods do not present. With its increasing popularity, the number of algorithms found in the literature is vast. In this work three algorithms are implemented, namely Particle Swarm Optimization (PSO), Differential Evolution (DE) and Teaching-Learning- Based Optimization (TLBO). Firstly, the application of these algorithms is analyzed for a composition function benchmark and three mechanical design minimization problems (the weight of a speed reducer, the volume of a three-bar truss and the area of a square plate with a cut-out hole). Furthermore, as the scope of available algorithms increases, the choice of programming tools to implement them is also vast, and generally made considering subjective criteria or difficulties in using enhancing strategies such as parallel processing. Thereby an analysis of programming tools applied to metaheuristic algorithms is carried out using four programming languages with distinct characteristics: Python, MATLAB, Java and C++. The selected algorithms and problems are coded using each programming language, which are initially compared in a sequential processing implementation. Additionally, in order to analyze potential gains in performance, parallel processing procedures are implemented using features of each programming language. The application of the algorithms to the mechanical design problems demonstrates good results in the achieved solutions. In what concerns to the computational time, sequential and processing results present considerable differences between programming languages while the implementation of parallel processing procedures demonstrates significant benefits for complex problems.