fmincon: Does ScaleProblem affect FiniteDiff​erenceStep​Size?

5 ビュー (過去 30 日間)
Hesham
Hesham 2019 年 9 月 28 日
コメント済み: Matt J 2021 年 3 月 18 日
Hi
I understand that the ScaleProblem option scales the objective and the constraints. But does it also affect the FiniteDifferenceStepSize?
If it doesn't affect the FiniteDifferenceStepSize, then is it better to scale the parameters manually if they have different scales?

採用された回答

Matt J
Matt J 2019 年 9 月 28 日
編集済み: Matt J 2019 年 9 月 28 日
No, ScaleProblem and FIniteDifferenceStepSize are unrelated. You can use TypicalX to inform the finite differencing of the typical magnitudes of the different unknown variables.
In my opinion, though, it is always good to manually scale the variables if you can so that the objective have similar second derivatives w.r.t. all the parameters near the optimal solution. This should improve problem conditioning, convergence speed, and finite differencing accuracy.
  2 件のコメント
JINGKAI BI
JINGKAI BI 2021 年 3 月 18 日
Dear Matt J
I am still confused with the scaling problem when optimizing, the question is as follows hoping for your kind answering.
Sometimes the model does not allow us to scale the variables.
For example, we are trying to minimize
,
the effects of a and b can be different: , ,
and the magnitude difference between a and b is,
this magnitude gap can be large therefore affects the accuracy and convergence speed.
The units of a and b are both dollar, if we change the unit of a or b, the meaning of the model will be changed, and when models are complicated, it becomes infeasible to scale the variables since the implication of the model is twisted and unreadable.
My question are:
(1) Whether my understanding about scaling is wrong?
(2) Why can't we just assign different step-size for different variables according to their effects to objective function to deal with the scaling problem? If we can't, what should we do?
Best wishes
Jingkai Bi
Matt J
Matt J 2021 年 3 月 18 日
@Jingkai Bi
You can use the TypicalX option parameter to assign different step-sizes, if you wish. I just don't thin it's the best way.

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNonlinear Optimization についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by