I've been trying to determine if OpenMx can be used to help with my optimization problem.
I'm very impressed with what I've read and am excited about the prospect of using it for my project. However, I'm not yet convinced it will help me do what I need and whether it is the right package for this work.
I'm working on confirming a physiological model for heart rate kinetics during cycling. The model takes heart rate, cadence and power as input data. The model calculates a derived power using heart rate, cadence and a number of physiological values that may be measured (those in pink boxes) and those that are adjusted (in yellow boxes) so as to minimize standard deviation of residuals between derived power and measured power. Here is a link to a screenshot of my spreadsheet:
The derivation uses things like slope calculations in the input data, various time constants and there is also recursion. Roughly speaking, the derivation moves from left to right to eventually derive a power value and the residuals are calculated with the measured power value, using a moving average. By making successive parameter changes from a set of starting values, the model can be converged to local minimums. By changing starting points, I can then look for the global minimum. I never know whether I'm at the global minimum however often the correlation is sufficiently high that I can conclude that the parameters are *very near* their optimal values - hence a close representation of the actual physiological values. (Interestingly, once there has been sufficient data collection to have tested the model, i.e. compare the derived physiological parameters against real parameters from a broader variety of individuals and situations, the model itself can then be evaluated and potentially adjusted if needed. I can see this following a more traditional statistical approach.)
So my first and most important question is whether OpenMx can be used to solve for the optimal parameter values. I'm not sure if algebras can be setup to obtain data longitudinally for calculations (like slopes) for example and whether objectives can be setup to perform global minimum searches. If so, then my question would be whether it is well-suited for this (hoping that it is but suspect that it isn't). Finally, if it is well-suited, if there are any posts and/or sources of information that I can look at that will help me.
Btw, if anyone is interested in understanding more and would like to discuss further, feel free to email me off list.