Maximize function (parameters estimation with likelihood)

1 次查看(过去 30 天)
Hello, I have a function that gives me a likelihood which I want to maximize. The problem is that I need to give 4 parameters that I need to estimate. I have this function:
[z, z0, z1, z2, z3]= myfun(g, g1, g2, x1, g3, x2, x3)
How can I maximize z giving as x1 a 20x20 matrix symmetric?

回答(1 个)

Sindhuja Parimalarangan
To get the maximum likelihood for the function "myfunc", you can use the "fmincon" function. Extra parameters (x1,x2,x3) can be passed by means of anonymous function as an argument to "fmincon".
The general workflow would be to :
1. Construct an anonymous function with x1,x2,x3 2. Specify known parameters g,g1,g2,g3 3. Call "fmincon" of the form - fmincon(@(x1,x2,x3),myfun(g,g1,g2,x1,g3,x2,x3))
Alternately, the anonymous function can be defined outside "fmincon" and used as one of it's arguments.
You can refer to this link for documentation and examples on passing extra parameters: http://www.mathworks.com/help/optim/ug/passing-extra-parameters.html

类别

Help CenterFile Exchange 中查找有关 Quadratic Programming and Cone Programming 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by