Team:Alberta NINT/Modeling
From 2008.igem.org
m |
m |
||
Line 115: | Line 115: | ||
<center> | <center> | ||
<gallery> | <gallery> | ||
- | Image: | + | Image:Alberta_NINT_hairpin_rnastruct_shrunk.jpg|Hairpin Done with RNAStructure |
Image:Alberta_NINT_hairpin_unafold_shrunk.jpg|Hairpin Done with UNAFold | Image:Alberta_NINT_hairpin_unafold_shrunk.jpg|Hairpin Done with UNAFold | ||
Revision as of 20:00, 1 August 2008
Modeling
Ability to model the folding of the designed RNA was desired not only to help visualize how the pieces would look, but also to investigate how interactions between the inputs and outputs of the various genetic gates would play out. It is also important to examine possible interactions between the outputs of different gates as well as with other things that may be present in the cell. Reasonably accurate modeling could help lower cost of purchased DNA, save lab time, and result in a a more reliable final product.
All modeling has been done using RNAStructure 4.5/4.6 (http://rna.urmc.rochester.edu/rnastructure.html)
Source code for this program was obtained with the hopes of making changes that would increase usability, as well as introduce new functions to the program that would allow it to be more useful for simulating some of the situations that may arise during the operation of the logic gate.
Currently, compiler version issues have prevented such changes from being implemented and tested.
From Scratch
Windows access has been lacking for me for a few days now, so I played around with some single-stranded RNA folding. Definitely not the easiest thing to do...
The test sequence was folded in RNAStructure 4.6 run under Wine on a Linux system. The program used to generate the folds used a computational intelligence method to try and derive a probable fold. Refinements to the estimation of the folding energy of a structure have been made with the hopes of creating folds with some semblance of accuracy, but the problem may lie in the crossover/mutation operations being used in the evolutionary/genetic algorithm.
Pictures so I can feel as if I've accomplished something (these diagrams were made using the 'Draw' function in RNAstructure:
The first few series were made trying improve the energy estimation subroutine. Series A was performed using only mutation and turbo simplistic energy rules. A bit of an refinement was made for Series B, as well as a change to the rate of mutation, which made it more dependent on the sequence length. Series C and D added a crossover operation to the mix, each was different in its treatment of bonds that had been broken at the point of crossing over. None of the series have exhibited any noticeable improvement over any of the others.
As viewed in the pictures, scaled for space, the common problem seems to be the creation of adjacent bonds (if that makes sense). Judging by the energy rules that are currently being employed, the problem likely resides in the EA.
Update: After correcting some huge, yet craftily placed errors, the program behaves the way I expected it to. Since the its energy rules are primarily based on bonding, the program tries for as many bonds as possible. Its gotten to the point were the Draw program in RNAstructure is not properly drawing the connection tables, due to the complexity of fold that that the program came up with. This might be able to be fixed by providing an energy penalty for folds where the program tries to tie the RNA up into a big knot. Also thinking of using the scatterplot from the matplotlib library for python in order to draw (at least primitively) folds inside the program for convenience.
Interfacing and Modification of Existing Programs
Since working from scratch is pretty tough, modification of existing open source programs is being pursued. The favorite, RNAStructure has proven difficult to compile and have run, so an older program, UNAFold, is being looked at. In a comparison using arbitrary sequences, both programs produced fairly similar results.
As the plots show, the structures have a few differences, but are largely the same. The RNAStructure program predicted an energy of -39.8 Kcal/mole, while the UNAFold program predicted a slightly different energy of -38.3 Kcal/mole.
Testing both programs on the hairpin structure that will be important to this project yielded the following results:
Alberta NINT hairpin rnastruct shrunk.jpg
Hairpin Done with RNAStructure |
Here, the energy according to RNAStructre was -28.5 Kcal/mole, while UNAFold predicted -28.7 Kcal/mole. Thus far, all drawing has been done using the built in drawing function found in RNAStructure.