[petsc-dev] coding style
tmunson at mcs.anl.gov
Thu Aug 18 22:31:45 CDT 2016
> SQPTR needs some work. I wrote it over 14 days; mostly whatever time I could spare at ICSP, plus three weekends. Right now, it’s written so that various steps of the algorithm could be factored out and tested individually using a handwritten test harness. The performance could be improved by caching objects instead of destroying them and recreating them repeatedly, and eliminating redundant function evaluations. The definition of the Hessian needs to be fixed for use in the general case — right now, I have a test example with linear equality constraints that does not contribute at all to the Hessian. I also suspect the current implementation does not use TAO idiomatically, and that might need to be fixed. Nevertheless, it runs and computes the right answer. Longer term, it would be good to interface the solvers to CUTEst to get a benchmark, and it would be good to include PDE-constrained optimization problems as separate benchmark problems; I think there are some practical research issues on this point that might be good to discuss off-list with anyone on the PETSc/TAO team that would be interested.
I have a link somewhere for the CUTEr/CUTEst problems, at least for the
unconstrained and bound constrained problems. Its been years ago
though and I should find it and dust it off.
I literally did thousands of runs through that CUTEr set to test lmvm,
determine good parameters for the qn approximation. Similar for the
tests with NTR, NLS, and NTL. Eventually did pairwise comparisons
of performance profiles to select a winner...
I think I did the same with blmvm, but can't remember.
More information about the petsc-dev