Find maximum of a function.

6 vues (au cours des 30 derniers jours)
ektor
ektor le 17 Août 2015
Commenté : JMP Phillips le 20 Août 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 commentaires
Walter Roberson
Walter Roberson le 19 Août 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?
ektor
ektor le 19 Août 2015
Modifié(e) : ektor le 19 Août 2015
Hi Walter, I made a small modification in the above code to make things easier. n=10 now becomes n=1. Yes, this is what is desired. Basically I want to find the posterior mode of LL_all.

Connectez-vous pour commenter.

Réponse acceptée

JMP Phillips
JMP Phillips le 19 Août 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 commentaires
ektor
ektor le 19 Août 2015
Hi JMP, Thanks. I made a small modification, N=10 now becomes N=1. Does this make sense now?
JMP Phillips
JMP Phillips le 20 Août 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?

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by