correlationDimension

Мера сложности хаотического сигнала

Описание

пример

corDim = correlationDimension(X) оценивает размерность корреляции равномерно дискретизированного сигнала временной области X. Корреляционная размерность - это мера размерности пространства, занимаемого набором случайных точек. corDim оценивается как наклон интеграла корреляции в зависимости от области значений радиуса подобия. Использование correlationDimension как характерная мера для различения детерминированного хаоса и случайного шума, для обнаружения потенциальных отказов. [1]

пример

corDim = correlationDimension(X,lag) оценивает размерность корреляции равномерно дискретизированного сигнала временной области X для временной задержки lag.

пример

corDim = correlationDimension(X,[],dim) оценивает размерность корреляции равномерно дискретизированного сигнала временной области X для размерности встраивания dim.

пример

corDim = correlationDimension(X,lag,dim) оценивает размерность корреляции равномерно дискретизированного сигнала временной области X для временной задержки lag и встраивание размерности dim.

пример

[corDim,rRange,corInt] = correlationDimension(___) дополнительно оценивает область значений радиуса подобия и интеграла корреляции равномерно дискретизированного сигнала временной области X. Интеграл корреляции является средней вероятностью того, что состояния системы близки к двум различным временным интервалам, что отражает самоподобие.

пример

___ = correlationDimension(___,Name,Value) оценивает размерность корреляции с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар.

пример

correlationDimension(___) без выходных аргументов создает интеграл корреляции от радиуса окрестности графика.

Примеры

свернуть все

В этом примере рассмотрим аттрактор Лоренца, описывающий уникальный набор хаотических решений.

Загрузите набор данных и визуализируйте аттрактор Лоренца в 3D.

load('lorenzAttractorExampleData.mat','data');
plot3(data(:,1),data(:,2),data(:,3));

Figure contains an axes. The axes contains an object of type line.

В данном примере используйте только данные о направлении X аттрактора Лоренца. Начиная с lag неизвестно, оцените задержку используя phaseSpaceReconstruction. Установите 'Dimension'to 3, поскольку Аттрактор Лоренца является трехмерной системой. The dim и lag параметры требуются, чтобы создать интеграл корреляции от радиуса окрестности графика.

xdata = data(:,1);
dim = 3;
[~,lag] = phaseSpaceReconstruction(xdata,[],dim)
lag = 10

Создайте интеграл корреляции от радиуса окрестности графика для аттрактора Лоренца, используя lag значение, полученное на предыдущем этапе. Установите соответствующее значение для 'NumPoints', чтобы определить хорошее разрешение для радиуса окрестности.

Np = 100;
correlationDimension(xdata,lag,dim,'NumPoints',Np);

Figure contains an axes. The axes with title Correlation Dimension: 1.80032 contains 8 objects of type line, text. These objects represent Original Data, Linear Fit.

Первая штриховая вертикальная зеленая линия (слева) указывает значение MinRadius, в то время как вторая вертикальная зеленая линия (справа), представляет MaxRadius. Штриховая красная линия указывает линейную линию аппроксимации для данных интеграла корреляции от радиуса окрестности в вычисленной области значений радиусов.

Чтобы вычислить размерность корреляции, вам сначала нужно определить MinRadius и MaxRadius значения, необходимые для точной оценки.

На графике перетащите две штриховые вертикальные зеленые линии, чтобы «наилучшим образом подогнать» линейную линию аппроксимации к исходной линии данных, чтобы получить область значений радиуса.

Обратите внимание на новые значения MinRadius и MaxRadius после перетаскивания двух вертикальных линий для соответствующей подгонки.

Найдите корреляционную размерность Lorenz Attractor, используя новую MinRadius и MaxRadius значения, полученные на предыдущем этапе.

MinR = 0.05656;
MaxR = 2.516;
corDim = correlationDimension(xdata,[],dim,'MinRadius',MinR,'MaxRadius',MaxR,'NumPoints',Np)
corDim = 1.7490

Значение корреляционной размерности прямо пропорционально уровню хаоса в системе, то есть более высокому значению corDim представляет высокий уровень хаотической сложности в системе.

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

свернуть все

Равномерно дискретизированный сигнал временной области, заданный как вектор, массив или timetable. Если X имеет несколько столбцов, correlationDimension вычисляет размерность корреляции путем обработки X как многомерный сигнал.

Если X задается как вектор-строка, correlationDimension рассматривает его как одномерный сигнал.

Вложение размерности, заданное как скаляр или вектор. dim эквивалентно 'Dimension'пара "имя-значение".

Задержка, заданная в виде скаляра или вектора. lag эквивалентно 'Lag'пара "имя-значение".

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: ...,'Dimension',3

Размерность встраивания, заданная как разделенная разделенными запятой парами, состоящая из 'Dimension'и скаляром или вектором. Когда Dimension скаляром, каждый столбец в X реконструируется с помощью Dimension. Когда Dimension - вектор, имеющий ту же длину, что и количество столбцов в X, размерность восстановления для столбца i является Dimension(i).

Задайте Dimension основанный на размерности вашей системы, то есть количестве состояний. Для получения дополнительной информации о внедрении размерности см. phaseSpaceReconstruction.

Задержка в реконструкции пространства фаз, заданная как разделенная разделенными запятой парами, состоящая из 'Lag'и скаляром или вектором. Когда Lag скаляром, каждый столбец в X реконструируется с помощью Lag. Когда Lag - вектор, имеющий ту же длину, что и количество столбцов в Xзадержка восстановления для столбца i является Lag(i).

Если задержка слишком мала, в данные вводится случайный шум. Напротив, если задержка слишком велика, восстановленная динамика не представляет истинную динамику временных рядов. Для получения дополнительной информации об оценке оптимальной задержки см. phaseSpaceReconstruction.

Минимальный радиус подобия, заданный как разделенная разделенными запятой парами, состоящая из 'MinRadius'и скаляром. Нахождение оптимального значения MinRadius путем корректировки линейной подгонки графика размерности корреляции.

Максимальный радиус подобия, заданный как разделенная разделенными запятой парами, состоящая из 'MaxRadius'и скаляром. Нахождение оптимального значения MaxRadius путем корректировки линейной подгонки графика размерности корреляции.

Число точек для расчета, заданное как разделенная разделенными запятой парами, состоящая из 'NumPoints'и положительное скалярное целое число. NumPoints является число точек между MinRadius и MaxRadius. Выберите соответствующее значение для NumPoints на основе разрешения, необходимого для rRange.

NumPoints принимает только значения, большие 1, и значение по умолчанию является 10.

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

свернуть все

Корреляционная размерность, возвращенная как скаляр. corDim является мерой хаотической сложности сигнала в многомерном фазовом пространстве и является наклоном интеграла корреляции в зависимости от области значений радиуса подобия. corDim используется в обнаружении отказа как характеристическая мера для различения детерминированного хаоса и случайного шума.

Радиус подобия, возвращенный как массив. rRange - различие между MaxRadius и MinRadius разделение на равное число точек, заданную как NumPoints.

Интеграл корреляции, возвращенный как массив. corInt - средняя вероятность того, что состояния в два разных времени близки, что отражает самоподобие. NumPoints определяет длину corInt массив.

Алгоритмы

Корреляционная размерность вычисляется следующим образом,

  1. The correlationDimension функция сначала генерирует Y1:N отложенной реконструкции с вложением размерных m и задержкой τ.

  2. Затем программное обеспечение вычисляет количество точек области значений в точке i, заданное как,

    Ni(R)=i=1,ikN1(YiYk<R)

    где 1 - функция индикации, а R - радиус подобия, заданный как, R = exp (linspace (журнал (rmin), журнал (rmax), N)). Вот, rmin MinRadius, rmax есть MaxRadius, и N NumPoints.

  3. Корреляция размерности corDim - наклон C(R) по сравнению R где, интегральная C(R) корреляции определяется как,

    C(R)=2N(N1)i=1NNi(R)

Ссылки

[1] Caesarendra, Wahyu & Kosasih, P & Tieu, Kiet & Moodie, Craig. «Применение нелинейной экстракции признаков - пример исследования для низкоскоростного поворота подшипника условия мониторинга и прогноза». Международная конференция IEEE/ASME по передовой интеллектуальной мехатронике: мехатроника для благополучия человека, AIM 2013.1713-1718. 10.1109/AIM.2013.6584344.

[2] Тейлер, Джеймс. Эффективный алгоритм оценки размерности корреляции из множества дискретных точек. Американское физическое общество. Физический обзор A 1987/11/1. Том 36. Выпуск 9. Страницы 44-56.

Введенный в R2018a