Home > mpt > extras > analysis > mpt_infsetPWA.m

mpt_infsetPWA

PURPOSE ^

MPT_INFSETPWA Computes (robust) positive invariant subset for PWA systems

SYNOPSIS ^

function [Pn,dynamics,invCtrl]=mpt_infsetPWA(Pn,A,f,Wnoise,Options)

DESCRIPTION ^

MPT_INFSETPWA Computes (robust) positive invariant subset for PWA systems

 [Pn,dynamics] = mpt_infsetPWA(ctrl)
 [Pn,dynamics] = mpt_infsetPWA(ctrl,Options)
 [Pn,dynamics] = mpt_infsetPWA(Pn,A,f,Wnoise,Options)
 [Pn,dynamics,invCtrlStruct] = mpt_infsetPWA(ctrlStruct,Options)

 ---------------------------------------------------------------------------
 DESCRIPTION
 ---------------------------------------------------------------------------
 Computes the maximal (robust) positive invariant set of a PWA System
 x(k+1)=A{i}x(k)+f{i}+w    for x(k) \in Pn(i), w \in Wnoise

 ---------------------------------------------------------------------------
 INPUT
 ---------------------------------------------------------------------------
 Pn       - Polytope array defining the area where the PWA system is defined
 A        - Cell array containing dynamic matrices A_i
 f        - Cell array containing dynamic matrices f_i
 Wnoise   - Polytope which bounds additive uncertainty w \in Wnoise (can be empty)
 ctrl     - Explicit controller (MPTCTRL object)
 Options.verbose   - Level of verbosity 0,1 or 2
 Options.nohull    - If set to 1, do not compute convex unions
 Options.maxIter   - maximum number of iterations. Set is not invariant if
                     iteration is aborted prior to convergence  (default is 200)
 Options.useTmap   - If set to true (default is false), transition map will be
                     computed to rule out certain transitions
 Options.sphratio  - Gives factor which governs maximum number of separating
                     hyperplanes computed in transition maps. Number of
                     separating  hyperplnaes computed at each step is given by
                     length(Pn)*length(targetPn) / Options.ratio
                     Default value is 20.
                     Set this option to 0 if you don't want to impose any limit
                     on number of separating hyperplanes.
 Options.mergefinal - If set to true (default), tries to simplify
                      final result by merging regions
 Options.simplify_target - If set to true, tries to merge regions between
                           iteration steps, after Minkowski calculations, 
                           and after detecting a non-convex union of more than
                           two polytopes in iterations. Default value is set to
                           TRUE if system is subject to noise, and to FALSE
                           otherwise.
 Options.simplify_method - valid only if .simplify_target set; 'greedy'
                           (default) - uses greedy merging, other string -
                           uses optimal merging

 NOTE: Length of Pn, A, f must be identical

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

 ---------------------------------------------------------------------------
 OUTPUT                                                                                                    
 ---------------------------------------------------------------------------
 Pn        - Polytope array defining the (robust) positive invariant set
 dynamics  - Integer array defining the active dynamics A_i,f_i for each
             polytope Pn(i)
 invCtrl   - optional; returns a controller which contains control
                 laws associated to the positive invariant set

 ---------------------------------------------------------------------------
 LITERATURE
 ---------------------------------------------------------------------------
 "Computation of Invariant Sets for Piecewise Affine Discrete Time Systems 
  subject to Bounded Disturbances"
 S. Rakovic, P. Grieder, M. Kvasnica, D. Q. Mayne and M. Morari, 2003, submitted
 check http://control.ee.ethz.ch for latest info

 see also MPT_INFSET

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:
Generated on Thu 30-Mar-2006 10:26:47 by m2html © 2003