correlationDimension

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

Синтаксис

corDim = correlationDimension(X)
corDim = correlationDimension(X,lag)
corDim = correlationDimension(X,[],dim)
corDim = correlationDimension(X,lag,dim)
[corDim,rRange,corInt] = correlationDimension(___)
___ = correlationDimension(___,Name,Value)
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));

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

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

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

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

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

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

В графике перетащите эти две пунктирных, вертикальных зеленых строки к 'лучшей подгонке' линейная подходящая строка к исходной строке данных, чтобы получить область значений радиуса.

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

Найдите размерность корреляции Аттрактора Лоренца, с помощью нового MinRadius и значений MaxRadius, полученных на предыдущем шаге.

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

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

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

свернуть все

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

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

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

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

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (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. Функция 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, Крэйг. "Приложение нелинейного тематического исследования выделения-признаков-A для низкоскоростного мониторинга состояния опорно-поворотного подшипника и прогноза". Международная конференция IEEE/ASME по вопросам Усовершенствованной Интеллектуальной Механотроники: Механотроника для Человеческого Благополучия, AIM 2013.1713-1718. 10.1109/AIM.2013.6584344.

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

Введенный в R2018a