enforceStateBounds

Уменьшайте состояние, чтобы утвердить границы

Описание

пример

boundedStates = enforceStateBounds(space,states) уменьшает заданные состояния states к состоянию ограничивает в StateBounds свойство заданного объекта space пространства состояний.

Примеры

свернуть все

Создайте SE (3) объект пространства состояний.

space = stateSpaceSE3([-1 1; ...
    -2 2; ...
    -10 10; ...
    -inf inf; ...
    -inf inf; ...
    -inf inf; ...
    -inf inf])
space = 
  stateSpaceSE3 with properties:

                 Name: 'SE3'
          StateBounds: [7x2 double]
    NumStateVariables: 7
            WeightXYZ: 1
     WeightQuaternion: 0.1000

Создайте пару состояний в трехмерном пространстве.

state1 = [2 10 3 2 0 0 0.8];
state2 = [223 100 3 2 2 12 5];

Осуществите границы состояния для одного состояния.

boundedState = enforceStateBounds(space,state1)
boundedState = 1×7

    1.0000    2.0000    3.0000    2.0000         0         0    0.8000

Осуществите границы состояния для нескольких состояний.

boundedStates = enforceStateBounds(space,[state1; state2])
boundedStates = 2×7

    1.0000    2.0000    3.0000    2.0000         0         0    0.8000
    1.0000    2.0000    3.0000    2.0000    2.0000   12.0000    5.0000

Входные параметры

свернуть все

Объект пространства состояний в виде stateSpaceSE2, stateSpaceSE3, stateSpaceDubins, или stateSpaceReedsShepp объект.

Неограниченные состояния в виде n-by-3 или n-by-7 матрица вещественных значений.

Поскольку 2D пространство состояний возражает stateSpaceSE2, stateSpaceDubins, и stateSpaceReedsShepp, каждая строка имеет форму [x y theta], который задает позиционный xy и угол ориентации theta из состояния в пространстве состояний.

Для 3-D объекта stateSpaceSE3 пространства состояний, каждая строка имеет форму [x y z qw qx qy qz], который задает позиционный xyz и ориентация кватерниона [qw qx qy qz] из состояния в пространстве состояний.

Типы данных: single | double

Выходные аргументы

свернуть все

Ограниченные состояния, возвращенные как n-by-3 или n-by-7 матрица вещественных значений. Значение n - то же самое что касается states входной параметр.

Функция обрезает каждое из заданных неограниченных состояний к границам, заданным в StateBounds свойство объекта space пространства состояний.

Поскольку 2D пространство состояний возражает stateSpaceSE2, stateSpaceDubins, и stateSpaceReedsShepp, каждая строка имеет форму [x y theta], который задает позиционный xy и угол ориентации theta из ограниченных состояний.

Для 3-D объекта stateSpaceSE3 пространства состояний, каждая строка имеет форму [x y z qw qx qy qz], который задает позиционный xyz и ориентация кватерниона [qw qx qy qz] из ограниченных состояний.

Типы данных: single | double

Введенный в R2019b