Design Framework for Multifunctional Additive Manufacturing: Placement and Routing of Three-Dimensional Printed Circuit Volumes

A framework for the design of additively manufactured (AM) multimaterial parts with em- bedded functional systems is presented (e.g., structure with electronic/electrical components and associated conductive paths). Two of the key strands of this proposed framework are placement and routing strategies, which consist of techniques to exploit the true-3D design freedoms of multifunctional AM (MFAM) to create 3D printed circuit volumes (PCVs). Example test cases are presented, which demonstrate the appropriate- ness and effectiveness of the proposed techniques. The aim of the proposed design framework is to enable exploitation of the rapidly developing capabilities of multimaterial AM. [DOI: 10.1115/1.4030996]


Introduction
A multifunctional part has multiple uses, such as structural and electrical functions, for example, a structural health monitoring part. Multifunctional designs could be realized using AM multimaterial processes, and allow for a new AM design paradigm. The manufacturing processes, such as multihead ink jet printing, capable of producing these parts are still under development, with considerable ongoing research into materials and process configuration. A variety of techniques have been proposed, primarily using stereolithography and direct write/print technologies, and the reader is directed to Lopes et al. [1] for a history of work carried out in this area. As this area of manufacturing is nascent, there has been little work carried out on developing the design philosophies tailored for MFAM, particularly within the scope of optimal placement and routing. Some related works to define design for AM (DfAM) frameworks are the multimaterial design framework: OpenFab [2] that defines a procedure to efficiently grade mechanical properties through the volume of a part; and a three step global approach to DfAM [3], which is more general.
The aim of this work is to define the underlying design framework for MFAM, outline and formalize a set of techniques/ methods that aid the design of a multifunctional part. The multimaterial manufacturing capability expands the possible design freedom from purely design of single material boundary geometry to also include material composition and functionality through the volume of the part. Two conceptual examples of multifunctional components are shown in Fig. 1, consisting of placed components and the associated connections routed between them within a structural part, two of the key strands of the overall design for MFAM framework.
Automated placement and/or routing techniques have been employed in numerous fields, including electronics, civil (buildings), aerospace, navigation systems, and artificial intelligence (robotics). The electronics community has benefited significantly from advancements in these techniques and this is evident from the highly miniaturized and optimized very large scale integration (VLSI) and printed circuit board (PCB) designs. The continual need to improve these designs has led to the maturation of the underlying multiphase process: partitioning (breaking the original problem into subproblems), placement, and routing. In general, the tasks for PCB design consist of: (1) logical design, (2) physical layout, and (3) production, with stage two consisting of component placement and wire routing [5]. In principle, it would be Fig. 1 Multimaterial jetted concept prototype: (a) an example of a topologically optimized structural part with integrated internal system of placed components and the associated routing, and (b) a prosthetic arm with embedded systems and the associated connections between components [4] best to perform placement and routing in one coupled step as placement can have significant repercussions on the routing, but due to nested dependencies, these can be best tackled independently (in terms of computational expense). To this end, several graph algorithms and mathematical methods, as reported in Refs. [5][6][7], have been developed and implemented. Many of these strategies have been adapted and coupled with global optimization algorithms, such as genetic algorithms and ant colony optimization (ACO), to solve optimization problems in other fields. Examples include pipe/cable routing problems [8][9][10][11] and optimum placement problems for structural health monitoring [12,13].
Currently, PCBs within electronic devices are limited to a stacked 2D (i.e., 2.5D) paradigm [14]; however, with the development of multimaterial AM, the design of functional devices in true 3D, termed PCVs, can be considered. The 3D placement of internal components and the associated routing of connecting tracks should enable more compact, better integrated, and capable MFAM systems.
The objectives of this work can be summarized as: (1) to devise a suitable framework to enable the design of multifunctional parts (2) to devise a suitable strategy to determine suitable locations for the internal components (3) to devise a suitable strategy to connect the internal components into a circuit This paper takes the following structure: First, the overall framework is introduced. Second, the placement and routing aspects of this framework are detailed. Third, the effectiveness and appropriateness of the proposed methods are demonstrated by evaluating and discussing the results for some example test cases.
2 Methodology 2.1 Overall Framework. The overall optimization-based design framework for MFAM is shown in Fig. 2 and has three primary strands within the structure and internal system coupling strategy: First, the placement of components within the part, second, the routing between these components, and third, accommodating the effect of integrating these components on the structural response of the part by modification of the structure using an optimization strategy. It is worth realizing that the placement and routing within a PCV do not necessarily need to operate at the level of a traditional PCB design process, as for some applications, the scale is such that consideration of the minutiae of PCB design is prohibitive and unnecessary. In these cases, the design of an existing circuit can be considered as a component in itself to be connected up with others within the parts' volume. Overarching these three strands are the coupling strategies to consider interactions between them. Completing the MFAM design strategy is the incorporation of design constraints and strategies employed for efficient and flexible computation of results. Sections 2.1.1-2.1.4 will elaborate on the above outlined key aspects of the optimization-based design framework of Fig. 2 specifically: placement and routing strategies, coupling strategies, design constraints, and computational strategies.

Placement and Routing
Strategies. The aspects of this overall framework that are the focus of this paper are the placement and routing strategies. The key aspects of the placement strategy are: identification of potential suitable locations through geometric and performance analysis; identification of a suitable orientation for the component under consideration; and finally, assessment of the location suitability for this component by checking whether it fits within the available space. The key aspects of the routing strategy are: separating the components by connection type; computing shortest paths for pairs of components; and finally, solving the combinatorial network problem (if one exists). These methods are detailed in Secs. 2.2 and 2.3.

Coupling
Strategies. The three primary strands of Fig. 2 are used to formulate a coherent design procedure by devising suitable coupling strategies; specifically, the coupling between placement and routing, and the coupling between the structural optimization and the placement and routing. The first of these couplings could be achieved with a heuristic approach similar to those used for standard PCB or VLSI design [5], or a general purpose metaheuristic algorithm such as ACO. Addressing the second of these couplings, is an approach that incorporates the effects of placement and routing methods via the finite-element analysis (FEA) into a structural topology optimization (TO) algorithm, as detailed in the previous works [15,16]. TO is an optimization technique that iteratively improves the material layout within a given design space, for a given set of loads and boundary conditions [17][18][19][20]. In this approach, the effective material properties are used for the internal system, so as to reflect its part weakening or re-enforcing characteristics. These in turn can be determined by simulating a detailed material interface FEA.

Design Constraints.
As the manufacturing capability to physically realize multifunctional parts is still being developed, the specific manufacturing constraints are currently unknown. One aim of these manufacturing technologies is to be able to print (deposit) electrically conductive material within an electrically insulating part in 3D, and also to be able to print the internal components where possible. Where the direct printing of the internal components is not possible, then inevitably, the components would require embedding either within the volume of the part or by mounting these external to the part. Depending on the Transactions of the ASME multifunctional part being designed, there will also be specific manufacturing and application constraints that could be useful to include. For example, to minimize the support structure requirements one may have to investigate the best build orientation while incorporating the repercussions, this may have on the relative orientation of components within the part. Generally speaking, this portion of the framework encompasses constraints applicable to any other portion of the framework. Specific constraints for placement and routing are discussed in more detail in Secs. 2.2 and 2.3, where appropriate.

Computational Strategies.
A voxel modeling environment was used for this design framework, where a voxel represents a point in space on a cuboidal grid. This was for three primary reasons: First, the proposed placement and routing strategies require discretization of the design volume to enable explicit identification and/or comparison of potential placement locations and routed paths.
Second, mesh mapping between different stages of the process is more straightforward, which provides for a high degree of control of mesh resolution that can be used to optimize mesh resolution for a particular process, or stage within a process. This multiresolution mesh mapping can be best achieved through the use of variable foreground meshes that are compatible with (i.e., an offspring of) a constant background mesh, and is termed multiple compatible mesh method (MCMM). To illustrate the usefulness of the MCMM, consider an example where a fine resolution is used for structural optimization, a coarse resolution for placement and routing optimization, and a very fine resolution for manufacturing. In doing so, the overarching design, optimization, and manufacturing process are made more efficient.
Third, the use of a voxel modeling environment allows the direct mapping of raster-based file formats used in AM, such as the bitmaps used in jetting. This eliminates the need for manual computer-aided-design (CAD) operations, including conversion to the common STereoLithography (STL) file format and associated slicing, which is well known to be cumbersome and error prone. Several stages of voxel manipulation including upsampling and smoothing are required to convert the output voxel model to a model manufacturable using a jetting process, but the model remains inherently sliced.

Placement Strategy.
This section provides the detail on the placement strategy introduced in Sec. 2.1.1. It consists of three key stages: determining component priority, identifying the component location, and identifying the component orientation. The overall placement strategy is summarized by the flow chart in Fig. 3. 2.2.1 Stage 1: Component Priority. The first step in this procedure is to define the priority of each component to determine the order in which they will be placed. This is achieved using the weighted mean of two measures: component size and component importance (dependent on its connectivity). Components are placed in descending order of this value. Stage 2a: identification of potential locations. A hierarchical approach to component placement location was defined as shown in Fig. 4, which presents different point sets within the part's volume based on geometric analysis. Points are eliminated from these sets based on constraints of whether the dimensions of the component allow it to fit at that location, and a minimum spacing constraint to avoid components touching each other.
For some internal components, it is known in advance exactly where it should be placed (specific points). For other components, there may be some that need to be constrained to certain regions of the part (rather than the precise location predetermined), such as components that require access to the outside surface of the part for connectivity or heat dissipation requirements, and so should be constrained to surface locations only.
Another example is where the components might be required to be placed such that they are well encapsulated within the structure or to monitor the performance of geometric members, for example, for a structural health monitoring application. The components could then be placed on the medial axis, generated using skeletonization, which is the general name given to the process that reduces the quantity of geometric information (i.e., dimensionality) required to represent a structure while preserving the essence of its topology. In 3D, this involves simplification to a 2D medial surface and 1D medial axis. The medial surface and axis for the 3D geometry of respectively. A thinning algorithm, as detailed in Refs. [21,22], was used to obtain the skeletal information of the part's topology, providing the characteristic geometric information. Using the medial axis information reduces the domain of component placement from a 3D volume to a network of 3D lines, thereby significantly reducing computational expense. For instance, to realize this dimensionality approximation, individual segments (approximating each geometric member) can be extracted from the medial axis by dividing it at the joints of the skeleton. Once the member centerlines have been isolated, the points on these members can be used to form the potential locations for the placement of the internal components. It is noteworthy that for bulky parts, the reduced geometric information obtained using skeletonization, although topologically intact, is only at the very best a rough approximation to the part's local geometry as local member thickness is not included in this representation.
Another way of reducing the whole volume of points, for instances where there is no restriction to surface points, the medial axis or a specific point, is to use a domain decomposition technique such as a Voronoi diagram. Voronoi-based domain decomposition can enable the identification of a set of approximately uniformly distributed points in 3D. The procedure for doing this involves: initially selecting a set of random points within the parts' volume; constructing a Voronoi diagram from them; and then identifying the centroids of these regions which define the new point set (Fig. 6).
For many structures, the geometry plays less of a role in determining the component location than the performance of the structure either in response to some loading on the part or as a response to an external influence. For example, an internal system of components and sensors can be used to provide an assessment of the part's performance in-service, enabling a more tailored maintenance schedule and thus reducing costs, or to enable some response to be carried out during use ("intelligent parts"). Analysis of the part's performance can be utilized to identify appropriate component placement, for example, consider Fig. 7, which shows a structure subjected to an external heat source. In order to effectively monitor the thermostructural response of this structure, two thermal sensors are placed at the hot spots, a central processing unit (CPU) in the cold spot to process data from the sensors (accompanied by a thermal sensor to monitor the temperature of the CPU), and strain gauges in key structural members. This analysis is carried out using FEA.
The list of potential points is filtered based on a minimum spacing constraint, which ensures components do not overlap. This constraint is based on the maximum component dimension. Once the potential points have been filtered based on spacing, for each component, the list is explored based on whether the component can fit at that location, based on the components' smallest dimension. The amount of space available at each location is determined by the radius of the maximal sphere (touching the part boundary). This is a prechecking procedure to provide an initial elimination of completely unsuitable points, prior to complete checking of dimensions taking orientation into account during stage 3. Fig. 7, it can be observed that the components are oriented in directions that are influenced by the medial axis of the structure (geometric influence). This is especially appropriate in thin members, where the component may not fit in any other orientation. Some components, e.g., strain gauges, would need to be oriented appropriately so as to accurately measure the strain. Therefore, a performance measure should be used to determine this (performance influence).

Stage 3: Component Orientation. In
Orientation constraints can be applied during this stage, for example, for MFAM hybrid systems with embedded components, such as restriction of orientation and size checking assuming the component aligns appropriately with the build direction (so that it can be embedded within a layer-by-layer manufacturing process). This is clearly of importance for components with high aspect ratios. Other constraints may be available in advance, as is the case with surface mounted components, where the surface normal at the potential placement point is also perpendicular to the component orientation.
Stage 3 consists of two substages. For geometric influence, stage 3a finds local direction vectors for all medial axis members (henceforth referred to as links) within a neighborhood. This requires first establishing the neighborhood, which is defined as a spherical region centered at the placement location with a radius of 1.5 times the distance to its closest link (this value was heuristically determined). Local direction vectors (average gradients of unit magnitude) are then computed at points on the links that are closest to the placement location by utilizing a suitable step size. For performance influence, this direction vector can be defined from stress or strain tensors, or by calculation based on other performance measures.
Stage 3b computes the 3D orientation for the component. This is a multistaged process that requires: (1) Multiplication of the aforementioned local direction vectors with a factor k such that where d i is the shortest distance of the ith link from the placement location and c is the minimum value for all d i . This is used to consider the proximity effect of a link on its local direction vector. (2) Identification of the dominant local direction vector from the ones obtained in the above step. This is achieved by finding the local direction vector that has the maximum sum of absolutes for its scalar products with all remaining where V Ã 3 is the vector joining the placement location and the point on the maximal sphere touching the part's boundary. It should be noted that V 1 , V 2 , and V 3 are orthogonal to each other, and that V 1 , V Ã 3 , and V 3 are coplanar (see Fig. 8).
To check if the component fits within the available space at that location, appropriate distances (in this case half of the component dimensions) are traversed along the 6V 1 , 6V 2 , and 6V 3 vectors, originating at the placement location. If none of the tested locations falls outside of the structure, or is within a defined tolerance, it is considered a successful fit. Upon placement of the component, a set of voxels that consist of the difference between the dilated component and the original component are added to the part. This is carried out to ensure that routes can pass through this region of the part in cases where components block off certain members.

Routing Strategy.
Once the internal components have been placed, the next task is to generate the connections to form a circuit, commonly termed routing. The routing optimization aims to improve the circuit efficiency by lowering resistance, which is proportional to the conductive track length. This is, in principle, achieved by identifying the shortest paths between components subject to design rules and constraints. By doing so, we also minimize the conductive track material used, although constrained by the component locations.
The main constraints imposed on the routing optimization are to avoid obstacles (e.g., internal components and void regions) and to have a minimum spacing between routes (to avoid electrical interference). Control of the track diameter was also incorporated into the method to ensure the required levels of conductivity and insulation could be achieved. In 2D/2.5D PCB routing, a major issue with regard to dealing with route overlaps is that without a specific handling mechanism in place (like move onto a different layer), rerouting is inevitable. Conversely, in volumetric 3D routing, there is a natural freedom that enables route overlaps to be easily dealt with. This assumes that the geometry has sufficient space to allow local path modifications at the point of intersections/overlaps. Additionally, for cases where routes are within thin geometric members, the geometry could be expanded to allow additional routes through, if necessary. In some cases, surface constraints may be required, such as when the geometry consists of purely thin geometric members, e.g., a lattice structure. In these cases, just the boundary voxels set can be used, and so this constraint has the potential to require an overlap handling mechanism.
An example of a connection scheme for a number of components is presented in Fig. 9. The fixed (prespecified) order connections between the pairs of six components are shown in Fig. 9(a). Where component 1 is shown with a line to 2 and 3 in this example, it means that 1 is connected to 2, 1 is connected to 3, and 3 is connected to 2 (not 1 is connected to 2 and 3), as only pairs are possible. The networks consisting of components that can be connected in any order are shown in Fig. 9(b) (for example, a set of servos connected in a network with the power source). In this figure, the lines between the components show the possible connections between each pair of components. This flexible order connection problem is an example of the well-known traveling salesman problem (TSP).
The approach adopted for this study can outlined as: (1) Identify the shortest routes between all pairs of components defined by the fixed order connection specification. 3.4 will elaborate on the above outlined key aspects of the routing strategy, specifically; shortest path identification using the accurate and approximate methods, solving the TSP problem with metaheuristics, and computational strategies for increased efficiency.

Shortest Path
Identification: Accurate Method. The problem of computing the shortest path of a graph is an interesting one and since the paper from 1959 detailing Dijkstra's algorithm [23], which solves the single-source shortest path problem for a graph (with non-negative edge path costs), a considerable effort has been made by researchers to build on this technique, primarily due to its applicability to a wide range of problems.
One example of this is the fast marching (FM) method which uses approximate gradient values to compute the discrete solution  to the eikonal equation, which is a nonlinear partial differential equation encountered in problems of wave propagation [24]. The FM method allows the efficient computation of (stable) solutions for a large class of continuous problems, while retaining the idea of a one-pass algorithm as is the case in Dijkstra's algorithm and for that reason it was the choice of algorithm for this work. To identify the shortest route between any two considered components, a MATLAB implementation of FM [25] was used. The key stages of this method are: (1) Generate a speed image, I (containing the marching speed at any given point in the structure) where M is the material matrix corresponding to the structure (entries are 1 for solid and 0 for void) and a is a scaling factor (the value of 50 was chosen for this as doing so sufficiently biases the routes so that they are constrained to the solid region). (2) Obtain the distance map, D, of the speed image, I, using the FM implementation (3) Generate a gradient map, G, by numerically computing the gradients on the obtained distance map [26]. (4) Use a steepest descent algorithm on G to identify the shortest path.

Shortest Path Identification: Approximate Method.
As an alternative to the accurate method for finding the shortest path, an approximate method can be used which uses the geometric information of the part contained in a medial axis. The effectiveness of this method at replacing the accurate method can be exploited in two instances. First, the geometry that routes is passing through, for example, thin members; and second, for cases where lower accuracy can be tolerated, such as when identifying the shortest routes between all possible component-pair combinations in a network to generate the distance matrix. The tradeoff between efficiency and accuracy is investigated in test case 2 in Sec. 3.2. The approximate approach is described by the following steps: (1) Obtain the medial axis of the part.
(2) Compute the length of each medial axis member (i.e., branch point to branch point). (3) Identify the link and the points on it, which are nearest to the placement location. Find the distance from the above mentioned points to the branch points of the link they lie on (see Fig. 10). (4) Develop a graph (network) representing the path finding problem. (5) Solve the graph problem using Dijkstra's algorithm [23].

Shortest Network Problem: Solving With Metaheuristics.
It is only practical to find the exact solution for a TSP through exhaustive search when the problem size is small, because the run time for this approach lies within a polynomial factor of O(n!), where n is the number of components in a network (note: O(n) implies that the algorithm has order of n time complexity). Therefore, a more efficient approach, ACO [27] is used here to solve the TSP.
The ACO technique is a metaphorical representation of the colonial foraging behavior of ants. An artificial ant in ACO is a stochastic constructive procedure that incrementally builds a solution by adding opportunely defined solution components (pheromones) to a partial solution under construction [28]. The colony's ability to find better solutions is enhanced by incorporating an evaporation coefficient that promotes the exploration of new solutions without being overconstrained by past decisions [29]. The two key aspects of the ACO implementation are discussed below: First, the stochastic nature of the algorithm comes from the probabilistically governed random decision that an ant makes to move from the current component location to the next unvisited one. The underlying probabilities are computed as where P k ij ðtÞ is the probability of moving from the ith to the jth component location by the kth ant in the tth iteration, and the term a ij ðtÞ is the functional composition of the pheromone trail, s, and the local heuristic, g, often expressed as where the heuristic information, g ij , is the inverse of the distance between the two component locations, and the two parameters a (set to 1) and b (set to 2) determine the relative influence of pheromone trail and heuristic information, respectively. The second key aspect relates to the update of the pheromone information, which is done after the completion of a colonial search using Ds k ij (8) where q is the evaporation coefficient (set as 0.1), m is the total number of ants selected for pheromone deposition from the colony (only ants that perform better than the average of the colony are chosen), and the Ds k ij term represents the amount of pheromone the kth ant deposits on the path (i, j) defined as where L k is the length of the kth ant's tour. It is of note that in general, paths that are used by many ants and that are contained in  shorter tours will receive more pheromone, and therefore are also more likely to be chosen in future iterations of the algorithm.
To enable an automated TSP solver, both the number of ants and colonial iterations for ACO were set to four times the number of components in a network. Furthermore, a convergence tolerance of 1 Â 10 À6 was used.

Computational Strategy: Clustering Method for
Increased Efficiency. With regard to solving the shortest network problem itself, the authors propose restating the problem so that it can (where possible) be decomposed into smaller TSPs [30]. Doing so offers computational leverage that is proportional to the extent of decomposition. This is illustrated in Fig. 11 where, after restating the original TSP into three smaller ones, the computational effort can be reduced from In general, we can express this leverage as P Si C 2 . X Si C 2 (11) which, for simplicity sake, can be understood as with the assumption that n C 2 % n 2 =2. It is noteworthy that this decomposition is possible only when the component locations are clustered together, and it is this clustering/grouping that allows greatest benefit from this strategy.

Simulations and Results
In order to effectively assess the proposed placement and routing strategy, three test cases are considered in this section. These test cases evaluate the strategy's various key elements progressively, from a fundamental to an applied standpoint. Test case 1 aims to test the accuracy and appropriateness of the underlying fundamental principles on which the method is based. Test case 2 explores the efficacy of the proposed approximate routing method with a set of examples. Finally, test case 3 considers a complex 3D problem from an application standpoint to assess the effectiveness of the proposed placement and routing strategy.
3.1 Test Case 1: Accuracy of Underlying Principles. Test case 1 aims to test the accuracy of the underlying fundamental principles on which the proposed placement and routing strategy is based, and is comprised of the following three subcases: (a) component placement and orientation control (b) shortest path finding ability of FM (c) the ability of ACO to solve the shortest network problem (i.e., TSP) The geometry shown in Fig. 12(a) will be used to assess the proposed placement philosophy. Here, we have three components that are placed at specified locations. As explained in Sec. 2.2.3, components are oriented along the dominant local direction vector amongst those that lie within a neighborhood (defined by circles drawn around the components and having radii of 1.5 times the distance to closest link). For component 1, there is more than one member that lies within the neighborhood, and therefore, the dominant local direction vector needs to be identified. In this case, the dominant local direction vector is the one that is more closely aligned with other local direction vectors (see Sec. 2.2.3 for details). Consequently, this results in what would be considered a visually more appropriate solution. On the contrary, in the cases of components 2 and 3, where the neighborhood encompasses only one member, these components are aligned with their local direction vectors, which again would be considered a visually appropriate solution.
A plate with a hole in its center (see Fig. 12(b)) is used for test case 1b, i.e., to assess the shortest path finding ability of the FM implementation. The primary reason for this choice is the existence of a well-defined analytical solution, consisting of the appropriate tangent segment from the start point, appropriate tangent segment from the end point, and the minor circular segment between the tangent locations. From Fig. 12(b), it can be observed that the numerical solution obtained with the FM implementation only slightly deviates from the true shortest path, and therefore provides a reasonably high level of accuracy that is fit for our purpose.
The robustness of ACO to solve combinatorial problems is well documented [27]. In addition to this, benchmarking of the in-house ACO code was carried out using standard TSPs taken from Refs. [31,32], for which the minimum tour lengths were known and the chosen ACO parameters (described in Sec. 2.3.3) enabled convergence to the known solutions.
3.2 Test Case 2: Comparison of Routing Approaches. Test case 2 compares the two shortest path identification approaches, specifically, the accurate method and the approximate method, on two example cases: (a) a 2D "X"-shaped part, and (b) the 3D geometry of Fig. 5(a).
The experiment of test case 2a was performed on an X-shaped part (see Fig. 13), which was selected as it has an unchanging medial axis (when subject to changes in the member thickness). This enabled the relative range of deviation likely to be encountered in an applied problem to be included.
The path length, p, obtained using the accurate method was seen to change according to where L is the length of half of the medial axis link and t is half the member width. In contrast, the path length for the approximate method remained unchanged as the medial axis was unaltered. This resulted in a relative range of deviation in length of [0, ð ffiffi ffi 2 p À 1Þ ] Â 100%. Test case 2b aims to better understand the implications of using the two different routing approaches on a 3D geometry. Here, six internal components connected in a cyclic pattern within the geometry are considered. The two key aspects of interest in this experiment are: accuracy of the result (i.e., path lengths) and its efficiency (i.e., computational expense). Figure 14 shows that, in general, the paths take an approximately similar course for both the accurate and approximate methods, however, occasionally there can be significant differences in routes, as is observed in the case of path "4," which nevertheless have very similar path lengths (see Tables 1 and 2). Table 1 reports the accuracy of the results, i.e., the error in the path lengths when employing the approximate routing method. It is observed that the approximate method overestimates path length by about 20% on average. Table 2 reports the time required to identify routes using the two routing methods. It is observed that the approximate method is almost 25 Â faster than the accurate method. Section 4 discusses how and when the two routing approaches could be incorporated within the placement and routing strategy.

Test Case 3: Assessment of Placement and Routing
Capabilities. Test case 3 applies the component connection scheme of Fig. 9 (excluding network "B") on the geometry of Fig. 5(a) to assess the effectiveness of the proposed placement  and routing strategy from a more realistic application standpoint. This test case includes 3D orientation control and both fixed and flexible order routing. The list of component placement locations is populated by adopting the previously described unconstrained (geometry based) approach (refer to Fig. 6 of Sec. 2.2), and the shortest paths were identified using the FM method. Figures 15(a) and 15(b) show the advanced routing features for the fixed and flexible order connections on the considered 3D geometry. Paths shown in red represent the fixed order connectivity while the paths in black (and tagged with a star $) represent the flexible order connectivity. Due to the unique geometry under consideration, it can be observed that all the paths are composed of, in some combination, the following segment types: straight lines, circular arcs, and arcs of varying curvature. Additionally, components can be seen to be aligned with either the members' local tangent or, alternatively, strongly influenced by the members in its vicinity (refer to Sec. 2.2.3 for details).

Discussion
To recap, the ultimate aim of this work is to outline and formalize a set of techniques/methods that aid the design of a multifunctional component. The specific objectives are: (1) to devise a suitable framework to enable the design of multifunctional parts (2) to devise a suitable strategy to determine suitable locations for the internal components (3) to devise a suitable strategy to connect the internal components into a circuit The presented test cases provide an illustration of the workings of the proposed placement and routing method and demonstrate that the presented set of techniques are effective at exploiting the true-3D design freedom of PCVs.
The implemented strategy currently tackles the procedure of placement and routing in a sequential fashion. Currently, determination of a location for a particular component does not consider the location of adjacent components (apart from ensuring no overlapping components and that a minimum spacing constraint is observed). Placement considering other components may be required for reasons such as heat dissipation, latency or timing requirements, or just from an overall circuit efficiency requirement. It is clear that the placement of components has a large effect on the overall circuit efficiency, and so the coupling strategy presented in the overall framework of Fig. 2 is required to take account of these dependencies. This can be achieved through a combinatorial optimization scheme but as was mentioned in the introduction, this is a computationally intensive task and so heuristic strategies may be more suitable.
The issue of timing requirements, an application-driven design constraint of Fig. 2, can be addressed using the current strategy, although limited to one direction only, that is, to increase the length of connections, rather than decrease them. This can be achieved with a mapping of predefined route lengthening patterns (which could be in 3D) to the existing shortest paths (Fig. 16(d)). This works in the same principle as mapping of bundled connections between groups of components following clustering (Fig. 16(c)). The same approach can also be used to control the conductivity of particular connections between components by varying their diameters or thicknesses once the relationship between dimensions and conductivity for a particular material is understood ( Fig. 16(b)). However, this just enables a specific performance criteria be met, rather than allowing the overall circuit to be optimized. To this end, it is proposed that the clustering method be extended to also include grouping by which components are connected as well as which components are located near to each other. This will allow for an iterative adjustment of the component placement to improve the overall circuit efficiency.
The component placement strategy can be extended to include more advanced features such as to handle problems where maximum component packing efficiency is a requirement, such as for very compact systems; checking whether the component fits within the part at the placed location by ensuring that the majority of the components' surface voxels lie within the part. Such extensions would improve the robustness of the proposed placement strategy.
Regarding routing, the described methods: accurate and approximate have been found to be effective at finding shortest routes between components. This strategy assumes that minimum length is desired, from a circuit efficiency and conductive material usage point of view. The accurate approach allows for voxel-by-voxel control of the routed path, which provides a greater level of optimality than the approximate approach for most structures. Their results tend to converge for structures that consist of solely slender members such as a lattice structure, where the routes taken match with the medial axis (which is used to calculate approximate paths). However, the reduction in computational burden through the use of the approximate method is dramatic and is especially useful: (a) when generating the distance matrix (by computing the shortest routes between all possible component-pair combinations), which is required for solving the shortest network problem for components without a prespecified connection order, (b) when considering the initial stage of the coupled optimization problem ("structure and internal system coupling strategy" of Fig. 2), where an approximate representation of the system is sufficient as the structural topology is still evolving, and (c) when tackling very large problems, where the computational resources available are insufficient for the accurate routing approach. The current implementation allows for both accurate and approximate methods to be used together.
Considering connection constraints, as well as the aforementioned mapping method for route lengthening and diameter modification, a route spacing constraint was implemented which ensured control of interference between adjacent connections. The routing also avoided obstacles within the geometry such as other internal components, other routed connections, and void regions. While the order in which the connections are made has a large effect on the overall result in 2D (due to route blocking), in 3D this is much less of a problem, apart from for thin geometric members that may not be able to accommodate multiple routes. To accommodate these cases, geometry modification methods are under consideration to thicken up regions of the part where beneficial to the overall system design. This would fall into the overall framework in the structure and internal system coupling strategy.
Although the design methods proposed in this paper were developed with the view that multimaterial jetting could be used to manufacture multifunctional parts (including internal components), the methods are general enough that, in principle, they Fig. 16 Mapping strategy to achieve desired final connections between two components: (a) single routed connection from routing strategy, (b) route thickness modification to achieve the desired conductivity level, (c) the actual connections required between the component pins, and (d) a route lengthened to achieve a specific length could be extended to other manufacturing methods, such as extrusion-based and hybrid manufacturing processes (e.g., embedding off-the-shelf components within an AM part) with different manufacturing constraints. Placement of components in such a hybrid process can be handled by utilizing the "design constraints," specifically, the "geometric constraints" of Fig. 2 (see Sec. 2.1.3 for details). In this case, for instance, the components' orientation could be restricted to the x-y plane so as to keep the components normal aligned to the parts' build orientation, making embedding possible.
It is of note that the proposed overall design framework of Fig. 2 is modular in nature. Although in this work, the authors have focused on achieving multifunctionality via the electrical systems route, the general method can be readily extended to other functionality, such as optical, thermal, or fluid based. With any chosen route to multifunctionality, appropriate design constraints and suitable system enabling techniques can be selected and it is this problem independent aspect of the proposed framework that makes it modular.

Conclusions
This paper has proposed a framework for the design of PCVs, which are AM multimaterial parts with embedded functional systems. The primary objective of this work was to exploit the true-3D design freedoms of the MFAM paradigm and to this end, placement and routing techniques/methods that aid in the design of PCVs were outlined and formalized. The focus of the work presented is on the placement and routing strategies which are two of the fundamental strands of the framework.
The proposed placement approach capitalizes on both the performance and geometric aspects of the considered part. A medial axis-based orientation scheme was proposed for appropriate component alignment. With regard to the routing (path length minimization problem), an FM method in conjunction with an ACO algorithm was used. The inclusion of approximate strategies, specifically, the approximate routing method and the decomposition of the shortest network problem based on clustering are shown to greatly enhance the efficiency of the automated placement and routing strategy.
The proposed methods were evaluated progressively from a fundamental to an applied standpoint on numerous test cases. The results of which clearly demonstrated the appropriateness and effectiveness of the presented set of techniques for PCV design. The capability of the method allows the exploitation of the manufacturing capability under development within the AM community to produce 3D internal systems within complex structures.
As this work has not focused on the structure and internal system coupling strategy within the framework, the geometry of all example parts, within which the internal system is placed, is fixed. The primary next step of this work is to devise, evaluate, and formalize suitable coupling strategies; specifically, the coupling between placement and routing, and the coupling between the structural optimization and the placement and routing to realize the coherent design procedure of the MFAM design framework.