Fault tolerance in algorithmic self-assembly; Design of new and powerful self-assembly models; Stochastic Modeling of DNA based nanorobotical devices; Algorithmic, graph-theoretic, and complexity-theoretical problems in self-assembly; Stochastic analysis of reversible self-assembly; Design and experimental implementation of DNA nanorobotical devices; Experimental implementation of DNA based self-assembly.

Project: Linear Time Algorithm for Single Source Shortest Path

Supervisor : Mr. Ulrich Meyer (MPI ,Germany) 
The project involved implementing a  SSSP ( single source shortest path ) algorithm for arbitrary directed  graphs  with random edge weights uniformly distributed in (0,1] and the algorithm needed O(n+m) time with high probability. It was basically based upon adaptive bucket spliting and label-correcting approach.  

Publications List [ DBLP Entry ] [Citeseer Entry]:


This paper presents a design of a nanomechanical DNA device that autonomously mimics the operation of a 2-state 5-color universal Turing machine . The states and transition-rules of turing machine are encoded in the various DNA sequences used in the design.  
We present an overview of the theoretical models, algorithms and our softwares for simulation and design of DNA tiling assemblies and DNA nano-mechanical devices. We also discuss our laboratory demonstrations of DNA lattices and motors, including those using the designs aided by our
software.
Complexity theoretic analysis of Graph Assembly Problem (GAP) : NP-completeness of Accretive GAP, #P-completeness of stochastic AGAP and P-SPACE completeness of Self-destructible GAP.

We propose a theoretical self-assembly model known as Time Dependent Glue (TDG) model, in which the glue strength between two juxtaposed tiles is a function of the time they have been in neighboring positions. We model the processes of catalysis and self-replication under TDG, and study  the tile-complexity for assembling shapes in our model and show that a thin rectangle of size kXN can be assembled using O(log N/loglog N) types of tiles, for any constant k>0.

The paper describes a special class of DNA tiling designs called reversible tiling designs which when carefully designed can provide inherent self-repairing capabilities to patterned DNA lattices so long crystal growth/regrowth happens with respect to at least two adjacent binding sites. We discuss the design, simulation and a preliminary DNA implementation of a particular instance of carefully designed reversible tiling which we callReversible XOR. We further note that although in theory one can transform any irreversible computational DNA tile set to its reversible  counterpart and hence improve the self-repairability of the computational lattice.
This paper presents stochastic modeling of reversible self-assembly process that includes the determination of equilibrium concentrations and rate of convergence to equilibrium. We prove that an assembly in chemical equilibrium implies that the corresponding markov chain has reached its ergodic limit. Based on the convergence rate analysis for the self-assembly of linear systems and assembly of  $n\times n$ square, we conclude that the corresponding markov chains are rapidly mixing. In fact, the tile system continues to converge to equilibrium exponentially fast even when we allow errors in the system. We extend the analysis to general shapes in two-dimensions and three-dimensional assembly of a $n\times n\times n$ cube.
 
In Preparation
We present a randomized algorithm for oblivious group testing that detect d=o(n) defective items from a set of n objects in O(dlog(n/d)) oblivious tests, where a test can determine the existence of any defective item in that test-sample. We prove the matching lower bound on number of tests, hence showing the optimality.  
We present an algorithm that runs in $O(n\log m/pm)$ expected time where $H$ is the entropy of the text and $p=1-(1-H^2)^{\frac{H}{1+H}}$ based on preprocessing of the text.
A crucial computational problem in constructing DNA objects is the design of DNA sequences that can correctly assemble into desired DNA secondary structures. TileSoft described here deliver the following features: 1) Its graphical user interface renders the molecular architect the ability to define DNA secondary structure and accompanying designing constraints directly on the interface as well as the ability to view the optimized sequence information pictorially. 2) Its fully automatic optimization module relieves the user of the drudgery of manually dictating the sequence selection process, and its evolutionary algorithm produces satisfactory results efficiently. 3) Its graphical user interface and its optimization module are smoothly integrated from user's perspective, while they are at the same time well separated in terms of software architecture, making each amenable to future improvements without negatively affecting the other.

Technical Reports

Supervisor: Prof. Alexander Hartemink (Duke university)
Course  :  Computational Functional Genomics (Jan 2003-April 2003)
We worked on improving the algorithm given by Ben-Dor for clustering the gene expression data that is not error-free.  We had to look at the representational graph for the given data, and find out the connected components.

Supervisor : Prof.  Alexander Hartemink ( Duke University)
Course  :  Algorithms in Computational Biology (Sep 2002-Dec 2002)
The problem was to design an algorithm for finding the exemplar breakpoint distance between two strings(genomes). We modified the Sankoff's algorithm, and found this new algorithm to perform much better than Sankoff's algorithm. It was like searching through a tree, and we improved the strategy for calculations done at nodes and the pruning method.

Supervisor: Prof.  Gershon Kedem ( Duke University)
Course :  Computer Architecture (Sep 2002-Dec 2002)
A new approach to static branch prediction known as Value Range Propagation(VRP) was implemented and compared to other approaches. The algorithm for VRP used concepts like control flow graph, ssa-edges, phi-functions, variable renaming, loop carried dependence.

Supervisor : Prof. Sandeep Sen (IIT Delhi)
Course : B.Tech Project (July 2001-May 2002)
A cache-efficient algorithm was designed and implemented for FFT calculation. The basic idea was to apply emulation theorem upon I/O model algorithm. It does FFT using butterfly on small subsets of input and then does matrix-transposition to reach onto the next stage of butterfly. It was found comparable to FFTW( fastest fourier transform in the west) in running time.

Supervisor : Mr. Ulrich Meyer (MPI ,Germany)
Course      : Summer Internship (May 2001-July 2001)
The project involved implementing a  SSSP ( single source shortest path ) algorithm for arbitrary directed  graphs  with random edge weights uniformly distributed in (0,1] and the algorithm needed O(n+m) time with high probability. It was basically based upon adaptive bucket spliting and label-correcting approach.

Supervisor : Prof. Sanjeev Kapoor (IIT Delhi)
Course       : Mini-Project  (Jan 2001-May 2001)
A terrain is given and using delauneys triangulation techniques the silhouettes and maps were extracted. Horizon trees were implemented to store these maps and silhouettes. A variant of sweepline algorithm was used to clip the map edges and silhouette edges, fastly. We also proposed a solution to counter the break in monotonicity of monotone chains and showed the solution was correct for motion in any arbitrary direction.

Supervisor : Prof. M. Balakrishnan (IIT Delhi)
Course : Digital Hardware Design (Jan 2000 - May 2000)
Implemented bubble sort on FPGA board to sort 8-bit numbers, which were inputted to the RAM.

Supervisor : Prof. Anshul Kumar (IIT Delhi),
Course : Computer Architecture (July 1999-Dec 1999)
Processor based on PowerPC architecture was designed and simulated to support an extended instruction set. It was fully pipelined (stalling and forwarding included) and all the critical timing issues were observed.