Hi everyone I am solving a large set of linear decomposition problems as follows. In each case I have a composition Y (n dimensional) that is supposed to be a linear combination of m compositions A1,...Am (each of them also n dimensional), whith (non negative) weights X (m dimensional). That is to say we expect Y=AX and we want to determine the X that gives the closest match. The n residuals are AikXk-Yi It works pretty well up to m around 25. For bigger problems Solver still reports convergence but often fails to obtain the absolute minimum. This can be easily tested using the base compositions Ai as target composition Y. The parameters being used are: options.line_search_interpolation_type = ceres::BISECTION; options.minimizer_type = ceres::TRUST_REGION; options.use_nonmonotonic_steps = true; options.max_consecutive_nonmonotonic_steps = 10; options.trust_region_strategy_type = ceres::DOGLEG; options.dogleg_type = ceres::SUBSPACE_DOGLEG; options.linear_solver_type = ceres::DENSE_QR; options.use_explicit_schur_complement = true; options.max_num_iterations = 400; The m weights are constrained by calling SetParameterLowerBound(X, i, 0) for each one.Do you have any suggestion to improve the results
--
You received this message because you are subscribed to the Google Groups "Ceres Solver" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceres-solver...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/588260f8-62a7-4162-a7bb-2c2d754ad4cd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/b5a9d4de-0eb6-4c21-81f5-1926936ff6d0%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Ceres Solver" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceres-solver...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/d66bc374-84c5-4b7b-952f-b232cbd1c3b6%40googlegroups.com.
Hi SameerMany thanks for your suggestions.I spent some time experimenting with tsnnls but unfortunatelly my problems seem to not fit in it. I only obtain convergence for the simplest cases (and the results produced in that cases are almost correct if not the presence of some small negative ones) with the unconstrainded solver function t_lsqr. The constrained solver function t_snnls() never converged during my tests.
For CVXOPT it is not convenient for me to use it since I need a library to call from inside my C++ program.On the other hand, I managed to improve the computation speed of Ceres by a factor of two by using analytical derivatives. It can be even further improved, since the jacobian is allways constant, if there was some way to make Ceres take advantage on this fact by requesting the jacobian evaluation only once. Do you have a suggestion on the location of the source code of Ceres that can be tweaked for this end.
Thanks againPedro
--
You received this message because you are subscribed to the Google Groups "Ceres Solver" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceres-solver...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/37fb5ca7-e094-4a6f-9fbb-5228e41ab89c%40googlegroups.com.