02.08.2013 Views

Model Predictive Control

Model Predictive Control

Model Predictive Control

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

146 9 1/∞ Norm Optimal <strong>Control</strong><br />

where the polyhedral sets {H i k x ≤ 0}, i = 1, . . .,Nr k , are a partition of Rn . The<br />

optimal cost-to-go starting from the measured state x(k) is<br />

J ∗ k (x(k)) = Pkx(k)∞<br />

(9.24)<br />

Here we have introduced the notation Pk to express the optimal cost-to-go J ∗ k (x(k)) =<br />

Pkx(k)∞ from time k to the end of the horizon N. We also remark that the rows<br />

of Pk correspond to the different affine functions constituting J ∗ k<br />

and thus their<br />

number varies with the time index k. Clearly, we do not have a closed form as for<br />

the 2-norm Riccati Difference Equation (8.23) linking cost and control law at time<br />

k given their value at time k − 1.<br />

9.3 Comparison Of The Two Approaches<br />

We will compare the batch and the recursive dynamic programming approach in<br />

terms of the results and the methods used to obtain the results. Most importantly<br />

we observe that the results obtained by the two methods are fundamentally different.<br />

The batch approach yields a formula for the sequence of inputs as a function<br />

of the initial state.<br />

U ∗ 0 = ¯ F i 0x(0) if ¯ H i 0x(0) ≤ 0, i = 1, . . ., ¯ N r 0 (9.25)<br />

The recursive dynamic programming approach yields a feedback policy, i.e., a sequence<br />

of feedback laws expressing at each time step the control action as a function<br />

of the state at that time.<br />

u ∗ (k) = F i kx(k) if H i kx(k) ≤ 0, i = 1, . . .,N r k for k = 0, . . .,N − 1 (9.26)<br />

As this expression implies, we determine u(k) at each time k as a function of the<br />

current state x(k) rather than use a u(k) precomputed at k = 0 as in the batch<br />

method. If the state evolves exactly according to the linear model (9.3) then the<br />

sequence of control actions u(k) obtained from the two approaches is identical. In<br />

practice, the result of applying the sequence (9.25) in an open-loop fashion may<br />

be rather different from applying the time-varying feedback law (9.26) because the<br />

model (9.3) for predicting the system states may be inaccurate and the system may<br />

be subject to disturbances not included in the model. We expect the application<br />

of the feedback law to be more robust because at each time step the observed state<br />

x(k) is used to determine the control action rather than the state xk predicted at<br />

time t = 0.<br />

We note that we can get the same feedback effect with the batch approach<br />

if we recalculate the optimal open-loop sequence at each time step j with the<br />

current measurement as initial condition. In this case we need to solve the following<br />

optimization problem<br />

J ∗ j (x(j)) = minuj,··· ,uN −1 PxN ∞ + N−1<br />

k=j Qxk∞ + Ruk∞<br />

subj. to xj = x(j)<br />

(9.27)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!