Implementation of limits on the optimization results

1 vue (au cours des 30 derniers jours)
Itachi
Itachi le 11 Sep 2012
Hi guys, I've want to optimize my problem using "fmincon". I want to put limits on the answers, let's say I want x1 > x2 and x2 > x3 in here:
x = fmincon(fun,x0,A,b,[],[],nonlincon)
how should I implement this kinda constraints?
I've set "A" to [-1 1 0;0 -1 1] and "b" to zeros(size(A,1),1) but I get infeasible results! Shouldn't it work?! Please help me out.
Best regards,

Réponse acceptée

Oleg Komarov
Oleg Komarov le 11 Sep 2012
Modifié(e) : Oleg Komarov le 11 Sep 2012
Should it be
b = zeros(size(A,1),1);
An example problem (without nonlinear constraints):
f = @(x) x(1)^2 + x(2)^2 + x(3)^2;
A = [-1 1 0
0 -1 1];
b = zeros(size(A,1),1);
X = fmincon(f,3:-1:1,A,b);
  5 commentaires
Oleg Komarov
Oleg Komarov le 11 Sep 2012
Modifié(e) : Oleg Komarov le 11 Sep 2012
I showed you some syntax, not methods.
If you're alluding to the choice of X0 (the starting values for the x) then I just picked up something that did not satisfy the constraints to check afterwards that they were satisfied.
Also, you were talking about x1, x2, x3 and f is an example of a function in 3 variables. Basically, that's how you should write it.
Itachi
Itachi le 11 Sep 2012
Thanks.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Get Started with Optimization Toolbox 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!

Translated by