optimization; linear but complex constraint equations

조회 수: 2 (최근 30일)
aft
aft 2011년 3월 3일
Hi, I am solving an optimization problem, with quadratic min function under constraints. the constraint is linear (my numerical tests confirm) but it is so complex equation that it is impossible to segregate optim variable from equation to write it in the form Ax<=b (there are square roots involved).
Any solutions ?
thanks in advance !
aft
  댓글 수: 1
Steve Grikschat
Steve Grikschat 2011년 3월 3일
Can you write out the equation? If it truly is linear, there should be a way to write it in Ax <= b form.
If not, consider solving the problem using a general nonlinear constrained solver (fmincon). You can thus provide the gradients (H*x + f) and the Hessian (H), which will speed things up a bit.

댓글을 달려면 로그인하십시오.

답변 (1개)

aft
aft 2011년 3월 3일
Thanks Steve for your reply. let me explain in detail.
in fact I define a displacement using a 5th degree polynomial (hv to do tis way). Final distance is my optim variable (call it X). Constraint is that the peak of accel (say A) should not exceed a scalar value (say 60).
I solve all this symbolically in matlab with known initial and final conditions, which finally gives me a very long expression for peak accel A (my constraint) in terms of X (optim variable). When i test this expression, by giving arbitrary values of X, i get a straight line (the slope of which off course depends upon other init and final conditions that i know).
the problem is that i cannot isolate my X from that expression to get (constant)* X <= 60.
hope that its more clear now.
  댓글 수: 1
Steve Grikschat
Steve Grikschat 2011년 3월 4일
In that case, I would suggest using a general nonlinear constrained solver (in this case, fmincon). Specify your constraints as a "nonlinear" constraint function.
You can (and should) provide the gradients (H*x + f) and the Hessian (H) of the objective function, which will speed things up a bit. It doesn't sound possible, but it would be better to get the derivatives of the constraint as well.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by