Baranyi and Yam proposed the
TP model transformation as a new concept in quasi-LPV (qLPV) based control, which plays a central role in the highly desirable bridging between identification and polytopic systems theories. It is also used as a TS (Takagi-Sugeno) fuzzy model transformation. It is uniquely effective in manipulating the
convex hull of
polytopic forms (or TS fuzzy models), and, hence, has revealed and proved the fact that convex hull manipulation is a necessary and crucial step in achieving optimal solutions and decreasing conservativeness
in modern
linear matrix inequality based control theory. Thus, although it is a transformation in a mathematical sense, it has established a conceptually new direction in control theory and has laid the ground for further new approaches towards optimality.
For details please visit:
TP model transformation.
;TP-tool MATLAB toolbox:
A free
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementa ...
implementation of the TP model transformation can be downloaded a
or an old version of the toolbox is available at
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementa ...
Centra
Be careful, in the MATLAB toolbox the assignments of the dimensions of the core tensor is in the opposite way in contrast to the notation used in the related literature. In some variants of the ToolBox, the first two dimension of the core tensor is assigned to the vertex systems. In the TP model literature the last two. A simple example is given below.
clear
M1=20; % Grid density
M2=20;
omega1= 1,1 %Interval
omega2= 1,1
domain= mega1; omega2
for m1=1:M1
for m2=1:M2
p1=omega1(1)+(omega1(2)-omega1(1))/M1*(m1-1); %sampling grid
p2=omega2(1)+(omega2(2)-omega2(1))/M2*(m2-1);
SD(m1,m2,1,:)= 0 % SD is the discretized system matrix
SD(m1,m2,2,:)= -1-0.67*p1*p1) (1.726*p2*p2)
end
end
,U, svhosvd(SD, ,1,0,01e-12); % Finding the TP structure
UA=U; % This is the HOSVD based canonical form
UA=U;
ns1 = input('Results of SNNN TS fuzzy model');
UC=genhull(UA,'snnn'); % snnn weightinf functions
UCP=pinv(UC);
UCP=pinv(UC);
SC=tprods(SD,UCP); %This is to find the core tensor
H(:,:)=SC(1,1,:,:) %This is to show the vertices of the TP model
H(:,:)=SC(1,2,:,:)
H(:,:)=SC(2,1,:,:)
H(:,:)=SC(2,2,:,:)
figure(1)
hold all
plothull(U, omega1) %Draw the waiting functions of p1
title('Weighting functions for p_');
xlabel('p_')
ylabel('Weighting functions')
grid on
box on
figure(2)
hold all
plothull(UC, omega2) %Show the waiting functions of p2
title('Weighting functions for p_');
xlabel('p_')
ylabel('Weighting functions')
grid on
box on
ns2 = input('Results of CNO TS fuzzy model');
UC=genhull(UA,'cno'); %Create CNO type waiting functions
UCP=pinv(UC);
UCP=pinv(UC);
SC=tprods(SD,UCP); %Find the cortensor
H(:,:)=SC(1,1,:,:) %Show the vertices of the TP model
H(:,:)=SC(1,2,:,:)
H(:,:)=SC(2,1,:,:)
H(:,:)=SC(2,2,:,:)
figure(1)
hold all
plothull(U, omega1) %Show the waiting functions of p1
title('Weighting functions for p_');
xlabel('p_')
ylabel('Weighting functions')
grid on
box on
figure(2)
hold all
plothull(UC, omega2) %Show the waiting functions of p2
title('Weighting functions for p_');
xlabel('p_')
ylabel('Weighting functions')
Once you have the feedback vertexes derived to each vertexes of the TP model then you may want to calculate the controller over the same polytope (see PDC design by Tanaka)
W = queryw1(UC,domain,p); % computing the weighting values over the parameter vector
F = tprods(K,W); % calculating the parameter dependent feedback F(p)
F = shiftdim(F)
U=-F*x % calculate the control value.
Key features for control analysis and design
* The TP model transformation transforms a given qLPV model into a (tensor product type) polytopic form, irrespective of whether the model is given in the form of analytical equations resulting from physical considerations, or as an outcome of soft computing based identification techniques (such as
neural networks or
fuzzy logic based methods, or as a result of a
black-box identification).
* Further the TP model transformation is capable of manipulating the convex hull defined by the polytopic form that is a necessary step in polytopic qLPV model-based control analysis and design theories.
Related definitions
;Linear Parameter-Varying (LPV) state-space model:
::
with input
, output
and state
vector
. The system matrix
is a parameter-varying object, where
is a time varying
-dimensional parameter vector which is an element of
closed hypercube
. As a matter of fact, further parameter dependent channels can be inserted to
that represent various control performance requirements.
;quasi Linear Parameter-Varying (qLPV) state-space model:
in the above LPV model can also include some elements of the state vector
, and, hence this model belongs to the class of non-linear systems, and is also referred to as a quasi LPV (qLPV) model.
;TP type polytopic Linear Parameter-Varying (LPV) state-space model:
::
with input
, output
and state
vector
. The system matrix
is a parameter-varying object, where
is a time varying
-dimensional parameter vector which is an element of
closed hypercube
, and the weighting functions