How we can fix the fmincon?

1 回表示 (過去 30 日間)
Karim Hasouna
Karim Hasouna 2020 年 8 月 15 日
編集済み: Matt J 2020 年 8 月 16 日
I have a GARCH with an exogenous variable with a delta coefficient. I analysed the maximum likelihood estimation to find the four parameters.
There is somethign wrong.
omega = theta(1,1);
alpha = theta(2,1);
beta = theta(3,1);
delta = theta(4,1);
lb = [0.0000001;
0;
0;
0.0000001];
ub = [1000000;
0.999999;
0.999999;
100000];
A = [0 1 1 0;1 0 0 1];
b = [0.9999999; 0];
%Aeq =[1 0 0 0];
%beq =[0];
What I should do for input = omega + delta >0.
I think this is the problem of the output.
[x,fval,exitflag,output,lambda,grad,hessian] = fmincon('log_lk_GARCHVIX',theta0,A,b,[],[],lb,ub)
The output give me most of parameters equatl to zero and 1 equal to 1.
  2 件のコメント
Karim Hasouna
Karim Hasouna 2020 年 8 月 15 日
x= 0.0003
0.1585
0.1579
0.0010
Now give me this output with the exitflag=1. What I want ot understand is why the last value delta = 0.0010 follows the lower value that I put in the lb[ ..., ..., ..., 0.0010]. It means that is useless teh last parameter in my analysis?
Matt J
Matt J 2020 年 8 月 15 日
編集済み: Matt J 2020 年 8 月 15 日
Well, a minimum will follow lb if the objective is "positively sloped" in the neighborhood of lb. For example, consider the simpler, one-variable problem
min. x
s.t. x>=lb
Clearly the minimum will always be at x=lb.

サインインしてコメントする。

採用された回答

Matt J
Matt J 2020 年 8 月 15 日
A = [0 1 1 0;-1 0 0 -1];
b = [0.9999999; 0];
  6 件のコメント
Walter Roberson
Walter Roberson 2020 年 8 月 16 日
You are being stopped by a constraint. exitflag 1 can only occur if you are not being stopped by a constraint and the jacobian is all nondecreasing (indicating a local minimum).
Matt J
Matt J 2020 年 8 月 16 日
編集済み: Matt J 2020 年 8 月 16 日
Hmmm. I don't think that can be true, based on the following example. Clearly the optimization would keep going if it were not for the lower bound lb=0. Yet, we get an exitflag of one.
>> [x,fval,exitflag]=fmincon(@(x)x , 2, [],[],[],[],0,inf)
Local minimum found that satisfies the constraints.
x =
2.0000e-08
fval =
2.0000e-08
exitflag =
1

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSolver 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