Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
6977 Discussions

nonlinear least squares - support for large sparse problems.

Gonzalo_Feijoo
Beginner
279 Views

Hello,

I would appreciate if someone could answer the following question for me: does the nonlinear least square solver has support for sparse problems? I mean, what if the optimization problem is large and the jacobian matrix is sparse (each row contains a few nonzeros). Some libraries, such as Matlab, give you handles so you can write a subroutineto compute theappropriatematrix-vector products instead of forming the Jacobian. Does Intel MKL have something like this?

Thank you in advance,

Gonzalo

0 Kudos
2 Replies
mecej4
Honored Contributor III
279 Views
The trust-region nonlinear least-square routines use a reverse-call-interface. When you regain control, the request index tells you whether you are being asked to compute the functions (fvec) or their Jacobian (fjac). You can use whatever information you have to limit your computations for these quantities to only their non-zero elements.

Other than that, there is probably no provision for exploiting sparse structure.
0 Kudos
Gonzalo_Feijoo
Beginner
279 Views
Quoting mecej4
The trust-region nonlinear least-square routines use a reverse-call-interface. When you regain control, the request index tells you whether you are being asked to compute the functions (fvec) or their Jacobian (fjac). You can use whatever information you have to limit your computations for these quantities to only their non-zero elements.

Other than that, there is probably no provision for exploiting sparse structure.

Thank you for your answer. Too bad there is no provision for exploiting large-scale sparse problems. The changes to the code would have been minimal, it would require adding another code in the reverse communication interface so the userprovides the routines to make the necessarymatrix-vector products. It would be a nice feature to have in a future release. I just cannot believe others have not asked for this feature in the past!
0 Kudos
Reply