Applying a change of variables inside fmincon
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Michele Muller
le 18 Oct 2019
Commenté : Michele Muller
le 30 Oct 2019
I want to minimize a very well-behaved objective function over the convex hull of a finite set of points .
I am only interested in finding the point where f is maximized, and do not care about the weights that allow me to write .
Of course, I could simply write this as:
popt = fmincon(@(p) f(x'*p),[],[],ones(1,N),1,zeros(N,1),[]);
y = x'*popt;
However, if the points that span the convex hull are nearly multicollinear, then this compound function (as a function of p) is very flat around the optimum. I suspect that this is slowing down fmincon a lot, and would help it "solve the problem" in the space rather than over . What steps could I take to achieve this?
0 commentaires
Réponse acceptée
Plus de réponses (1)
Matt J
le 18 Oct 2019
You could add a regularizing penalty to better specify the solution p_i in the cases where it is ambiguous. Maybe an L1 penalty to enourage sparseness, or an L2 roughness penalty.
2 commentaires
Voir également
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!