Scaling in Pattern search

I am using PatternSearch for an optimization problem. There are 12 parameters with varying sizes ranging from 10^2 to 10^-3. In gradient based optimization it is often suggested to use scaling. Do I need scaling in pattern search too? I already have the Scale option on.

6 Comments

jgg
jgg on 21 Apr 2016
It's a very good idea to try to set up your optimization so all the parameters have approximately the same impact on the objective function. For instance, if one parameters is on the order of 10^2, divide it by 100, while if it's on the order of 10^-3, multiply it by one thousand.
Scale or ScaleMesh can help with this, but it's a better idea to just properly scale your problem in the first place.
hscbsc
hscbsc on 21 Apr 2016
Edited: hscbsc on 21 Apr 2016
Thanks jgg ! I have been trying to scale and it does help. I just wanted to be sure as I am running multiple formulation of the model, and each with a grid. So the scope is large and I do not want to rerun :)
I have a follow up question. In case, I am minimizing a weighted objective function, then the scaled parameters usually do not reach the minimum. I do understand that the existence of weights might hinder the optimization, but is it a frequently occurring problem with fellow users ?
jgg
jgg on 22 Apr 2016
I don't think the weighted-ness should have anything to do with it; you're probably just finding idiosyncratic local minima. Try playing with the starting points or tolerances for solution.
Got it ! Thank you.
jgg
jgg on 25 Apr 2016
You should explain what you did in an answer to this problem, so other people can find it and learn.

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 25 Apr 2016
There are several scale invariant pattern recognition algorithms. For example SIFT and Hu's moments:

Categories

Find more on MATLAB in Help Center and File Exchange

Asked:

on 21 Apr 2016

Answered:

on 25 Apr 2016

Community Treasure Hunt

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

Start Hunting!