Inequality constraint cause infeasible results in NMPC
1 次查看(过去 30 天)
显示 更早的评论
I built an NMPC controller for a quarter-car system with linear state functions. The controller will give feasible results when equality constraints are specified. However, once inequality constraints were defined in a function, the controller gave infeasible results.
ValidateFcns results are OK for both constraints. Is there any problem with the definition of inequalities in the custom inequality function ?
Equality Constraints:
ManipulatedVariables(i).Min/Max= -/+5000
Inequality Constraints:
u(2)−5000≤0 / u(2)+5000≤0
cineq = [U(2) - 5000; U(2) + 5000;]
0 个评论
回答(1 个)
Torsten
2023-1-5
Your constraints say that a number should be >= -5000 (Min/Max constraint) and that it should be <= -5000 (U(2)+5000). That's hard to handle for a solver. Just set U(2) = -5000 in your optimization problem.
3 个评论
Torsten
2023-1-5
5000<u(2)<-5000 := a*(x(2)- x(4))<u(2)<-a*(x(2)- x(4))
Do you know a number that is greater than 5000 and smaller than -5000 ? I don't.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Model Predictive Control Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!