Краткое описание программ из пакета TISEAN, применяемых для вычисления корреляционной размерности восстановленного аттрактора.

 

Здесь приведено лишь описание используемых нами программ. Подробное описание всего проекта TISEAN см. на его домашней страничке.

 

Программа d2.exe

 

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

Одна из характерных особенностей этой программы заключается в том, что вычисления можно проводить в ускоренном режиме. В этом режиме при каждом значении ε для расчётов берётся только ограниченное число (как правило - 1000) пар точек, а не все возможные. Если ε настолько мало, что 1000 пар точек не набирается, что вычисления производятся для всех пар.

Программа запускается со следующими параметрами:

 

d2 [параметры];

 

всякая запись в командной строке, которая не является параметром, рассматривается как имя входного файла (datafile). Описание параметров командной строки приведено в таблице 1.

 

Таблица 1

 

Параметр

Описание

Значение по умолчанию

-l#

количество считываемых отсчетов временного ряда

весь файл

-x#

количество пропущенных отсчётов временного ряда

0

-d#

величина лага τ

1

-M#,#

количество реализаций процесса (компонент), максимальная размерность пространства вложения ().

1,10

-c#

номер обрабатываемого столбца в исходном файле.

1,...,# - количество реализаций

-t#

Величина окна Тейлера ().

0

-R#

максимальное значение ε

размах значений исходного ряда

-r#

минимальное значение ε

(размах значений)/1000

-##

количество значений ε

100

-N#

количество пар точек, задействованных при каждом значении ε
(0 – все возможные пары)

1000

-E

привести исходный ряд к отрезку [0,1] – для всех реализаций

не установлен

-o[#]

имя выходного файла (расширения не указываются)

'datafile'[.c2][.d2][.h2][.stat]
(или, если чтение исходных данных производится  из stdin: stdin[.c2][.d2][.h2][.stat])

-V#

выдаваемые при работе сообщения
  0: только сообщения об ошибке
  1: добавлены сообщения о вводе/выводе данных
  2: сообщения о вводе/выводе данных при каждом открытии выходного файла.

1

-h

краткая справка

не установлен

 

Программа формирует четыре файла с расширениями .c2, .d2, .h2 и .stat.

В первых трёх файлах содержатся для каждого значения  две колонки; в одной из них записаны величины ε, а в другой – значения вычисляемой величины.

Файл с расширением .c2 содержит величины корреляционных сумм, вычисленные для каждого значения ε –  ().

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

Файл с расширением .h2 содержит величины корреляционной энтропии

Файл с расширением .stat содержит сообщение о текущем состоянии расчётов. Его содержание обновляется каждые 2 минуты, что позволяет оперативно следить за протеканием процесса.

Содержание выходных файлов выглядит следующим образом:

 

#dim= 1

1.000000e+00 1.000000e+00

9.326033e-01 9.925994e-01

8.697490e-01 9.828571e-01

8.111308e-01 9.642857e-01

1.232847e-03 3.209417e-03

1.149757e-03 3.010028e-03

1.072267e-03 2.811143e-03

1.000000e-03 2.627906e-03

 

 

#dim= 2

1.000000e+00 1.000000e+00

9.326033e-01 9.759482e-01

8.697490e-01 9.542857e-01

8.111308e-01 9.175325e-01

 

Строка #dim= n указывает на размерность лагового пространства , для которой произведены вычисления.

В принципе, значение величины  можно получить и непосредственно из содержания файла с расширением .d2. Тем не менее, имеет смысл применить более изощрённые способы вычисления этой величины. В настоящем исследовании применён оцениватель Такенса-Тейлера (Takens-Theiler estimator).

 

Программа c2t.exe.

 

Эта программа считывает из файла, полученного при помощи предыдущей программы – d2.exe – зависимость  и  вычисляет оцениватель Такенса. При этом используется формула

 

.

 

Программа запускается со следующей командной строкой:

 

c2t [-o outfile -V# -h] file

 

-о – имя выходного файла;

-V – характер выдаваемых во время работы сообщений;

-h – краткая справка;

file – имя входного файла.

 

Формат выходного файла – такой же, как у выходного файла программы d2.exe с расширением .d2.

 

Программа av-d2.exe.

 

Эта программа предназначена для сглаживания графиков, получены при помощи программ d2.exe  или c2t.exe. Формат входного файла – такой же как у программы c2t.exe. Формат выходного файла отличается от него тем, что отсутствуют строки, помеченные знаком «#» (в этих строках указывается размерность лагового пространства, для которой произведены вычисления).

Если предположить, что в двух столбцах входного файла записаны значения ri и di, то в двух столбцах выходного файла будут записаны величины:

 

ri и ,

 

где a – величина окна сглаживания – задаётся опционально.

Программа запускается со следующей командной строкой:

 

av-d2 входной_файл [параметры]

 

Формат и возможные значения параметров указаны в таблице 2.

Таблица 2.

 

Параметр

Описание

Значение по умолчанию

-m#

минимальная размерность

1

-M#

максимальная размерность

весь файл

-a#

сглаживать в интервале 2#+1 отсчётов

1

-E

привести значения к интервалу [0:1]

неприведённые значения

-o#

имя выходного файла; без ключа -o – выход по умолчанию,  если указан ключ
-o, а имя выходного файла не указано, то к и мени входного файла добавляется расширение .av

stdout

-V#

выдаваемые при работе сообщения
  0: сообщения о критических ошибках
  1: добавить сообщения ввода/вывода данных

1

-h

краткая справка

-

 

Программа mutual.exe.

 

С помощью этой программы можно вычислить функцию совместной информации (или, как ещё иногда её называют, функцию взаимной информации). Эту функцию можно рассматривать как альтернативу автокорреляционной функции , но, в отличие от последней здесь учитываются не только линейные, но и нелинейные связи между  и . Под совместной информацией подразумевают следующее.

 Разобьём числовой отрезок, равный размаху амплитуды сигнала, на несколько интервалов и обозначим через  вероятность, с которой элемент временного ряда может оказаться в -м интервале, а через  – в -м. Пусть  – совместная вероятность того, что один элемент временного ряда окажется в -м интервале, а другой, взятый с задержкой  – в - м. Тогда функция совместной информации будет выглядеть следующим образом:

 

.

Командная строка запуска программы выглядит следующим образом:

 

mutual [параметры].

 

Формат и возможные значения параметров приведены в таблице 3.

 

Таблица 3.

Параметр

Описание

Значение по умолчанию

-l#

количество загружаемых отсчётов

весь файл

-x#

количество пропускаемых отсчётов

0

-c#

считываемый столбец

1

-b#

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

16

-D#

максимальное значение

20

-o[#]

имя выходного файла; без ключа -o – выход по умолчанию,  если указан ключ -o, а имя выходного файла не указано, то к и мени входного файла добавляется расширение .mut

stdout

-V#

выдаваемые при работе сообщения
  0: сообщения о критических ошибках
  1: добавить сообщения ввода/вывода данных

1

-h

краткая справка

-

 

Программа stp.exe.

 

С помощью этой программы строится график пространственно-временного разделения.

Этот график представляет собой кривую равной плотности вероятности того, что две точки временного ряда, находящиеся на расстоянии  окажутся в восстановленном аттракторе на расстоянии, не превышающем . Таким образом, для того, чтобы построить  этот график, необходимо восстанавливать динамику системы в лаговом пространстве. Следовательно, возникает необходимость задаться лаговыми параметрами – величиной лага  и размерностью лагового пространства  . При этом строится не одна кривая, а семейство кривых, соответствующих разным значениям плотности вероятности (рис. 1).

 

Рис. 1. Семейство графиков пространственно-временного разделения.

 

Командная строка запуска программы выглядит следующим образом:

 

stp -d# -m# [-## -t# -%# -o outfile -l# -x# -c# -V# -h] file

 

Формат и возможные значения параметров указаны в таблице 4.

 

Таблица 4.

Параметр

Описание

Значение по умолчанию

-d#

величина лага  (обязательный параметр)

не устанавливается

-m#

размерность лагового пространства (обязательный параметр)

не устанавливается

-l#

количество загружаемых отсчётов

весь файл

-x#

количество пропускаемых отсчётов

0

-c#

считываемый столбец

1

-##

разрешение по времени (time resolution)

1

-t#

максимальное количество шагов, для которого производится расчёт ( max)

100

-%#

шаг изменения вероятности между соседними графиками

0.05

-o[#]

имя выходного файла; без ключа -o – выход по умолчанию,  если указан ключ -o, а имя выходного файла не указано, то к и мени входного файла добавляется расширение .mut

stdout

-V#

выдаваемые при работе сообщения
  0: сообщения о критических ошибках
  1: добавить сообщения ввода/вывода данных

1

-h

краткая справка

-

 

Выходной файл имеет следующий формат:

 

1  2.07860923

2  1.60817373

3  1.84083486

4  1.68998861

97  1.66697824

98  1.70021546

99  1.68743193

100  1.6951021

 

1  2.13997054

2  1.64652443

 

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

 

Программа false_nearest.exe.

 

Эта программа вычисляет относительное количество ложных ближайших соседей при восстановлении аттрактора в лаговом пространстве. В основе алгоритма лежит следующий принцип:

По временной последовательности восстанавливается аттрактор в лаговом пространстве, после чего для каждой его точки осуществляется поиск её ближайших соседей. После этого аттрактор восстанавливается в лаговом пространстве, размерность которого на единицу больше и производится подсчёт ложных ближайших соседей. Ложными ближайшими соседями называются такие пары точек, расстояние между которыми после приращения размерности лагового пространства значительно увеличилось. Под значительным увеличением подразумевается увеличение к количество раз, превышающее некоторый порог.

Как и в случае вычисления корреляционного интеграла, при расчёте имеется такой параметр, как окно Тейлера – в целях исключения точек, рядоположенных в исходной временной последовательности.

Командная строка запуска программы выглядит следующим образом:

 

false_nearest [параметры]

 

Формат и возможные значения параметров указаны в таблице 5.

Таблица 5.

Параметр

Описание

Значение по умолчанию

-l#

количество загружаемых отсчётов исходного ряда

весь файл

-x#

пропустить первые  # отсчётов исходного ряда

0

-c#

номер считываемой колонки во входном файле

1

-m#

минимальная размерность лагового пространства

1

-M#

максимальная размерность лагового пространства

5

-d#

величина лага

1

-f#

пороговое значение отношения расстояний

10.0

-t#

окно Тейлера

0

-o[#]

имя выходного файла

'datafile'.fnn (или stdin.del если производится считывание из «stdin»)
Если ключ -o вообще отсутствует, то вывод результата производится в «stdout»

-V#

выдаваемые при работе сообщения
  0: сообщения о критических ошибках
  1: добавить сообщения ввода/вывода данных
  2: добавить сообщения о текущем состоянии расчётов

3

-h

краткая справка

не установлен

 

Те сочетания знаков в командной строке, которые не являются параметрами, программа рассматривает как имя входного файла. Если имя входного файла не указывается, то программа считывает входные данные из «stdin».

Результаты расчёта выводятся в виде четырёх столбцов:

      размерность лагового пространства;

      относительное количество ложных ближайших соседей;

      средний размер окрестности;

      среднее значение квадрата размера окрестности.