How to constrain the optimized variable using fmincon ?
이전 댓글 표시
Hi everyone,
I am currently using fmincon function to solve an optimization problem.
Basically I am trying to minimize the integral (sum(abs)) of a variable u. The thing is that I want these u to always be >0, and I am not sure if what I do is correct or how to set correctly the constraint function "noncol" to create this condition.
Here it is what I am doing now: I compute the variable u in my costfun (then its integral), I put these u in global and put another global u in the noncol function to use it. I just set c=-u (as the c<0 and I want u>0). Is it correct ?
Matlab doesn't return any error and run correctly I am just not sure if it is the right way to do it.
Thanks in advance
댓글 수: 6
Torsten
2017년 3월 8일
You should check whether the design vector x is identical in both "costfun" and "nonlcon". If this is the case, you can proceed as you described.
Best wishes
Torsten.
Vincent DUFOUR
2017년 3월 8일
Torsten
2017년 3월 8일
To be safe, just calculate your u both in "costfun" and in "nonlcon" from the design vector x.
Best wishes
Torsten.
Vincent DUFOUR
2017년 3월 8일
편집: Vincent DUFOUR
2017년 3월 8일
Torsten
2017년 3월 8일
No. As you can see from your notation c(u(v(x))): In the end, everything depends on x.
Best wishes
Torsten.
Vincent DUFOUR
2017년 3월 8일
답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Get Started with Optimization Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!