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 матрица вещественных значений.

Для 2-D объектов пространства состояний 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.

Для 2-D объектов пространства состояний 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