How does mesh scaling work in Pattern Search
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi to everyone,
as I am dealing with a constrained optimization problem, I decided to use Pattern Search. One of the decisions I have to make during the setup of the problem is to set the initial Mesh Size and the Mesh Tolerance. The problem is that the solution vector that I am searching for is poorly scaled. For example, in one direction the solution vector is allowed to vary from 1e-4 to 1e-3 (according to its boundaries), whilst in another direction it is allowed to range from 5 to 600.
In the corresponding documentation, I read that Pattern Search gives me the opportunity to deal with such problems by turning "ScaleMesh" to "on". The documentation in that point reads: "Scale is used to rotate the pattern by some degree and scale along the search directions". Rotating and scaling to "some degree" is a little bit vague, isn't it? How am I supposed to decide on the Mesh sizes and tolerance for such poorly scaled search dimensions? Hence, my question is the following: to which degree is the scaling and rotation performed?
I hope that I wasn't vague too!
Thank you all in advance!
0 commentaires
Réponse acceptée
Alan Weiss
le 11 Oct 2016
You are free to read the patternsearch code to see exactly what is going on. Usually, when you have a poorly scaled problem, you would do better to fix the scaling yourself rather than relying on patternsearch to try to guess what is going on.
The documentation for patternsearch options states: "Scale (ScaleMesh) specifies whether the algorithm scales the mesh points by carefully multiplying the pattern vectors by constants proportional to the logarithms of the absolute values of components of the current point (or, for unconstrained problems, of the initial point). Scale can have the values Off or On (the default). When the problem has equality constraints, Scale is disabled."
Alan Weiss
MATLAB mathematical toolbox documentation
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Direct Search dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!