Hello!
"Is multiplying the scales by a constant, equivalent to multiplying/dividing the gradient and step tolerances" - not equivalent. It changes tolerances in the way specified by you, but variable scales are used in multiple places.
Say, it used in constraint handling - if you have constraint violation of 1.e-10, you need some way of knowing whether it is significant violation or not. Reducing scale for variable makes algorithm less tolerant to constraint violation for this specific variable.
So, it seems that you spotted the right reason behind incorrect handling of constraints.
|