Team:Edinburgh/Cellulases (C model)

From 2011.igem.org

Revision as of 15:24, 3 September 2011 by Allancrossman (Talk | contribs)

Synergy (C model)

As explained in the abstract, the feasibility of our improved biorefineries depends on increasing the synergy between enzymes. Therefore, we attempted to use the C programming language to construct a model which could prove that synergy is, or might be, a real phenomenon affecting cellulase action.

Contents

Synergy explained

It can seem almost magical that having enzymes closer together can increase their usefulness, but consider the following statements about cellulose degradation, all of which are true ([http://www.annualreviews.org/doi/abs/10.1146/annurev-biochem-091208-085603 Fontes and Gilbert, 2010])

  1. Exoglucanase chews away at the end of a cellulase chain, producing cellobiose sugars.
  2. Endoglucanase cuts cellulose chains in the middle, essentially turning one chain into two.
  3. Cellobiose inhibits the action of the above enzymes.
  4. β-glucosidase cuts cellobiose in half, producing two glucose molecules.

Facts 1 and 2 mean that exoglucanase works best with endoglucanase nearby, since every time endoglucanase acts, it produces new chain-ends for exoglucanase to attack. Meanwhile, facts 1, 3, and 4 mean that β-glucosidase helps nearby copies of the other enzymes by preventing the cellobiose from inhibiting them.

Syn: a simple demonstration of synergy

We can demonstrate that there is (potentially) a huge difference between the synergistic and non-synergistic systems with Edinburgh's Syn program, written in C. This is a 2D simulation that works in the following way:

  • The world is a 2D grid.
    • Each spot in the grid can contain a sugar, a bond between sugars, or nothing.
    • The world begins with an array of cellulose.
  • Cellulose is modelled as horizontal chains with alternating sugars and bonds: s-b-s-b-s-b-s-b-s-b-s, etc.
  • There are three enzyme types: endoglucanase, exoglucanase, and β-glucosidase.
    • The enzymes move about randomly, in a "brownian motion" manner.
    • If an enzyme is in the same place as a bond, it can destroy it:
      • Endoglucanase can only cut bonds away from the ends of a chain.
      • Exoglucanase can only cut bonds if this results in a cellobiose molecule (s-b-s) forming.
      • β-glucosidase can only cut cellobiose bonds.
  • There is inhibition of exoglucanase by cellobiose; it does not cut bonds (or has a reduced chance to do so) if there is a nearby cellobiose molecule.


Sugars are dark green squares, bonds between sugars are light green. From left to right are shown the actions of endoglucanase, exoglucanase, and β-glucosidase.

Simulating non-synergy vs. synergy

We can run two different simulations with the same settings. However, in one simulation the enzymes float about freely, whereas in the other they travel in triplets, each triplet containing one of each type of enzyme, side by side:

The enzymes' current positions are displayed as white, yellow, or blue squares. Note that in the synergistic system (right) they travel together. Bonus points if you can tell which enzyme is which!

So, what happens if we run a large simulation? This:

Iteration 6000 of a run with 20 copies of each enzyme per simulation. Dark regions are places where the cellulose has been degraded down to free glucose molecules. The left side has 998 free glucose molecules. The right (synergistic) side has 2275.

Animation

You can view an animation of a similar run to the above, here. Warning: 1.5 MB file, has been known to hang certain browsers...

Results and conclusion

We carried out 100 runs of the program with standard settings (20 of each enzyme per side, width and height 155, full inhibition of exoglucanase by nearby cellobiose, endoglucanase requiring at least 5 sugars on each side of a bond to cut it).

On average, it took the synergistic system 7522 iterations to liberate half the sugar, as opposed to 13878 for the non-synergistic system.

Synergy - it actually makes sense!

Downloads

  • Source code:
  • Windows executable:

There are two ways to compile the code. The first is to just compile the C file as it stands, using a command like "gcc syn.c". When compiled in this way, there is no graphical display, except that the program saves .bmp graphics files every so often.

However, if you have the SDL graphics library development files (called libsdl1.2-dev in Ubuntu), you can optionally download the Makefile and compile with "make". This version does not (by default) spit out any files; instead, it gives a graphical display of the action as it occurs.

Note that, to work, the Makefile should be called "Makefile" and the C file should be called "syn.c".

Command-line options

The following command-line options should work. Default values are shown where applicable.

Simulation settings

--seed x — use specified random seed (results may still differ across platforms)
--halfwidth 155 — width of each simulation
--height 155 — height of the simulations
--margin 4 — size of the margin (region of no cellulose)
--enzymes 20 — number of enzymes of each type per simulation
--endpoint x — how many iterations to run (0 for unlimited)
--bioseinhibleft 1.0 — strength of cellobiose inhibition of exoglucanase (left simulation), from 0 to 1
--bioseinhibright 1.0 — strength of cellobiose inhibition of exoglucanase (right simulation), from 0 to 1
--endoreqleft 5 — how close to the end of a chain endoglucanase can cut (left simulation)
--endoreqright 5 — how close to the end of a chain endoglucanase can cut (right simulation)
--nosyn — do not use synergy on either side
--bothsyn — use synergy on both sides

Display and reporting

--bmptick x — how often to spit out .bmp graphics files (0 for never)
--bmpmag 1 — magnification of .bmp files
--sdltick 1 — how often to draw to the SDL window (1 to draw every frame)
--sdlmag 2 — magnification of SDL window
--delay 20 — milliseconds to delay after drawing to SDL window; some machines require this
--reporttick 250 — how often to print count of glucose and cellobiose to the console (0 for never)

References

  • Fontes CMGA, Gilbert HJ (2010) [http://www.annualreviews.org/doi/abs/10.1146/annurev-biochem-091208-085603 Cellulosomes: highly efficient nanomachines designed to deconstruct plant cell wall complex carbohydrates]. Annual Review of Biochemistry 79: 655-81 (doi: 10.1146/annurev-biochem-091208-085603).