Home > mpt > extras > control > mpt_blockingMatrices.m

# mpt_blockingMatrices

## PURPOSE

MPT_BLOCKINGMATRICES Constructs matrices for the CFTOC problem for move blocking strategies

## SYNOPSIS

function [Matrices]=mpt_blockingMatrices(Matrices,sysStruct,probStruct,Options)

## DESCRIPTION

MPT_BLOCKINGMATRICES Constructs matrices for the CFTOC problem for move blocking strategies

[Matrices]=mpt_blockingMatrices(Matrices,sysStruct,probStruct,Options)

---------------------------------------------------------------------------
DESCRIPTION
---------------------------------------------------------------------------
Constructs cost and constraint matrices for the finite time constrained
optimal control problem on linear time-invariant systems with quadratic
cost (2-norm) in the case where inputs or their differences are fixed to be
constant over a certain number of steps during the prediction horizon N.
Matrices received from function mpt_constructMatrices are compressed
depending on probStruct.inputblocking and probStruct.deltablocking.

Degrees of freedom are reduced from full degrees of freeedom m * N (m=number
of inputs, N=prediction horizon) in the non blocking case to m * M (M < N,
M independent decision variables in blocked input sequence) in the case where
inputs are their differences are fixed to be constant during the prediction
horizon.

---------------------------------------------------------------------------
INPUT
---------------------------------------------------------------------------
Matrices          NORM=2
--------
G,W,E,H,F,Y,Cf,Cx,Cc  - matrices of the problem, i.e.

sysStruct        - System structure in the sysStruct format

probStruct       - Problem structure in the probStruct format

- NORM=2

- horizon
Prediction horizon N; How many time steps are considered.

- inputblocking
Fix inputs u_k to be constant over a certain number of steps
in the prediction horizon.

inputblocking=[n1 n2 ... nk], \sum_{n1}^{nk} = N.
Entries define how many consecutive inputs are fixed to be
constant. Sum of all entries has to be equal the prediction
horizon N.

Example:      N = 5, inputblocking = [1 4]
First predicted input is independent and the
next 4 predicted inputs are fix to be constant,
i.e. u1, u2=u3=u4=u5.

- deltablocking
Fix difference u_k - u_{k+1} to be constant over a certain number
of steps in the prediction horizon.

deltablocking = [1 ... nk ... N], 1 < .. < .. nk < .. < N
Entries defines wich inputs are independent (=decision variables),
inputs in between are interpolated (=constant differences).

Example:      N = 5, deltablocking = [1 5]
First input u1 and last input u5 are independent,
inputs in between are interpolated, i.e.
u1-u2 = u2-u3 = u3-u4 = u4-u5.

Note: If Options is missing or some of the fields are not defined, the default
values from mptOptions will be used

---------------------------------------------------------------------------
OUTPUT
---------------------------------------------------------------------------

Matrices              NORM=2
--------
Compressed matrices for fixed inputs or fixed differences in
prediction horizon.

G,W,E,H,F,Y,Cf,Cx,Cc  - matrices of the problem, i.e.

---------------------------------------------------------------------------
LITERATURE
---------------------------------------------------------------------------
"Move Blocking Strategies in Receding Horizon Control"
R. Cagienard, P. Grieder, E. C. Kerrigan and M. Morari, 2004, submitted
check http://control.ee.ethz.ch for latest info

Copyright is with the following author(s):

(C) 2004 Raphael Cagienard, Automatic Control Laboratory, ETH Zurich,
(C) 2003 Pascal Grieder, Automatic Control Laboratory, ETH Zurich,
cagienard@control.ee.ethz.ch

## CROSS-REFERENCE INFORMATION

This function calls:
• length LENGTH Returns number of regions over which the explicit control law is defined
• double DOUBLE Function used to access internal properties of the given polytope
• end END Returns the last element in a given polytope array
• isfulldim ISFULLDIM Checks if a polytope is full dimensional
• length LENGTH Returns number of elements in a polytope array
• polytope POLYTOPE Default constructor for the POLYTOPE object
• size SIZE Returns size of the given polytope object
• unique UNIQUE Removes redundant entries from a polytope array
• mpt_error MPT_ERROR Function called if MPT toolbox is not initialized
• mpt_verifyProbStruct MPT_VERIFYPROBSTRUCT Verifies the probStruct structure
• mpt_verifySysStruct MPT_VERIFYSYSSTRUCT Verifies the sysStruct structure
This function is called by:
• mptctrl MPTCTRL Constructor for the MPT controller object
• mpt_optControl MPT_OPTCONTROL Solves the CFTOC problem for a given LTI system

Generated on Thu 30-Mar-2006 10:26:47 by m2html © 2003