Does it make sense to scale bounds for 'lsqnonlin'?

4 visualizaciones (últimos 30 días)
Igor
Igor el 30 de Mzo. de 2016
Comentada: Wu Wen el 12 de Abr. de 2017
Hello,
I am wondering if I need to scale the initial guess vector as well as lower and upper bounds when dealing with MATLAB optimizers ("lsqnonlin" is of special interest). In other words, do the bounds have to be normalized, say, in the range [0 1]? Some of the unknown parameters in my optimization problem are several orders higher than the others so I do pre- and postmultiply them by certain numbers so that the ranges for all of the parameters are approximately equal. However, I would like to figure out if that is necessary at all. Does the "lsqnonlin" have a built-in scaling?
Thank you, Igor.

Respuestas (1)

Wu Wen
Wu Wen el 7 de Abr. de 2017
Hi,
I'm doing something similar. I don't know exactly how the function 'lsqnonlin' works, but I'm gonna do some parametric study to investigate the sensitivity of the optimization to the scaling of the variables . I'm trying to make them close to the output value of the objective function. Please can you tell me if you solved this problem? Thank you.
  2 comentarios
Igor
Igor el 8 de Abr. de 2017
Hi,
Thank you for the comment. As you can see, no-one has answered this question so I have no idea what 'lsqnonlin' does under the hood. To be honest, I have not fully investigated whether the results can be greatly improved when scaling the inputs. However, I suspect that when the inputs differ by an order or more, one does have to scale them. In my case, I have already pre-scaled the input vector so that the elements have more or less equal values, so I am not sure if any further improvement can be achieved if restricting the range exactly to [0 .. 1]. I guess the best way to find it out is just running a case.
Please do not hesitate to provide another comment if you get any interesting results when playing with this stuff.
Wu Wen
Wu Wen el 12 de Abr. de 2017
Hello,
I've done a series of optimizations with different scaling coefficients and I've got very different results. Basically you can control the size of the iteration step of the optimization process by using different scaling factors. If the steps are too small then the optimization does not progress much.

Iniciar sesión para comentar.

Categorías

Más información sobre Get Started with Optimization Toolbox en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by