Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
Announcements
Intel Customer Support will be observing the Martin Luther King holiday on Monday, Jan. 17, and will return on Tues. Jan. 18.
For the latest information on Intel’s response to the Log4j/Log4Shell vulnerability, please see Intel-SA-00646
6462 Discussions

nonlinear least squares - support for large sparse problems.

Gonzalo_Feijoo
Beginner
106 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
Black Belt
106 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.
Gonzalo_Feijoo
Beginner
106 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!
Reply