You are on page 1of 13

Int J Adv Manuf Technol (2010) 51:561–573

DOI 10.1007/s00170-010-2651-1

ORIGINAL ARTICLE

An integrated planning approach for a nanodeposition


manufacturing process
Dong Tang & Udatta S. Palekar

Received: 16 January 2010 / Accepted: 30 March 2010 / Published online: 20 April 2010
# Springer-Verlag London Limited 2010

Abstract This paper deals with the planning problem in a Keywords Process planning . Nanodeposition
nanodeposition manufacturing process, in which a toolbit manufacturing systems . Pattern decomposition . Fluidic
that consists of a multilayer grid of micro/nanofluidic routing . Toolbit path planning
channels is used to deposit nanoscale liquid materials to
desired positions on workparts to form solid patterns. The
objective is to obtain a planning procedure that achieves 1 Introduction and background
efficient throughput for the studied nanodeposition manu-
facturing systems. We break down the studied problem into The nanodeposition manufacturing is of great interest in
several sub-problems as design pattern decomposition, both industry and academia since it can build nanoscale
nanopore assignment, liquid material routing in the multi- solid parts fast and accurately. In this paper, we present an
layer grid fluidic network, and toolbit path planning. integrated planning approach for a nanodeposition manu-
Efficient algorithms are proposed to solve these sub- facturing process. Central to the studied nanodeposition
problems individually, and then finally integrated into a manufacturing systems are nanopores that control both the
framework that systematically plans the nanodeposition amount and speed of liquid material droplets. The nano-
manufacturing process. A software tool that plans, simu- pores are arranged on the bottom layer of a toolbit, which
lates, and controls the nanodeposition manufacturing consists of a multi-layer three-dimensional grid network of
process by implementing the proposed algorithms is micro/nanochannels used to transfer different liquid materi-
reported in this paper. als from source reservoirs to the nanopores. The toolbit is
driven by computer-controlled motors and able to move
freely in x–y directions. Figure 1 illustrates the conceptual
design of the nanodeposition manufacturing systems and
the toolbit fluidic network.
D. Tang The addressed nanodeposition manufacturing process
Intel Corporation, planning problem is broken down into several sub-
5000 West Chandler Boulevard, problems, around which this paper is organized. These
Chandler, AZ 85226, USA sub-problems, to be studied in different sections of this
U. S. Palekar paper, are as follows.
University of Illinois at Urbana-Champaign,
(i) Design Pattern Decomposition. According to the
4016 BIF, 515 East Gregory Drive,
Champaign, IL 61820, USA rectilinear nanopore layout in the toolbit, two different
e-mail: palekar@illinois.edu deposition schemes, namely a “stamping” scheme and
a “tilting toolbit” scheme, are proposed. The design
D. Tang (*)
patterns of solid parts are then decomposed into small
2130 East Saltsage Drive,
Phoenix, AZ 85048, USA regions, which are called printing features, in accor-
e-mail: dong.tang@intel.com dance with these two deposition schemes. To obtain
562 Int J Adv Manuf Technol (2010) 51:561–573

2 Deposition schemes and design pattern decomposition

y The 2-D grid layout of the nanopores on the bottom layer of


the toolbit fluidic network enables us to use two efficient
x deposition schemes, which are addressed in this section as
follows.

2.1 Stamping scheme

Toolbit network The first proposed deposition scheme is a stamping scheme.


Under this scheme, the toolbit covers a rectangular area that
Nanopores
is close to the size of the toolbit bottom layer at each
Liquid reservoirs
location. To fully cover the rectangular area, the toolbit
moves in such a way that each nanopore covers its adjacent
small rectangular area, while no two such areas overlap. A
possible movement is called rectangular spiral out (RSO),
which can be illustrated by Fig. 2. After finishing one such
rectangular area, the toolbit is relocated to another position
to continue the deposition process. For simplicity, we call
each rectangular area a stamping rectangle in the following
Fig. 1 Conceptual design of the nanodeposition manufacturing discussion. It is seen that each stamping rectangle takes the
systems and toolbit fluidic network same amount of time to deposit.
While using the stamping scheme, our major concern is
efficient throughput, we develop algorithms that
to obtain the minimum number of stamping rectangles, or
decompose the design patterns into printing features
in other words, the minimum amount of deposition time
that introduce as few non-productive toolbit relocations
since each stamping rectangle takes the same amount of
and direction changes as possible. Section 2 is devoted
time to deposit. In this sense, the design pattern decompo-
to this topic.
sition problem corresponding to this scheme is similar to
(ii) Nanopore Assignment and Fluidic Routing. After
the tiling problem [1], which is a hard geometric compu-
decomposing the design patterns, we determine the
tation problem. We propose a scan-line heuristic to solve it
nanopore assignment for each printing feature, that is,
efficiently as follows. Firstly, we build a bounding box
which nanopore is assigned to what liquid material.
around the design patterns. Then parallel to the top and left
Corresponding to each nanopore assignment, the
edges of the bounding box, we evenly slice it in two
required liquid materials need to be delivered from
orthogonal directions (called x direction and y direction,
their source reservoirs to the corresponding sink
respectively) according to the width and height of a
nanopores through the grid network of micro/nano-
stamping rectangle. Slicing parallel to the x-axis (direction)
channels. Algorithms are developed to find disjoint
is called horizontal slicing, and slicing parallel to the y-axis
routes for different liquid materials to avoid mixing
(direction) is called vertical slicing. The decomposition is
and contamination. This sub-problem will be
similar to scanning the design patterns in top–down and
addressed in Section 3.
left–right directions. If a scan line does not cut through any
(iii) Toolbit Path Planning. The movement of toolbit
design pattern, the next scan line needs to be started from
from one printing feature to another, e.g., toolbit
the top or left edge of the bounding box of the remaining
relocation, is non-productive and may even incur
costly liquid changeovers in the toolbit fluidic
network. Section 4 addresses this sub-problem and Fig. 2 Rectangular Spiral Out
proposes efficient toolbit path planning algorithms (RSO). Each rectangular spiral
to minimize the number of non-productive and is the movement trajectory of a
nanopore
costly toolbit relocations.
After investigating each sub-problem above individually,
we consolidate the solution methods for these sub-problems
into a framework that is able to provide an integrated
process planning solution for the studied nanodeposition
manufacturing systems in Section 5. Section 6 concludes.
Int J Adv Manuf Technol (2010) 51:561–573 563

unsliced design patterns. Figure 3 illustrates the horizontal method, however, generates a decomposition result that
slicing. consists of 2n stamping rectangles. Therefore, the approx-
The performance of the scan-line method is analyzed in imation ratio in this example is
real-world cases where all design patterns are rectangles, or
2n
can be decomposed into rectangles, with edges parallel to r¼ ð3Þ
nþ1
the x-axis and y-axis. The scan-line method is implemented
in two steps. Step 1 is horizontal slicing. In this step, the which has a value of ρ=2 in the limit as n goes to infinity.
worst case is that the design pattern i, ∀i, is decomposed In most real-world cases, the scan-line decomposition
into ai +1 stripes, where ai is the number of stripes in the method can provide much better results. Considering that ai
optimum decomposition. Step 2 is vertical slicing that and bi are independent and uniformly distributed, we use a
further decomposes each stripe obtained from step 1 into Monte Carlo simulation to show that ρ is actually much
stamping rectangles. In this step, the scan-line method is smaller than 2. The simulation involves 100 different
able to optimally decompose the sub-patterns in the design patterns, where ai and bi of each design pattern take
horizontal stripes. Let bi denote the average number of integral values that are uniformly distributed in the range of
stamping rectangles for pattern i in horizontal stripes in the [1, k]. We vary the value of k to compute a series of ρ
optimum decomposition. It is seen that the scan-line according to Eq. (1). For each fixed value of k, we compute
decomposition method will provide less than Σi(ai +1)∙bi ρ from 50 randomly generated instances and use the
stamping rectangles in total. So the approximation ratio average value to approximate the expected approximation
upper bound of the scan-line decomposition method is ratio E[ρ]. The relation between E[ρ] and k is presented in
written as Fig. 5. It is seen that the approximation ratio decreases
P P dramatically as the value of k increases from 1 to 8. When k
ð ai þ 1Þ  bi
iP bi
r¼ ¼1þP i ð1Þ is greater than 5, the expected approximation ratio is
a
i i  b i i i  bi
a generally less than 1.3. This suggests that, when the design
When ai =bi =1, ∀i, the right hand side of Eq. (1) takes the patterns are relatively larger than the stamping rectangle,
maximum value of 2. Therefore the scan-line method can provide reasonably good decom-
position solutions.
r2 ð2Þ
The worst-case ratio of 2 is asymptotically tight as shown 2.2 Tilting toolbit scheme
by the example in Fig. 4. This example contains two small
rectilinear design patterns and n−1 slightly bigger rectilin- The second deposition scheme we propose is called the
ear design patterns, all of which are smaller than the size tilting toolbit scheme. Under this scheme, the toolbit takes
of a stamping rectangle. It is clear that the optimum number fewer relocations and deposits materials in a continuous
of stamping rectangles is n+1, which is the number of fashion over longer periods of time. Due to the grid layout
rectilinear design patterns. The scan-line decomposition of the nanopores, the toolbit has to be tilted by an angle in
the deposition process to avoid or reduce overlap of
material lines printed by different nanopores (see Fig. 6).
y Under this scheme, the toolbit moves in a straight line
following a specified direction and covers a stripe at each
time.
The titling toolbit scheme necessitates decomposing
design patterns into a set of parallel stripes of constant
height. While using this scheme, our major concern is to
obtain the shortest toolbit movement path and the minimum
number of toolbit direction changes. This objective is hard
to achieve in general, so we turn to another easier but
similar objective—minimizing the number of stripes, which
implicates a minimum number of direction changes and
usually results in a reasonably short toolbit movement path.
It is clear that if the design pattern is a convex polygon, the
minimum number of stripes is obtained by decomposing
along an edge of the convex polygon. This leads to a simple
x
polynomial design pattern decomposition algorithm: (1) for
Fig. 3 Horizontal slicing in the scan-line decomposition method each edge of the convex polygon, we find the distance
564 Int J Adv Manuf Technol (2010) 51:561–573

Fig. 4 A worst-case example n stamping rectangles


for the scan-line decomposition
method

between the two bounding lines that are parallel to this decomposition results printing features in the following
edge, and then (2) we pick the edge that introduces two discussion.
bounding lines of the minimum distance, and decompose
the convex design pattern along this edge.
Note that the optimal decomposition direction is not 3 Nanopore assignment and fluidic routing
necessarily parallel to the longest edge of a convex
polygon. To see this, let’s consider an example shown by After the design patterns are decomposed into a set of
Fig. 7, in which the two curves are actually made of many printing features, the corresponding nanopore assignments
tiny edges. The longest edge is e1, and the distance between are determined by checking whether a nanopore is within a
the two bounding lines parallel to edge e1 is d1. The optimal certain design pattern or its movement trajectory cuts across
decomposition direction, however, is clearly perpendicular a design pattern. The details are as follows.
to e1, and the distance between the two corresponding
(i) Under the stamping scheme, we first locate the toolbit
bounding lines is d2, which is smaller than d1.
at the center of a stamping rectangle, and then for each
When the design pattern is a non-convex polygon, it can
nanopore we check if it is located in a design pattern
be shown that the minimum number of stripes is obtained
area covered by this stamping rectangle by running the
by decomposing along an edge of the convex hull of the
point location geometric algorithm [5]. If the answer is
design pattern polygon. Constructing a convex hull around
yes, then this nanopore is active and assigned the
a non-convex polygon is a classical computational geomet-
material of the design pattern, otherwise not.
ric problem, and there exist several efficient algorithms in
(ii) Under the tilting toolbit scheme, since the toolbit
the literature. For example, the Jarvis March algorithm [2]
moving direction is the same as the decomposition
has a computational complexity of O(k2), the Graham scan
direction, for each nanopore we compute its trajectory
algorithm [3] and the divide-and-conquer algorithm [4]
along the moving direction in each stripe and then
both have a computational complexity of O(klogk), where k
check if this trajectory intersects with a design pattern
is the number of vertices of the non-convex polygon.
by running the line–polygon intersection geometric
Therefore, in accordance with the two deposition
schemes proposed above, we obtain two different decom-
position results: (1) a set of stamping rectangles, and (2) a
set of parallel stripes. We call both design pattern


2.20 θ
2.00

1.80
toolbit
E [ ρ] 1.60
… … …
1.40

1.20

1.00
0 2 4 6 8 10 12 14 16 18 20 22
k Nanopore

Fig. 5 Monte Carlo simulation result of E[ρ] w.r.t. k Fig. 6 Tilting toolbit—θ is the tilting angle
Int J Adv Manuf Technol (2010) 51:561–573 565

d1 In the studied nanodeposition manufacturing process,


however, one source reservoir generally supplies liquid
material to multiple sink nanopores. So the problem is
better characterized as a vertex-disjoint trees (VDT)
problem, which is formally defined as follows.

e1 d2 Input: A graph G(N, A) and k node sets T1, T2, ... Tk ⊆


N. Ti ∩Tj =∅, ∀i≠j. Ti is called a net and the elements
in Ti are called terminals.
Output: For each net Ti, ∀i, find a Steiner tree TRi ⊆G
connecting all terminals in Ti such that TR1, TR2,...,
TRk are mutually vertex-disjoint.
Fig. 7 Optimal decomposition direction not parallel to the longest
edge When the number of terminals in each net is less than or
equal to 2, this problem is reduced to the vertex-disjoint
paths problem. It is clear that the VDP problem is a special
algorithm [5]. If the answer is yes, then this nanopore case of the VDT problem, and so the VDT problem is also
is active and assigned the material of the design NP hard.
pattern, otherwise not. Compared with the VDP problem, the VDT problem has
The result of nanopore assignment is called liquid received much less attention. This problem does not have a
configuration in the toolbit fluidic network. A liquid common name in the literature and is variously referred to
configuration assigns liquid materials to only those nano- as the vertex-disjoint Steiner trees problem, vertex-disjoint
pores that are active. Note that, when the toolbit relocates tree packing problem, Steiner tree packing problem and
from one printing feature to another, the liquid configura- Steiner forest problem [9–11].
tion in the toolbit is likely to change, which may lead to a In this research, we propose the Smallest Steiner
liquid changeover in the toolbit fluidic network. The liquid Minimum Tree Algorithm to solve VDT problems based
changeovers are generally costly, and thus their number on the following observation: Let ℓ(SMTi) be the number of
needs be minimized. We will address this topic in details in vertices in the minimum Steiner tree that connects net Ti
Section 5. and h ¼ minf‘ðSMTi Þg. It is clear that the optimum
i
After assigning correct liquid materials to the nanopores, solution can connect at most O(n/η) nets, where n is the
we then need to deliver them from their source reservoirs to number of vertices in the underlying graph. This algorithm
the corresponding sink nanopores. The source reservoirs are iteratively attempts to find the smallest Steiner minimum
connected to the top layer of the toolbit 3-D grid fluidic tree among the unconnected nets, and then removes the
network, while the sink nanopores are on the bottom layer. found tree from the graph.
The toolbit allows multiple different liquid materials to The Smallest Steiner Minimum Tree Algorithm has been
flow through simultaneously. But those liquid flow paths shown to be able to provide a solution of Ω(OPT2/|VOPT|)
should be cross-free to avoid mixing and contamination of optimal, where |VOPT| is the number of vertices used in the
different materials. Therefore, the liquid delivery planning optimum solution, and OPT is the number of connected
is equivalent to finding vertex-disjoint routes from the nets in the optimum solution [12].
sources to the corresponding sinks in a 3-D grid network. In each iteration, the Smallest Steiner Minimum Tree
The simplest situation is that one source supplies liquid algorithm will have to solve the Steiner minimum tree
material to only one sink, in which case the route from a problem, which is NP complete [13]. However, in the
source to its sink is a path, and thus this problem is a literature there exist several heuristic algorithms [14–16]
vertex-disjoint paths (VDP) problem. The VDP problem is with good constant approximation ratios. When the Steiner
NP hard in general [6]. Kramer and van Leeuwen [7] minimum tree problems in the algorithm are solved
showed that the VDP problem remains NP hard even when approximately, the overall performance of the algorithm
the underlying graph is a 2-D mesh. Thus our problem, will be compromised. It has been shown that the algorithm
finding vertex-disjoint paths in a 3-D grid graph, is also NP provides a solution of Ω(OPT2/(ρ·|VOPT|)) optimal, where ρ,
hard. The best known heuristic is the Minimum Shortest ρ>1, is the approximation ratio of the heuristic adopted to
Path Algorithm proposed by Kolliopoulos and Stein [8], solve the Steiner minimum tree problem [12].
which is guaranteed to find a solution that is Ω(OPT2/|VOPT|) Note that there may not exist a feasible solution to a
optimal, where |VOPT| and OPT are the numbers of used VDT problem. Even there is one, we may still not be able
vertices and connected paths in the optimum solution, to find it due to the NP hardness of the problem. In this
respectively. case, we can run the algorithm to connect as many nets as
566 Int J Adv Manuf Technol (2010) 51:561–573

possible in a solving round and the remaining nets are It is clear that a CSL cannot be routed by vertex-
connected in separate rounds. disjoint paths in a single layer, but can be routed in two
While the general VDT problem is very difficult, the layers. Based on the CSL, the following observations can
problems arising in the studied nanodeposition manufac- be made.
turing process are somewhat much easier, due to the fact
Observation 1 A set of k sources and a set of k sinks
that the nanopores assigned to the same liquid material are
that lie on two orthogonal lattice lines of an n×n 2-D
usually clustered together, i.e., adjacent to each other.
grid graph without overlapping can be connected by
Moreover, there is usually only a single source reservoir
vertex-disjoint paths in no more than two layers.
for each liquid material, and we have full control to
Observation 2 A set of k sources and a set of k sinks
choose the connection points of the liquid reservoirs on
that lie on two parallel lattice lines of an n×n 2-D grid
the top grid layer of the toolbit fluidic network. We can
graph without overlapping can be connected by vertex-
represent the clustered sink nanopores assigned the same
disjoint paths in no more than three layers.
liquid material by a “super” sink in an upper grid layer of
Observation 3 A set of k sources and a set of k sinks
the toolbit grid fluidic network, and so convert the VDT
that lie on boundary lines of an n×n 2-D grid graph
problem into a smaller VDP problem. Note that any lattice
without overlapping can be connected by vertex-
point within the “projected” grid area of the clustered
disjoint paths in less than three layers.
nanopores is suitable to place the super sink, thus we have
partial control over the locations of the super sinks. This We carefully assign the locations of the source
fact further improves the solvability of the liquid routing reservoirs and super sinks in such a way that they can be
problem. routed onto a boundary line or lattice line on the
Particularly, we are interested in the feasible routing corresponding grid layers. If the conditions in the above
conditions that help us assign the locations of the observations are satisfied, we can easily find a feasible
source reservoirs and super sinks in such a way that fluidic routing solution. Testing if sources/sinks can be
feasible liquid routing solutions exist and easy to be connected to a boundary line or lattice line of a 2-D grid
found. Given the 3-D grid fluidic network, we study the by vertex-disjoint paths can be carried out by applying the
feasible routing conditions based on the concept of max-flow algorithm [18] as follows: transform the 2-D
cross-point switch layout (CSL), which is a layout grid graph in such a way that each lattice point vi is split
where sources and sinks are located on two orthogonal into two vertices v1i and v2i connected by a directed edge
boundary lines of a grid graph and the sequence of from v1i to v2i ; all inbound edges of vi are reconnected to
sources and sinks is reversed (see Fig. 8). The CSL v1i , while all outbound edges are reconnected to v2i ; an
terminology originates from the literature of digital and artificial node S is introduced with outbound edges
printed circuit board design [17]. connected to all sources/sinks; another artificial node T
is also introduced with inbound edges connected to all
vertices on the destination boundary line or lattice line; set
all edge capacities to one; solve the max-flow problem
from node S to node T to determine whether the routing is
1
feasible or not. If feasible, the max flow is equal to the
: Sources number of sources/sinks and the vertex-disjoint paths are
: Sinks obtained by following the max-flow paths. Figure 9
2 illustrates this method.
In practical cases, the number of liquid materials need to
be routed simultaneously is not large, we can always put
3
source reservoirs on a lattice line and thus a toolbit network
with four layers of grid can accomplish most deposition
4 tasks (one layer is required to project clustered nanopores to
super sinks).

5
4 Toolbit path planning

For a given design pattern decomposition, the actual time


1 2 3 4 5
spent on depositing liquid materials is fixed. However, the
Fig. 8 Cross-point switch layout (CSL) choice of toolbit path to traverse the resulting printing
Int J Adv Manuf Technol (2010) 51:561–573 567

Fig. 9 Test if sources s1 (v2), s2


(v5), s3 (v6) can be connected to v11 v12
the left boundary line (v1, v4, v7)
by vertex-disjoint paths. The v12 v22
max-flow paths are shown by
bold arrows in the transformed
graph. The max-flow paths in- v31 v32
dicate that v2 →v1, v5 →v4, and
v6 →v9 →v8 →v7 are the vertex-
v1 v2 v3
disjoint paths in the original grid v14 v42
graph
s1
v4 v5 v51 v52 T
v6 S
s2 s3
v16 v62
v7 v8 v9
v17 v72

v81 v82

v91 v92

features will have a big impact on the deposition spent on draining or refilling the toolbit for printing feature
manufacturing throughput efficiency, which is determined i, ∀i, is determined by two factors: the liquid movement
by (1) toolbit relocation time, i.e., the time spent on speed in the toolbit fluidic network—vf, and the longest
moving the toolbit from the end point of one printing source-sink path—Li. Therefore, the time to remove (tDi ) or
feature to the start point of another, and (2) liquid refill (tFi ) the liquid materials in the toolbit for printing
changeover time, i.e., the time spent on changing the feature i is written as
liquid configurations in the toolbit fluidic network. While
tDi ¼ tFi ¼ Li =vf ð4Þ
we relocate the toolbit from one printing feature to
another, the corresponding liquid configurations may It is seen that
change, and thus incur a liquid changeover. So the toolbit
path needs to be carefully planned to minimize the total tcði;jÞ ¼ tDi þ tFj ¼ tDj þ tFi ¼ tcðj;iÞ ð5Þ
time spent on toolbit relocation movement and liquid
for any two printing features i and j, i≠j.Let pi be the point
changeovers.
in printing feature i that an edge is connected to. When i is
a stamping rectangle, pi is its geometric center; when i is a
4.1 Cost of toolbit relocation and triangle inequality
stripe, pi is an endpoint of the line segment that represents
this stripe. To reduce the toolbit relocation cost, the liquid
We consider a stamping rectangle as a vertex repre-
changeover is carried out during the toolbit relocation
sented by its geometric center and a stripe as a line
movement. So the cost of relocating the toolbit from point
segment represented by its start and end points. Edges
pi to point pj can be written as
are established between every pair of vertices, between
a vertex and an endpoint of a stripe, and between two   n   o
c pi ; pj ¼ max tcði;jÞ ; d pi ; pj =vr ð6Þ
endpoints of every pair of stripes. The edge cost is the
sum of the toolbit relocation time and any necessary
where d(pi, pj) is the Euclidean distance between pi and pj,
liquid changeover time. It can be shown that the edge
and vr is the toolbit relocation speed. Since tcði;jÞ ¼ tcðj;iÞ and
costs are symmetric and satisfy the triangle inequality as
d(pi, pj)=d(pj, pi), it can be verified that the edge costs, or
follows.
toolbit relocation costs, obtained by Eq. (6) are symmetric
Denote by tcði;jÞ the liquid changeover time from printing
feature i to j, i≠j. We consider a so-called drain-and-refill    
liquid changeover method: if necessary, liquid materials for c pi ; pj ¼ c pj ; pi ; 8i; j ð7Þ
i are first removed from the toolbit fluidic network and then
the liquid materials for j are delivered from the source Also, the toolbit relocation costs satisfy the triangle
reservoirs to the corresponding sink nanopores. The time inequality as Proposition 1 states.
568 Int J Adv Manuf Technol (2010) 51:561–573

Proposition 1 The following triangle inequality holds problem is a Rural Postman Problem (RPP) [20]. The
      toolbit path planning problem can therefore be classified
c pi ; pj  c pi ; pk þ c pk ; pj into the category of Generalized Traveling Salesman
where i≠j, i≠k and j≠k. Problem (GTSP), which is NP hard. Since a vertex can
be viewed as a degenerate edge, this problem can be
    treated as a special version of RPP. Based on this
Proof Since d pi ; pk þ d pk ; pj  d ðpi ; pj Þ, we have
        observation, the toolbit path planning problem can be
c pi ; pk þ c pk ; pj ¼ max tcði;k Þ ; d pi ; pk =vr solved by an extended RPP algorithm that is similar to the
    Christofides TSP algorithm [21]. The details of this
þ max tcðk;jÞ ; d pk ; pj =vr algorithm are as follows.
    ð8Þ
 d pi ; pk =vr þ d pk ; pj =vr Extended RPP Algorithm
Step 1: In graph G(N,A), we shrink all edges in R into
 d ðpi ; pj Þ=vr
a set of vertices denoted by NR. Then transfer
Also, it is seen that G(N,A) into a new graph G1 in which the edge
cost is defined as:
tcði;k Þ þ tcðk;jÞ ¼ tDi þ tFk þ tDk þ tFj  tDi þ tFj ¼ tcði;jÞ
(i) If both vertices belong to N, then the edge cost is
Therefore, it can be established that the same as that in G(N,A).
        (ii) If one vertex belongs to set N while the other
c pi ; pk þ c pk ; pj ¼ max tcði;k Þ ; d pi ; pk =vr
one belongs to NR, then the edge cost is the
    minimum cost of the two edges in G(N,A) that
þ max tcðk;jÞ ; d pk ; pj =vr
ð9Þ connect the vertex that belongs to N and the two
 tcði;k Þ þ tcðk;jÞ endpoints of the shrunken edge represented by
the vertex that belongs to NR.
 tcði;jÞ (iii) If both vertices belong to NR, then the edge cost
is the minimum cost of the four edges in G(N,
By Eqs. (8) and (9), we have
A) that connect the endpoints of the two
    n   o  
c pi ; pk þ c pk ; pj  max tcði;jÞ ; d pi ; pj =vr ¼ c pi ; pj shrunken edges represented by the two vertices.
Step 2: Run Kruskal’s algorithm [22] or Prim’s
algorithm [23] to find the minimum spanning
This finishes the proof. □ tree MST(G1) in graph G1.
Step 3: Construct a graph G2 based on MST(G1) ∪ N ∪
The fact that the toolbit relocation costs are symmetric R, i.e., each vertex that belongs to NR in graph
and satisfy the triangle inequality makes it possible for us to G1 is replaced by its original shrunken edge in
devise an efficient algorithm to solve the toolbit path R. In G2, the edges are reconnected to the
planning problem with a guaranteed constant approxima- correct endpoints that determine the edge
tion ratio, which will be discussed in the next subsection. costs. It is seen that G2 is still a tree since it
is connected and cycle free.
4.2 Problem definition and extended RPP algorithm Step 4: In graph G2, first find the set J of vertices of
odd degree, and then find a minimum-cost
The toolbit path planning problem can be formally defined matching M on set J in G(N,A).
as follows. Step 5: Construct a graph G3 =G2 ∪ M, and then find a
Input: A graph G(N,A) with a nonnegative cost matrix Eulerian tour U in G3.
C={cij} associated with edge set A, and a subset R of Step 6: Output the closed tour after doing shortcut in
edges, i.e., R⊆A. The edge costs are symmetric and U.
satisfy the triangle inequality. End algorithm
Output: A minimum-cost closed tour that traverses all Note 1: In step 4, the sum of degrees over all vertices in
edges in R and visits all vertices in N once and only G2 is even since all edges in G2 are counted
once. twice. The degree of each vertex in set J is odd,
When set R is empty, this problem is a traditional so the number of vertices in set J must be even.
traveling salesman problem (TSP) [19]; while if R=A and Note 2: In step 4, the minimum-cost matching problem is
all edges in set R have to be traversed at lease once, this solved by Lawler’s O(|J|3) algorithm [24].
Int J Adv Manuf Technol (2010) 51:561–573 569

Note 3: In step 5, one can verify that G3 is Eulerian since configuration with no feasible routing solution is broken
every vertex has an even degree. down into separate liquid configurations, and the fluidic
routing problem is re-solved until a feasible solution is
Figure 10 shows an implementation example of the
found, that is, we use the VDP/VDT algorithm to connect
Extended RPP algorithm.
as many nets as possible in a solution round and those
Since the edge costs are symmetric and satisfy the
remaining nets are connected in separate rounds by
triangle inequality, it can be shown that the solution
reapplying the algorithm.
obtained by the Extended RPP Algorithm is 1.5 optimal,
Note that, in the integrated planning flowchart, the step
by using a similar proof argument as Christofides [12, 21].
of grouping liquid configurations is important since it can
We can further improve the obtained toolbit path by using
reduce the number of costly liquid changeovers in the
the r-opt algorithm [25, 26], which is an iterative local
toolbit fluidic network. Nanopore assignment gives us a set
search method where r edges are found and interchanged in
of liquid configurations for all printing features. Different
a hope to shorten the path length.
liquid configurations may imply liquid changeovers in the
Please note that, when the liquid changeover time
toolbit fluidic network. Since the liquid changeover can
heavily dominates the toolbit relocation time, it may be
cause significant throughput inefficiency, we need to
preferable to deposit all the printing features with the same
classify all liquid configurations into groups that corre-
liquid configuration consecutively. In this case, the problem
spond to the minimum number of liquid changeovers. The
can be modeled as a Clustered Traveling Salesman Problem
classification is based on the concept of compatible groups.
(CTSP) [27, 28]. We can solve this problem by the 2.75-
optimal heuristic developed by Guttmann-Beck, Hassin,
Definition 1 (Compatibility) Two liquid configurations are
Khuller and Raghavachari [29].
said to be compatible if each nanopore is assigned less than
one liquid material when the two liquid configurations are
5 Integrated planning approach combined.

In this section, we integrate design pattern decomposition, Figure 12 illustrates this definition. If this compatibility
nanopore assignment, fluidic routing and toolbit path condition is satisfied, we simply say these two liquid
planning into a systematic process planning approach for configurations are compatible, and the group that contains
the studied nanodeposition manufacturing systems. The compatible liquid configurations is called a compatible
idea of this approach can be illustrated by the flowchart in group. In order to achieve the minimum number of liquid
Fig. 11. changeovers, we intend to find the smallest number of
In the flowchart, a loop is introduced between the liquid compatible groups that cover all liquid configurations.
configuration and fluidic routing computation. It is because We build a compatibility graph, denoted by G(V, E), in
some liquid configurations may involve many different which each vertex represents a liquid configuration. An
liquid materials and have complicated layouts, and the edge is established between two liquid configurations
liquid routing algorithm may potentially fail to find feasible (vertices) if and only if they are compatible. It can be seen
routes for all liquid materials. If this happens, the liquid that the sub-graph introduced by the vertices in a

Fig. 10 Illustration of the Ex-


tended RPP Algorithm. a N and
R; b minimum spanning tree; c
min-cost matching of odd-
degree vertices (in dash lines); d
Eulerian tour; e resulting closed
tour after applying shortcuts in
the Eulerian tour
(a) (b) (c)

(d) (e)
570 Int J Adv Manuf Technol (2010) 51:561–573

Design patterns

Decompose design patterns into printing features Pattern decomposition


algorithms

Printing features

Compute liquid configuration Nanoporeassignment


for each printing feature algorithms

Group liquid configurations Minimum Clique


Partition algorithms

Liquid configurations

Compute liquid routing in toolbit fluidic network VDP/VDT


algorithms

Break down the liquid No


configurations that have no Feasible?
feasible routing solutions
Yes

Plan toolbit path Toolbit path planning


algorithms

Fig. 11 Flowchart of the integrated planning approach

compatible group is a complete graph, since every two reducible to the MCPP. The MGCP is a classical NP-hard
vertices in the group are compatible and thus connected problem [13]. The greedy max independent set algorithm
by an edge. And a compatible group forms a clique in developed by Johnson [30] gives a solution with O(n/log n)
graph G(V, E). Figure 13 shows an example, in which colors (groups), where n=|V|. Wigderson [31] improved
compatible groups {1, 2, 5, 6} and {11, 12, 15, 16} form two this bound to O(n(loglog n)2/(log n)2). The current best
cliques. known heuristic is provided by Halldórsson [32] with a
Obtaining the smallest number of compatible groups is bound O(n(loglog n)2/(log n)3).
equivalent to finding the minimum number of cliques in the In this research, we modify Johnson’s max independent
compatibility graph G(V, E) that partition the vertex set V. set algorithm to group the liquid configurations as follows.
This problem is known as the Minimum Clique Partition
Liquid Configuration Grouping Algorithm
Problem (MCPP) that is closely related to the Minimum
Graph Coloring Problem (MGCP), which seeks a minimum Step 1: Build compatibility graph G on all liquid
number of independent sets (coloring) that partition the configurations.
vertices. One can transfer the MCPP into the MGCP by Step 2: H←∅
simply redefining the edge set: an edge is established Step 3: G′←G, I←∅
*
between two liquid configurations if and only if they are Step 4: In all vertices
 »  of G′, find
 a vertex
  v of max0 degree,

not compatible. Similarly, the MGCP is polynomially i.e., deg v ¼ max deg vj jvj 2 V ðG Þ

Fig. 12 Numbers in circles


identify liquid materials 1 1 3 1
assigned to the corresponding
nanopores. a and b are compat- 1 1 1 3 1 3
ible; a and c are incompatible; b
and c are compatible 2 2 2 2 2

2 2 2

(a) (b) (c)


Int J Adv Manuf Technol (2010) 51:561–573 571

1 5 9 13 The output of the algorithm, set H, provides a reasonably


good clique partition of the compatibility graph G and
liquid configuration grouping solution.
Based on the presented integration framework, we
2 6 10 14
developed a software tool that implements the proposed
algorithms. This software plans and simulates the nano-
deposition manufacturing process. It also outputs CNC
3 7 11 15 commands that are used to drive the physical nano-
deposition manufacturing systems. A screenshot of this
software tool working on irregular design patterns made of
different materials is displayed in Fig. 14. In the left panel,
4 8 12 16
the design patterns are decomposed, and the deposition
Fig. 13 Compatibility graph process is simulated. The top right panel shows the toolbit
path and the current position of the toolbit. The middle
right panel displays the active nanopores on the bottom
Step 5: I←I∪{v*}, and remove v* and all vertices that layer of the toolbit grid network that are turned on for the
are not adjacent to v* from G′. current deposition step. The bottom right panel shows the
Step 6: If V(G′)≠∅, go to step 4. routing paths of the required liquid materials from their
Step 7: H←H∪{I} source reservoirs to the corresponding nanopores.
Step 8: Remove the sub-graph built on vertices in I This software has demonstrated its planning and con-
from G. trolling capabilities in the manufacturing of nanoscale
Step 9: If V(G)≠∅, go to step 3. multilevel PCB-like design patterns, which consist of
Step 10: Output set H. rectangular components and trace connections. The design
End algorithm patterns read by the software are in a neutralized XML

Fig. 14 Screenshot of the nanodeposition manufacturing controller working on irregular design patterns
572 Int J Adv Manuf Technol (2010) 51:561–573

<?xml version="1.0" encoding="ISO-8859-1"?>


6 Conclusions
<DESIGN>
<BOARD>
0_0;11_0;11_10;0_10;0_0 This research addresses the planning problem in a nano-
</BOARD> deposition manufacturing process. Based on the 3-D grid
<TRACES>
<TRACE MATERIAL="2" WIDTH="0.15"> structure of the toolbit fluidic network used in the nano-
2.5_4.125;3.4_4.125 deposition manufacturing systems, we propose two depo-
</TRACE> sition schemes: a stamping scheme and a tilting toolbit
…. scheme. Then we provide efficient algorithms to decom-
</TRACES>
<POLYGONS> pose the design patterns into a number of printing features
<POLYGON MATERIAL="3"> according to the two different deposition schemes. A set of
2_7;6_8;5_9;2_7 liquid configurations in the toolbit fluidic network are
</POLYGON>

obtained by assigning liquid materials to nanopores for
</POLYGONS> each printing feature. Routing liquid materials from source
</DESIGN> reservoirs to sink nanopores is formulated as the vertex-
disjoint trees (VDT) problem, which is a generalization of
Fig. 15 Neutralized XML format of design patterns
the NP-hard vertex-disjoint paths (VDP) problem. We solve
the VDT problem by the Smallest Steiner Minimum Tree
Algorithm, which turns out to have a similar approximation
format (see Fig. 15), where rectangles are defined by the ratio as the best known VDP heuristic. Relocating the
vertices and traces are defined by the endpoints and width. toolbit from one printing feature to another may incur
The software automatically selects the stamping scheme to costly liquid changeovers in the toolbit fluidic network, so
deposit rectangular components and the tilting toolbit the toolbit path needs to be carefully planned. Since the
scheme to deposit trace connections. Figure 16 shows a costs of toolbit relocation are symmetric and satisfy the
screenshot of this software tool working on multilevel triangle inequality, we propose an extended RPP algorithm,
PCB-like design patterns. which has a proved 1.5-optimal approximation ratio, to plan

Fig. 16 Screenshot of the nanodeposition manufacturing controller working on multilevel PCB-like design patterns
Int J Adv Manuf Technol (2010) 51:561–573 573

the toolbit path. We finally consolidate the proposed 13. Garey MR, Johnson DS (1979) Computers and intractability: a
guide to the theory of NP-completeness. Freeman, San Francisco
algorithms into an integrated planning approach, based on
14. Takahashi H, Matsuyama A (1980) An approximate solution for
which a software tool is developed to plan, simulate, and the Steiner tree problem in graphs. Math Jpn 24(6):573–577
control the studied nanodeposition manufacturing systems. 15. Kou L, Markowsky G, Berman L (1981) A fast algorithm for
Steiner trees. Acta Informatica 15:141–145
16. Robins G, Zelikovsky A (2000) Improved Steiner tree approxi-
Acknowledgement This research was funded by the Center for mation in graphs. In proceedings of the 10th Annual ACM-SIAM
Nanoscale Chemical–Electrical–Mechanical Manufacturing Systems Symposium on Discrete Algorithms 770–779
(Nano-CEMMS) under the National Science Foundation Award No. 17. Sunazawa M, Hani T (1974) Low-power cross-point switch
DMI-0328162. matrix for space-division digital-switching network. ISSCC
Digest of Technical Papers 206–207
18. Ahuja RK, Magnanti TL, Orlin JB (1993) Network flows: theory,
algorithms, and applications. Prentice Hall, New Jersey
References
19. Lawler EL, Lenstra JK, Rinnooy Kan AHG, Shmoys DB (1985)
The traveling salesman problem: a guided tour of combinatorial
1. Gruenbaum B, Shephard GC (1986) Tilings and patterns. W H optimization. Wiley, New York
Freeman & Co, New York 20. Orloff CS (1974) A fundamental problem in vehicle routing. Netw
2. Jarvis RA (1973) On the identification of the convex hull of a 4:35–64
finite set of points in the plane. Inf Process Lett 2:18–21 21. Christofides N (1976) Worst case analysis of a new heuristic for
3. Graham RL (1972) An efficient algorithm for determining the the traveling salesman problem. Technical Report 388, Graduate
convex hull of a finite planar set. Inf Process Lett 1:132–133 School of Industrial Administration, Carnegie-Mellon University,
4. Preparata F, Hong SJ (1977) Convex hulls of finite sets of points Pittsburgh, PA
in two and three dimensions. Commun ACM 20(2):87–93 22. Kruskal JB (1956) On the shortest spanning subtree of a graph
5. de Berg M, van Kreveld M, Overmars M, Schwarzkopf O (2000) and the traveling salesman problem. In Proc Am Math Soc 7
Computational geometry: algorithms and applications, 2nd edn. (1):48–50
Springer-Verlag, London 23. Prim RC (1957) Shortest connection networks and some general-
6. Karp RM (1975) On the complexity of combinatorial problems. izations. Bell Syst Tech J 36:1389–1401
Netw 5:45–68 24. Lawler EL (1976) Combinatorial optimization: networks and
7. Kramer MR, van Leeuwen J (1984) The complexity of wire matriods. Holt, Rinehart and Winston, New York
routing and finding the minimum area layouts for arbitrary VLSI 25. Lin S (1965) Computer solutions of the traveling salesman
circuits. In: Preparata FP (ed) Advance in computing research 2: problem. Bell System Technical Journal 44:2245–2269
VLSI theory. JAI Press, London, pp 129–146 26. Lin S, Kernighan BW (1973) An effective heuristic algorithm for
8. Kolliopoulos SG, Stein C (1998) Approximation disjoint-path the traveling salesman problem. Oper Res 21:498–516
problems using greedy algorithms and packing integer programs. 27. Chisman JA (1975) The clustered traveling salesman problem.
Sixth International Conference on Integer Programming and Comput Oper Res 2:115–119
Combinatorial Optimization (IPCO) 153–168, 1998, Houston, 28. Jongens K, Volgenat T (1985) The symmetric clustered traveling
USA salesman problem. Eur J Oper Res 19:68–75
9. Lau LC (2004) An approximate max-Steiner-tree-packing min- 29. Guttmann-Beck N, Hassin R, Khuller S, Raghavachari B (2000)
Steiner-cut theorem. In Proceedings of the 47th Annual IEEE Approximation algorithms with bounded performance guarantees
Symposium on Foundations of Computer Science 61–70 for the clustered traveling salesman problem. Algorithmica
10. Wagner D (1993) Simple algorithms for Steiner trees and paths 28:422–437
packing problems in planar graphs. CWI Q 6(3):219–240 30. Johnson DS (1974) Worst case behavior of graph coloring
11. Suzuki H, Akama T, Nishizeki T (1990) Finding Steriner forests algorithms. In Proceedings of 5th South-Eastern Conference on
in planar graphs. In Proceedings of the 1st Annual ACM-SIAM Combinatorics, Graph Theory and Computing, Canada 513–528
Symposium on Discrete Algorithms 444–453 31. Wigderson A (1983) Improving the performance guarantee for
12. Tang D (2006) Logistics of fluid delivery in micro/nano fluidic approximate graph coloring. Inf Process Lett 30:729–735
networks. Ph.D. Dissertation, University of Illinois at Urbana- 32. Halldórsson MM (1993) A still better performance guarantee for
Champaign approximate graph coloring. Inf Process Lett 45:19–23

You might also like