*** Attention: This is an external email. Use caution responding, opening attachments or clicking on links. ***
Hello Harry,
There could be a couple of reasons for what you are seeing: 1) the
optimization has not yet converged to a low enough value, or 2) you have
a strong parameter identifiability problem.
Most likely the two are happening there.
1- Algorithm may have not converged yet
It may be that the optimizations you are running stop before
converging to a good enough value. I would try to chose different
algorithms (seems like you did), but also allowing the ones you already
tried to run longer. For example, if you run genetic algorithm, then
increase the number of generations (our default value is rather small,
make it 1000 or larger). If you are running a local algorithm (eg
Nelder-Mead, Hooke-Jeeves, Praxis, Levenberg-Marquardt) make the
tolerance a smaller value.
One other problem is that local algorithms (HJ, NM, LM, Praxis,
NL2SOL, TN, steepest descent) will get trapped in local minima. So you
should run them a few times with randomized starting values (tick
"randomize start values" and each time you run the initial parameter
guesses will be random). This may allow you to get to a better solution.
2- parameter unidentifiability
This is when your data set does not sample enough of the model state
space that it becomes hard/impossible for the optimization to converge
to the solution. The larger the number of parameters that you are
fitting is, the more likely this is to happen (as you increase the
degrees of freedom of the optimization, but the data is still the same).
Usually the two major ways we have to make this better is:
2.1) get more data (not just more, but sampling other states, which
means setting up experiments in a different way). This is usually
expensive or impossible if you don't have control over the data generation
2.2) simplify the model. This could be either setting some parameters
to a fixed value (or a very small range around a value) or changing the
reaction scheme (or kinetics, if you are using enzyme kinetics, but I
guess this is not the case here). You seem to have also done this and it
did not work. However, when you fix parameter values it should be their
true value (unfortunately we never know what it is!), so fixing them to
a bad value only makes things worse...
There is a special case of unidentifiability when the actual equations
of the model do not allow for a solution. That always requires changing
the model. There is no way in COPASI to find out whether this is the case.
I hope that you can try solution 1) and that some algorithm will give
you a better result. For me, the algorithms that "work" are particle
swarm, Hooke-Jeeves, SRES, and genetic algorithm. I would spend more
time on those...
Pedro
On 3/14/25 07:00, Harry Wilson wrote:
> Hello,
> I am trying all these different mechanisms to get reasonable rate
> constants and good fit. One of the mechanisms involving 5 reactions gave
> me good fit and reasonable k values except for one step. When I try to
> remove all the steps are going way off. Do you know what might be the
> reason. I have 8 species in the reaction mechanism but I only know the
> concentration of 3 species. Is this the reason for very high k for one
> step. This is the mechanism I used:
> A + B -> I + E
> I + B -> I1 + E
> I1 + B -> I2 + E
> I2 + B -> J + E
> 2J -> C
> Here, I, I1, I2 and J are intermediates. *When I try to remove one
> intermediate step or when I put the same rate constants for 2nd, 3rd and
> 4th step assuming they react the same, the fit looks still good but the
> rate constants(2 or more) are going way off* with higher std deviation
> than their values.
> Coincidentally, when I tried to optimize using a 3 step reaction
> mechanism, all the rate constants were reasonable.(*However this worked
> only for one particular concentration of A. When I put in the
> experimental data with different concentration of reagents this equation
> also fails*)
> A + B -> I + E
> I + 3B -> I1 +3 E
> 2J -> C
> Do you know why this might be happening or is it because I have way less
> experimental data compared to the total number of species in the
> reaction. I have tried with different methods including particle swarm
> and differential evolution. Do you suggest some other method instead?
> I would love to know your insights in this case. I will also attach the
> cps file and exp data for your reference, along with the screenshots of
> parameters estimated using these two mechanism.
> Thanking you,
> Harry
>
> --
> You received this message because you are subscribed to the Google
> Groups "COPASI User Forum" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to
copasi-user-fo...@googlegroups.com
> <mailto:
copasi-user-fo...@googlegroups.com>.
> To view this discussion visit
https://groups.google.com/d/msgid/copasi-
> user-forum/13bbcab2-63eb-4359-82c6-fd7a8cbeb60an%
40googlegroups.com
> <
https://groups.google.com/d/msgid/copasi-user-
> forum/13bbcab2-63eb-4359-82c6-fd7a8cbeb60an%
40googlegroups.com?
> utm_medium=email&utm_source=footer>.
--
Pedro Mendes, PhD
Professor and Director
Richard D. Berlin Center for Cell Analysis and Modeling
University of Connecticut School of Medicine
group website:
http://www.comp-sys-bio.org