200629: WEEK 1
- We have started the modelling by checking literature. We will consider different models of the repressilator. For now, we have checked in detail:
- Elowitz and Leibler 1999: original paper for the repressilator.
- iGEM team SCU China 2017: they added a quorum sensing term to synchronize bacteria.
- Potvin-trottier et al. 2016: stochastic modelling using Gillespie algorithm; we were not able to fully understand it: frustration begins.
- Introduction to python. Learning how to solve ODEs with “scipy.integrate.odeint” package and how to plot the results with “matplotlib.pyplot” package. We have been able to implement some of the above-mentioned models, so that is great!
- We have created a GitLab account to store and keep track of all our code:) [later on was replaced by a GitHub account there you´ll find our “clean” code.
- We have started to think about an individual-based model (IBM) where a bacterium will be an individual and it will run the equations of the repressilator. The idea is to simulate a gut-like environment in 2D or even 3D and see whether we have coordinated oscillations during a long time [at the end was in 1D and 2D].
200706: WEEK 2
- Continue with the literature search and reading:
- Brien, Itallie, and Bennett 2012: Really nice paper about mathematical biosciences where they derive the model for the original (also referenced by iGEM SCU China 2017).
- Mathematical Modelling in Systems Biology: An Introduction (Ingalls 2012). We discovered this really good book and started to check some chapters.
- We have researched a bit more into the Gillespie algorithm (Gillespie 1977) and realised it is a pretty common algorithm in stochastic modelling. We have found a way to implement it in python with the packages “gillespy2”.
- Loinger and Biham, 2007: they do a comparison between deterministic and stochastic modelling for the repressilator.
- A preprint with a model similar to what we had in mind for the IBM was just published (Yañez-Feliú et al. 2020)
- IBM, it will probably be hard…, for now, we have started to:
- Look how the conditions for bacterial growth are in the gut (H.Tytgat et al. 2018).
- Look a bit more into this kind of modelling. In a meeting with Sara Mitri and Björn Vessman.They provided some useful references: (Schluter and Foster 2012; Goldschmidt et al. 2017; Nadell et al. 2010. These models, however, include Partial Differential Equations (derivatives in time and space), so they are quite complicated. Some more meetings either with Björn, Sara or both continued throughout the competition.
200713: WEEK 3
- Continue with the reading, in this case, related to IBM and the repressilator: Gonze 2013; Yañez Feliú et al. 2020
- Meeting with Björn and Sara: suggested some nice ideas to improve our models: introduce IPTG in the equations of the repressilator to be able to synchronize the bacteria, think about the diffusion of azurin, and finally, they suggest to abandon Gillespie for now (we will have other sources of noise such as different division rates or cell sizes in the IBM anyway).
- Meeting with iGEM Imperial College team 2020. They helped us to understand the Hill functions with different tutorials and helped to introduce IPTG (or aTc) in our equations taking advantage of them. We are grateful for that! Initially, we were introducing another equation to see how the level of IPTG was changing inside the cell; however our supervisor suggested that for now might be easier to just assume we put it in excess and can diffuse really fast into the cell, so we always have an excess of it.
- Starting with the IBM. We will use a 2D array to place cells (that will be python dictionaries, where we define their parameters such as growth rate, or the number of proteins for each of the three nodes in the repressilator). It has to be yet improved! [It would :P]
200720: WEEK 4
- ODE model of the repressilator, adapted from (Elowitz and Leibler 1999). Explore a bit what to change to modulate period and amplitude by changing the value of different parameters.
- Modelling seminar by iGEM Foundation. By chance, it happens to be about the repressilator, so it was really useful for us. We are considering whether we should switch to Matlab and Symbiology [at the end we didn´t].
- IBM. Explore some existing options:
- Gro: http://depts.washington.edu/soslab/gro/
- CellModeller: https://github.com/HaseloffLab/CellModeller. We have tried to install it, it was not straightforward, we had to:
- Install Linux (as was not available for Windows and was not running properly in our mac)
- Talk with the author (Tim Rudge, also author of (Yañez Feliú et al. 2020)) in a forum and email. He was nice and willing to help:) The problem was apparently “opencl”. Still not working properly though.
- IBM. In our little model, if we remove protein degradation term in the ODEs and assume that protein degradation is only due to dilution through cell division. For the first time, we could see the formation of rings of protein expression in a growing colony(when colouring cells by the most abundant protein in their repressilator at each time step), that was really really cool! This is something also observed in (Yañez Feliú et al. 2020)
200724: WEEK 5
- New meeting and tutorial by iGEM Imperial College team 2020. Thanks!
- This week was not really productive regarding the dry lab, we were also busy with other things (video filming, collaborations, human practices…). We have managed to:
- Continue exploring the IBM and the way in which bacteria should divide.
- Start thinking about modelling for the kill-switch, a new mechanism for extra security that we want to implement in our bacteria.
200803: WEEK 6
- Planning the modelling about the kill-switch in more detail during a meeting with OhioState iGEM 2020 team. Thanks!
- After watching the whole series of iGEM Modelling advice videos by Alejandro Vignoni we are reconsidering to derive the equations for the model of the repressilator ourselves. We contacted Alejandro and he suggested a paper whose equations we might be able to adapt (Boada et al. 2020).
- We are considering different algorithms for the cell division in our 2D grid of our IBM. Different papers on shoving algorithms and bacterial division (Nan et al. 2018; Yates et al. 2014). From them, we liked the idea of letting bacteria move to adjacent positions even if they do not divide, which is something we had not considered until now. Another idea for bacterial division comes from (Maccracken et al. 2018) where they just randomly chose one position in the 24 surrounding spaces, and if it is not free, bacteria won´t divide.
- We have decided to abandon the option of existing programs such as CellModeller (previously mentioned) as they were not running properly in our computers and we prefer to create the model ourselves, even if it must be much simpler in this case.
200810: WEEK 7
- Meeting with Alejandro Vignoni. It was really good, and he suggested some nice implementations for the toxin-antitoxin system in our kill switch. So, thanks to this and the modelling week 2a tutorial, we build our first model (for kill-switch type I)
- In the model of the kill-switch we want to see how the RBS affects the translation rate, thanks to our mentor (John Allan) we came up with a nice predictor for that (Salis, Mirsky et al. 2009)
- The IBM started to get quite computationally heavy, so we tried to simplify it:
- Simplify the equation for the repressilator as much as possible. E.g. simulate the ODEs for the repressilator only at the protein level and not at the mRNA level. We adapted the equations from (Brien et al. 2012)
- Maybe change the 2D grid for a sparse matrix [did not work]
- Try multi-threading [not useful in our laptops]
200817: WEEK 8
- Parameter search in literature for our kill-switch model + implementation of kill-switch type II model
- IBM. Last week, when trying to simplify the 2D IBM we realised that we could simplify even more by reducing to 1D and this little model would help us understand some basic properties of our system (which parameters support oscillations; how the noise in cell division affects the coordinated oscillations…). So, we have started to build this 1D IBM model where cells will be placed in a list instead of in a grid.
- We have created the model for the repressilator based on what Alejandro Vignoni showed in the tutorials and the call we had with him. However, although we have the equations it is hard to find parameter values that render oscillations. Is there a way to infer those parameters in the lab? We don´t have much more access though [at the end we couldn´t]
200824: WEEK 9
- Imperial College 2020 iGEM team sent another tutorial for modelling.
- Look into parameters for the kill-switch model we could find them in different iGEM teams and references, but they can vary a lot from one source to another…
- The weekly meeting with our great mentor (John Allan) focused this time a lot on modelling. He suggested looking into how the spatial space inside the cell could affect our oscillations (Stoof and Wood 2019). We will contact the author of that paper for an interview.
200831: WEEK 10
- During the end of last week and week, some team members had to make self-confinement as prevention for Covid (luckily everything turned out to be fine at the end); the few remaining team members helped in the wet lab. Thus, there was not much advancement in the dry lab.
200907: WEEK 11
- During this week we have been organising the iGEM Swiss Meetup (together with iGEM ETH Zurich and iGEM EPFL), and in our case, we have prepared the slides for the presentation of the modelling part of the project that our team leader Ilinca kindly presented. The Swiss Meetup has been really productive and fun, thanks!
200914: WEEK 12
- The new semester has started, and we have to coordinate our work with the classes and other commitments from now on.
- With the 1D model we have discovered that some parameter configuration didn't support continued oscillations, but would reduce amplitude over time until cells reach a stable state where all the cells will have the same amount of each of the three proteins in the repressilator. This was masked in the 2D model because we were colouring cells based on their most abundant protein of the tree in the repressilator. This has been a key discovery, we should continue investigating which conditions provide limit cycle oscillations with the 1D model and also change the way we are plotting in the 2d model.
- Meeting with Ruud Stoof (Stoof and Wood 2019). He was really nice! We discussed whether we could use the space inside the bacteria (e.g. place the genes in the repressilator in different parts of the genome rather than all together in a plasmid) as a way to regulate the period of our oscillations. Of course, we planned to apply this only in our simulations as we, unfortunately, will not have time to address this in the wet lab. Anyway, Ruud Stoof has told us that separating the parts might reduce the efficiency of the repressilator and might only delay the oscillations up to 3 minutes (the average time it takes for a TF to find its operator if it is far away). So, this is not a good approach for our situation. Thanks, Ruud for your honest advice!
200921: WEEK 13
- Analyse the parameter space in the 1D IBM. Basically, run a lot of simulations.
- Plotting the total signal of proteins per cell in the 2D IBM and explore whether we can find the ring-like structures in simulated colonies with this configuration [we could!]. Run a lot of simulations.
200928: WEEK 14
- Start wrapping up all what we did and writing it in an organized way.
- IBM 2D, explore properly all the different ways for bacterial division we have assessed. We ran a lot of simulations and are checking how the bacterial growth rate in each configuration is distributed. Ideally, we want to find a configuration that renders a normal distribution of bacterial division rate (as shown in experiments with the mother machine). However, this is not as easy as it seems, since every bacterium will have its own division probability based on the neighbours it has in the 2D grid.
- Exploring python packages for nice data visualization in the wiki. For now, “bokeh” looks really promising!
201005: WEEK 15
- More writing, generating plots and thinking about how to organise the work we have done.
201012: WEEK 16
- We realised we did not fully understand the model in the paper (Elowitz and Leibler 1999). After exchanging some messages with Michael B. Elowitz, he kindly helped us understand the rescaling of different variables (mRNA, proteins, or time ) on his model. This whole week and part of the following one was dedicated to redo the analysis to make sure we were using the proper protein or time units in our graphs.
201019: WEEK 17
- We prepared a presentation for our project in the Department of Fundamental Microbiology of the University of Lausanne. Questions and advice helped us prepare the Giant Jamboree! Thanks, DMF!
- Finalising some experiments with the kill switch model, we could never find all the parameters, so we simulated a case study to show the utility of our model.
- Write everything and start uploading everything to the wiki!!!!!!!!! [note for other teams: start in advance, everything takes more time than expected]
201026: WEEK 18
- Final polishing of the wiki! [and uploading a couple of missing things, like this notebook]. It's been a pleasure:)
REFERENCES
(All the mentioned articles are hyperlinked and can be found listed as references in our main modelling section)