fmincon stuck at an intermidiate value

2 次查看(过去 30 天)
Hi,fellows I am using fmincon to maximize the sum of likelihood(sumllh), which is part of a simulation. So I know the optimized value should be around 172. But it seems fmincon have worked from around more than 700 to 523 and then can't go on. It has been working more than 10 hours now. So I think there must be some problem here. Could you offer some advice I will show you the result in command window.
if true
%sumllh =
523.2640
sumllh =
523.2640
sumllh =
523.2640
sumllh =
523.2640
sumllh =
539.0686
sumllh =
523.2640
sumllh =
523.2640
sumllh =
523.2640
sumllh =
523.2640
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 9 5.232640e+002 0.000e+000 2.100e+005
sumllh =
658.7498
sumllh =
705.4196
sumllh =
606.7836
sumllh =
598.1732
sumllh =
678.4877
sumllh =
713.2264
sumllh =
609.5137
sumllh =
599.1704
sumllh =
543.3757
sumllh =
545.6598
sumllh =
534.0842
sumllh =
528.5852
sumllh =
525.9029
sumllh =
524.5781
sumllh =
523.9197
sumllh =
523.5915
sumllh =
523.4276
sumllh =
523.3458
sumllh =
523.3048
sumllh =
523.2844
sumllh =
523.2742
sumllh =
523.2691
sumllh =
523.2665
sumllh =
523.2652
sumllh =
523.2646
sumllh =
523.2643
sumllh =
523.2641
sumllh =
523.2640
sumllh =
523.2640
sumllh =
523.2640
sumllh =
523.2639
sumllh =
523.2639
sumllh =
523.2640
sumllh =
523.2640
sumllh =
523.2629
sumllh =
523.2639
sumllh =
523.2639
sumllh =
523.2639
sumllh =
523.2639
1 48 5.232639e+002 0.000e+000 6.802e+004 1.468e-010
sumllh =
523.2639
sumllh =
523.2639 end
  1 个评论
Walter Roberson
Walter Roberson 2013-2-6
Those numbers do not help us much at all. It would be easier if you were to show your code.
It seems likely that you are stuck in a local minima.

请先登录,再进行评论。

采纳的回答

Matt J
Matt J 2013-2-6
Your function beta looks highly non-differentiable and therefore out of the scope of what fmincon can handle. You'll probably need to use ga() instead. It's also not clear how you came up with your initial guess and why you think that's close to the optimum. If you simply have no idea, all the more reason to use ga().
  10 个评论
xueqi
xueqi 2013-2-18
No I can't. I know the optimum should be 159 because I am using the simulated data in this case. But when I am analyzing the experimental data, I cant know the optimum... For an different question. I have 8 independent variables for my function beta. How do I plot it with respect to each of the 8 variables?
Matt J
Matt J 2013-2-18
You evaluate your objective function over a range of one of your 8 unknowns while holding the other 7 fixed.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Solver Outputs and Iterative Display 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by