Metabolic Flux Analysis by MATLAB

Download Report

Transcript Metabolic Flux Analysis by MATLAB

Metabolic Flux Analysis by MATLAB
Le You
03-27-1014
Carbon metabolism is highly related to
biofuel production
Ethanol
Hydrogen
Fatty acids/
biodiesel
Methanol/
Butanol
Carbon flow
Carbon substrates
(i.e. Glucose)
Carbon lost as CO2
G6P
ED
pathway
Glycolysis
Pyruvate
Amino
acids
PP pathway
NADPH
Biomass building
blocks
TCA cycle
Energy
mitochondria
Cytosol
Rational metabolic engineering requires
the quantification of metabolic
pathways
Glucose
ED Pathway
Glycolysis
Pentose Phosphate
Pathway
3-Methyl-1-butanol Branched Chain FA
GAP
2-keto-4-methyl-pentanoate
Lactate
PYR
Fatty
acid
Acetyl-CoA
TCA cycle
Nature 2008, 451, 87
2-ketoisovalerate
Isobutanol
Glutamate
Leucine
Valine
Production of
biofuels via keto-acid
pathway
The direct measurement of in vivo enzymatic
reaction rates is difficult
Glucose
v1
v18 CO2
v17
6PG
G6P
v2
Ru5P
v19
R5P
F6P
X5P
v20
v3
GAP
S7P
v4
GBP
E4P
v21
v5
3PG
v5
PEP
v6
CO2
PYR
v9
v8
v10
v7
OAA
AcCoA
v12
v11
MAL
GLX
FUM
v16
CIT
v17
SUC
v13
ICIT
v14
v15 AKG
Metabolic flux analysis can quantify
carbon metabolism
vin
A
v4
B
A
B
C
D
E
v2
v5
C
v3
v6
D
Boundary
constraints
Sampling
OD
0.8
0.6
0.4
0.2
0
0
2
4
6
0
0
0
0
stoichiometric matrix
Genome-scale
metabolic model
1
 1 1

0 0
0 1

0 0
 v1 
 
1 0 0   v2   0 

 
1 1 0   v3   0 
 
0 1 0   v4   0 

 
0 1 1  v5   0 
 
 v6 
8
Cell culture
10
Input/output
flux
Objective
function
Example
Glucose
v1
11 intracellular fluxes, 8 intracellular metabolites
G6P v2
v3
Pyr
v11
OAA
v5
AcCoA
R5P
v4
v6
v7
Acetate
G6P:V1=V2+V3 +V12*0.205
R5P:V2=V4
PYR:2V3+V4=V5+V11+V12*2.833
AceCOA:V5=V6+V7+ V12*2.928
ICIT:V7=V8
AKG:V8=V9 +V12 *1.078
SUC:V9=V10
OAA:V10+V11=V7+V12*1.786
ICIT
The input/output fluxes were measured:
v10
SUC
v8
v9
Input/output flux
Intracellular flux
Building block flux
AKG
V1=11.0 mmol/g DCW/h
V6=6.4 mmol/g DCW/h
Biomass=1.078*AKG + 1.786*OAA +
2.928*AceCoA + 2.833*Pyr + 0.205*G6P
v12
Stoichiometric matrix
8 intracellular
metabolites
S∙v=0
-1
1
1
0
0
0
0
0
0
0
0 0.205
0
-1
0
1
0
0
0
0
0
0
0
0
0
-2
-1
1
0
0
0
0
0
0
1 2.833
0
0
0
0
-1
1
1
0
0
0
0 2.928
0
0
0
0
0
0
-1
1
0
0
0
0
0
0
0
0
0
0
-1
1
0
0 1.078
0
0
0
0
0
0
0
0
-1
1
0
0
0
0
0
0
0
1
0
0
-1
0
0
-1 1.786
v1
v2
v3
v4
v5
v6
v7 =
v8
v9
v10
v11
v12
0
0
0
0
0
0
0
0
Additional constraints
 0 < v < 20 mmol/g DCW/h
lb=[11 0 0 0 0 6.4 0 0 0 0 0 0] T
ub=[11 20 20 20 20 6.4 20 20 20 20 20 20] T
 Objective function: maximize μ
obj=[0 0 0 0 0 0 0 0 0 0 0 1] T
Optimization Toolbox for Flux Analysis
To lanch optimization toolbox in MATLAB:
• In the command window, enter “optimtool”
Use “linprog”
for FBA
Change to
“Medium
scale-simplex”
Options to
stop the
optimization
Put the
objective
vector
S∙v=0
lb and ub
linprog
EXERCISES
Aeq=
-1
1
1
0
0
0
0
0
0
0
0 0.205
0
-1
0
1
0
0
0
0
0
0
0
0
0
-2
-1
1
0
0
0
0
0
1 2.833
0
0
0
0
-1
1
1
0
0
0
0 2.928
0
0
0
0
0
0
-1
1
0
0
0
0
0
0
0
0
0
0
-1
1
0
0 1.078
0
0
0
0
0
0
0
0
-1
1
0
0
0
0
0
0
0
1
0
0
-1
beq=[0 0 0 0 0 0 0 0] T
lb=[11 0 0 0 0 6.4 0 0 0 0 0 0] T
ub=[11 20 20 20 20 6.4 20 20 20 20 20 20] T
obj=[0 0 0 0 0 0 0 0 0 0 0 1] T
0
0
0
-1 1.786
start
Results
Optimization Toolbox for Flux Analysis
Using “fmincon” solver in Optimization Toolbox for 13C-MFA
Use “fmincon”
Change to
“Interior point”
Initial guess
S∙v=0
Put the
objective
function
v0=Lb+rand.*(Ub-Lb)
lb and ub
EXERCISES
Aeq=
-1
1
1
0
0
0
0
0
0
0
0 0.205
0
-1
0
1
0
0
0
0
0
0
0
0
0
-2
-1
1
0
0
0
0
0
1 2.833
0
0
0
0
-1
1
1
0
0
0
0 2.928
0
0
0
0
0
0
-1
1
0
0
0
0
0
0
0
0
0
0
-1
1
0
0 1.078
0
0
0
0
0
0
0
0
-1
1
0
0
0
0
0
0
0
1
0
0
-1
beq=[0 0 0 0 0 0 0 0] T
lb=[11 0 0 0 0 6.4 0 0 0 0 0 0] T
ub=[11 20 20 20 20 6.4 20 20 20 20 20 20] T
obj=[0 0 0 0 0 0 0 0 0 0 0 1] T
0
0
0
-1 1.786
Results
How to extract Stoichiometric matrix
equationsToMatrix
X+Y-2*Z=0
X+Y+Z=1
2*Y-Z+5=0
[A,b] = equationsToMatrix(eqns,vars)
X + Y - 2*Z == 0
X + Y + Z == 1
2*Y – Z + 5 == 0
syms x y z;
[A, b] = equationsToMatrix([x + y - 2*z == 0, x + y + z == 1, 2*y - z + 5
== 0], [x y z])
A=
[ 1, 1, -2]
[ 1, 1, 1]
[ 0, 2, -1]
b=
0
1
-5
How to extract Stoichiometric matrix
syms Glucose G6P R5P Pyr
AceCoA ICIT OAA AKG SUC
biomass CO2 Acetate X2
Glucose == G6P
G6P == R5P + CO2
G6P == 2*Pyr
R5P == Pyr + X2
Pyr == AceCoA + CO2
AceCoA == Acetate
AceCoA + OAA == ICIT
ICIT == AKG + CO2
AKG == SUC + CO2 SUC == OAA
Pyr + CO2 == OAA
1.078*AKG + 1.786*OAA + 2.928*AcCoA +
2.833*Pyr + 0.205* G6P == biomass
[A,b]=equationsToMatrix([Gluc
ose == G6P,
G6P == R5P + CO2,
G6P == 2*Pyr,
R5P == Pyr + X2,
Pyr == AceCoA + CO2,
AceCoA == Acetate,
AceCoA + OAA == ICIT,
ICIT == AKG + CO2,
AKG == SUC + CO2,
SUC == OAA,Pyr + CO2 ==
OAA,
1.078*AKG + 1.786*OAA +
2.928*AceCoA + 2.833*Pyr +
0.205* G6P == biomass], [G6P
R5P Pyr AceCoA ICIT AKG
SUC OAA])
A=
[ -1, 0,
0,
0, 0,
0, 0,
0]
[
1, -1,
0,
0, 0,
0, 0,
0]
[
1, 0,
-2,
0, 0,
0, 0,
0]
[ 0, 1,
-1,
0, 0,
0, 0,
0]
[
0, 0,
1,
-1, 0,
0, 0,
0]
[
0, 0,
0,
1, 0,
0, 0,
0]
[
0, 0,
0,
1, -1,
0, 0,
1]
[
0, 0,
0,
0, 1,
-1, 0,
0]
[
0, 0,
0,
0, 0,
1, -1,
0]
[
0, 0,
0,
0, 0,
0, 1,
-1]
[
0, 0,
1,
0, 0,
0, 0,
-1]
[ 41/200, 0, 2833/1000, 366/125, 0, 539/500, 0, 893/500]
S=A’
b=
-Glucose
CO2
0
X2
CO2
Acetate
0
CO2
CO2
0
-CO2
biomass
Exercises
Glucose == G6P
EXERCISES
G6P == R5P + CO2
G6P == 2*Pyr
R5P == Pyr + X2
Pyr == AceCoA + CO2
AceCoA == Acetate
AceCoA + OAA == ICIT
ICIT == AKG + CO2
AKG == SUC + CO2 SUC == OAA
Pyr + CO2 == OAA
1.078*AKG + 1.786*OAA + 2.928*AcCoA +
2.833*Pyr + 0.205* G6P == biomass
-1
1
1
0
0
0
0
0
0
0
0 0.205
0
-1
0
1
0
0
0
0
0
0
0
0
0
-2 -1
1
0
0
0
0
0
1 2.833
0
0
0
0
-1
1
1
0
0
0
0 2.928
0
0
0
0
0
0 -1 1
0
0
0
0
0
0
0
0
0
0 -1 1
0
0 1.078
0
0
0
0
0
0
0
0 -1 1
0
0
0
0
0
0
1
0
0
0
0
0
0 -1 -1 1.786
Optimization for Flux Analysis
Glucose
v1
Initial guess (random)
fmincon
G6P v2
v3
Syntax
x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)
Objective function: maximize μ
 A,b: Matrix for linear inequality constraints
e.g. v3>v2
 Aeq,beq: Matrix for linear equality constraints
Mass balance
 lb,ub
lb=[ 11 0 0 0 0 6.4 0 0 0 0 0 0]T
Pyr
v11
OAA
v5
AcCoA
R5P
v4
v6
v7
Acetate
ICIT
v10
SUC
v8
v9
AKG
Input/output flux
ub=[ 11 20 20 20 20 6.4 20 20 20 20 20 20]T
 options
Algorithm: 'interior-point' (default) or 'sqp'
Intracellular flux
Building block flux
MATLAB code using fmincon
Glucose
v1
G6P v2
v3
v0=Lb+rand.*(Ub-Lb);
fun=@(v)(-v(12));
[xbest,min,exit]=fmincon(fun,v0,[],[],Aeq,beq,L
b,Ub,[]);
disp(xbest);
Pyr
v11
OAA
v5
AcCoA
R5P
v4
v6
v7
Acetate
ICIT
v10
SUC
v8
v9
AKG
Input/output flux
Intracellular flux
Building block flux
Exercise 1
Matrix extraction
Glucose == G6P
G6P == R5P + CO2
G6P == 2*Pyr
R5P == Pyr + X2
Pyr == AceCoA + CO2
AceCoA == Acetate
AceCoA + OAA == ICIT
ICIT == AKG + CO2
AKG == SUC + CO2 SUC == OAA
PYR + CO2 == OAA
1.078*AKG + 1.786*OAA + 2.928*AcCoA +
2.833*Pyr + 0.205* G6P == biomass
-1
1
1
0
0
0
0
0
0
0
0 0.205
0
-1
0
1
0
0
0
0
0
0
0
0
0
-2
-1
1
0
0
0
0
0
0 2.833
0
0
0
0
-1
1
1
0
0
0
0
0
0
0
0
0
0
0
-1
1
0
0
0
0
0
0
0
0
0
0
0
-1
1
0
0 1.078
0
0
0
0
0
0
0
0
-1 1
0
0
0
0
0
0
1
0
0 -1 -1 1.786
0
0
0
Exercise 2
Flux calculation
Glucose
v1
G6P v2
v3
Pyr
v11
OAA
v5
AcCoA
R5P
v4
v6
v7
Acetate
ICIT
v10
SUC
v8
v9
AKG
Input/output flux
Intracellular flux
Building block flux
v1
v2
v3
v4
v5
v6
v7
v8
v9
v10
v11
v12
11
0
10.6838
0
12.5795
6.4
1.6629
1.6629
0
0
4.4179
1.5426