Date post: | 13-Dec-2015 |
Category: |
Documents |
Upload: | marion-dean |
View: | 225 times |
Download: | 1 times |
NCKU CSIE EDALAB
Tsung-Wei Huang, Chun-Hsien Lin, and Tsung-Yi Hohttp://eda.csie.ncku.edu.tw
Department of Computer Science and Information EngineeringNational Cheng Kung University
Tainan, Taiwan
ACM/IEEE International Conference on Computer Aided Design
NCKU CSIE EDALAB
Outline
IntroductionIntroduction
Problem FormulationProblem Formulation
AlgorithmsAlgorithms
Experimental ResultsExperimental Results
ConclusionConclusion
NCKU CSIE EDALAB
Digital MicroFluidic Biochip (DMFB)
Side view
Top view
Droplet
Bottom plate
Top plate
Ground electrode
Control electrodes (cells)
Hydrophobic insulation
Droplet Spacing
High voltage to generate an electric field
The schematic view of a biochip (Duke Univ.)
Reservoir/Dispensing port
Droplets
Control electrodes
NCKU CSIE EDALAB
Routing Constraints
․ Fluidic constraint¾ For the correctness of droplet transportation¾ No unexpected mixing among droplets of different nets¾ Static and dynamic fluidic constraints
․ Timing constraint¾ Maximum transportation time of droplets
Static fluidic constraint
Minimum spacing
Dynamic fluidic constraint
X
YT
NCKU CSIE EDALAB
Contamination problem
Disjoint routes
Routing with the wash droplet
S1
S2
T1
T2
2D microfluidic array
M
d1
d2
d1
d2
d1
d2
Dispensing port
Reservoir port
W
Routing Constraints
․ Contamination problem
d1
d2
W
(1) separately
(2) simultaneously
NCKU CSIE EDALAB
Outline
IntroductionIntroduction
Problem FormulationProblem Formulation
AlgorithmsAlgorithms
Experimental ResultsExperimental Results
ConclusionConclusion
NCKU CSIE EDALAB
Droplet Routing on Digital Microfluidic Biochips (DMFBs)
․ Input: A netlist of n droplets D = {d1, d2,…, dn}, the locations of blockages, and the timing constraint Tmax
․ Objective: Route all droplets from their source cells to their target cells while minimizing the number of used cells and execution time for better fault tolerance and reliability
․ Constraint: Fluidic, timing and contamination constraints should be satisfied.
2D microfluidic arrayDroplets
Target
• Fluidic constraint
• Timing constraint
Minimum spacing
Static fluidic constraint Dynamic fluidic constraint
• Contamination constraint
NCKU CSIE EDALAB
Related Work
Droplet Routing Algorithm Droplet routing in the synthesis of digital microfluidic biochips
[Su et al, DATE’06] Modeling and controlling parallel tasks in droplet based microfluidic systems
[K. F. B hringer, TCAD’06] A network-flow based routing algorithm for digital microfluidic biochips
[Yuh et al, ICCAD’07] Integrated droplet routing in the synthesis of microfluidic biochips
[T. Xu and K. Chakrabarty, DAC’07] A high-performance droplet routing algorithm for digital microfluidic biochips
[Cho and Pan, ISPD’08]
Contamination-Aware Droplet Routing Algorithm Cross-contamination avoidance for droplet routing in digital microfluidic
biochips [Y. Zhao and K. Chakrabarty, DATE’09] Disjoint routes Wash operation insertion strategy
o :
NCKU CSIE EDALAB
DATE’09
Total execution time for bioassay
Subproblem SP1
Subproblem SP2
Subproblem SPn
Subproblem SPn-1
Execution time of bioassay (time cycle)
Bio
log
ical
rea
ctio
n o
rder
…
I(1,2) I(2,3) I(n-1,n)
SP2
W2
SP1
W1
W1,2
W2,3
Wn-1,n
SPn
Wn
SPn-1
Wn-1
…
Sequencing relationship
Wash operation between subproblemsSubproblem of bioassayWash operation within one subproblem
NCKU CSIE EDALAB
Ours
Total execution time for bioassay
Subproblem SP1
Subproblem SP2
Subproblem SPn
Subproblem SPn-1
Execution time of bioassay (time cycle)
Bio
log
ical
rea
ctio
n o
rder
I(1,2)
SP1
W1
W1,2
…
I(2,3) I(n-1,n)
SP2
W2
W2,3
Wn-1,n
SPn
Wn
SPn-1
Wn-1
…
Sequencing relationship
Wash operation between subproblemsSubproblem of bioassayWash operation within one subproblem
SP1
W1,2
W1
SP2
W2,3
W2
SPn-1
Wn-1,n
Wn-1
Reduced timeTotal execution time for bioassay
NCKU CSIE EDALAB
Outline
IntroductionIntroduction
Problem FormulationProblem Formulation
AlgorithmsAlgorithms
Experimental ResultsExperimental Results
ConclusionConclusion
Preprocessing Stage
Intra-Contamination Aware Routing Stage
Inter-Contamination AwareRouting Stage
NCKU CSIE EDALAB
Preprocessing Stage
․ Preferred routing tracks construction¾ Reduce the design complexity for droplet routing¾ Minimize the used cells for better fault-tolerance¾ Increase the routability by concession control
․ Routing priority calculation¾ Routing-resource-based equation that considers the interference
between droplets inside the routing region globally¾ Increase the routability for droplet routing
NCKU CSIE EDALAB
Preprocessing Stage
S1
S2
T1
T3
T2
d3
d1
d2
․ Example
Moving vector analysis
Routing tracks construction
NCKU CSIE EDALAB
Preprocessing Stage
S1
S2
T1
T3
T2
Res1eq=((16+0)-(2+3))/16 = 11/16
Res2eq=((15+3)-(0))/18 = 1
Res3eq=((18+10)-(2+3))/28 =23/28
Route d2 to the A-cell of T2 by min-cost path
d1
S3
Concession Control
d2
d3
Res3eq=((18+10)-(2+6))/28 =20/28
Res1eq=((16+0)-(2))/16 = 14/16
․ Example
Moving vector analysis
Routing tracks construction
Routing priority calculation
Minimum cost path
NCKU CSIE EDALAB
Intra-Contamination Aware Routing Stage
․ Routing path modification by k-shortest path¾ Minimize the intra-contaminated spots while modifying the
routing path slightly
․ Routing compaction by dynamic programming¾ Minimize the completion time for bioassays (a series 2D routing
path to 3D routing path)
․ Minimum cost circulation flow technique¾ Schedule the wash operation for wash droplets¾ Solve the intra-contaminated spots optimally under our flow
construction
NCKU CSIE EDALAB
Routing Path Modification by k-shortest Path
․ A k-shortest based algorithm¾ Modify the original routing path slightly¾ Minimize the contaminated spots
S1 T1
S2
T2
S3
T3
Contaminated spots:
6 -> 6 -> 2
Original routing path
Select a highly contaminated path
Find the first shortest path
Find the second shortest path
Contamination spots Routing path Si Source location Ti Target location
NCKU CSIE EDALAB
Routing Compaction by Dynamic Programming
․ Major goals:¾ Transform the 2D routing into 3D routing considering the timing
issue and maintain the original routing path¾ Estimate an initial timing slot of each contaminated spot
․ Optimal substructure¾ Optimally solution for a pair of droplets
¾ Find the solution by dynamic programming incrementally
NCKU CSIE EDALAB
․ Illustration of dynamic programming¾ Decode the 2D routing path into the1D moving string (u, d, l, r)
․ Incremental compaction strategy
P1 P2 P3 P4 Pn-1 Pn
compactioncompactioncompaction
…
compactioncompaction
Routing Compaction by Dynamic Programming
S1 T1
S2
T2
MS1: rrrrrrMS2: dddddrrrr
d d d d d r r r r
0 1 2 3 4 5 6 7 8 9
r X X X X 4 5 6 7 8 9
r X X X X X 5 6 7 8 9
r X X X X X X 6 7 8 9
r X X X X X X X 7 8 9
r X X X X X X X X 8 9
r X X X X X X X X X 9
Compaction
d1
d2
d2
d2
d2
d2
d2 d2 d2 d2 d2
d1 d1 d1 d1 d1 d1
Used time = 9
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Introduction to minimum cost circulation (MCC) problem¾ A generalization of network flow problems¾ Constraints:
Bounded constraint:
- each flow arc has a lower bound and a upper bound
Conservation constraint:
- the net flow of each node is zero
¾ Objective: Minimize the cost:
ijijij uxl
ff Eijji
Ejiij xx
),(),(
fEji
ijij xCz),(
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Circulation flow formulation¾ Schedule an optimal solution for correct wash operation ¾ Four main phases of formulation
․ Two basic assignments¾ Node capacity assignment¾ Edge cost assignment
․ Two construction rules¾ Timing-based transitive topology¾ Connection strategy between phases
wash droplets
wastereservoircontaminated
spots
dropletsource
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Assignment 1: Node capacity assignment¾ Guarantee that the contaminated spot should be cleaned by
the wash droplets Node split
․ Assignment 2: Edge cost assignment¾ Minimize the used cells and routing time of wash droplets¾ The same routing cost model between two points
node split into input node and output node
VIO
node v
assign the 3-tuple (l, u, c) of this arc
)0,,1(
Rc
shoulderillegallegalvv cccRCostji
)()( ),(
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Construction rule 1: Timing-based transitive topology¾ Timing-based topology
The timing slot of each contaminated spot can be estimate by dynamic programming
Connect a early contaminated spot to a later one by the 3-tuple
¾ Transitive closure Allows the multiple wash droplets to perform the wash
operation, while satisfying the timing-based topology For any triple contaminated spot (vi, vk, vj), if there are
edges connect and , a transitive edge also connects by assigning the
))(,,0( , ji vvRCost
),( kin
iout vv ),( j
inkout vv
),( jin
iout vv ))(,,0( , ji vv
RCost
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Illustration
VIO
VIO
VIO
VIO
…
Contaminated spots
Assignment 1
Assignment 2
)0,,1(
)0,,1(
)0,,1(
)0,,1(
Timing-based topology
1̂t
2̂t
3̂t
nt̂
ntttt ˆˆˆˆ321
Transitive closure
Transitive edge
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Construction rule 2: connection between phases¾ Four major phases in the MCC formulation
)0,4,1(
W3
W1
W2
W4
L = 0U = 1C = 0
L = 0U = 1C = min-cost path
L = 0U = ∞ C = min-cost path
Source
Sink
...
...I O
I O
I O
I O
. ..
Source Wash droplets Contaminated spots Waste reservoir
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Theorem 1: There exists a feasible solution under the two basic assignments and two flow construction rules
¾ Proof The construction enhances at least one flow from the sink
back to the source, meaning that one flow from the source to the wash droplet set. There also exists one possible path to travel all the contaminated node set (topology sorted order).
S TW
Flow lower bound=1
C1
C2
Cn
Topology sorted order …
At least one wash droplet
Clean the contaminated spots
NCKU CSIE EDALAB
Minimum Cost Circulation Flow Technique
․ Theorem 2: Under the proposed flow construction, we can adopt the MCC algorithm to schedule correct and optimal wash operations
¾ Proof Theorem 1 shows there is a feasible solution, that is, the
contaminated spots are correctly cleaned by the wash droplets.
The MCC algorithm will obtain a feasible flow with minimum cost that represents the optimal scheduling of wash operations.
NCKU CSIE EDALAB
Inter-Contamination Aware routing Stage
․ Look-Ahead routing scheme¾ Contaminated spots also occur between subproblems¾ Predicting the inter-contaminations for the next subproblem
and clean the intra- and inter-contaminations simultaneously to reduce the completion time
Inter-contamination Intra-contamination
si si+1 si and si+1
NCKU CSIE EDALAB
Inter-Contamination Aware routing Stage
․ Travelling salesman problem optimization¾ Utilize the wash droplets while minimize the total used cells
and completion time¾ Clean the set of non-washed look-ahead contaminated spots in
the bounding box of node vi and vj
Vi
Vj
(vi, vj) is the edge of flow graphConsider the bounding box
Inter- and Intra- contaminated spots
Construction rule 1
TSP optimization
Inter-contaminated spots
Intra-contaminated spots
NCKU CSIE EDALAB
Outline
IntroductionIntroduction
Problem FormulationProblem Formulation
AlgorithmsAlgorithms
Experimental ResultsExperimental Results
ConclusionConclusion
NCKU CSIE EDALAB
Experimental Settings
․ Implement our algorithm in C++ language on a 2 GHz 64-bit Linux machine with 8GB memory
․ Comparison¾ Disjoint-route algorithm [Y. Zhao and K. Chakrabarty, DATE’09]
․ Tested on three benchmark suites¾ Benchmark [Su and Chakrabarty, DAC’05]
Circuit Size #Sub #Net #Dmax #W
in-vitro_1 16 x 16 11 28 5 4
in-vitro_2 14 x 14 15 35 6 4
protein_1 21 x 21 64 181 6 4
protein_2 13 x 13 78 178 6 4
Size: Size of the microfluidic array
#Sub: Number of subproblems
#Net: Total input nets
#Dmax: Maximum number of droplets with one subproblem
#W: Number of wash droplets
NCKU CSIE EDALAB
BioassayOurs (non k-SP) Ours (k-SP)
#Cintra #UC Texe CPU #Cintra #UC Texe CPU
in-vitro_1 53 388 225 0.18 21 351 193 0.58
in-vitro_2 27 291 217 0.13 5 281 191 0.39
protein_1 138 2418 1592 1.47 82 2213 1394 2.58
protein_2 106 1453 1280 0.71 61 1362 1108 1.49
Total 324 4550 3314 2.49 169 4207 2886 5.04
#Cintra: The number of intra-contaminations
CPU: The CPU time (sec)Texe: The execution time for the bioassays
BioassayContaminations Ours (non look-ahead) Ours (look-ahead)
#Cintra #Cinter #Cintra #UC Texe CPU #UC Texe CPU
in-vitro_1 21 19 21 446 227 0.32 351 193 0.58
in-vitro_2 5 8 5 267 210 0.24 281 191 0.39
protein_1 82 190 82 2493 1569 2.11 2213 1394 2.58
protein_2 61 141 61 1498 1172 0.47 1362 1108 1.49
Total 169 358 169 4704 3178 3.14 4207 2886 5.04
#UC: The number of used cells for routing
#Cintra: The number of intra-contaminations
#Ciinter: The number of inter-contaminations
CPU: The CPU time (sec)
#UC: The number of used cells for routing
Texe: The execution time for the bioassays
7.54%12.91%
10.57%
9.19%
47.84%
NCKU CSIE EDALAB
CircuitDisjoint route (Y. Zhao and K. Chakrabarty) Ours (k-SP + look-ahead)
#CS #UC Texe CPU #CS #UC Texe CPU
in-vitro_1 4 621 268 0.06 21 351 193 0.58
in-vitro_2 0 423 224 0.03 5 281 191 0.39
protein_1 18 3215 1508 0.23 82 2213 1394 2.58
protein_2 11 1574 1287 0.14 61 1362 1108 1.49
Total 33 5833 3287 0.46 169 4207 2886 5.04
#Cintra: The number of intra-contaminations
CPU: The CPU time (sec)
#UC: The number of used cells for routing
Texe: The execution time for the bioassays
27.88%
12.20%
NCKU CSIE EDALAB
Outline
IntroductionIntroduction
Problem FormulationProblem Formulation
AlgorithmsAlgorithms
Experimental ResultsExperimental Results
ConclusionConclusion
NCKU CSIE EDALAB
Conclusion
․ We proposed a contamination aware droplet router for DMFBs
․ We can optimally solve the wash droplets routing for the intra-contamination problem
․ Furthermore, the experimental results shown that our algorithm can achieve better timing result (Texe) and fault tolerance (#UC) compared with the best known results
NCKU CSIE EDALAB