Parameter estimation with constraints

I am working with SimBiology to fit the parameters of a three-step kinetic model (rate constants: k1, ki1, k2, ki2, k3, ki3) to a series of experimental time courses of an enzyme reaction. Additionally, I have independently obtained experimental values of kcat​ and Km​ for the reaction. The expressions for kca and Km terms of the rate constants for the three-step model are:
kcat = (k2.*k3)./(k2 + ki2+ k3)
Km = ((k2.*k3 + ki1.*(ki2 + k3))/(k1.*(k2 + ki2 + k3))).
To constrain the estimation of the rate constants, I included two 'Algebraic Rules' in SimBiology:
1) 20 < (k2.*k3)./(k2 + ki2+ k3)
2) 20 < ((k2.*k3 + ki1.*(ki2 + k3))/(k1.*(k2 + ki2 + k3)))​
In this way, I aim to ensure that the estimated rate constants satisfy the known values of kcatk_{cat}kcat​ and KmK_mKm​. However, when I run the SimBiology interface to perform the fitting, I receive the following error messages:
  1. "Model is overdetermined by the following algebraic rules: '20 < (k2·k3)/(k2 + ki2 + k3)' and '20 < ((k2·k3 + ki1·(ki2 + k3))/(k1·(k2 + ki2 + k3)))'. At least one species, parameter, or compartment in this rule must be non-constant and not defined by a reaction rate, rate rule, or repeated assignment rule."
  2. "An error occurred while trying to compile the model."
How should I proceed to constrain the fitting of the rate constants for the three-step kinetic model using these two expressions for kcat​ and Km?"
Best regards
Luis B

 Respuesta aceptada

Jeremy Huard
Jeremy Huard el 18 de Nov. de 2024
Editada: Jeremy Huard el 18 de Nov. de 2024

0 votos

algebraic rules do not support inequalities. They are meant to define an equation in the form f(x) = 0 and are only recommended when you can't get a closed form solution for x.
In your case, since you have values for kcat and Km, why not define kcat and Km as constant parameters with these values, add two initial assignments for 2 of the rate constant parameters so that your equations hold true, e.g.:
Now, you can estimate the remaining rate constants:
Would this work?
Best,
Jérémy

6 comentarios

Luis B. Walter
Luis B. Walter el 18 de Nov. de 2024
Thank you very much, Jeremy. I understand. However, Simbiology does not accept these expressions of k1 and k2 as initial assignments. Either by entering kcat and Km as numbers or as constant parameters. I show you this in the next screenshot.
best
Luis B
Arthur Goldsipe
Arthur Goldsipe el 18 de Nov. de 2024
The screenshot you shared is not completely legible, but I think you're getting a message that the assignment is not a valid MATLAB expression. However, since I can't read the expression, I can't tell what's wrong with it. Can you share more details, such as a copy of your project (my preferred option), a higher quality screenshot, or even just the text of the these initial assignment rule expressions?
Luis B. Walter
Luis B. Walter el 18 de Nov. de 2024
Many thanks, Jeremy. I attached the Simbiology protocol. I included several different Initial assignments (they are all disabled) to test alternatives that act as constraints in the fitting.
It would be interesting for new versions of Simbiology to include the possibility of introducing an equation (as in this case kcat and Km) in the Simbiology interface that operates as a constraint in the fitting on the parameters.
best
Luis B
k1 = ((k3.*kcat + ki1.*(k3 - kcat)./(k3.*Km))
% 12 3 2 3 21
There is one extra "(" that is not closed by the end of the expression.
k2 = (kcat.*(ki2 + k3))./(k3 - kcat))
% 1 2 10 1 0?
There is one extra ")" in closing the expression.
k1 = ((k3.*24+ ki1.*(k3 - 24)./(k3.*78))
% 12 3 2 3 21
There is one extra "(" that is not closed by the end of the expression.
k2 = (24.*(ki2 + k3))./(k3 - 24))
% 1 2 32 3 21
There is one extra "(" that is not closed by the end of the expression.
Luis B. Walter
Luis B. Walter el 19 de Nov. de 2024
Sorry, Jeremy: I think I forgot two files that you might need.
Luis B. Walter
Luis B. Walter el 19 de Nov. de 2024
Yes, Walter. Correct: beginner's mistake!!!!!!
Thank you very much
Luis B

Iniciar sesión para comentar.

Más respuestas (0)

Comunidades de usuarios

Más respuestas en  SimBiology Community

Categorías

Productos

Versión

R2023b

Preguntada:

el 18 de Nov. de 2024

Comentada:

el 19 de Nov. de 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by