phaseSpaceReconstruction

Преобразуйте наблюдаемые временные ряды в векторы состояния

Синтаксис

XR = phaseSpaceReconstruction(X,lag,dim)
[XR,eLag,eDim] = phaseSpaceReconstruction(X)
[XR,eLag,eDim] = phaseSpaceReconstruction(X,lag)
[XR,eLag,eDim] = phaseSpaceReconstruction(X,[],dim)
[___] = phaseSpaceReconstruction(___,Name,Value)
phaseSpaceReconstruction(___)

Описание

XR = phaseSpaceReconstruction(X,lag,dim) возвращает восстановленное фазовое пространство, XR однородно выбранного временного интервала сигнализирует о X с lag с временной задержкой и размерностью встраивания dim как входные параметры.

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

[XR,eLag,eDim] = phaseSpaceReconstruction(X) возвращает восстановленное фазовое пространство XR наряду с предполагаемой задержкой eLag и размерность встраивания eDim.

[XR,eLag,eDim] = phaseSpaceReconstruction(X,lag) возвращает восстановленное фазовое пространство, XR однородно выбранной области времени сигнализирует о X и размерности встраивания eDim с помощью задержки, заданной lag.

[XR,eLag,eDim] = phaseSpaceReconstruction(X,[],dim) возвращает восстановленное фазовое пространство, XR однородно выбранной области времени сигнализирует о X и размерности встраивания использования eLag с временной задержкой, заданной dim.

пример

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

пример

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

Примеры

свернуть все

В этом примере примите, что у вас есть измерения для Аттрактора Лоренца. Ваши измерения приезжают направление X только, но аттрактор является 3D системой. Используя это ограниченные данные, восстановите фазовое пространство, таким образом, что свойства исходной системы сохраняются.

Загрузите данные об Аттракторе Лоренца и визуализируйте его x, y и измерения z на 3-D графике.

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

Оцените задержку и размерность с помощью измерения направления X.

xdata = data(:,1);
[~,eLag,eDim] = phaseSpaceReconstruction(xdata)
eLag = 10
eDim = 3

Поскольку Аттрактор Лоренца имеет данные в 3 размерностях, предполагаемая размерность встраивания, eDim равняется 3.

Визуализируйте восстановленное фазовое пространство с помощью предполагаемой задержки и встраивая размерность.

phaseSpaceReconstruction(xdata,eLag,eDim);

Как наблюдается от 3x3 график фазового пространства, топология аттрактора восстанавливается. x1(t+10) и x1(t+20) другие два состояния, восстановленные с предполагаемым значением задержки 10. Диагональные графики (1,1), (2,2) и (3,3) представляют гистограмму x1(t), x1(t+10)и x1(t+20)данные, соответственно.

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

свернуть все

Однородно выбранный сигнал временного интервала, заданный как вектор, массив или расписание. Когда несколько столбцов существуют в X, каждый столбец обработан как независимые временные ряды.

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

Встраивание размерности, заданной как скаляр или вектор. dim является размерностью пробела, на котором вы восстанавливаете портрет фазы, начинающий с ваших измерений.

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

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

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

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: …'HistogramBins',12

Количество интервалов для дискретизации, заданной как пара, разделенная запятой, состоящая из 'HistogramBins' и скаляра. HistogramBins требуется, чтобы вычислять Среднюю взаимную информацию (AMI), чтобы оценить, задерживают eLag.

Установите значение HistogramBins на основе длины X.

Максимальное значение задержки, заданной как пара, разделенная запятой, состоящая из 'MaxLag' и скаляра. MaxLag используется, чтобы оценить, задерживают est_delay с помощью алгоритма Средней взаимной информации (AMI).

Фактор, чтобы определить размерность встраивания, заданную как пара, разделенная запятой, состоящая из 'PercentFalseNeighbors' и скаляра. Когда процент ложных самых близких соседей опускает ниже настраивающегося параметра PercentFalseNeighbors в размерности d, d рассматривается как размерность встраивания.

Значение по умолчанию PercentFalseNeighbors 0.1, и допустимые значения лежат в области значений 0 до 1.

Порог расстояния, чтобы определить ложных соседей, заданных как пара, разделенная запятой, состоящая из 'DistanceThreshold' и скаляра. DistanceThreshold является настраивающимся параметром, чтобы определить число точек, которые являются ложными самыми близкими соседями в восстановленном фазовом пространстве.

Значение по умолчанию DistanceThreshold равняется 10, и предложенные значения лежат в области значений 10 - 50.

Максимальное значение встраивания размерности, заданной как пара, разделенная запятой, состоящая из 'MaxDim' и скаляра.

Измените значение MaxDim, если количество состояний вашей системы превышает 5.

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

свернуть все

Восстановленное фазовое пространство, возвращенное или как массив или как расписание. XR содержит векторы состояния на основе размерности встраивания и значения задержки.

Предполагаемая задержка, возвращенная как скаляр, независимо от размера X.

eLag оценивается с помощью алгоритма Средней взаимной информации (AMI). Для получения дополнительной информации см. Алгоритмы.

Предполагаемая размерность встраивания, возвращенная как скаляр, независимо от размера X.

eDim оценивается с помощью алгоритма Ложного самого близкого соседа (FNN). Для получения дополнительной информации см. Алгоритмы.

Алгоритмы

Phase Space Reconstruction

Для однородно выбранного одномерного сигнала времени X1=(x1,1,x1,2,...,x1,N)T, phaseSpaceReconstruction вычисляет задержанную реконструкцию

X1,ir=(x1,i,x1,i+τ1,...,x1,i+(m11)τ1), i=1,2,...,N(m11)τ1

где, N является длиной временных рядов, τ1 является задержкой, и m1 является размерностью встраивания для X1.

Точно так же для многомерных временных рядов X, данный,

X=[X1,X2,...,XS]=[x1,1x1,NxS,1xS,N]

phaseSpaceReconstruction вычисляет реконструкцию для каждых временных рядов как,

Xir=(X1,ir,X2,ir,...,XS,ir), i=1,2,...,N(max {mi}1)(max {τi})

где S является количеством измерений, и N является длиной временных рядов.

Delay Estimation

Задержка реконструкции фазового пространства оценивается с помощью Средней взаимной информации (AMI). Для реконструкции задержка собирается быть первым локальным минимумом AMI.

Средняя Взаимная информация вычисляется как,

AMI(T)=i=1Np(xi,xi+T)журнал2[p(xi,xi+T)p(xi)p(xi+T)]

где, N является длиной временных рядов и Τ = 1:MaxLag.

Embedding Dimension Estimation

Размерность встраивания для реконструкции фазового пространства оценивается с помощью алгоритма Ложного самого близкого соседа (FNN).

  • Для точки i в размерности d, точки Xri и его самая близкая точка Xr*i в восстановленном фазовом пространстве {Xri}, i = 1:N, ложные соседи если

    Ri2(d+1)Ri2(d)Ri2(d)>DistanceThreshold

    где, Ri2(d)=XirXir*2 метрика расстояния.

  • Предполагаемая размерность встраивания d является наименьшим значением, которое удовлетворяет условие pfnn < PercentFalseNeighbors, где, pfnn является отношением FNN, указывает на общее количество точек в восстановленном фазовом пространстве.

Ссылки

[1] Rhodes, Carl & Morari, Манфред. "Ложный самый близкий соседний алгоритм и шумовые поврежденные временные ряды". Физический анализ. E. 55.10.1103/PhysRevE.55.6162.

[2] Kliková, B. и Aleš Raidl. "Реконструкция фазового пространства динамического системного метода использования задержки". Продолжения 20-й Ежегодной конференции докторантов WDS 2011.

[3] Я. Vlachos, Д. Куджиумцис, "Реконструкция пространства состояний для Многомерного Прогноза Временных рядов", Нелинейные Явления в Сложных системах, Vol 11, № 2, стр 241-249, 2008.

[4] Kantz, H. и Шрайбер, T. Нелинейный анализ временных рядов. Кембридж: Издательство Кембриджского университета, издание 7, 2004.

Введенный в R2018a