Limit on the change rate of the variable in fmincon function

조회 수: 1 (최근 30일)
Mohammad
Mohammad 2019년 11월 12일
편집: Matt J 2019년 11월 14일
Hi,
In fmincon function, how can I put lower and upper bounds on the change rate of a signal, i.e., ?
Thanks
  댓글 수: 1
Matt J
Matt J 2019년 11월 13일
What are the unknown variables in this problem and how is related to them?

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

채택된 답변

Matt J
Matt J 2019년 11월 12일
편집: Matt J 2019년 11월 12일
You would build linear inequality matrices like the following.
E=diff(eye(numel(u)));
A=[E;-E]; b=[ub(:);-lb(:)]; %linear inequality matrices
  댓글 수: 21
Mohammad
Mohammad 2019년 11월 14일
@Matt: I don't have a set of those signals like an MxN matrix. At each sampling time I have an Mx1 vector u(t) and I want to put a limit on u(t) - u(t-1).
Matt J
Matt J 2019년 11월 14일
편집: Matt J 2019년 11월 14일
It sounds like you're saying that at time u(t), the values of u(t-1) are already known. Then the bounds can be rewritten
lbnew <= u(t) <= ubnew
where lbnew and ubnew are the known bound vectors
ubnew=ub+u(t-1);
lbnew=lb+u(t-1);
They are known since u(t-1) is known. So, you now have plain ordinary bounds on u(t) and there is nothing special about the way you set up the problem.
But I need to emphasize that, if you have an objective f(t,u(t)) at each time t, the approach you are pursuing will not give you the minimum of if that was your goal in all this. There is no way to do that by solving an independent problem at each t.

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

추가 답변 (1개)

Walter Roberson
Walter Roberson 2019년 11월 13일

카테고리

Help CenterFile Exchange에서 Quadratic Programming and Cone Programming에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by