![]() |
[求助]Matlab Optimization fmincon/fminunc 如何调用Hessian函数
Matlab Optimization fmincon/fminunc 如何调用Hessian函数?
使用fmincon或者fminunc函数时可以直接使用Hessian矩阵。只要在function evaluate时返回函数值f,梯度g和Hessian矩阵H就可以了,如: x = fmincon(@func,x0,A,b) function [f, g, H] = func(x) 但是,同样fmincon和fminunc可以把Hessian矩阵定义成一个函数形式,@hessianfcn或者@HessMultFcn options = optimset('Hessian','user-supplied','HessFcn',@hessianfcn); 或者, options = optimset('Hessian','user-supplied', 'HessMult',@HessMultFcn); 请问如何定义函数@hessianfcn或者@HessMultFcn? Matlab解释可以定义函数@HessMultFcn返回W = H*v,这样可以避免生成Hessian矩阵的内存开销,但是这里的向量v是什么呢?如果我不想生成Hessian矩阵,而我可以得到W = H*v中的W向量,请问怎么定义@HessMultFcn呢?谢谢 |
所有时间均为北京时间。现在的时间是 20:51。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.