[求助]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呢?谢谢
		 
		
		
		
		
		
		
		
	 |