How does the Surrogateopt function consider nonlinear integer constraints?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi, I have a problem similar to unit commitment and my functions and constraints are shown below:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/890630/image.png)
Pgrid, Pgen, and Pupsdesarj mean that power supplied to the data center from grid, generators and UPS, respectively.Usarj and Udesarj are integer values that vary from 0 to 1 in order to indicate charge or discharge status. I have solved this problem without u(t) variables but I have to add u(t) to prevent charge and discharge at the same time. So, I used surrogateopt and ga but it doesn't work.
When I examine the result, I saw that surrogateopt didn't take into account my nonlinear inequality constraints. UPS is being charged and discharged at the same time. It is expected to be prevented with my nonlinear inequality constraints.
I think the problem is defining upper bounds for the Psarj and Pdesarj in addition to the nonlinear inequality constraints. Normally, I didn't have LB and UB for these variables but surrogateopt requires it. Also, I tried it with ga without UB or LB, ga couldn't find a feasible result.
Any suggestions on how to solve the problem?
댓글 수: 0
채택된 답변
Alan Weiss
2022년 2월 10일
Your "nonlinear" inequality constraints are, in fact, linear inequality constraints. I suggest that you express them as linear constraints.
You might also want to consult Converged to an Infeasible Point and Investigate Linear Infeasibilities.
Alan Weiss
MATLAB mathematical toolbox documentation
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Surrogate Optimization에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!