Find maximum of a function.
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
ektor
el 17 de Ag. de 2015
Comentada: JMP Phillips
el 20 de Ag. de 2015
Dear all,
I have the following code that aims at maximixing LL_all with respect to "gidraw" which is scalar.
%the data
n=1;
Xfi=[ -1.4+randn(n,1) 0.5+0.6*randn(n,1)];
beta=[3 2 ]';
yi=randn(n) ;
gidraw=0.5;
lam=Xfi*beta + gidraw;
int=yi.*lam-exp(lam);
int=sum(int);
%the function
LL_all = -(log(normpdf(gidraw,2,sqrt(0.5)))+int);
So, my question is what is the maximum of LL_all? That is, how can I find the maximum of this function? Also can I calculate the Hessian matrix(which is a scalar more precisely) of this function?
Thanks in advance
4 comentarios
Walter Roberson
el 19 de Ag. de 2015
I thought I understood what you wanted, but lam is an n x 1 vector and yi is an n x n array, so yi .* lam is an error. yi*lam would be well defined and would be n x 1 which would be fine for adding exp(lam) which would be n x 1 as well. The sum() in the next line would then be creating a scalar. Is that what is desired?
Respuesta aceptada
JMP Phillips
el 19 de Ag. de 2015
If gidraw is a scalar, your problem doesn't make sense, as LL_all is just a number. If gidraw is vector, the maximum of -[log(normpdf) + int] is +Inf.
2 comentarios
JMP Phillips
el 20 de Ag. de 2015
still confused sorry, your code just returns a number. Don't you need to specify a range of inputs for the distribution, so that you can find the maximum within the range? In your equation for LL_all, which is the vector input, is it Int?
Más respuestas (0)
Ver también
Categorías
Más información sobre Computational Geometry en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!