フィルターのクリア

Solver ignores my guess

2 ビュー (過去 30 日間)
Tim
Tim 2014 年 6 月 13 日
編集済み: Matt J 2014 年 6 月 13 日
I am using a the constrained solver fmincon with 2 constrains: all values of x >= 0 and the sum of x is equal to y.
I know the analytic solution for some low y values and I use those as a guess. When look at what fmincon puts into my function, I see that it doesn't put my guess value in to it. And it does not reach my guess values, so it reaches some kind of local minimum. Why is fmincon being stubborn and why doesn't it use my guess values?
  4 件のコメント
Mahdi
Mahdi 2014 年 6 月 13 日
Have you tried using a value slight bigger than zero? Like 0.00000001, does the same problem happen?
Matt J
Matt J 2014 年 6 月 13 日
編集済み: Matt J 2014 年 6 月 13 日
What is the the value of y? 50?
What is the final value of x that fmincon returns?
What is the value of the 3rd output argument "exitflag"?
What options are you passing to fmincon (TolCon, TolFun, Algorithm, etc...)?

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

採用された回答

Matt J
Matt J 2014 年 6 月 13 日
編集済み: Matt J 2014 年 6 月 13 日
The 'interior point' algorithm would ignore your initial guess when AlwaysHonorConstraints='bounds', which is the default. Then, it needs to find a starting point in the interior of your bound constraints. Hence,
x0 = [50 1 1 1 1 1]
is a valid candidate.
  1 件のコメント
Tim
Tim 2014 年 6 月 13 日
Thanks for your help! At the end, I changed a lot of the tolerance options which resulted in a final solution that was acceptably close to my initial guess.

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

その他の回答 (0 件)

カテゴリ

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