Difference between revisions of "Sierpinski triangle in the kTAM"

From self-assembly wiki
Jump to navigation Jump to search
(Error Management within the kTAM)
Line 29: Line 29:
  
 
==Error Management within the kTAM==
 
==Error Management within the kTAM==
A common technique to reduce growth errors is called proofreading. With the proofreading method individual type types are replaced by ''n'' X ''n'' blocks of unique tile types such that the perimeter of the ''n'' X ''n'' block formed by them represents the same glues as the original tile.
+
===Growth Errors===
 +
A common technique to reduce growth errors is called proofreading. With the proofreading method individual tile types are replaced by ''n'' X ''n'' blocks of unique tile types. The perimeter of the ''n'' X ''n'' block formed represents the same glues as the original tile, only the original glues are now split into ''n'' separate glues. For example, imagine you are going to implement a proofreading scheme where each tile in your original set is going to be replaced by a ''2'' X ''2'' block of tiles. This conversion might look like the following: 
 +
 
 +
[[File:Proofreading_example_0.png|thumb|center|upright=4.0|alt=Facet Error]]
 +
 
 +
The interior glues for each expanded tile will be unique to that group (in the above case AB,AC,BD,CD). The exterior glues (0L, 0R, 0T, 0B) are non-unique to the so that this transformed tile can still interact appropriately with the other tiles in the tile-set.
 +
 
 +
The goal of proofreading is to force multiple errors to occur before a ''n'' X ''n'' block can fully form, this consequently results in fewer errors being locked in.
 +
 
 +
===Exercise===
 +
As an exercise for using the kTAM with TAS implement the 7-tile Sierpinski Triangle developed in prior tutorials with proofreading such that:
 +
#Four of the tiles are replaced by a ''2'' X ''2'' set
 +
#Two of the tiles are replaced by a ''1'' X ''2'' set
 +
#One tile remains the same
 +
 
 +
In total your new tile set should have 21 unique tiles and the assembly should look similar to the below picture.

Revision as of 13:18, 8 August 2013

Introduction

The kinetic tile assembly model (kTAM) builds upon the abstract model (aTAM) by allowing not only for the binding of tiles, but also for the unbinding of tiles. At a high level you might think about the binding and unbinding in the kTAM as growth and decay, or more formally as association and dissociation. Further, the kTAM also allows for tiles to bind which have no matching glues. The binding allowances introduced in the kTAM are there to mimic the chemical behavior of DNA.

This tutorial will step you through the basic concepts of the kTAM. While working with the kTAM you will notice that there are trade-offs between speed of assembly and accuracy of assembly. For example, it is possible to have an assembly that builds very quickly to a given size, yet without proper tile types, the assembly will be filled with errors. The other undesirable alternative is to build very slowly but accurately. Fortunately, there is a middle path that we can take known broadly as error management. Error management within the kTAM involves recognizing the potential errors that can occur for a tile set and then redesigning that tile set so that it is more resilient to errors, still produces the expected output, and does so in a shorter period of time.

While experimenting with the kTAM using TAS we recommend adjusting the refresh rate of the assembly to between 1,000 and 10,000 and we also recommend turning off caching, or the saving of past tile placements.

Error types

There are three basic error types that can occur during assembly:

  1. Growth (or Mismatch)
  2. Facet
  3. Nucleation

Growth Errors

A growth error occurs when a tile binds to a frontier-tile but the adjacent glues of the respective binding edges do not match. The disassociation rate (Gse) within the kTAM dictates how long this mismatched edge will stay bound. The higher the Gse the longer the error can persist before unbinding. However, even with a normal ratio of Gmc/Gse it is still possible that the mismatched tiles will stay bound long enough for appropriately matched tiles to fill out the space around the error and permanently bind it into place. Once the anomaly is bound in place further deviations from the desired assembly shape may be propagated throughout the assembly. A visual example of this can be seen below in a 7-tile Sierpinski assembly. The top image is a zoomed in section of the assembly that shows the glue labels of each tile. Notice that under the green highlight there is a matching error between the respective tile edges. The same assembly is shown in the second image but zoomed out. The green mark represents the only binding error in the entire assembly, but as can be seen, it ruined the expected periodicity of the assembly.

Growth Error
Growth error.
Growth Error
Growth error, zoomed out.

Facet Errors

Facet errors, like growth errors, occur along the frontier of the assembly and between two tile edges which have insufficient strength to form a permanent attachment given the current Gmc/Gse. Facet errors become permanent when they are locked into place by subsequent tile addition. Unlike growth errors, however, facet errors are characterized by matching edges.

Facet Error

Nucleation Errors

A nucleation error occurs when tiles associate with each other outside of the seed structure and start another seeded structure.

Error Management within the kTAM

Growth Errors

A common technique to reduce growth errors is called proofreading. With the proofreading method individual tile types are replaced by n X n blocks of unique tile types. The perimeter of the n X n block formed represents the same glues as the original tile, only the original glues are now split into n separate glues. For example, imagine you are going to implement a proofreading scheme where each tile in your original set is going to be replaced by a 2 X 2 block of tiles. This conversion might look like the following:

Facet Error

The interior glues for each expanded tile will be unique to that group (in the above case AB,AC,BD,CD). The exterior glues (0L, 0R, 0T, 0B) are non-unique to the so that this transformed tile can still interact appropriately with the other tiles in the tile-set.

The goal of proofreading is to force multiple errors to occur before a n X n block can fully form, this consequently results in fewer errors being locked in.

Exercise

As an exercise for using the kTAM with TAS implement the 7-tile Sierpinski Triangle developed in prior tutorials with proofreading such that:

  1. Four of the tiles are replaced by a 2 X 2 set
  2. Two of the tiles are replaced by a 1 X 2 set
  3. One tile remains the same

In total your new tile set should have 21 unique tiles and the assembly should look similar to the below picture.