О ПРОГРАММЕ Исходная версия программы Кристалл была написана мною на ДОСовском ПАСКАЛЕ. Причиной для ее создания послужили мои спортивные интересы в вопросах прогнозирования солнечной активности и изменения курса доллара. Работа над развитием соответствующего математического аппарата началась в 2003 г. В глобальной компьютерной сети мне приходилось встречаться со статьями о прогнозировании солнечной активности, но, к моему большому сожалению, в них ни слова не было сказано о математических методах подбора коэффициентов приближающей функции F x ) n Ak sinBkx Ck ) k 1 для конкретных статистических данных X Y x1 y1 x2 y2 x3 y3 k xm ym с работами российских ученых, в которых в экономике. Но ни в одной из этих работ не по определению цикличности рассматриваемых Мне, также, приходилось встречаться говорится о циклических процессах приводились методические указания процессов. Предлагаю Вашему вниманию оконную версию программы Кристалл, в которой мне удалось реализовать поиск волновой приближающей функции. Она проста в использовании и не требует жирных компьютерных ресурсов. Загрузка числовых статистических данных (наблюдений) производится из текстового файла. Его содержимое можно набрать вручную при помощи текстового редактора Блокнот в. Текстовый файл с данными должен быть построен по следующим ниже образцам. 92,07354924 6,471421481 95,46487134 -3,64226741 57,0560004 -16,38007521 12,15987523 28,13138789 30.00 -31.69 30.94 -10.27 36.08 -31.12 38.19 27.88 Заметим, что каждая запись (наблюдение) представляет 2 числа X и Y. Файл данных должен включать в себя не менее 4 записей. Для создания файла данных можно, также, использовать редактор Excel . Для этого нужно выделить фрагмент электронной таблицы Excel и через буфер обмена вставить его в Блокнот. В данную версию Кристалл (DEMO) мною введены искусственные ограничения: 1) Программа обрабатывает не более 100 наблюдений. Лишние наблюдения просто отбрасываются программой. 2) Приближающая функция включает в себя не более 3 волн (синусов). Желаю творческих успехов. Артемьев Э.И. Программа слегка защищена от взлома. О ПРОГРАММЕ В глобальной компьютерной сети мне приходилось встречаться со статьями о прогнозировании солнечной активности, но, к моему большому сожалению, в них ни слова не было сказано о математических методах подбора коэффициентов циклической приближающей функции F ( x ) a Ak sinBkx Ck ) k 1 для конкретных статистических данных (наблюдений) X Y x1 y1 x2 y2 x3 Мне, также, приходилось встречаться y3 xm ym с работами российских ученых, в которых говорилось о циклических процессах в экономике. Но ни в одной из этих работ не приводились методические указания по определению цикличности рассматриваемых процессов. Предлагаю Вашему вниманию оконную программу Кристалл-2007, в которой мне удалось реализовать поиск волновой приближающей функции. Она проста в использовании и не требует богатых компьютерных ресурсов. Впрочем, высокая скорострельность процессора не помешает O. Исходная версия программы Кристалл была написана мною на ДОСовском ПАСКАЛЕ. Причиной для ее создания послужили мои спортивные интересы в вопросах прогнозирования солнечной активности и изменения курса доллара. Работа над развитием соответствующего математического аппарата началась в 2003 г. В 2006 году мною была создана программа Кристалл-2006, которая работала под Windows. Она имела лаконичный понятный интерфейс, но свобода действий пользователя оставляла желать лучшего. Учитывая пожелания исследователей, я создал программу Кристалл-2007. Коротко расскажу о ней. В отличие от версии 2006 г., новый Кристалл проводит параллельный поиск двух приближающих функций: 1)F(xh-nUMBix Ci)), 2)F( x ) c? a n ( Aisin(Bi?x Ci . i 1 Подбор второй функции обусловлен тем, что некоторые исследуемые изменяющиеся величины всегда неотрицательны. Загрузка числовых статистических данных (наблюдений) производится из текстового файла. Его содержимое можно набрать вручную при помощи текстового редактора Блокнот в. Текстовый файл с данными должен быть построен по примеру приведенных образцов. 92,07354924 6,471421481 95,46487134 -3,64226741 57,0560004 -16,38007521 12,15987523 28,13138789 Текстовый файл с данными может включать 30.00 -31.69 30.94 -10.27 36.08 -31.12 38.19 27.88 учитывать, что комментарии не должны содержать . , , , - и цифры. в себя комментарии. Но следует Заметим, что каждая запись (наблюдение) представляет 2 числа X и Y. Файл данных должен включать в себя не менее 4 записей. Для создания файла данных можно использовать и редактор Excel . Для этого нужно выделить фрагмент электронной таблицы Excel и через буфер обмена вставить его в Блокнот. Можно, также, сгенерировать текстовый файл программно на Бейсике, Паскале, Си и т.п. В программе Кристалл-2007 появились и следующие дополнительные возможности. 1) Регулятор минимального периода колебания для всех гармоник. Он избавляет приближающую функцию от СВЧ (иногда ненужных). Программа, конечно, сама подбирает минимальный период под конкретные данные, но исследователю бывает полезно подварьировать эту величину. 2) Регулятор глубины поиска . Не советую злоупотреблять глубиной. Установленный по умолчанию, режим 10000 вполне приемлем. Но если у Вас появилось свободное время, то смело устанавливайте 998888 , нажимайте Найти и идите обедать . 3) Настройка поля построения графиков. Кстати, советую включить экранный режим не меньше чем 800X600 точек. 4) Возможность копирования уравнений приближающих функций в буфер обмена для дальнейшей вставки в какую-нибудь программу, в Excel, в Word и т.п. Отсутствие этой возможности в 2006 версии очень сильно тормозило работу мою и других исследователей. Остается добавить, что в Кристалл-2007 мною введены искусственные ограничения: 1) Программа обрабатывает не более 100 наблюдений. Лишние наблюдения отбрасываются программой. 2) Приближающая функция включает в себя не более 5 волн (синусоид). Справедливости ради замечу, что с 2006 года ограничения заметно ослабли. Желаю творческих успехов. Артемьев Э.И. Введение На определенном этапе эволюции сложной системы появляются циклы. Цикл представляет собой устойчивый периодический процесс. Периодические или колебательные явления широко распространены как в природе, так и в социальных явлениях: дыхание, сокращение сердечной мышцы, чередование рождений и смертей, бодрствования и сна, смена времен года, колебания маятника, жизнь звезды, цивилизации, деловые циклы в экономике, периодическое изменение фотосинтеза у растений, колебания размеров ядер в клетках и т.д. На уровне организаций наблюдается развитие в противофазе пар хищник-жертва. Жертва живет и размножается за счет неисчерпаемых запасов пищи. Хищники живут за счет жертв и в их отсутствии вымирают. Динамика этих процессов имеет колебательный характер и представляет временную, когерентную, диссипативную структуру. В качестве типичных причин циклических процессов называются провидение и многочисленные космические факторы. Периодичность связывают с биением мирового пульса, великой динамикой природы, различные части которой резонируют одна с другой (см. труды Чижевского Александра Леонидовича); с вечным повторением главного ритма Космоса. Есть 11-летние, 22-летние, 90-летние циклы (солнечная активность); 9, 6-летние (лунные циклы); 7, 12, 365, 2500 - летние (космические циклы) и т. д. Обилие космических циклов позволяет при желании объяснить любой периодический процесс. В рамках синергетического подхода для объяснения периодичности сторонние причины не нужны. Колебания могут быть свойством самой системы. Сама система после очередной бифуркации преобразует внешнее воздействие в периодическое движение. Параметры движения (период T и амплитуда A ) определяются природой системы. Многие динамические системы обнаруживают тенденцию к переходу в периодический режим. Говорят, что природа не терпит пустоты, но любит ритм и цикличность. В данной работе рассматривается методика обнаружения периодических зависимостей накопленных данных о развитии одного и более процессов. Рассматривается работа программы Crystal 2009 , являющейся реализацией соответствующего математического аппарата. 2 Программа Crystal 2009 Программа Crystal 2009 предназначена для подбора коэффициентов приближающих функций вида (1.1), описывающих данные наблюдений одного или нескольких процессов. fi(t) Mi Arsin(B.t Ci i 1,2,,,,,,,,,. (1.1) В записи (1.1) m - количество рассматриваемых процессов. В качестве примера рассмотрим работу с данными наблюдений о трёх процессах (см. рис. 1.1). Т.е. количество процессов m 3 . Из рисунка 1.1 видно, что количества ni точек наблюдений по каждому из процессов различны: n 1 19,n 2 16,n 3 17. Данные наблюдений для дальнейшей обработки программой Crystal 2009 следует оформить в виде единого текстового файла: 2 10 2.5 30 3 50 3.5 70 4 50 4.5 30 5 10 5.5 30 6 50 6.5 70 7 50 7.5 30 8 10 8.5 30 9 50 9.5 70 10 50 10.5 30 11 10 анные наблюдений второго процесса 3 1 4 2 5 3 6 4 6 1 7 2 8 3 9 4 9 1 10 2 11 3 12 4 12 1 13 2 14 3 15 4 Данные наблюдений третьего процесса 1 0 2 .5 10 3 10 3 .5 10 4 .5 0 5 .5 -10 6 -10 6 .5 -10 7 .5 0 8 .5 10 9 10 9 .5 10 10 .5 0 11 .5 -10 12 -10 12 .5 -10 13 .5 0 Рисунок 1.1. Excel. Точки наблюдений. В текстовом файле записываем пары чисел fi,JcJ, где i 1,2,..., и и 7 1,2,..., !i. Причем данные точек наблюдений различных процессов разбиваем на отдельные группы. Разрыв между данными процессов в 4 текстовом файле следует намечать одной или более строками, не содержащими числовых данных. Например, пустой строкой или строками. Программа Crystal 2009 при считывании данных из текстового файла игнорирует нечисловые символы, что даёт пользователям возможность сопровождать файлы ввода своими комментариями. Рисунок 1.2. Результат работы программы Crystal 2009 . Далее следует запустить программу, указать ей имя файла с входными данными. Обработка данных запускается нажатием кнопки Найти . Результатом работы программы являются диаграммы точек наблюдений, графики приближающих функций (тренды) в декартовых координатах и символьные записи уравнений приближающих функций (см. рис. 1.2). 5 Видим, что программа под каждый изучаемый процесс подобрала индивидуальный волновой тренд вида (1.1), но все они имеют общий частотный коэффициент B . Текстовые записи уравнений отображаются в отдельном многострочном поле в нижней правой части окна. Там же выводятся данные о частоте общего колебания, периоде общего колебания и среднем относительном отклонении точек наблюдения от трендов. Текстовый вывод, организованный таким образом, позволяет с помощью буфера обмена переносить числа и формулы в другие среды для дальнейшей работы. Например, в текстовый редактор, электронную таблицу, редактор программы. Понятие среднего относительного отклонения, используемое в рамках данного труда, отдельно рассматривается в главе 3. Программа Crystal 2009 может быть использована исследователями для отслеживания общей волновой (гармонической) составляющей в развитии различных процессов происходящих в реальном мире. Один из примеров практического применения программы будет рассмотрен в главе 4. 6 Индекс корреляции как распространённая мера тесноты связи между точками наблюдений и графиком приближающей функции. Для оценки тесноты связи между данными статистических наблюдений и подобранным трендом часто используют индекс корреляции R , который вычисляется на основе следующих величин: общая дисперсия а2 и остаточная дисперсия а2. Рисунок 2.1. Графический комментарий к определению понятий общей и остаточной дисперсии. Общая дисперсия а2 характеризует средний квадрат отклонений по оси OX точек наблюдений от линии математического ожидания 7 x x (рис. 2.1(а)) и вычисляется по формуле j 1 a2 n (2.1) n (2.2) Итак, общая дисперсия a2 характеризует степень разброса ( облако разброса ) точек наблюдения вдоль вертикальной оси Ox . Остаточная дисперсия а2 f характеризует средний квадрат отклонений по оси OX точек наблюдений от линии тренда x f(t) (рис. 2.1(б)) и вычисляется по формуле а2 2xj-ftj 2 (2.3) Можно сказать, что остаточная дисперсия a 2 характеризует разброс точек наблюдения вдоль оси Ox (вертикальный разброс) относительно линии тренда x ДО. На основе вышеописанных дисперсий рассчитывается универсальный показатель тесноты связи, который называется индексом корреляции (теоретическим корреляционным отношением): R а2-а a 1- a2 (2.4) Индекс корреляции колеблется в пределах от 0 до 1. Близость его к нулю говорит об отсутствии связи, близость к единице- о тесной связи. Использование индекса корреляции R как универсального показателя тесноты связи в задачах решаемых программой Crystal 2009 8 2 не представляется возможным, т.к. он рассчитан на работу с данными наблюдений одного процесса. Альтернативная мера тесноты связи-среднее относительное отклонение Р - будет рассмотрена в следующей главе. 9 Относительное отклонение и среднее относительное отклонение как меры тесноты описания данных наблюдений приближающими функциями Рассмотрим особенности подбора системы приближающих волновых функций xi fit) вида (1.1) под данные наблюдений m процессов. В задаче ni- количество точек наблюдений по i -ому процессу. Точка ftij,xiJ- j-я точка наблюдения i-го процесса, где i 1,2,...,m Относительным отклонением аi точек наблюдения ftij,xiJ от линии тренда xi fi(t) будем называть отношение а аi 2 (3.1) остаточной дисперсии а 2 для i -го процесса к его общей дисперсии a i 2. Применительно к рассматриваемой задаче можно записать: 2 ni xij Еxij-xi)2 xij- xij xi и ni (3.2) fi j n---------. (3.3) 10 Относительное отклонение аi показывает, насколько хорошо линия тренда xi fi(t) описывает положение точек наблюдения ftij,xiJ на плоскости tOxi. Как правило 0 аi 1. Это связано с тем, что о 2 oi 2. Близость аi к нулю говорит о том, что i -й тренд хорошо описывает свои данные наблюдений, а близость относительного отклонения к единице говорит о слишком большом разбросе точек наблюдения относительно линии тренда. В случае, когда аi 1 (т.е. a2 fi ai 2), возникает сомнение в целесообразности описания имеющихся данных наблюдений трендом именно такого вида. Для комплексной (цельной) характеристики того, насколько хорошо система из m трендов описывает данные по всем процессам, введем понятие среднего относительного отклонения Р : m 2Х Близость Р к нулю говорит о том, что система трендов хорошо описывает данные. Подбор программой Crystal 2009 коэффициентов Mi, Ai, B, Ci приближающих функций fi(t) Mi Ai-sin -t Ci), основан на минимизации среднего относительного отклонения Р. Среди всего прочего, в качестве результата работы программа выдаёт значение величины Р , что даёт пользователю возможность объективно (а не визуально) оценить, удачность подбора системы волновых приближающих функций. 11 Использование программы Crystal 2009 в моделировании. Поиск гармонической взаимосвязи между объёмами заготовок зайца-беляка в Якутии и солнечной активностью Проведём совместный анализ данных наблюдений заготовок зайца-беляка в Якутии и солнечной активности (см. рис. 4.1). Как характеристику активности Солнца возьмём число Вольфа. Рисунок 4.1. Этап работы программы Crystal 2009. Заготовки зайца-беляка в Якутии (верхняя кривая) и солнечная активность. 12 Число Вольфа (международное число солнечных пятен, относительное число солнечных пятен, цюрихское число) - названный в честь швейцарского астронома Рудольфа Вольфа числовой показатель количества пятен на Солнце. Является одним из самых распространённых показателей солнечной активности. Число Вольфа для данного дня вычисляется по формуле: W k(f 10g (4.1) где W- число Вольфа, f- количество отдельных пятен, g- количество групп пятен, k - коэффициент, характеризующий возможности телескопа. Малое число Вольфа соответствует высокой солнечной активности, большое-малой активности. Временные наблюдения по отстрелу зайцев и изменению числа Вольфа были оформлены в один файл таким образом, чтоб показатель времени для обоих процессов измерялся одинаковыми единицами в одной системе отсчёта. Текстовый вывод программы: Частота общего колебания 0.5973174018745 Период общего колебания 10.519005954425 1) 118.75 114.375 sin(0.5973174018745 t 3.56759252563528) 2) 60.5378 39.412936 sin(0.5973174018745 t 0.2283208852288) Среднее относительное отклонение 0.4604750793237 Для обоих процессов программа Crystal 2009 нашла общую волновую составляющую с периодом 10.5 лет. Среднее относительное отклонение Р 0.46 дает право говорить о наличии тесной волновой связи между числом отстрела зайцев и числом Вольфа. Формулы с помощью буфера обмена переносим в Excel. Уже в Excel получаем картину циклической зависимости между исследуемыми величинами (см. рис. 4.2). 13 ? Microsoft Excel - Книга! Ф айл Правка Дид Вставка Формат Сервис Диаграмма Qkho Справка :П 11 П n f Jj JJRJJ -l -l V - А 1 IJ в В : ЛгЫГ,,, 1? - X Г П Область дна... fir А В С DEFGHIJK 1 Год Заяц Wolf 0 1920 " 182,77224" "45,3199589" i i i i i i i 3 0,33 1920,33 200,09382 38,4945522 4 0,66 1920,66 214,26506 32,5228492 IzU ' 100 80 -я rS 60 - 5 0,99 1920,99 224,73714 27,6361254 6 1,32 1921,32 231,10448 24,0236368 1,65 1921,65 233,1205 21,8252899 1,98 1921,98 230,70711 21,1262236 2,31 1922,31 223,95778 21,9535116 10 2,64 1922,64 213,1339 24,2751144 11 12 13 2,97 1922,97 198,65467 28,0011195 3,3 1923,3 181,08085 32,987224 3,63 1923,63 161,09303 39,0403233 14 3,96 1923,96 139,46534 45,9259893 15 16 4,29 1924,29 117,03536 53,37755 4,62 1924,62 94,671797 61,106417 17 4,95 1924,95 73,240744 68,8132623 18 5,28 1925,28 53,5722 76,1996106 19 20 21 22 5,61 1925,61 36,4279 82,9793993 40 20 5,94 1925,94 22,471818 88,8900567 6,27 1926,27 12,244453 93,7026715 6,6 1926,6 6,1418964 97,2308578 23 6,93 1926,93 4,4004922 99,3379741 24 7,26 1927,26 7,087682 99,9424148 25 7,59 1927,59 14,099395 99,0207706 26 7,92 1927,92 25,164077 96,6087357 27 8,25 1928,25 39,853209 92,7997246 28 8,58 1928,58 57,597902 87,741255 29 8,91 1928,91 77,710929 81,6292341 30 9,24 1929,24 99,413341 74,700372 31 9,57 1929,57 121,86463 67,2230136 59,4867463 0 50 100 150 200 250 Отстрел зайцев 32 9,9 1929,9 144,1953 33 10,23 1930,23 165,54051 51,7911849 34 10,56 1930,56 , 185,07359, .44,4343674. I Рисунок 4.2. Работа в Excel. Из рисунка видно, что графиком этой зависимости является эллипс. 14