8 | metabolic engineering strategies I Flashcards
What is the motivation behind coupling product formation to growth?
- force cell to produce desired compound as by-product of growth
- β ensures production is evolutionarily stable.
What is strong coupling in metabolic engineering?
KO strategy: product formation strongly coupled to growth (biomass production)
ensure any growth-supporting flux dist also produces product > threshold.
What is weak coupling?
Product is only formed at the optimal growth flux, not necessarily under all conditions.
What is the exhaustive KO strategy covered in lecture 8 on metabolic engineering?
- Try all possible subsets of knock-outs from the list of genes.
- Evaluate product yield or other objectives, solution = maximum of all maxima
Write the LP for an exhaustive knock out enumeration.
For every subset π β πΏ:
max π£πβππππππ
s.t.
ππ£ =0
βπ β π, π£π= 0,
βπ, π β π,π£ππππ β€ π£π β€ π£ππππ₯
π£πππ β₯ πΌπ§β
If we want sufficient high product yield to be at some level of biomass yield:
where π§β is the optimal growth.
What additional constraint ensures viability in exhaustive knock-out tests?
vbio β₯ Ξ± Β· z, where z is wild-type biomass flux
What are the limitations of exhaustive knock-out search?
- Combinatorial explosion: infeasible for large gene lists
- Cannot scale to full genome-wide searches
What is a bi-level optimization problem?
- One optimization problem (outer) depends on the solution of another (inner)
- I.e two nested optimizations
- The outer objective uses the result of the inner optimization
Why do bi-level problems appear in metabolic engineering?
- The outer problem wants to maximize product formation (engineer)
- The inner problem responds by optimizing its own growth (cell)
- The engineering strategy must account for the internal optimization
In OptKnock, what are the outer and inner problems?
- Outer: maximize vtarget (e.g. product formation) by choosing KOs
- Inner: maximize vbio (growth) given knock-outs
How are knock-outs encoded in OptKnock?
- Binary variable yi β {0, 1}
- yi = 1 β reaction is active
- yi = 0 β reaction is knocked out β vi = 0
- Use bounds: yi * vimin β€ vi β€ yi * vimax
What does the inner problem in a bi-level formulation depend on?
- The outer decision variables (e.g. knock-outs y)
- These change the feasible region for the inner problem
- The inner LP is parameterized by y
What makes OptKnock a mixed-integer bi-level program?
- Outer layer includes binary variables yi
- Inner problem is a linear program over flux variables v
- The feasible set for v depends on y
What is OptKnock?
- A bi-level MILP to find knock-outs that couple growth and production
- Automates the search for knock-out designs
How is the number of knock-outs restricted in OptKnock?
Add a constraint for K, the max allowed deletions: β(1βyi) β€ K
What is the full program for OptKnock (Burgard et al. (2003) Biotech. & Bioeng.)
max over y: vchemical
st:
max vbio
st:
N v = 0
for all i β€ 1 β€ m, yi Β· vimin β€ vi β€ yi Β· vimax
yi β {0, 1}
βi=1m(1βyi) β€ K
What does the inner problem in OptKnock represent?
The cellβs behavior: maximize biomass production given knock-outs
What does the outer problem in OptKnock represent?
The engineerβs goal: maximize product formation by choosing which knock-outs to apply
What assumptions does OptKnock make about the cell?
- The cell optimizes growth
- Product formation is only induced indirectly via knock-outs
Why are bi-level problems difficult to solve?
- The inner problem changes with each outer decision
- You canβt just solve them separately
- to nesting, discrete nature of int vars β problem non-convex, combinatorial
What does βcombinatorialβ mean in the context of bi-level optimization?
- refers to having to choose among many discrete combinations, eg KO sets
- Each combination may lead to a different inner solution
- possible combinations can grow very large - βcombinatorial explosionβ
- Can make problem hard to solve efficiently
Why canβt bi-level problems be solved directly?
Inner LP depends on outer variables β standard MILP solvers unable to handle it directly.
How can bi-level problems be solved in OptKnock?
Two approaches:
* By replacing the inner LP with its dual problem
* Apply Karush-Kuhn-Tucker (KKT) conditions (optimality) to connect primal, dual
What are the KKT conditions used to solve bi-level problems?
(not so relevant ! )
- Stationarity
- Primal feasibility
- Dual feasibility
- Complementary slackness