Team:UPO-Sevilla/Software

The work here presented is part of the Universidad Pablo de Olavide Project for iGEM 2016 competition. It is intended to provide mathematical and computational support to the laboratory work carried out by this team.

Metabolic pathway modeling software

One of the focuses of this in silico approach has been to model the enzymatic pathways in which the project is based. Particularly, glycerol uptake and metabolism by recombinant Pseudomonas putida have been studied.

For this purpose, a computer software has been developed in collaboration with Barcelona iGEM team, to model biochemical routes using Michaelis-Menten kinetics. In that team's version of the software, a user can assess metabolite concentrations over time for a specific biochemical network. For this, the user can set the input parameters and check the results using a graphic interface. This makes very simple this type of simulations even for non programmers.

In our version of the program, the software employs text files as input, and produces text files as output. Therefore, the program is not as intuitive as the other version, but has the advantage that the process can be automatized and used more efficiently. In summary, this program is more intended for advanced users and developers.

The computer code has been created in the C programming language. The code is freely available (see annex I or at GitHub UPO Sevilla).

The software may be used not only for glycerol-related enzymatic reactions, but virtually for any sequence of enzymatic reactions in a specific order. Furthermore, the reactions in the pathway need not to be consecutive (Figure 1), they may also be branched or circular (Figure 2).

Figure 1. Example of consecutive set of reactions.

Figure 2. Example of circular set of reactions.

The program receives the files “input_compuestos.txt”, “input_reacciones.txt” and “input_parametros.txt” as input, and generates two files (“output1.txt” and “output2.txt”) as output.

In “input_compuestos.txt” each row represents a compound int the pathway. In every row, the first column consists of an identification number of the metabolite and the second column depicts that metabolite's initial concentration.

In “input_reacciones.txt” each row contains the information related to each reaction in the route. The first column contains an number identification of the reaction. The second and third columns show the reaction's substrate and product number identifications according to how they are identified in the input_compuestos.txt file.. For example, if the route is the following:

And the metabolites are identified as: A = 1, B = 2, C = 3, D = 4, E = 5, and the reactions as:

A → B = 1;

B → E = 2;

B → C = 3;

C → 3 = 4;

D → A = 5;

Then, the first three columns of the input_reacciones.txt file would correspond to:

1 1 2

2 2 5

3 2 3

4 3 4

5 4 1

The fourth column in “input_reacciones.txt” depicts the Michaelis constant for the reaction. Finally, the product of the fifth and sixth columns corresponds to the maximum velocity of the reaction. As seen later, this product allows for rapid identification of bottlenecks in the pathway by representing the maximum velocity in one of the factors and altering the value of the other. In this way, it is simple to assess whether varying the product of the maximum velocity by the other factor affects the yield of the route.

The file “input_parameters.txt” contains only two pieces of information. The first one is the differential of time at which each cycle of calculations is performed. The second one is the total process time.

The first of the output files (“output1.txt”) contains the metabolite concentrations over time. The display order corresponds to that followed when indentifying the metabolites in “input_compuestos.txt”.

The other output file (“output2.txt”) represents the mass differential for each metabolite at every instant.

Application of the metabolic pathway software to our project

One of the main focuses in UPO-Sevilla's 2016 project is to increase Pseudomonas putida's ability to metabolize glycerol efficiently. Figure 3 depicts the metabolic route by which this microorganism catabolyzes glycerol:

Figure 3. Glycerol uptake from the medium and conversion to Glycerol-3-P (G3P) and then to Dihydroxyacetone-P (DHAP).

The objective for the tool sofware was to identify a bottleneck in the route shown in Figure 3. Using that information, the wet lab would create a strain capable of metabolizing glycerol more efficienly by overexpressing the gene responsible for the bottleneck.

In the scientific literature, there was not enough kinetics data to create the input_reacciones.txt file. Fortunately, there was analogous information from a related species (Pseudomonas aeruginosa). Table 1 shows the kinetic properties of the different enzymes and the genes that code for them:

Michaelis constant Maximum velocity Reference
Extracellular glycerol --> Intracellular Glycerol (glpF gene) 13 0.293 0.235* Siegel & Phibbs (1979)
Glicerol --> Glycerol-3-P (glpK gene) 40 6160 McCowen et al (1987)
Glicerol-3-P --> DHAP (glpD gene) 1660 7240 McCowen et al (1981)

Table 1. Kinetic parameters of transformation of extracellular glycerol into DHAP. Concentration unit: micromolar; time unit: seconds. (*) For this parameter it existed information regarding Pseudomonas putida.

The simulation results of this set of metabolic reactions demonstrate that the glycerol uptake step constitutes a major bottleneck (FIgure 4 and Figure 5). Specifically, it would be necessary to overexpress ~23,000 times the glycerol-uptake-related protein (GlpF) in order to overcome this bottleneck (Figure 8), which is not really viable, but the more overexpression is achieved the more efficient glycerol assimilation would be (Figure 6).

Figure 4. Existence of a bottleneck. Increase in glycerol concentration in the medium does not correspond with increase in DHAP production by the bacteria.

Figure 5. The first step (glycerol uptake) is responsible for the bottleneck, as doubling the concentration of its related proteins also doubles DHAP production.

Figure 6. Glycerol uptake overexpression and DHAP production. Only with a high level of overexpression DHAP production does not depend on glycerol uptake.

Therefore, according to these results the wet lab proceeded to overexpress glpF in Pseudomonas putida to improve glycerol catabolism. Interestingly, as Pseudomonas aeruginosa's variant of GlpF achieves higher maximum velocity than that of P. putida (Table 1), the recommendation was for the wet lab to overexpress in P. aeruginosa's glpF gene inP. putida.

Application of the metabolic pathway software to posible future uses of the project

In our project, Pseudomonas putida is engineered to become a versatile biofilm forming microorganism capable of degrading glycerol. This is in turn a platform for the production of multiple kinds of metabolite of interest.

Here we analyze a putative set of reactions for the production of propoanoate from the intracellularly produced compound Succinyl-CoA, employing the same software as previously used for the analysis of glycerol assimilation. The biochemical reactions implied in the production of propanoate have been proposed from the BioCyc Database Collection , and are depicted in Figure 7.

Figure 7. Putative synthesis of propanoate from succinyl-CoA.

The kinetic properties of the enzymes in this pathway, as well as the genes that could encode them are shown in Table 2:

Michaelis constant Maximum velocity Reference
Succinyl-CoA --> (R)-methylmalonyl-CoA (Escherichia coli scpA gene) 11.2 7900 BioCyc Database Collection
(R)-methylmalonyl-CoA --> (S)-methylmalonyl-CoA (Pseudomonas mosselii pstl gene) 79 12000 BRENDA Database analogous enzyme
(R)-methylmalonyl-CoA --> Propanoyl-CoA + CO2 (E. coli scpB gene) 13.6 80 BioCyc Database Collection
Propanoyl-CoA + Succinate --> Propionate + Succinyl-CoA (E. coli scpC gene) 7.1 36 BioCyc Database Collection

Table 2. Kinetic parameters of transformation of intracellular Succinyl-CoA into Propanoate. Concentration unit: micromolar; time unit: seconds.

When running the software with these parameters and analyzing overexpression of the different ezymatic steps, the last step in the route appears as a bottleneck. As shown in Figure 8, 5X overexpression is enough to eliminate this bottleneck, as 10X overexpression yields the same propanoate production.

Figure 8. Overexpression analysis of the different enzymes in the pathway. The software shows that the catalytic step mediated by ScpC is responsible for a bottleneck, being eliminated with 5X overexpression.

Annex I. Biochemical network metabolite concentration analysis source code

#include

#include

#include

#define SIZECOMPUESTOS 30/*maximum number of metabolites in the biochemical network*/

#define SIZEREACCIONES 30/*maximum number of reactions in the biochemical network*/

int lectura_compuestos(double a[][SIZECOMPUESTOS])

{

int i=0;

FILE *g;

g=fopen("input_compuestos.txt","rt");

if(g==NULL)

{

printf("\n\nError al abrir el fichero con la información de compuestos.\n\n");

}

while(fscanf(g,"%lf %lf",&a[i][j],&a[i][j+1])!=EOF)

{

i++;

a[i][2]=0;

}

fclose(g);

return(i);

}

int lectura_reacciones(double b[][SIZEREACCIONES])

{

int i=0;

int j=0;

FILE *h;

h=fopen("input_reacciones.txt","rt");

if(h==NULL)

{

printf("\n\nError al abrir el fichero con la información de reacciones.\n\n");

}

while(fscanf(h,"%lf %lf %lf %lf %lf %lf",&b[i][j],&b[i][j+1],&b[i][j+2],&b[i][j+3],&b[i][j+4],&b[i][j+5])!=EOF)

{

i++;

b[i][j+6]=0;

}

fclose(h);

return (i);

}

int lectura_parametros(double c[][SIZEREACCIONES])

{

FILE *m;

m=fopen("input_parametros.txt","rt");

if(m==NULL)

{

printf("\n\nError al abrir el fichero con la información de parámetros.\n\n");

}

while(fscanf(m,"%lf %lf %lf",&c[0][0],&c[0][1],&c[0][2])!=EOF)

{

}

fclose(m);

}

double michaelis(double conc_sustrato,double km,double k2, double e0)

{

double var;

var=(k2*conc_sustrato*e0/(conc_sustrato+km));

return(var);

}

int main()

{

double tiempo=0;

double almacen;

int i;

int j;

double contador_impresion;

int bandera=0;

double sustrato[2];

double producto[2];

int numcompuest;

int numreacc;

FILE *m;

FILE *n;

m=fopen("output1.txt","at");

if(m==NULL)

{

printf("\n\nError al abrir el fichero de output 1.\n\n");

}

n=fopen("output2.txt","at");

if(n==NULL)

{

printf("Error output2");

}

double compuestos[SIZECOMPUESTOS][SIZECOMPUESTOS];

double reacciones[SIZEREACCIONES][SIZEREACCIONES];

double PARAMETROS[SIZEREACCIONES][SIZEREACCIONES];

contador_impresion=PARAMETROS[0][2];

numcompuest=lectura_compuestos(compuestos);

numreacc=lectura_reacciones(reacciones);

lectura_parametros(PARAMETROS);

while(tiempo<=PARAMETROS[0][1])

{

if(contador_impresion

{

contador_impresion=contador_impresion+1;

}else

{

fprintf(m,"%lf\t",tiempo);

for(i=0;i

{

fprintf(m,"%lf ",compuestos[i][1]);

}

fprintf(m,"\n");

fprintf(n,"%lf\t",tiempo);

for(i=0;i

{

fprintf(n,"%lf ",compuestos[i][2]);

}

fprintf(n,"\n");

contador_impresion=1;

for(i=0,j=0;i

{

sustrato[0]=reacciones[i][1];

producto[0]=reacciones[i][2];

while(bandera==0)

{

if(sustrato[0]==compuestos[j][0])

{

sustrato[1]=compuestos[j][1];

bandera=1;

j=0;

}else{

j++;

}

}

while(bandera==1)

{

if(producto[0]==compuestos[j][0])

{

producto[1]=compuestos[j][1];

bandera=0;

j=0;

}else{

j++;

}

}

reacciones[i][6]=michaelis(sustrato[1],reacciones[i][3],reacciones[i][4],reacciones[i][5]);

}

for(i=0;i

{

compuestos[i][2]=0;

almacen=compuestos[0][1];

for(j=0;j

{

if((compuestos[i][0]==reacciones[j][1]))

{

compuestos[i][1]=compuestos[i][1]-reacciones[j][6]*PARAMETROS[0][0];

compuestos[i][2]=compuestos[i][2]-reacciones[j][6];

}

if((compuestos[i][0]==reacciones[j][2]))

{

compuestos[i][1]=compuestos[i][1]+reacciones[j][6]*PARAMETROS[0][0];

compuestos[i][2]=compuestos[i][2]+reacciones[j][6];

}

}

if(i==0)

{

compuestos[i][1]=almacen;

}

if(compuestos[i][1]<0)

{

compuestos[i][1]=0;

}

}

tiempo=tiempo+PARAMETROS[0][0];

fclose(m);

fclose(n);

return 0;

}

References

Nikel, Kim, De Lorenzo. Metabolic and regulatory rearrangements underlying glycerol metabolism in Pseudomonas putida KT2440. 2014. Enviromental Microbiology. 16(1): 239-254.

Siegel & Phibbs. Glycerol and L-α-Glycerol-3-Phosphate Uptake by Pseudomonas aeruginosa. 1979. Current Microbiology. 2:251-256.

McCowen, Sellers, Phibbs. Characterization of Fructose-1,6-diphosphate-insensitive Catabolic Glycerol Kinase of Pseudomonas aeruginosa. 1987. Current Microbiology. 14:323-327.

McCowen, Phibbs, Feary. Glycerol Catabolism in Wild-Type and Mutant Strains of Pseudomonas aeruginosa. 1981. Current Microbiology. 5: 191-196.