I am adapting a Java program from C++ and need a C++ function to perform the same task as the Java BOBYQAOptimizer() function. Can anyone recommend a C/C++ library with equivalent or similar functions and good documentation on how to use them? I've found one that might be suitable ( http://dlib.net/optimization.html ), but it's not entirely clear if its optimizers can be used for this task.
The program is intended to find the set of parameters that give the maximum statistical likelihood of a phylogenetic tree of HIV virus data across thousands of patients. The parameters are infection rates between demographic groups. (Different versions use either 4 or 8 groups, giving 16 or 64 parameters, though in practice some are held constant at 0.)