reachableSet

Purpose

Computes forward or backwards reachable sets

Syntax

[S, SN] = system.reachableSet('X', X, 'U', U, 'N', N, 'direction', ['forward'|'backwards'])

Description

S = system.reachableSet('X', X, 'U', U, 'direction', 'forward') computes the forward reachable set for an LTI system, i.e.,

../../../../../fig/mpt/modules/ui/@LTISystem/reachableset4.png

S = system.reachableSet('X', X, 'U', U, 'direction', 'backward') computes the backward reachable set, i.e.,

../../../../../fig/mpt/modules/ui/@LTISystem/reachableset5.png

If X and/or U are not given, the constraints are extracted from state and input constraints. If direction is not specified, direction='forward' is assumed.

This function supports autonomous systems as well.

Input Arguments

X

Polyhedron defining state constraints (optional)

Class: polyhedron

U

Polyhedron defining input constraints (optional)

Class: polyhedron

direction

Flag to switch between forward and backwards reachability.

Class: char

N

Number of steps (defaults to 1).

Class: double

Output Arguments

S

Set of states reachable in ../../../../../fig/mpt/modules/ui/@LTISystem/reachableset1.png steps.

Class: Polyhedron

SN

Set of states reachable at each step.

Class: cell

Example(s)

Example 1

Define a 2D LTI system ../../../../../fig/mpt/modules/ui/@LTISystem/reachableset2.png.
sys = LTISystem('A', [1 1; 0 1], 'B', [1; 0.5]);
Specify domain of states and inputs
X = Polyhedron('lb', [-1; -1], 'ub', [1; 1]);
    U = Polyhedron('lb', -1, 'ub', 1);
    
Compute forward reachable set.
S = sys.reachableSet('X', X, 'U', U, 'direction', 'forward');

S.plot()

../../../../../fig/mpt/modules/ui/@LTISystem/reachableset_img_1.png

Example 2

Define a 2D LTI system ../../../../../fig/mpt/modules/ui/@LTISystem/reachableset3.png.
sys = LTISystem('A', [1 1; 0 1], 'B', [1; 0.5]);
Specify domain of states and inputs
X = Polyhedron('lb', [-1; -1], 'ub', [1; 1]);
    U = Polyhedron('lb', -1, 'ub', 1);
    
Compute the backward reachable set.
S = sys.reachableSet('X', X, 'U', U, 'direction','backward');

S.plot()

../../../../../fig/mpt/modules/ui/@LTISystem/reachableset_img_2.png


© 2003-2013 Michal Kvasnica: STU Bratislava, michal.kvasnica@stuba.sk