How does the Surrogateopt function consider nonlinear integer constraints?
    6 views (last 30 days)
  
       Show older comments
    
    Mehmet Türker TAKCI
 on 10 Feb 2022
  
    
    
    
    
    Edited: Mehmet Türker TAKCI
 on 10 Feb 2022
            Hi, I have a problem similar to unit commitment and my functions and constraints are shown below:

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 Comments
Accepted Answer
  Alan Weiss
    
      
 on 10 Feb 2022
        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
More Answers (0)
See Also
Categories
				Find more on Surrogate Optimization in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
