Integration of Additive Manufacturing, Parametric Design, and Optimization of Parts Obtained by Fused Deposition Modeling (FDM). A Methodological Approach

The use of current computer tools in both manufacturing and design stages breaks with the traditional conception of productive process, including successive stages of projection, representation, and manufacturing. Designs can be programmed as problems to be solved by using computational tools based on complex algorithms to optimize and produce more effective solutions. Additive manufacturing technologies enhance these possibilities by providing great geometric freedom to the materialization phase. This work presents a design methodology for the optimization of parts produced by additive manufacturing and explores the synergies between additive manufacturing, parametric design, and optimization processes to guide their integration into the proposed methodology. By using Grasshopper, a visual programming application, a continuous data flow for parts optimization is defined. Parametric design tools support the structural optimization of the general geometry, the infill, and the shell structure to obtain lightweight designs. Thus, the final shapes are obtained as a result of the optimization process which starts from basic geometries, not from an initial design. The infill does not correspond to pre-established patterns, and its elements are sized in a non-uniform manner throughout the piece to respond to different local loads. Mass customization and Fused Deposition Modeling (FDM) systems represent contexts of special potential for this methodology.


Introduction
Additive manufacturing technologies [1,2] represent a paradigm shift from traditional manufacturing technologies [3][4][5][6][7]. Parts are obtained adding material layer upon layer until the final geometry is completed, what offers various advantages over traditional processes, such as obtaining the final geometry in a single process and the great geometric freedom that these technologies allow [1,8].
Restrictions imposed by productive processes must be taken into account when designing a product, since ignoring these limitations would lead to failure in the materialization phase. In this sense, additive manufacturing eliminates some restrictions in comparison to traditional manufacturing technologies, but they also have limitations regarding to technologies themselves and the influence of manufacturing parameters [9][10][11][12][13][14][15][16][17][18][19][20][21], materials behavior [21][22][23][24][25][26][27] or context aspects, such as the standardization of these kind of processes and products [9,28,29]. Additive manufacturing gives great freedom to designs, and it allows the obtaining of very complex geometries that were previously impossible, especially with regard to interior cavities. In addition, additive manufacturing also introduces the idea of infill, which offers new opportunities for those parts of the pieces which were understood as solid within traditional manufacturing scenarios and that currently represents a significant research field [30][31][32][33]. This possibility means using a smaller amount of material, what from a general point of view represents interesting opportunities such as cost savings in terms of material and time resources as well as the possibility to produce lightweight parts. However, approaches based on lightened structures also offer specific opportunities in different fields, such as load-bearing structures used in coated implants [34] or the manufacturing of personalized orthosis adapted to the anatomy of the patient and with advantages in terms of weight, ventilation and hygiene advantages [35]. Therefore, this context offers a wide range of design possibilities and even allows the definition of specific criteria or design strategies to additive manufacturing contexts [36][37][38][39].
Due to this higher level of geometric freedom, design optimization becomes more important [8], since the complexity of the geometry resulting from the optimization process is no longer a problem. In addition, on the other hand, the number of feasible solutions increases significantly, so selecting the most suitable alternatives becomes more complicated. Currently, the existing additive manufacturing technologies have achieved greater presence and recognition in the productive field, and at the same time design and optimization tools have achieved the capacity to respond to the new challenges that the new capacities of these productive technologies offer to designers.
Regarding the approach of the research carried out, the methodology presented in this work is based on three technologies and the synergies between them. Thus, it represents the simultaneous implementation of additive manufacturing technologies, parametric design tools, and optimization techniques. None of them alone could support this methodological proposal, which is the result of exploring the possibilities offered by their combined use. From this point of view, the authors consider that these types of approaches are also of interest in the field of teaching, as resources that can help students better understand some key aspects of each of the technologies considered, as well as helping them to explore the new application possibilities these technologies have in productive scenarios and the opportunities that each one offers professionals in their activity.
Thanks to the parametric design and the programming developed with Grasshoppers [40], parameters that represent key aspects and that help to achieve certain objectives are taken into consideration simultaneously. Thus, the mechanical resistance of the structures obtained from topology optimization both of geometry and infill structure, which represents the main mechanical behavior of the piece, are verified by applying Finite Element Analysis. However, the proposed methodology is not conceived as an absolute solution for all possible scenarios nor does it consider all the parameters and aspects that may have influence. The main contribution of the work carried out is to show an initial strategy for the integration of the three technologies, and based on the obtained results the authors consider this study functional and useful. However, the methodology can be implemented incorporating more specific aspects when applicable by adding new parameters to the programming, as it could be the case of parts that must withstand impacts.
The objective of this work is to define a continuous workflow by using parametric design able to obtain optimized designs for their production by additive manufacturing technologies. The aim of the methodology is to design lightweight pieces from its geometry, infill, and shell. In that sense, a relevant achievement of the present work is that the optimization problem is defined from the initial volume in a continuous data flow with no interruption after the topology optimization, therefore no redefining of the model is needed. On the other hand, this work represents one of the main results of the research carried out within the framework of the first author's doctoral thesis [41], and it represents an important step in the fulfilment of one of the main objectives set in previous works [8] in relation to the optimization of the infill in a non-uniform manner throughout the piece. Thus, the infill structures are adapted to local loads, and this process is incorporated within the global methodology for the design of optimized parts to be obtained by additive manufacturing.
Although the designed methodology is applicable to any additive manufacturing technology, the case studies developed so far by the authors focus on small prototypes obtained using FDM (Fused Deposition Modeling) 3D printers. FDM technologies are of special interest for this work from different points of view. First, opened shell designs as the wireframed shell applied in the proposed methodology allow the removal of any required support material. Furthermore, the increasing access of FDM technology equipment encourage its massive interest and use providing technological tools for mass customization approaches. The influence of the materials and technologies used required some previous studies focused on these aspects [9,28].

Initial Considerations and Main Synergies of the Technologies Considered
For each technology, the basic concepts and the characteristics of greatest interest for this work are briefly introduced below, and their main synergies and opportunities for combined use are presented, composing a brief state of the art prior to the exposition of the proposed methodology.

Additive Manufacturing
As illustrated in Figure 1, additive manufacturing technologies offer, compared to traditional manufacturing technologies, some relevant advantages and opportunities. Additive manufacturing processes introduce enormous geometric freedom thanks to layer upon layer manufacturing, especially regarding interior cavities [3,36]. In fact, as previously stated, additive manufacturing processes involve the appearance of the concepts of shell and infill.
Polymers 2020, 12, x FOR PEER REVIEW 3 of 27 different points of view. First, opened shell designs as the wireframed shell applied in the proposed methodology allow the removal of any required support material. Furthermore, the increasing access of FDM technology equipment encourage its massive interest and use providing technological tools for mass customization approaches. The influence of the materials and technologies used required some previous studies focused on these aspects [9,28].

Initial Considerations and Main Synergies of the Technologies Considered
For each technology, the basic concepts and the characteristics of greatest interest for this work are briefly introduced below, and their main synergies and opportunities for combined use are presented, composing a brief state of the art prior to the exposition of the proposed methodology.

Additive Manufacturing
As illustrated in Figure 1, additive manufacturing technologies offer, compared to traditional manufacturing technologies, some relevant advantages and opportunities. Additive manufacturing processes introduce enormous geometric freedom thanks to layer upon layer manufacturing, especially regarding interior cavities [3,36]. In fact, as previously stated, additive manufacturing processes involve the appearance of the concepts of shell and infill. The possibility of designing infill patterns opens up new scenarios that where inconceivable before the irruption of additive manufacturing. By acting on the infill pattern, both on its geometry and on its density, the amount of material in the part is modified, which affects parameters such as the manufacturing time, the amount of material used, the cost and, of course, the lightness of the piece and its mechanical capacity. In this sense, this work goes further and instead of pre-established and continuous infill patterns, it proposes its optimization with a variable density throughout the piece. This aspect is considered one of the main contributions of the proposed methodology.
Moreover, the capability of obtaining a complex geometry in a single equipment and in a single process represents another advantage of these technologies. Product customization finds in these technologies a totally new scenario in which customization is not synonymous with high cost [42]. The concept of mass customization is not new, and it is a challenge that has already been attempted to be faced without the support of additive manufacturing [43][44][45]. However, when additive technologies are consolidated as manufacturing technologies, they will probably be the best way to achieve mass customization objectives [42,45,46]. In fact, additive manufacturing allows so many new possibilities and with so much impact that they make it possible to speak of a new paradigm in terms The possibility of designing infill patterns opens up new scenarios that where inconceivable before the irruption of additive manufacturing. By acting on the infill pattern, both on its geometry and on its density, the amount of material in the part is modified, which affects parameters such as the manufacturing time, the amount of material used, the cost and, of course, the lightness of the piece and its mechanical capacity. In this sense, this work goes further and instead of pre-established and continuous infill patterns, it proposes its optimization with a variable density throughout the piece. This aspect is considered one of the main contributions of the proposed methodology.
Moreover, the capability of obtaining a complex geometry in a single equipment and in a single process represents another advantage of these technologies. Product customization finds in these technologies a totally new scenario in which customization is not synonymous with high cost [42]. The concept of mass customization is not new, and it is a challenge that has already been attempted to be faced without the support of additive manufacturing [43][44][45]. However, when additive technologies are consolidated as manufacturing technologies, they will probably be the best way to achieve mass Polymers 2020, 12, 1993 4 of 27 customization objectives [42,45,46]. In fact, additive manufacturing allows so many new possibilities and with so much impact that they make it possible to speak of a new paradigm in terms of mass customization [47]. A reality that opens many lines of application and business, and that in fields such as medicine and pharmaceutics, where additive manufacturing is already being widely applied [48][49][50][51][52][53][54][55][56], can be especially beneficial by offering personalized solutions tailored to patients.
Thus, today additive manufacturing represents a real alternative that is applied in very different productive contexts [57,58], what has been driving a great development in terms of increasingly efficient equipment and processes, as well as new materials [59][60][61]. Thus, additive manufacturing radically changes the productive paradigm, offering new scenarios and possibilities, both in relation to the agents involved and their roles and in the way in which products are thought and conceived [62][63][64][65][66]. In this sense, it highlights the impact of the low-cost alternatives for additive manufacturing systems, already regularly present in schools, small businesses, and even homes. Something that is already modifying the traditional relationship between designer, manufacturer, and consumer, where all these roles may even fall on the same person. A trend that could lead to converting these 3D printers into everyday objects in our homes, proposing new consumption structures [8].

Parametric Design
Unlike traditional CAD (Computer Aided Design) tools, which use closed scripts provided by the software developer for the formal representation of a solution previously conceived, parametric design approaches are based on a network of relations between variables where different values can be applied, producing different solutions to achieve the objectives. The work developed by Caetano et al. [67] carries out a significant review of recent advances as well as the terminology and definitions in regard to these kind of design strategies, and proposes his own definition of parametric design, which is understood as "an approach that describes a design symbolically based on the use of parameters". In the context of the present work, it results of key importance the update of the solution generated when any parameter is modified, an aspect that parametric approaches allow and which in 1989 was included by Kalay [68] into the usual definition of parametric design.
The parametric design tools entail a new way of understanding design where it is necessary to decompose the problem into essential parameters of the project, as well as coding rules and protocols where any alteration of the parameters leads to a different model. At the same time, the development of new software offers the designer more and more flexibility and allows him to create his own action sequences through different programming languages, classifiable into two groups; those that describe routines in writing and those that do it visually. Parametric models based on visual programming can be represented in a general graph with a set of nodes, both operation (geometric or otherwise) and information, connected to each other by arrows that establish a workflow [69].
Presently, research about parametric design opportunities is really significant, as well as the application of these techniques into a wide range of industrial sectors. In that context it is possible to identify a great amount of studies based on this kind of design strategies and from very different contexts and approaches [70,71].

Design Optimization
Design optimization can be carried out through multicriteria analysis to aid decision-making or through multi-objective optimization. Multicriteria decision-making considers several possible solutions or alternatives and selects the most appropriate applying its criteria structure. Multi-objective optimization does not consider a finite number of alternatives, there are infinite solutions and they are represented by the variables of the problem delimited by the restrictions. The calculation methods of the optimization problems look for the value of the variable or variables that maximize or minimize the objective function, which are the ones that obtain the highest or lowest value of the objective to be achieved and within the ranges determined by the constraints of the problem. In the case of multi-objective optimization problems, the objective functions are in conflict with each other [72]. If they were not, the optimization problem could be divided into single-optimization problems taking each of the values separately. This work focuses on the study of multi-objective optimization problems with the aim of avoiding predetermined formal solutions as far as possible. Various calculation methods are available in the proposed methodology and it will be convenient to apply one or the other depending on the design problem [41].

Mass Customization
Compared to serial and large batch manufacturing, the traditional concept of customization is associated with higher lead times and costs per unit [73]. Reducing these values represents the biggest challenge of mass customization [52], and the technologies integrated within the proposed methodology significantly contribute to these objectives. Additive manufacturing allow the rapid manufacturing of unique models at low cost [74] and, in that sense, FDM technologies and multi-material possibilities are productive scenarios of great potential [75], although still with limitations derived from the process and the materials [76]. Probably, the applications in the field of medicine represent the clearest example to understand the importance and potential of customization [56,77], but it is not the only one. Any ergonomic product is interesting from the point of view of mass customization [41,47], but really in all fields there are examples of applications that require unique and optimal solutions, construction industry for example [78]. Thus, the demand for personalized features without extra costs is an upward trend [79] in all types of products, even incorporating the customer in the design process [80][81][82].
Mass customization, as a concept, is in a process of continuous revision and evolution, from a system based on modular elements to a system based on the co-design of products by consumers [73,79,[83][84][85], so companies need new studies, methods, and tools to create personalized products with the costs and mass production efficiency.
Neither digital fabrication nor parametric design are new realities; however, it is the integration of both that is creating a new flow of information that allows new effective methodologies for mass customization [42,43,46]. Thus, customization of the products can be achieved through the parameterization of the designs [86], as flexible design structures conceived from the relation between its parameters.

Lightweight Parts
When designing lightweight parts, the goal is to minimize the volume or the amount of material used, without compromising the required mechanical resistance. This means maximizing efficiency in the way the material is used, and it has a series of benefits, both economic and environmental [87,88].
However, by lightening the structures, the geometric complexity of the pieces increases, and that complexity can make it difficult, or even impossible, to manufacture them with traditional technologies. Additive manufacturing addresses this problem by materializing parts layer by layer from digital models and makes these approaches possible. Additive technologies even allow the obtaining of with different materials in a single process [89][90][91]. Many strategies can be adopted to lighten a piece designed to be manufactured with additive technologies, as they present the opportunity to design complex geometries without the restrictions of traditional technologies. Figure 2 presents a scheme with the most relevant ones and indicates with solid green background the ones adopted in the proposed methodology.

Methodology
The objective of the methodology is to generate lightweight pieces compatible with mass customization strategies and produced by additive manufacturing. The lightening of the pieces is achieved by the topology optimization of the initial volume as well as by the structural optimization of the cellular structures generated for its infill and shell. It is necessary to avoid any intermediate modeling process in which the flow of information is broken, which would act as a frontier for the optimization global process. To reach this goal, the methodology is based on parametric design, where a generative modeling that involves algorithms, structural analysis, and optimization is defined in a continuous workflow. The selection of the most appropriate computational tool according to the particular objectives of the methodology and considering the possible alternatives both for parametric design and optimization process [92] is a key decision. The identification of a suitable software was faced in previous works [41,93], and Grasshopper was the selected tool.
Most optimization algorithms stablish workflows from parametric designs, by contrast, in other situations such as topology optimization, in which the variables are unitary and correspond to the discretized elements of the finite element model, it is not possible to establish these workflows with parametric models. Consequently, it is necessary to re-model the parts taking as a reference the results obtained in the topology optimization, this way the data flow between different optimization processes would be broken and therefore the methodology would fail. Figure 3a illustrates this situation.

Methodology
The objective of the methodology is to generate lightweight pieces compatible with mass customization strategies and produced by additive manufacturing. The lightening of the pieces is achieved by the topology optimization of the initial volume as well as by the structural optimization of the cellular structures generated for its infill and shell. It is necessary to avoid any intermediate modeling process in which the flow of information is broken, which would act as a frontier for the optimization global process. To reach this goal, the methodology is based on parametric design, where a generative modeling that involves algorithms, structural analysis, and optimization is defined in a continuous workflow. The selection of the most appropriate computational tool according to the particular objectives of the methodology and considering the possible alternatives both for parametric design and optimization process [92] is a key decision. The identification of a suitable software was faced in previous works [41,93], and Grasshopper was the selected tool.
Most optimization algorithms stablish workflows from parametric designs, by contrast, in other situations such as topology optimization, in which the variables are unitary and correspond to the discretized elements of the finite element model, it is not possible to establish these workflows with parametric models. Consequently, it is necessary to re-model the parts taking as a reference the results obtained in the topology optimization, this way the data flow between different optimization processes would be broken and therefore the methodology would fail. Figure 3a illustrates this situation.
One of the main advantages of Grasshopper, in the context of the proposed methodology, is that it allows the continuation of modeling the solution through algorithms based on the elements of the mesh resulting from topology optimization. Thanks to this, a continuous workflow can be established between the different algorithms and generative modeling of Grasshopper. This situation is shown in Figure 3b. In this way, any element that intervenes in the process as a variable can be integrated into multi-objective optimization. Thus, the proposed methodology eliminates barriers or stops that could affect the workflow continuity, so the part optimization process, the resulting mesh and the parametric modeling for subsequent optimization are connected through a continuous workflow. Consequently, it is also possible to integrate variables from the algorithms of the topology optimization, or from previous stages, to the subsequent optimizations of the geometry. One of the main advantages of Grasshopper, in the context of the proposed methodology, is that it allows the continuation of modeling the solution through algorithms based on the elements of the mesh resulting from topology optimization. Thanks to this, a continuous workflow can be established between the different algorithms and generative modeling of Grasshopper. This situation is shown in Figure 3b. In this way, any element that intervenes in the process as a variable can be integrated into multi-objective optimization. Thus, the proposed methodology eliminates barriers or stops that could affect the workflow continuity, so the part optimization process, the resulting mesh and the parametric modeling for subsequent optimization are connected through a continuous workflow. Consequently, it is also possible to integrate variables from the algorithms of the topology optimization, or from previous stages, to the subsequent optimizations of the geometry.
Grasshopper [40] is a graphical programming application that uses Rhinoceros (Robert McNeel and Associates, Seattle, WA, US) [94] interface to visualize the geometries generated by algorithms. As it is an open source software, it benefits from the activity of many researchers who develop algorithms programmed with this language, both in the form of mathematical expressions and programmed sequences. These scripts are shared with other users in the form of plug-ins or add-on. As occurs in any programming language it is unusual to code from scratch, there are always frameworks, plug-ins, and other resources that help coding and include already programmed and grouped sequences for specific functionalities [95]. A review of the most suitable plug-ins considering the utilities of the methodology was carried out in previous works [8,41]. Table 1 shows those selected for this work from the previous works indicated, in which their choice is justified. The proposed plugins can be used for the different goals as they introduce frameworks and algorithms already developed that help the methodology scripting. However, it is possible to use any algorithm that the designer considers most suitable for the case of study or even code from zero in any compatible programming language such as Python, C#, NET, or VB. Grasshopper [40] is a graphical programming application that uses Rhinoceros (Robert McNeel and Associates, Seattle, WA, USA) [94] interface to visualize the geometries generated by algorithms. As it is an open source software, it benefits from the activity of many researchers who develop algorithms programmed with this language, both in the form of mathematical expressions and programmed sequences. These scripts are shared with other users in the form of plug-ins or add-on. As occurs in any programming language it is unusual to code from scratch, there are always frameworks, plug-ins, and other resources that help coding and include already programmed and grouped sequences for specific functionalities [95]. A review of the most suitable plug-ins considering the utilities of the methodology was carried out in previous works [8,41]. Table 1 shows those selected for this work from the previous works indicated, in which their choice is justified. The proposed plug-ins can be used for the different goals as they introduce frameworks and algorithms already developed that help the methodology scripting. However, it is possible to use any algorithm that the designer considers most suitable for the case of study or even code from zero in any compatible programming language such as Python, C#, NET, or VB. The workflow defined through the parametric model of the proposed methodology generates different design solutions without the need to develop new models [96]. This approach is of interest when avoiding the interruption of the workflow of the methodology between the mesh result of the topology optimization and the required parametric design for the further optimizations [97,98]. In this way it is possible to introduce variations in the solution obtained by altering the values of a certain variable without the need to redefine the three-dimensional model. Thus, the programming

Octopus
The workflow defined through the parametric model of the proposed methodology generates different design solutions without the need to develop new models [96]. This approach is of interest when avoiding the interruption of the workflow of the methodology between the mesh result of the topology optimization and the required parametric design for the further optimizations [97,98]. In this way it is possible to introduce variations in the solution obtained by altering the values of a certain variable without the need to redefine the three-dimensional model. Thus, the programming not only includes linear sequences for the definition of the model, non-linear routines can also be established, as shown in Figure 4. By means of a parametric design, the final design is not drawn or represented, but calculated. Errors are reduced by eliminating intermediaries and repetitive tasks typical of the traditional design process. Design process becomes more reliable and efficient. Furthermore, a greater variety of solutions are offered automatically, therefore it is possible to choose the most optimal result without entailing additional time or effort [99,100].
This work is focused on additive manufacturing technologies, and from that approach the geometries to be optimized are the general volume, the infill, and the shell of the piece. A diagram of the proposed methodology is shown in Figure 5. By means of a parametric design, the final design is not drawn or represented, but calculated. Errors are reduced by eliminating intermediaries and repetitive tasks typical of the traditional design process. Design process becomes more reliable and efficient. Furthermore, a greater variety of solutions are offered automatically, therefore it is possible to choose the most optimal result without entailing additional time or effort [99,100].
This work is focused on additive manufacturing technologies, and from that approach the geometries to be optimized are the general volume, the infill, and the shell of the piece. A diagram of the proposed methodology is shown in Figure 5. For clarity, the exposition of the functioning of the methodology is supported by a simple application example, of a cantilever beam of predefined span and variable height and width. Figure  6 schematically represents its loading conditions. Thus, the exposition of each part of the design and optimization problem is accompanied by a representative image of the result obtained for this example. For clarity, the exposition of the functioning of the methodology is supported by a simple application example, of a cantilever beam of predefined span and variable height and width. Figure 6 schematically represents its loading conditions. Thus, the exposition of each part of the design and optimization problem is accompanied by a representative image of the result obtained for this example.
For clarity, the exposition of the functioning of the methodology is supported by a simple application example, of a cantilever beam of predefined span and variable height and width. Figure  6 schematically represents its loading conditions. Thus, the exposition of each part of the design and optimization problem is accompanied by a representative image of the result obtained for this example.   Figure 5 are identified. Except for the infill and shell optimization that can be done separately or together in a unitary structure and for the cantilever case study a unique lattice structure for both infill and shell, is defined and optimized. Moreover, in Figure 7 the continuous data flow is represented by green connection lines, where the relations between variables, constants, and functions throughout the methodology is visible. The general programming structure shown describes a continuous workflow through the sequences of operations between the algorithms used for the initial geometry design and the algorithms responsible for the FEA (Finite Element Analysis) and the optimization processes. The parametric design of the piece, as well as any transformation, is defined by sequential actions based on mathematical and geometric programmed functions.  Figure 7 shows the proposed methodological structure applied to the cantilever beam case in Grasshopper interface. The same sections as the ones illustrated in Figure 5 are identified. Except for the infill and shell optimization that can be done separately or together in a unitary structure and for the cantilever case study a unique lattice structure for both infill and shell, is defined and optimized. Moreover, in Figure 7 the continuous data flow is represented by green connection lines, where the relations between variables, constants, and functions throughout the methodology is visible. The general programming structure shown describes a continuous workflow through the sequences of operations between the algorithms used for the initial geometry design and the algorithms responsible for the FEA (Finite Element Analysis) and the optimization processes. The parametric design of the piece, as well as any transformation, is defined by sequential actions based on mathematical and geometric programmed functions.

Initial Parametric Design
One of the objectives of the methodology is to minimize the influence on the optimized final result from the initial volume, as Figure 8 shows. The initial volume is defined with a parametric design and its variables can be modified to obtain the minimum or maximum value of the objective function to optimize the result. In this sense, the methodology allows the selection of the variables

Initial Parametric Design
One of the objectives of the methodology is to minimize the influence on the optimized final result from the initial volume, as Figure 8 shows. The initial volume is defined with a parametric design and its variables can be modified to obtain the minimum or maximum value of the objective function to optimize the result. In this sense, the methodology allows the selection of the variables considered initially to be modified at any time, adapting the approach to the particular objective in each case. Thus, as a result, a flexible geometric object is obtained, which is automatically modified when the value of any of its variables is changed.

Initial Parametric Design
One of the objectives of the methodology is to minimize the influence on the optimized final result from the initial volume, as Figure 8 shows. The initial volume is defined with a parametric design and its variables can be modified to obtain the minimum or maximum value of the objective function to optimize the result. In this sense, the methodology allows the selection of the variables considered initially to be modified at any time, adapting the approach to the particular objective in each case. Thus, as a result, a flexible geometric object is obtained, which is automatically modified when the value of any of its variables is changed.

Topology Optimization
Topology optimization is performed through a FEA. In this sense, the algorithm inputs are the meshed model to be optimized, the loading conditions, what includes supports and loads, and the

Topology Optimization
Topology optimization is performed through a FEA. In this sense, the algorithm inputs are the meshed model to be optimized, the loading conditions, what includes supports and loads, and the mechanical properties of the material, as Figure 9 shows. The programming developed demands resistance values for the material both for the initial topology optimization of the general geometry and for the sizing of the bars of the infill structure. Resistance values provided by filament suppliers cannot be considered, since the manufacturing process and the layered structure generated impose significant changes in the material [21]. Thus, the mechanical characterization of the material required a previous study. In that study, solid specimens were manufactured and tested, since the sizing of the bars of the filling structure considers the resistance of the material with which they are manufactured and the load applied in each area of the piece, not so much the resistance of the cells that define the lattice structure [9]. As previously exposed, although any topology optimization algorithm can be introduced in the methodology, there are several plug-ins available with different algorithm methods such as Solid Isotropic Material Penalization Method (SIMP) in Millipede or Bi-directional Evolutionary Structural Optimization (BESO) in Karamba.
The initial geometry for the optimization process is the result of a sequence of functions with variables from the parametric design of the initial volume. Furthermore, the mesh used to discretize the model using a finite number of elements can be determined with a variable, not a constant. This approach allows the location and the number of nodes where the loads and supports are located to be modified and updated automatically during the process.
The methodology is not limited to the use of a certain topology optimization algorithm. In each case, the most useful alternative can be selected. On the other hand, a topology optimization algorithm will demand a series of input information that can be configured as variables or as constants depending on the problem and the predictable results. Examples of this type of input are, among others, the penalty factor, the maximum volume fraction, the filter's radius of influence, the number of iterations and manufacturing restrictions. Moreover, in the generation of the resulting meshed geometry there are variables that can be modified to obtain different results, such as the iso contour value. mechanical properties of the material, as Figure 9 shows. The programming developed demands resistance values for the material both for the initial topology optimization of the general geometry and for the sizing of the bars of the infill structure. Resistance values provided by filament suppliers cannot be considered, since the manufacturing process and the layered structure generated impose significant changes in the material [21]. Thus, the mechanical characterization of the material required a previous study. In that study, solid specimens were manufactured and tested, since the sizing of the bars of the filling structure considers the resistance of the material with which they are manufactured and the load applied in each area of the piece, not so much the resistance of the cells that define the lattice structure [9]. As previously exposed, although any topology optimization algorithm can be introduced in the methodology, there are several plug-ins available with different algorithm methods such as Solid Isotropic Material Penalization Method (SIMP) in Millipede or Bi-directional Evolutionary Structural Optimization (BESO) in Karamba. The initial geometry for the optimization process is the result of a sequence of functions with variables from the parametric design of the initial volume. Furthermore, the mesh used to discretize the model using a finite number of elements can be determined with a variable, not a constant. This approach allows the location and the number of nodes where the loads and supports are located to be modified and updated automatically during the process.
The methodology is not limited to the use of a certain topology optimization algorithm. In each case, the most useful alternative can be selected. On the other hand, a topology optimization algorithm will demand a series of input information that can be configured as variables or as constants depending on the problem and the predictable results. Examples of this type of input are, among others, the penalty factor, the maximum volume fraction, the filter's radius of influence, the number of iterations and manufacturing restrictions. Moreover, in the generation of the resulting meshed geometry there are variables that can be modified to obtain different results, such as the iso contour value.

Shell Design
Additive manufacturing technologies incorporate shell and infill as new aspects to be considered into the design process [8]. When generating the gcode through the laminator software, some variables of these two elements can be configured, but configuration options are limited to

Shell Design
Additive manufacturing technologies incorporate shell and infill as new aspects to be considered into the design process [8]. When generating the gcode through the laminator software, some variables of these two elements can be configured, but configuration options are limited to standardized presets. Thus, in addition to optimizing the general geometry, the proposed methodology considers it necessary to incorporate the optimization of both aspects, shell, and infill.
In that sense, since FDM and SLS (Selective Laser Sintering) were the technologies selected to test the methodology, a porous structure shell was chosen to allow the output of the support material necessary during manufacturing. On the other hand, under the premise of lightening the part without compromising its mechanical behavior, a wireframe structure with variable cross sections and working collaboratively with the infill structure has a better mechanical behavior than a continuous closed shell [101]. In Figure 10 the programming structure used for shell design is shown.

Infill Design
Infill patterns and percentages are offered in slicing software as predetermined options. The objective of the proposed methodology is to optimize not only the boundary geometry of the piece, but also the shell and infill that conforms it. To achieve this goal, the predetermined options are not valid, and the infill pattern must be designed from Grasshopper software in a continuous workflow.
Although any infill design is supported by the methodology, to be more specific, periodic opened structures are chosen. These structures have shown to be stronger than non-periodic [102]. Moreover, open structures allow the reduction of the amount of material used while maintaining its rigidity and strength [103]. The diagram in Figure 11 summarizes the programming structure detailed below for the generation of the infill pattern design. As can be seen, the diagram distinguishes three blocks that include in each case the variables considered, the sequence of actions that takes place and the results obtained. The first block deals with the design of the unit cell. The second develops the programed sequence where the unit cell is repeated to form larger structures filling the topologically optimized geometry. In addition, the third is oriented to the adaptation of the resulting infill structure when meeting the wireframe shell that defines the geometry of the piece. This last block welds the endpoints from the extremes of the infill structure in the contour of the geometry with the nearest nodes of the shell structure.
Polymers 2020, 12, x FOR PEER REVIEW 12 of 27 standardized presets. Thus, in addition to optimizing the general geometry, the proposed methodology considers it necessary to incorporate the optimization of both aspects, shell, and infill. In that sense, since FDM and SLS (Selective Laser Sintering) were the technologies selected to test the methodology, a porous structure shell was chosen to allow the output of the support material necessary during manufacturing. On the other hand, under the premise of lightening the part without compromising its mechanical behavior, a wireframe structure with variable cross sections and working collaboratively with the infill structure has a better mechanical behavior than a continuous closed shell [101]. In Figure 10 the programming structure used for shell design is shown.

Infill Design
Infill patterns and percentages are offered in slicing software as predetermined options. The objective of the proposed methodology is to optimize not only the boundary geometry of the piece, but also the shell and infill that conforms it. To achieve this goal, the predetermined options are not valid, and the infill pattern must be designed from Grasshopper software in a continuous workflow.
Although any infill design is supported by the methodology, to be more specific, periodic opened structures are chosen. These structures have shown to be stronger than non-periodic [102]. Moreover, open structures allow the reduction of the amount of material used while maintaining its rigidity and strength [103]. The diagram in Figure 11 summarizes the programming structure detailed below for the generation of the infill pattern design. As can be seen, the diagram distinguishes three blocks that include in each case the variables considered, the sequence of actions that takes place and the results obtained. The first block deals with the design of the unit cell. The second develops the programed sequence where the unit cell is repeated to form larger structures filling the topologically optimized geometry. In addition, the third is oriented to the adaptation of the resulting infill structure when meeting the wireframe shell that defines the geometry of the piece. This last block welds the endpoints from the extremes of the infill structure in the contour of the geometry with the nearest nodes of the shell structure.

Unit Cell Design
The proposed methodology includes the parametric design of the infill unit cell. A revision on cellular structures is made in previous works and the selection of lattice structures is justified [41,104].

Cell Repetition Pattern Unit
On the other hand, the proposed methodology allows different repetition patterns of the infill`s

Unit Cell Design
The proposed methodology includes the parametric design of the infill unit cell. A revision on cellular structures is made in previous works and the selection of lattice structures is justified [41,104].

Cell Repetition Pattern Unit
On the other hand, the proposed methodology allows different repetition patterns of the infill's unit cell depending on the geometry of the piece. In the case of a predominantly flat volume, it would be convenient to make a conformal lattice structure. However, in any other case, it would be convenient to perform a direct repeating pattern with an orthogonal axis orientation configuring a uniform lattice structure. Depending on the case, one algorithm or another will be used, both are available in the methodology proposed.

Infill and Shell Coherence
A wireframe structure is designed for both infill and shell; however they are independently constructed, therefore it is necessary to ensure that nodes from the infill and the wireframe shell are weld into a coherent structure. This way, the lattice structure, formed by the union of the shell and infill structures, works in a unitary way and the stresses of the bars of the wireframe shell are transmitted to the bars of the infill structure.
The lattice structure previously designed is now optimized based on a FEA of the wired elements. A size optimization is developed and, at first, the minimum section feasible for the additive manufacturing technology chosen is assigned to each element. For this minimum section, normal stresses are calculated for the load case and material assigned. Each normal value is compared one by one with the elastic limit of the material taking into account a safety coefficient, if the normal value exceeds it, the bar section is increased. However, if it resists, even complying with the safety factor, the section of the bar is maintained. Both the FEA and the described sequence are repeated until no bar exceeds the elastic limit of the material. These iterations are performed through the loop programming structure shown in the diagram of Figure 12, where a comparison and a conditional operator included as well as functions that perform the specific actions.  On the other hand, the loop escape sequence is configured from the result of a conditional structure, where integer values are assigned to the resultant Boolean values and its upper limit of compared to the value 0 that corresponds to the negative value. This way, if there is not any value that exceeds the elastic limit mentioned before, the iterations of the loop will stop and no more FEA of the lattice structure nor further sections assignations will be done. Consequently, a heterogeneous porous structure is generated, as shown in Figure 13. On the other hand, the loop escape sequence is configured from the result of a conditional structure, where integer values are assigned to the resultant Boolean values and its upper limit of compared to the value 0 that corresponds to the negative value. This way, if there is not any value that exceeds the elastic limit mentioned before, the iterations of the loop will stop and no more FEA of the lattice structure nor further sections assignations will be done. Consequently, a heterogeneous porous structure is generated, as shown in Figure 13.
On the other hand, the loop escape sequence is configured from the result of a conditional structure, where integer values are assigned to the resultant Boolean values and its upper limit of compared to the value 0 that corresponds to the negative value. This way, if there is not any value that exceeds the elastic limit mentioned before, the iterations of the loop will stop and no more FEA of the lattice structure nor further sections assignations will be done. Consequently, a heterogeneous porous structure is generated, as shown in Figure 13.

Multi-Objective Optimization Problem
The main objective of the methodology proposed, and therefore of the optimization problems involved, is to generate a lightweight piece from both the general volume and the material to be used while ensuring a good mechanical behavior. To achieve this goal more than one objective must be set and therefore a multi-objective problem is programmed. For the beam example Octopus plug-in was used, the multi-objective optimization algorithms inside the plug-in are based on SPEA-2 and HypE algorithm from ETH Zurich (Eidgenössische Technische Hochschule Zürich, Zurich, Switzerland). Iterations of the entire design as well as its optimization processes, such as topology optimization or lattice structure optimization of the piece, are performed. For each iteration different values, previously defined by the designer as viable values, are assigned to the variables of the parametric design to generate different viable solutions. This way, different populations of solutions are generated and recorded to guide the designer in the search and decision of the best solution for its

Multi-Objective Optimization Problem
The main objective of the methodology proposed, and therefore of the optimization problems involved, is to generate a lightweight piece from both the general volume and the material to be used while ensuring a good mechanical behavior. To achieve this goal more than one objective must be set and therefore a multi-objective problem is programmed. For the beam example Octopus plug-in was used, the multi-objective optimization algorithms inside the plug-in are based on SPEA-2 and HypE algorithm from ETH Zurich (Eidgenössische Technische Hochschule Zürich, Zurich, Switzerland). Iterations of the entire design as well as its optimization processes, such as topology optimization or lattice structure optimization of the piece, are performed. For each iteration different values, previously defined by the designer as viable values, are assigned to the variables of the parametric design to generate different viable solutions. This way, different populations of solutions are generated and recorded to guide the designer in the search and decision of the best solution for its manufacture. The interface of the plug-in Octopus allows the designer to compare the Pareto solutions looking at their objective values and the variables that originate them, to choose the most suitable final solution ready to export in a compatible format to manufacture. Figure 14 illustrates a scheme of the multi-objective optimization problem and Octopus interface. As in the case of topology optimization, the methodology allows the selection of the most appropriate method to be applied to each problem. In any case, for the application in the proposed methodology, optimization algorithms based on metaheuristic methods are more interesting since they condition the final solution to a lesser extent and explore the search space more efficiently.
The general parameters considered for the multi-objective optimization problem of the proposed methodology applied to the beam example are the ones showed in Table 2. However, the proposed methodology can take any variable from the parametric design, not only of the initial volume before the topology optimization, but also from the infill or shell design. This way, the designer fixes the constraints and limitations for the optimization problem from the range of values of the variables for the parametric design defined for the specific case. One of the mayor limitations in additive technologies is the minimum strut diameter that can be manufactured, for this reason, the minimum strut diameter is stablished as a constant, to be defined by the designer for the specific technology to be used. Not all limitations are initially introduced this way, such as overhanging structures, as the methodology can be applied to other additive technologies that do not require additional support material. However, maximum strut length is restricted to the range of values assigned to the variables of the wireframe shell size and the lattice infill size introduced in the multi-objective optimization problem and it is defined by the designer from the technology's characteristics.
manufacture. The interface of the plug-in Octopus allows the designer to compare the Pareto solutions looking at their objective values and the variables that originate them, to choose the most suitable final solution ready to export in a compatible format to manufacture. Figure 14 illustrates a scheme of the multi-objective optimization problem and Octopus interface. As in the case of topology optimization, the methodology allows the selection of the most appropriate method to be applied to each problem. In any case, for the application in the proposed methodology, optimization algorithms based on metaheuristic methods are more interesting since they condition the final solution to a lesser extent and explore the search space more efficiently. The general parameters considered for the multi-objective optimization problem of the proposed methodology applied to the beam example are the ones showed in Table 2. However, the proposed methodology can take any variable from the parametric design, not only of the initial volume before the topology optimization, but also from the infill or shell design. This way, the designer fixes the constraints and limitations for the optimization problem from the range of values of the variables for the parametric design defined for the specific case. One of the mayor limitations in additive technologies is the minimum strut diameter that can be manufactured, for this reason, the minimum strut diameter is stablished as a constant, to be defined by the designer for the specific technology to be used. Not all limitations are initially introduced this way, such as overhanging structures, as the methodology can be applied to other additive technologies that do not require additional support material. However, maximum strut length is restricted to the range of values assigned to the variables of the wireframe shell size and the lattice infill size introduced in the multi-objective optimization problem and it is defined by the designer from the technology's characteristics.   First, the main objective, as mentioned before, is to minimize the amount of material without compromising the resistance of the piece, therefore it is necessary to establish the objectives within the optimization problem, which can be configured from different mechanical concepts, such as minimizing displacement or energy deformation, maximize stiffness, etc. However, it is possible to introduce as many objectives as deemed necessary depending on the specific case.
Secondly, any variable introduced in the parametric design as well as in the optimization problems, such as topology optimization or size optimization of the lattice structure, can be considered in the multi-objective optimization problem. For the example given of the beam, the location of the loads and supports that determines the geometry that the topology optimization acquires is considered, as well as the geometric variables that determine the initial volume of the piece or the final lattice structure.
Finally, the restrictions of the described variables are determined from the range of admissible values of the variables. In addition, mathematical relationships are established between the different variables to restrict the search for solutions to the feasible region.

Results and Discussion
The proposed methodology, described in the previous section, integrates structural optimization such as topology and size optimization as well as multi-objective optimization through a continuous workflow developed with Grasshopper, a graphic coding application integrated in Rhinoceros. From these methodological bases, two possibilities arise: (1) Methodology with a single multi-objective optimization algorithm (2) Hierarchical methodology with more than one multi-objective optimization algorithm To illustrate the approach and operation of the proposed methodologies, highly simplified schematics are presented to represent the programmed structure of the continuous data flow throughout the optimization and design problem. The methodology proposes the use of scripts or plug-ins with developed algorithms for specific tasks such as optimization problems or structural analysis acting as frameworks inside Grasshopper's language. However, Grasshopper supports other programming language to import or write other algorithms. This flexibility allows the methodology to maintain updated as well as to easily adapt to different case studies while maintaining the programming structure and elements.
Optimization and FEA algorithms are pointed out in the methodology diagrams and are represented by its plug-in logo images for a more intuitive understanding. The letter V represents the variables that act as inputs to the algorithms that generate the geometry, and the O represents the objectives extracted from the geometry data or from the FEA solver data. On the other hand, the cubes, represent the geometric objects generated from Grasshopper using mathematical relationships or algorithms. The lines and arrows represent the flow of information through the functions and algorithms of the methodology. The type of data flow is represented in different colors further explained in the Figure 15.
minimizing displacement or energy deformation, maximize stiffness, etc. However, it is possible to introduce as many objectives as deemed necessary depending on the specific case.
Secondly, any variable introduced in the parametric design as well as in the optimization problems, such as topology optimization or size optimization of the lattice structure, can be considered in the multi-objective optimization problem. For the example given of the beam, the location of the loads and supports that determines the geometry that the topology optimization acquires is considered, as well as the geometric variables that determine the initial volume of the piece or the final lattice structure.
Finally, the restrictions of the described variables are determined from the range of admissible values of the variables. In addition, mathematical relationships are established between the different variables to restrict the search for solutions to the feasible region.

Results and Discussion
The proposed methodology, described in the previous section, integrates structural optimization such as topology and size optimization as well as multi-objective optimization through a continuous workflow developed with Grasshopper, a graphic coding application integrated in Rhinoceros. From these methodological bases, two possibilities arise: (1) Methodology with a single multi-objective optimization algorithm (2) Hierarchical methodology with more than one multi-objective optimization algorithm To illustrate the approach and operation of the proposed methodologies, highly simplified schematics are presented to represent the programmed structure of the continuous data flow throughout the optimization and design problem. The methodology proposes the use of scripts or plug-ins with developed algorithms for specific tasks such as optimization problems or structural analysis acting as frameworks inside Grasshopper's language. However, Grasshopper supports other programming language to import or write other algorithms. This flexibility allows the methodology to maintain updated as well as to easily adapt to different case studies while maintaining the programming structure and elements.
Optimization and FEA algorithms are pointed out in the methodology diagrams and are represented by its plug-in logo images for a more intuitive understanding. The letter V represents the variables that act as inputs to the algorithms that generate the geometry, and the O represents the objectives extracted from the geometry data or from the FEA solver data. On the other hand, the cubes, represent the geometric objects generated from Grasshopper using mathematical relationships or algorithms. The lines and arrows represent the flow of information through the functions and algorithms of the methodology. The type of data flow is represented in different colors further explained in the Figure 15.  Depending on the ubication of the multi-objective algorithms in the workflow two different methodological approaches are presented below; continuous and hierarchical.

Continuous Methodology
As can be seen in the diagram in Figure 16, the geometry is generated parametrically from initial variables. A topology optimization is then carried out from the resultant geometry and the resultant mesh is analyzed through a succession of algorithms and functions in order to generate from it, on one hand, the lattice infill and, on the other, the wireframe shell. Both structures are weld together into a single coherent structure which is optimized with a multi-objective algorithm at the end to compare and select the more suitable optimized solution in each case.

Hierarchical Methodology
Octopus multi-objective optimization algorithms produce solutions from the random search of the variables making iterations over the entire structure of the programming. The more variables and objectives introduced in a single problem, the more iterations will be necessary to select the best genome or solution, which implies a greater consumption of computing resources.
On the other hand, depending on the infill geometry and its relation to the contour shell, it may be interesting to break the optimization problem into subproblems to have greater control over the optimization of each part.
In response to these situations, a hierarchical methodology is proposed, in which the general volume is optimized several times in different stages of the problem. As shown in Figures 17 and 18 a first multi-objective optimization is done to the general volume after the topology optimization, and a second optimization is carried out to the cellular infill and shell structures, either jointly or independently. Depending on the ubication of the multi-objective algorithms in the workflow two different methodological approaches are presented below; continuous and hierarchical.

Continuous Methodology
As can be seen in the diagram in Figure 16, the geometry is generated parametrically from initial variables. A topology optimization is then carried out from the resultant geometry and the resultant mesh is analyzed through a succession of algorithms and functions in order to generate from it, on one hand, the lattice infill and, on the other, the wireframe shell. Both structures are weld together into a single coherent structure which is optimized with a multi-objective algorithm at the end to compare and select the more suitable optimized solution in each case.

Hierarchical Methodology
Octopus multi-objective optimization algorithms produce solutions from the random search of the variables making iterations over the entire structure of the programming. The more variables and objectives introduced in a single problem, the more iterations will be necessary to select the best genome or solution, which implies a greater consumption of computing resources.
On the other hand, depending on the infill geometry and its relation to the contour shell, it may be interesting to break the optimization problem into subproblems to have greater control over the optimization of each part.
In response to these situations, a hierarchical methodology is proposed, in which the general volume is optimized several times in different stages of the problem. As shown in Figure 17 and Figure 18 a first multi-objective optimization is done to the general volume after the topology optimization, and a second optimization is carried out to the cellular infill and shell structures, either jointly or independently. Hierarchical methodology with more than one multi-objective optimization algorithm in which the optimization problem is decomposed into 2; initial volume and lattices structure that includes the infill and the shell. Hierarchical methodology with more than one multi-objective optimization algorithm in which the optimization problem is decomposed into 3; initial volume, infill structure, and wireframe shell.
As represented in Figure 17, after the topology optimization, the optimization problem is separated into 2 multi-objective optimization subproblems. This proposed hierarchical methodology, in which the problem is broken down into subproblems, allows the problem to be decomposed as much as necessary while there is a flow of data throughout the problem. Hierarchical methodology with more than one multi-objective optimization algorithm in which the optimization problem is decomposed into 2; initial volume and lattices structure that includes the infill and the shell.  Hierarchical methodology with more than one multi-objective optimization algorithm in which the optimization problem is decomposed into 3; initial volume, infill structure, and wireframe shell.
As represented in Figure 17, after the topology optimization, the optimization problem is separated into 2 multi-objective optimization subproblems. This proposed hierarchical methodology, in which the problem is broken down into subproblems, allows the problem to be decomposed as much as necessary while there is a flow of data throughout the problem. Hierarchical methodology with more than one multi-objective optimization algorithm in which the optimization problem is decomposed into 3; initial volume, infill structure, and wireframe shell.
As represented in Figure 17, after the topology optimization, the optimization problem is separated into 2 multi-objective optimization subproblems. This proposed hierarchical methodology, in which the problem is broken down into subproblems, allows the problem to be decomposed as much as necessary while there is a flow of data throughout the problem.
It is possible to decide which methodology is more interesting and efficient in each case once much of the optimization problem has been modeled by including the optimization algorithm in the design stage of interest. On one hand the continuous methodology is preferred when there are few variables to be taken into account in order to be able to search through a representative number of solutions with a viable consumption of computing resources. On the other hand, the hierarchical methodology with more than one optimization solver is of special interest in the following cases: (1) High degree of detail: In those cases, in which a high degree of detail needed without initially conditioning the final geometry, the hierarchical methodology is the most suitable. By subdividing the problem in different levels of detail, the geometry is optimized from the general volume to the finest detail, making decisions throughout the process and having absolute control over the final result. In the diagram of Figure 19 there are only 3 degrees of detail; however, the problem can be decomposed to further details or even to its different geometry parts. In addition, other solvers or algorithms can be incorporated at any point in the optimization process and included within the methodology. For instance, in Figure 19 an example of one possible application is illustrated and Goat, mono-objective optimization solver is introduced to optimize in further degree of detail.
(2) Design alternatives: When it is interesting to assess different design alternatives to choose the most effective the hierarchical methodology is the most suitable option. Once the problem is defined, it is easy to branch any subproblem into different design alternatives at any point of the process. Figure 20 illustrates a diagram of an example with the explained possibilities. It is possible to decide which methodology is more interesting and efficient in each case once much of the optimization problem has been modeled by including the optimization algorithm in the design stage of interest. On one hand the continuous methodology is preferred when there are few variables to be taken into account in order to be able to search through a representative number of solutions with a viable consumption of computing resources. On the other hand, the hierarchical methodology with more than one optimization solver is of special interest in the following cases: (1) High degree of detail: In those cases, in which a high degree of detail needed without initially conditioning the final geometry, the hierarchical methodology is the most suitable. By subdividing the problem in different levels of detail, the geometry is optimized from the general volume to the finest detail, making decisions throughout the process and having absolute control over the final result. In the diagram of Figure 19 there are only 3 degrees of detail; however, the problem can be decomposed to further details or even to its different geometry parts. In addition, other solvers or algorithms can be incorporated at any point in the optimization process and included within the methodology. For instance, in Figure 19 an example of one possible application is illustrated and Goat, mono-objective optimization solver is introduced to optimize in further degree of detail. (2) Design alternatives: When it is interesting to assess different design alternatives to choose the most effective the hierarchical methodology is the most suitable option. Once the problem is defined, it is easy to branch any subproblem into different design alternatives at any point of the process. Figure 20 illustrates a diagram of an example with the explained possibilities. The methodology proposed in this work has been applied to different case studies to validate its operation. Its application in the design of a beam has been used as an example in some sections of this work to support specific parts of the exposition and to illustrate how the methodology contributes to the definition of the final solution through its different stages. Figure 21 illustrates the application of the methodology to the beam and two other examples: a wall hook and the heel of a shoe. The main stages and aspects of the design and optimization process are outlined and represented. The methodology proposed in this work has been applied to different case studies to validate its operation. Its application in the design of a beam has been used as an example in some sections of this work to support specific parts of the exposition and to illustrate how the methodology contributes to the definition of the final solution through its different stages. Figure 21 illustrates the application of the methodology to the beam and two other examples: a wall hook and the heel of a shoe. The main stages and aspects of the design and optimization process are outlined and represented.

Conclusions
The proposed methodology successfully integrates three technologies whose potential and utility are significantly increased when they work together, taking advantage of their synergies. The results obtained are considered satisfactory and represent optimized design solutions that improve those that would be achieved using any of the technologies considered independently.
The methodological approach presented in this work integrates topology optimization with mono-objective and multi-objective optimization in a continuous workflow using parametric design. This general achievement allows the application of the methodology to different fields and represents a useful design and optimization tool for additive manufacturing scenarios. It allows the taking of advantage of the greater geometric freedom allowed by additive manufacturing, and to explore the possibilities of these manufacturing technologies.
The adaptation of the designs to individual needs and preferences that is allowed by the methodology, makes this approach of great interest for mass customization strategies. In this sense, the methodology can be understood as a design resource for this kind of contexts, with great application opportunities in fields such as medicine, fashion design, or disciplines such as ergonomics.

Conclusions
The proposed methodology successfully integrates three technologies whose potential and utility are significantly increased when they work together, taking advantage of their synergies. The results obtained are considered satisfactory and represent optimized design solutions that improve those that would be achieved using any of the technologies considered independently.
The methodological approach presented in this work integrates topology optimization with mono-objective and multi-objective optimization in a continuous workflow using parametric design. This general achievement allows the application of the methodology to different fields and represents a useful design and optimization tool for additive manufacturing scenarios. It allows the taking of advantage of the greater geometric freedom allowed by additive manufacturing, and to explore the possibilities of these manufacturing technologies.
The adaptation of the designs to individual needs and preferences that is allowed by the methodology, makes this approach of great interest for mass customization strategies. In this sense, the methodology can be understood as a design resource for this kind of contexts, with great application opportunities in fields such as medicine, fashion design, or disciplines such as ergonomics.
In addition, the methodology allows the level of flexibility required in each case, the design problem can be decomposed into hierarchical optimization subproblems for greater control by the designer, and without any barrier in the data flow or in the design process.
On the other hand, and from teaching approaches, this methodology is expected to be one of the main resources to be used in the framework of the 2020 Call for Teaching Innovation Projects requested by the authors as members of the Teaching Innovation Group (GID2016-28) of the UNED. The authors want to identify key criteria and aspects of influence on the success of additive manufacturing process carried out by the students, in order to incorporate them within a multicriteria hierarchical structure able to support decision-making for layout design and equipment future acquisitions. Since the developed methodology integrates and explores the synergies between three key technologies, such as additive manufacturing, parametric design, and optimization processes, it can guide the identification of the key criteria and aspects of influence, and its role in this teaching initiative is expected to be significant, both for researchers and students.
Finally, the results obtained considering FDM 3D printers as the manufacturing technologies for this work, encourage the authors to launch similar experiences to validate and improve the application of the methodology with other additive technologies. On the other hand, the authors are currently in the initial stages of studies focused on the analysis of the mechanical behavior of specific designs obtained from applying the methodology. It is expected that the results obtained will serve to improve the functioning of the methodology, validating the results of the simulations ran from the mechanical characterization of the material faced in previous works.