ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
( Н И У
« Б е л Г У » )
Ивашина Ярослав Сергеевич
МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ДИНАМИКИ МЕТОПАРАМЕТРОВ НА
ОСНОВЕ ИНФОРМАЦИИ, ПОЛУЧЕННОЙ ОТ АВТОМАТИЗИРОВАНОЙ
МЕТЕОСТАНЦИИ
Диссертация на соискание академической степени
магистра
Направление подготовки
01.04.01 Математика, магистерская программа «Теория чисел»
Научный руководитель
Зав. кафедрой общей математики
проф. док. тех. наук Аверин Г. В.
Рецензенты
доцент кафедры информационно
телекоммуникационных систем и технологий
НИУ «БелГУ», кандидат технических наук,
доцент Девицына С. Н
БЕЛГОРОД 2017
2
СОДЕРЖАНИЕ
ВВЕДЕНИЕ......................................................................................................4
1 ОБЗОР МЕТОДОВ ПРОГНОЗИРОВАНИЯ НА ОСНОВЕ
ВРЕМЕННЫХ РЯДОВ...........................................................................................7
1.1. Методы нелинейной динамики............................................................7
1.2 Статистические методы.......................................................................12
1.3 Реконструкция моделей в виде дифференциальных уравнений.....15
1.4 Генетические алгоритмы в задачах прогнозирования......................18
1.5 Выводы по разделу..............................................................................20
2 МОДЕЛИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ МЕТОДОВ
НЕЛИНЕЙНОЙ ДИНАМИКИ.............................................................................21
2.1 Постановка задачи...............................................................................21
2.2 Модель черного ящика........................................................................25
2.3 Элементы теории хаоса и прогнозирования......................................26
2.4 Предварительный анализ данных.......................................................28
2.5 Реконструкция фазовой траектории...................................................31
2.6 Определение размерности модели.....................................................33
2.7 Аппроксимация функции....................................................................36
2.8 Выводы по разделу..............................................................................40
3 МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ЭВОЛЮЦИИ
МЕТЕОПАРАМЕТРОВ, ЕЕ ПРОГРАММНАЯ РЕАЛИЗАЦИЯ......................41
3.1 Выбор и обоснование инструментальных средств для реализации
программы..........................................................................................................41
2
3
3.2 Порядок функционирования программы...........................................43
3.3 Определение размерности модели.....................................................45
4. Составление дифференциально - математической модели, ее решения
средствами MatLAB..............................................................................................50
4.1 Выводы по разделу..............................................................................53
5 ВЫЧИСЛИТЕЛЬНЫЕ ЭКСПЕРИМЕНТЫ: РЕЗУЛЬТАТЫ, АНАЛИЗ
.................................................................................................................................54
5.1 Расчет прогнозов для различных метеопараметров.........................54
5.2 Сравнение прогнозных моделей.........................................................63
5.3 Выводы по разделу..............................................................................64
ЗАКЛЮЧЕНИЕ.............................................................................................66
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ……………………………..…..66
3
4
ВВЕДЕНИЕ
Актуальность темы.
В последнее десятилетие наблюдается рост числа исследований в
области прогнозирования погоды. Это связано с увеличением количества
метеостанций, развитием новых методов прогнозирования, увеличением
мощности компьютеров. Актуален не только прогноз погоды общего
использования, но и специализированные прогнозы: авиационный,
сельскохозяйственный, морской и т.др. Сегодня, ни одна отрасль
современного хозяйства не может обойтись без правильного учета
информации о метеорологических изменениях.
Благодаря развитию науки в последнее время появились улучшенные
методы и инструменты для проведения наблюдений, мониторинга, анализа и
прогнозирования данных. Одним из таких инструментов является
метеостанции. Такие метеостанции с интервалом в 1-10 минут фиксируют
следующие метеорологические показатели: температуру, давление,
влажность и скорость направление ветра. Наличие данной статистики
является главной предпосылкой для разработки моделей, способных
выполнять прогноз метеоданных.
Поэтому создание математической модели динамики
метеопараметров на основе информации, полученной от автоматизированной
метеостанции, является актуальной задачей, одно из решений которой
представлено в магистерской диссертации.
Цель исследования: разработка математической модели
прогнозирования метеопараметров на базе дифференциальных уравнений для
последующего решения задач прогноза на ее основе.
Новизна работы заключается в использовании дифференциального
уравнения, правой частью которого является нелинейная нейронная сеть, для
4
5
моделирования эволюции метеопараметров с использованием временных
рядов.
Задачи исследования:
– изучение и анализ методов, которые применятся для
прогнозирования метеорологических параметров;
– выбор методов и разработка дифференциально-математической
модели, способной выполнять прогноз метеопоказателей
– анализ и реализация метода оценки размерности модели;
– проведение вычислительных экспериментов по прогнозированию
метеопараметров, оценка адекватности прогноза.
Объектом исследования являются временные ряды метеопоказателей,
которые снимаются с метеостанции Vantage Pro 2.
Предметом исследования являются методы моделирования и
прогнозирования временных рядов, алгоритмы оценки размерности модели и
аппроксимации функций, модели оценки адекватности прогноза.
Методы исследования. Для реализации цели и задач исследования
используется комплекс современных научных методов и подходов, а
именно: анализ литературных источников, связанных с прогнозированием и
моделированием сложных систем, методами аппроксимации и методами
оценки размерности, прогнозирование временных рядов, вычисление
эксперементов.
Во время выполнения работы использовались следующие
инструментальные средства:
– среда математического программирования Matlab;
Обоснование и достоверность научных положений, выводов и
рекомендаций подтверждаются использованием в области прогнозирования
метеопараметров современных методов моделирования и определения
размерности модели.
Практическое значение заключается в возможности использования
разработанного прогностического комплекса для проведения экспериментов
5
6
с прогнозирования метеопараметров с максимальной заблаговременностью,
равной 9 часам.
6
7
1 ОБЗОР МЕТОДОВ ПРОГНОЗИРОВАНИЯ НА ОСНОВЕ
ВРЕМЕННЫХ РЯДОВ
1.1. Методы нелинейной динамики
Ключевым понятием детерминистического подхода является понятие
динамической системы. Динамическая система – это математическая модель,
позволяющая однозначно предсказать эволюцию объекта по заданному
временному ряду. Прогнозирование погоды можно рассматривать как
нелинейную динамическую систему, то есть систему, которая
эволюционирует во времени. Такая система описывает динамику изменения
погоды, а именно: ее переход из одного состояния в другое. По сути,
динамическая система прогноза погоды является математической моделью.
Состояние динамической системы описывается точками в фазовом
пространстве. Отдельное поведение или эволюцию динамической системы
описывает движение точки в фазовом пространстве. Важнейшая
характеристика этого пространства – его размерность, или, попросту говоря,
число величин, которые необходимо задать для определения состояния
системы [1].
Изучением свойств динамических систем занимается нелинейная
динамика, которая использует для описания систем нелинейные модели,
представленные дифференциальными уравнениями.
Поведение динамических систем может быть предсказано на
небольшой промежуток времени, то есть динамические системы имеют
конечный горизонт прогноза. Метеорологи сегодня считают, что горизонт
прогноза для погоды не превышает трех недель.
Нелинейная динамика, анализируя системы такого рода, позволяет
устанавливать, сколько переменных необходимо для их описания, сколько
7
8
переменных нужно для прогнозирования, она помогает выяснить, каким
должен быть их мониторинг.
Наиболее точным приложением теории нелинейных систем с
хаотическим поведением является прогнозирование динамики порождаемых
ими временных рядов. При некоторых условиях возможно с большой
точностью произвести оценку будущего значения временного ряда, причем
эта оценка представляет собой функцию, зависящую только от предыдущих
значений ряда. В этом и заключается одна из основных задач анализа
временных рядов – это задача прогноза: на основе одних лишь наблюдений
за системой, предсказать ее поведение в будущем.
Ф. Такенс в своей известной теореме, предложил строгое
математическое обоснование всей концепции прогноза временных рядов с
точки зрения нелинейной динамики. Именно эта теорема лежит в основе всех
алгоритмов анализа временных рядов методами нелинейной динамики.
Идеи Такенса дали начало развитию новых методов анализа
прогнозирования временных рядов, которые используют подходы
нелинейной динамики и имеют строгое математическое обоснование.
Первый шаг при анализе временных рядов, основанном на теореме
Такенса, заключается в переходе от скалярного ряда к его многомерному
представлению:
xi
x i −1
.. .
x i − M +1
¿
righ
¿
¿
¿
(¿ ) (¿ ) (¿ ) ¿
z̄ i =¿ ¿
¿
(1.1)
где M – размерность вложения – параметр, который определяется
отдельно для каждого ряда. После этого перехода задачу прогноза
временного ряда можно сформулировать следующим образом. Есть M мерное представление временного ряда в виде векторов состояний . Для
первых N – M векторов известны значения функции, задающей переход к
8
9
следующему состоянию : (поскольку заданы следующие члены временного
ряда). Нужно найти значения этой функции для последнего по времени
вектора состояния и построить прогноз, например, на один шаг вперед.
Тангенсом было доказано, что реконструкция по скалярной
временной реализации динамической системы (метод временных задержек, и
метод последовательных производных) гарантирует, что в новых
переменных может быть получено эквивалентное описание исходной
динамической системы при достаточно большой размерности
восстановленных векторов . А именно, должно выполняться условие D> 2d,
где d – размерность множества M в фазовом пространстве исходной системы,
на котором происходит моделирующий движение.
Для более строгой формулировки теорем вводятся необходимые
обозначения. Пусть объект представляет собой динамическую систему
{
y ( t 0 +t )=Фt ( y ( t 0 ) )
ŋ ( t )=h ( y ( t ) )
(1.2)
где y – вектор состояния, Φt – оператор эволюции, h – измерительная
функция,
ŋ (t)
– скалярный временной ряд. Если предположить, что
движение системы происходит на многообразии M конечной размерности d,
а многообразие размерности d – это обобщение понятия гладкой поверхности
в евклидовом пространстве, то любую точку и ее локальную окрестность
U(p) можно взаимно однозначно и взаимно непрерывно отобразить на dмерный фрагмент пространства. Полученный образ Ψ: U → Ψ(U) называют
картой окрестности, а именно непрерывное отображение Ψ –
гомеоморфизмом.
Если Ψ – n раз дифференцируемых с таким же обратным отражением,
то говорят, что M принадлежит классу Сп. В случае n ≥1 отображение Ψ
называют диффеоморфизом. Если многообразие M отображается с помощью
диффеоморфизма Ψ на многообразие , D ≥ d , то M и S называют
диффеоморфным друг другу. При этом говорят, что S – вложение
9
10
многообразия M в евклидовое пространство RD . Далее предполагается, что
многообразие M ограниченное и замкнутое. Первое требование означает, что
множество M можно заключить в шар конечного радиуса, а второе – то, что
все предельные точки многообразия M принадлежат ему же. Такое
многообразие M называют компактным.
Каждой фазовой траектории системы (1.2) y(t), 0<t<∞, на
многообразии M соответствует временная реализация наблюдаемой
величины η: ŋ ( t ) =h ( y ( t ) ) 0<t <∞. Вектор y ( t 0 ) однозначно определяет
будущее поведение системы (1.4), в частности, всю реализацию η(t), t ≥ t0.
В соответствие вектору y(t) поставлена D-мерный вектор x ( t ) =
[ ŋ ( t ) , ŋ ( t+ τ ) ,… , ŋ ( t+ ( D−1 ) τ ] . Зависимость x от y (имеются в виду значения
векторов в тот же момент времени t) описывается однозначным
отображением Ψ: M → RD, выражается через оператор эволюции Фt :
M→M и функцию h :M → R следующим образом:
Ψ
Ψ
. .
1
2
(
(
y
y
( t
( t
))
))
.
Ψ
(
y ( t ) )
¿
rig h
¿
¿
¿
h (
y ( t ))
h ( Ф τ (
y (t
)))
. . .
h ( Ф(
x
( t
D
(
y ( t )) )
¿
rig h
¿
¿
¿
[ ¿ ]
[ ¿ ]
[ ¿ ] ¿
)= Ψ
(
y ( t ) ) 𨠨
¿
D− 1 )
⋅
τ
(1.3)
Гладкость Ψ (непрерывность, дифференцируемость, существование и
непрерывность производных высокого порядка) определяется гладкостью Φτ
и h. Образом многообразие M под действием Ψ есть некоторое множество .
Если Ψ есть диффеоморфизом то S – это вложения M и любому
вектору x из S соответствует только один вектор y ( t ) с M. В таком случае x
(t )
может служить вектором состояния для описания динамики на M и
уравнение (1.2) можно переписать в терминах новых переменных:
x ( t 0+t ) =❑t ( x ( t 0 ) )
(1.4)
где новый оператор эволюции ❑t ( x ) =Ψ ❑t ( Ψ −1 ) ( x )
. Формулировка теоремы Такенса выглядит так: пусть M – компактное dмерное многообразие класса C2. Для почти любой пары Φt, h (где Φt и h
10
11
дважды непрерывно дифференцируемые на M) отображение Ψ: M→RD ,
обусловленное (1.4), является диффеоморфозом для почти любого τ > 0 и D >
2d .
Итак, если взять достаточно большую размерность векторов временных
задержек x(t) (1.4), то можно получить (за исключением вырожденных
случаев) вложение многообразия M и сможем использовать x(t) как вектор
состояния динамической модели. Возможна следующая наглядная
интерпретация того, что размерность D должна быть больше именно
величины 2d. Чтобы установить неоднозначность отображения Ψ−1, надо на
многообразии M найти такие два вектора y 1 и y 2 , для которых Ψ( y 1 ) =
Ψ( y 2 ). Последнее уравнение представляет собой систему уравнений D с 2d
переменными (по d компонент каждого вектора y1 и y2, что задают
положение на M). Вообще говоря, данная система не имеет решений в
типичном случае, если число уравнений больше числа неизвестных, то есть
D > 2d. В этом и состоит смысл утверждения теоремы Такенса. При этом
можно получить «хорошую реконструкцию» и при меньшей размерности.
Области применения нелинейной динамики достаточно разнообразны.
Она применяется в задачах прогнозирования, определение природы
процессов и явлений. Например, прогнозирование курса ценных бумаг,
прогнозирование погоды, прогнозирование изменения природных популяций
и т.др. [1,1].
11
12
1.2 Статистические методы
Когда эволюция объекта рассматривается как случайный процесс,
можно говорить о возможности применения методов статистики.
Анализ временных рядов на основе статистических методов
предполагает, что данные содержат систематическую составляющую
(обычно включающую несколько компонент) и случайный шум (ошибку),
который затрудняет обнаружение регулярных компонент. Большинство
методов исследования временных рядов включает различные способы
фильтрации шума, позволяющие увидеть регулярную составляющую более
отчетливо.
Существует ряд статистических методов, которые применятся при
прогнозировании на основе временных рядов: метод Фурье, экстраполяции и
другие.
Одним из таких методов является скользящее среднее [5].
Скользящее среднее используется для расчета значений в
прогнозируемом периоде на основе среднего значения переменной для
указанного количества предыдущих периодов. Скользящее среднее, в
отличие от простого среднего для всей выборки, содержит сведения о
тенденции изменения данных [6].
Еще одним из статистических методов прогнозирования является
экстраполяция. Экстраполяция, экстраполированием – особый тип
аппроксимации, при котором функция аппроксимируется вне заданного
интервала, а не между заданными значениями. То есть экстраполяция –
приближенное определение значений функции f ( x ) в точках x, лежащих
вне отрезка [ x 0 , x n ] по ее значениям в точках x 0 < x 1 <... < x n .
12
13
Общая задача экстраполяции заключается в нахождении значений
некоторой функции, описывающей изменение показателя во времени, в
точке, лежащей вне интервала наблюдения данной функции, что определяет
возможность использования экстраполяции для целей прогнозирования. До
настоящего времени экстраполяция нашла широкое применение как способ
прогнозирования за простоту используемых прогнозных моделей и их
физическую интерпретацию.
Экстраполяция определяет тенденции будущего развития исследуемого
явления при условии, что закономерности данного явления, сложившиеся в
прошлом, будут существовать и в будущем. Эти закономерности определяют
наиболее устойчивые черты прогнозируемого процесса – это тренд, причем
предполагается, что тренд может быть описан с помощью какой-либо
функции [7].
В качестве базы прогнозирования используется прошлый опыт,
который пролонгируется на будущее. Делается предположение, что система
развивается эволюционно в достаточно стабильных условиях. Чем больше
система, тем более вероятно сохранение ее параметров без изменения –
конечно, на не слишком большой срок. Рекомендуется, чтобы срок прогноза
не превышал одной трети длительности расчетной временной базы.
При этом подходе задача экстраполяции решается в три этапа:
1) подбор вида функции тренда (структурная идентификация
прогнозирующей модели);
2) определение параметров функции тренда (параметрическая
идентификация прогнозирующей модели);
3) прогнозирования с помощью построенной модели.
Заметим, что как бы хорошо не была построена прогнозируемая модель
(предиктор), прогноз непременно содержит ошибку, причем эта ошибка
увеличивается с увеличением времени предупреждения. Прогнозирование с
помощью экстраполяции наиболее целесообразно на короткие сроки.
Естественно, что по мере поступления новой информации об изменении
13
14
значений соответствующих показателей параметры функции тренда должны
непрерывно усложняться.
Методы экстраполяции во многом пересекаются с методами
прогнозирования по регрессионным моделям. Иногда их различия сводятся
лишь к различиям в терминологии. Тем не менее, сама по себе прогнозная
экстраполяция имеет ряд специфических черт и приемов, позволяющих
причислять ее к некоторому самостоятельному виду методов
прогнозирования.
Специфическими чертами прогнозной экстраполяции можно назвать
методы предварительной обработки временного ряда с целью
преобразования его к виду, удобному для прогнозирования, а также анализ
логики и физики прогнозируемого процесса, оказывающий существенное
влияние как на выбор вида экстраполированием функции, так и на
определение границ изменения ее параметров.
Методы экстраполяции тенденций являются, пожалуй, самыми
распространенными и наиболее разработанными среди всей совокупности
методов прогнозирования. Использование экстраполяции в прогнозировании
имеет в своей основе предположение о том, что данный процесс замены
переменной представляет собой сочетание двух составляющих – регулярной
и случайной:
y ( x )=f ( a, x )−η ( x )
(1.8)
Считается, что регулярная составляющая f ( a , x ) представляет собой
гладкую функцию от аргумента (в большинстве случаев – времени), которая
описывается вектором параметров а, которые сохраняют свои значения на
периоде предупреждения прогноза. Эта составляющая называется также
трендом.
Случайная составляющая обычно считается некорелированным
случайным процессом с нулевым математическим ожиданием. Ее оценки
14
15
необходимы для дальнейшего определения более точных характеристик
прогноза.
Каждый из статистических методов имеет свои преимущества и
недостатки. Одним из преимуществ статистических методов является
наличие программного обеспечения, которое позволяет выполнять
статистическую обработку данных (например, Statistica). Впрочем, у них есть
и существенные недостатки: трактовать результаты может только математик,
который хорошо знает и понимает технологии применения статистических
методов.
1.3 Реконструкция моделей в виде дифференциальных уравнений
Математическое моделирование по временным рядам - направление
нелинейной динамики, бурно развивается в настоящее время. Оно возникло
из аппроксимации множества экспериментальных точек на плоскости
гладкой линией. В настоящее время эмпирические модели имеют вид
сложных дифференциальных уравнений и способны описывать даже
нелинейные колебательно-волновые феномены.
Создание моделей по экспериментальным временным рядами в
математической статистике и теории автоматического управления получило
название идентификации систем, а в нелинейной динамике - реконструкции
динамических систем.
При составлении модели, определяющей прогноз погоды,
исследователи имеют дело с системой, которая зависит от своей прошлой
истории поведения на каждом следующем шаге, поэтому для ее описания
можно применить дифференциальные уравнения.
Для создания детерминированных математических моделей используют
дифференциальные уравнения. Уравнения механики Ньютона (уравнения
15
16
динамики) является признанным эталоном «динамической системы» математической модели, позволяющей однозначно предсказать эволюцию
объекта по заданному начальному состоянию.
Под «состоянием» понимают совокупность значений величин
x j ( j=1,2,…, D ) , характеризующих объект, то есть это D-мерный вектор
x ( x 1 , x 2 ,…, x D )
, называемый еще вектором состояния. Рассмотрим ОДУ,
содержащих производные только по одной независимой переменной:
dx
=F ( x )
dt
(1.9)
где x - зависимая (динамическая) переменная, t - независимая
переменная. Уравнению первого порядка (1) или эквивалентной ему системе
уравнений:
x1=F 1 ( x1 , x2 … , x D ) ,
x 2=F 2 ( x1 , x2 … , x D )
x D=F D ( x 1 , x2 … , x D )
{
(1.10)
заменой переменных можно свести к ОДУ, содержащих производные
n
d x j /dt
n
любого порядка n.
Физический смысл записи состоит в следующем. Производная в левой
части уравнения, по определению, показывает, насколько изменяется x с
изменением времени t. В инженерии подобная переменная называется
скоростью, темпом, тенденцией.
Одним из достоинств дифференциальных уравнений является
возможность их наглядной геометрической интерпретации. Уравнения,
которые задают векторное поле - определяют значение вектора скорости
16
17
изменения состояния в точках фазового пространства. Координатам точек в
этом пространстве соответствуют значения x j , проекции вектора скорости
изменения состояния уровне
ẋ j
, а геометрической интерпретацией
решения является линия, касающаяся векторов скорости, проходит через
начальную точку. При выполнении условий теоремы существования и
единственности решения через начальную точку
x(0) проходит
единственная линия. Это означает, что будущее однозначно определено, что
является основным требованием детерминированного описания.
Процедура получения модельных уравнений по временным рядам,
которая достаточно часто обсуждается в научной литературе последнего
десятилетия, называют реконструкцией уравнений.
Построения модели, согласно этому подходу, сводится к следующим
основным этапом:
1) по временному ряду { x j }
dx ( t
¿
dt
¿ ¿
¿
¿
¿
i
рассчитывается временной ряд
)
;
2) подбираются функции F j , аппроксимирующие зависимости
dx j /dt от х;
3) проверяется эффективность построенной модели.
Первая задача решают путем численного дифференцирования. Можно
использовать любой стандартный метод, при наличии шумов нужны
специальные методы [1, 8].
Можно рассчитать движение во времени динамической системы, для
которой есть все необходимые данные, исходное состояние ( x i (0) = const).
Можно по формулам (с использованием любого метода, который решает
дифференциальные уравнения) вычислить скорость ее изменения и новое
состояние:
новое состояние = состояние + скорость • отрезок времени.
17
18
Формально эту запись выглядит так:
dx(t) / dt = f(x(t))
(1.11)
[x(t + Δt) - x(t)] /Δt = f(x(t))
(1.12)
x(t + Δt) = x(t) + f (x (t)) • Δt.
(1.13)
или (в дискретной форме)
и окончательно,
Таким образом, используя дифференциальные уравнения, можно проследить
эволюцию системы на несколько шагов вперед [9].
1.4 Генетические алгоритмы в задачах прогнозирования
Анализ существующих методов прогнозирования показал, что в
настоящее время большее распространение получают методы
прогнозирования на основе технологий искусственного интеллекта аппарата искусственных нейронных сетей, нечетких множеств и
генетических алгоритмов.
В генетическом алгоритме совокупность параметров представляется в
виде генов, образующих хромосомную нить. Генетический алгоритм
поддерживает группу хромосом (популяцию), которые являются
претендентами на оптимальное решение. Применяя ряд вероятностных
операторов, таких как отбор, скрещивание и мутация, генофонд популяции
стремится получить большую пригодность к условиям задачи. Аналогично
тому, как в процессе биологического генезиса выживают и развиваются лица,
наиболее приспосабливаются к воздействию некоторых факторов
окружающей среды, так и в процессе поиска оптимума прогрессируют те
решения, которые наиболее пригодны к условиям поставленной задачи.
18
19
Практически алгоритм представляет собой простые операции обмена и
копирования частей хромосомных нитей [10].
В общих чертах классический генетический алгоритм состоит из
следующих шагов:
1) инициализация или выбор начальной популяции хромосом;
2) оценка приспособленности хромосом в популяции;
3) проверка условия остановки алгоритма;
4) отбор, селекция хромосом;
5) скрещивания;
6) мутация;
7) формирование новой популяции;
8) выбор «лучшей хромосомы» [11].
Решением будет лучший найденный индивид.
Генетический алгоритм поддерживает N хромосомных нитей
(претендентов на оптимальное решение), образующие популяцию. На каждой
итерации проводится отбор из популяции наиболее подходящих хромосом и
образуются родительские пары. Применяя оператор скрещивания,
генетический алгоритм воспроизводит новое поколение потомков, которые
наследуют лучшие гены родителей. Для обеспечения необходимого
разнообразия генетического материала (исследование новых областей в
пространстве поиска) используется оператор мутации. В ходе отбора
выживают те хромосомы, которые имеют большую пригодность. Хромосомы
с меньшей пригодности отмирают и в воспроизводстве потомства не
участвуют.
В ходе скрещивания точка скрещивания определяется случайным
образом. Далее проводится обмен цифрами или справа, или слева от этой
точки с другой разделенной подобным образом хромосомой. Мутация - это
случайный процесс изменения значения некоторой позиции в хромосоме.
В результате действия операторов отбора, скрещивания и мутации
реализуется направленный поиск с элементами «случайных блужданий».
19
20
Каждое следующее поколение наследует лучшие признаки предыдущего в
направлении движения в сторону оптимума и, в конечном счете, образуется
некоторое подмножество точек, отклонения от целевой функции для которых
минимальны.
Преимущества генетических алгоритмов:
- они не требуют никакой информации о поверхности ответа;
- разрывы, существующие на поверхности ответы, имеют
незначительный эффект на полную эффективность оптимизации;
- алгоритмы устойчивы к попаданию в локальные оптимумы,
хорошо работают при решении крупномасштабных проблем оптимизации;
- могут быть использованы для задач широкого класса;
- простые и прозрачные в реализации;
- могут быть использованы в задачах с изменяющейся средой.
Недостатки генетических алгоритмов. Не желательно и проблематично
использовать генетические алгоритмы:
- в случае, когда необходимо найти точный глобальный оптимум;
- время выполнения функции оценки высокое;
- необходимо найти все решения задачи, а не одно из них;
- конфигурация является не простой (кодирование решения) [12].
1.5 Выводы по разделу
К перспективным методам прогнозирования последних десятилетий
принадлежат методы нелинейной динамики, в данной работе были выбраны
именно они. Это было сделано по следующей причине: методы нелинейной
динамики относительно новое направление, которое интенсивно развивается.
Основное преимущество данного метода в том, что показатели нелинейной
динамики несут в себе информацию о рассматриваемой системе.
20
21
Использование методов нелинейной динамики основывается на анализе
временных рядов.
Выполненный в диссертации обзор работ показывает, что сейчас очень
актуальна задача создания математических моделей, способных выполнять
прогноз погоды. Для этого очень часто используются методы
прогнозирования, основанные на технологиях искусственного интеллекта (в
частности, нейронные сети). Новизна данной работы заключается в
использовании для выполнения прогноза метеопараметров
дифференциальной модели, аппроксимация которой производится с
помощью нелинейной нейронной сети.
2 МОДЕЛИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ МЕТОДОВ
НЕЛИНЕЙНОЙ ДИНАМИКИ
2.1 Постановка задачи
Области прогнозирования имеют достаточно широкий горизонт. Это и
метеорология (прогнозирование температуры воздуха, влажности,
атмосферного давления, скорости ветра, количества осадков), физика Солнца
(прогнозирования магнитной активности Солнца), и сейсмология, и
экономическое прогнозирование (прогнозирование курсов акций), и
физиология, медицина, транспорт, химия и т.др.
Для осуществления прогноза, нужно иметь модель данной системы.
Модель – это упрощенный (в том или ином смысле) образ оригинала,
неразрывно с ним связанный, отражающий существенные свойства, связи и
отношения оригинала; система, исследование которой служит инструментом,
средством для получения новой и (или) подтверждения уже имеющейся
информации о другой системе. Один и тот же объект может быть
представлен множеством моделей, каждая из моделей является дополнением
21
22
к истинной модели объекта. Одна из таких моделей объекта может оказаться
лучшей, то есть наиболее точно совпадать по свойствам с оригиналом, а для
задач прогнозирования – давать лучший прогноз.
Процессом создания и использования моделей занимается
моделирование. Моделирование в широком смысле слова – это процесс
построения модели, а также ее исследования. Математическое
моделирование – это описание, воссоздание, изучение и прогнозирование
различных процессов и явлений с помощью математических и
вычислительных средств. Суть моделирования состоит в замене реального
процесса в определенной конструкцией, которая отражает основные,
существенные черты процесса, абстрагируясь от вторичных,
несущественных. Настоящая модель должна отвечать целям моделирования
[12].
Можно выделить основные этапы моделирования, они изображены на
рис. 2.1.
Описание объекта
Выбор структуры модели и
используемых методов
Определение целей
моделирования
Математическая модель
Разработка алгаритма и
программ
Уточнение модели
Выходной объект
Использование модели
Тестирование
программы
Анализ результатов
Проведение
эксперемента
Рисунок 2.1 – Этапы моделирования динамических систем
22
23
Первый этап – это определение целей моделирования. В рамках задачи
прогнозирования метеопараметров целью является получение наиболее
адекватного прогноза. Начальный объект в этом случае – временные ряды
метеопараметров.
Содержательное описание является промежуточным звеном и конечно
самостоятельного назначения не имеет, он является основой для дальнейшей
формализации объекта и построения математической модели.
Один из наиболее важных этапов формирования модели является
выбор структуры модели и используемых методов для осуществления
поставленных целей. Этот этап является важным, поскольку именно от него
зависит вид полученной модели и, соответственно, результаты
моделирования. На этом этапе рекомендуется проанализировать
поставленную задачу, провести изучение существующих методов для ее
решения, выбрать наиболее оптимальные методы, с помощью которых могли
бы быть получены лучшие результаты. Сделать это сложно из-за того, что
неизвестно, какой метод даст результаты для конкретной системы,
проверить это можно только опытным путем.
Следующим этапом является формирование математической модели.
Используя выбранные на предыдущем этапе методы, формируется
математическая модель объекта.
Далее следует алгоритмизация и компьютерная реализация
сформированной на предыдущем этапе модели.
Когда модель сформирована, с ее помощью решается какая-нибудь
простая тестовая задача и анализируются полученные результаты. Если
результаты удовлетворяют заданным целям, то модель готова к
использованию. Если же результат является неудовлетворительным, то
происходит возврат к одному из предыдущих этапов, и поиск ошибок
модели. После внесения изменений снова проходим по этапам формирования
модели, и делаем это до тех пор, пока не будут получены адекватные
результаты [13].
23
24
Следует заметить, что построенная модель не может давать абсолютно
точных решений, поскольку она не является действительной моделью, а
только ее эталоном. Кроме этого, следует заметить, что нелинейные системы
могут обладать чувствительностью к начальным данным. Лоренц назвал это
свойство детерминированных систем «эффектом бабочки» – в метеорологии
взмах крыльев бабочки может через достаточное время повлечь
существенное изменение погоды где-то совсем в другом месте.
В зависимости от характера изучаемых процессов в системе все виды
моделирования могут быть разделены на два большие классы:
– детерминированные;
– стохастические.
Детерминированное моделирование отображает детерминированные
процессы, то есть процессы, в которых предполагается отсутствие всяких
случайных воздействий; стохастическое моделирование отображает
вероятностные процессы и события. В этом случае анализируется ряд
реализаций случайного процесса и оцениваются средние характеристики, т.
е. набор однородных реализаций.
Ключевым понятием детерминированного подхода является
динамическая система. Динамическая система является обобщенным
понятием системы дифференциальных уравнений и включает в себя две
основные компоненты: фазовое пространство и дискретную группу его
преобразований. Под динамической системой можно понимать любую
систему, которая эволюционирует во времени в соответствии с некоторым
динамическим законом, то есть как результат действия детерминированного
оператора эволюции.
Процесс функционирования системы описывается оператором
эволюции (эволюция объекта определяется однозначно его состоянием в
начальный момент времени) Фt Состоянием называется совокупность
величин D
x=( x 1 , x 2 ,. . , x D ) , где D – размерность модели. Величины
24
25
называются динамическими переменными. Возможны и бесконечные
модели.
Для построения модели необходимы исходные данные. Они могут быть
представлены в виде временных рядов. Временной ряд – это расположенная
в хронологическом порядке последовательность значений некоторой
величины. При работе с временными рядами основной интерес представляет
получение информации о порожденной ими систему и, если это возможно,
прогнозирования дальнейшего изменения величины, значение которой
составляет исследуемый временной ряд.
2.2 Модель черного ящика
Разработка модели прогноза погоды представляет собой задачу черного
ящика. Модель, способную воспроизвести наблюдаемую поведение или дать
прогноз дальнейшей эволюции, нужно получить только за наблюдаемым
временным рядом, то есть практически «из ничего». Это заставляет
использовать универсальные структуры модельных уравнений (например, в
качестве функций в правых частях использовать искусственные нейронные
сети). Исключительную важность в построении такой модели приобретает
этап «реконструкции» рядов отсутствующих переменных из ряда
переменной, которая наблюдается. Его теоретическому обоснованию
посвященные известные теоремы Такенса [1].
В общем виде модель системы «черный ящик» представлена на рис.
2.2. На вход модели поступает совокупность входных воздействий, а на
выходе получаем выходные характеристики системы.
25
26
Рисунок 2.2 - Модель системы «черный ящик»
Не менее важен и труден в постановке задачи «черного ящика»
следующий этап - аппроксимация скорости изменения вектора состояния
самого вектора (при построении модельных дифференциальных уравнений
вида
dx /dt= f (x, c)). На практике, как правило, удается добиться успеха,
если оказывается достаточным использование не очень большой размерности
модели, не более 5-6. Для построения моделей большей размерности нужны
огромные объемы экспериментальных данных [15].
2.3 Элементы теории хаоса и прогнозирования
В основе прогнозирования методами нелинейной динамики лежит
теория хаоса. Термин «теория хаоса» определяется как учение о сложных
нелинейных динамических системы. Под термином «нелинейные» иногда
понимается рекурсия и математические алгоритмы, а под термином
«динамические» - непостоянные, изменяющиеся во времени [16].
В хаосе есть порядок: в основе случайности лежит некая
геометрическая структура. Хаос накладывает принципиальные ограничения
на возможность прогнозирования, но в то же время предусматривает
причинные связи там, где раньше их никто не подозревал.
Кажущийся парадокс заключается в том, что хаос детерминирован
определенными правилами, которые сами по себе не включают никаких
элементов случайности. В принципе, будущее полностью определено
26
27
прошлым, однако на практике малые неопределенности растут и поэтому
поведение, допускающее краткосрочный прогноз, непредсказуемая на долгий
срок. Таким образом, в хаосе есть порядок: в основе хаотического поведения
лежат изящные геометрические структуры, которые создают случайность
таким же образом.
Понятие хаоса относится к теории динамических систем.
Динамическая система состоит из двух частей: понятие состояния
(существенной информации о системе) и динамики (правила, описывающего
эволюцию системы во времени). Эволюцию можно наблюдать в
пространстве состояний, или фазовом пространстве, - абстрактном
пространстве, в котором координатами служат компоненты состояния. При
этом координаты выбираются в зависимости от контекста. Фазовое
пространство дает мощное средство для изучения хаотических систем, так
как он позволяет представить их поведение в геометрической форме.
Аттрактор соответствует стадии поведении системы - той, к которой
она стремится с течением времени. Одна и та же система может иметь
несколько аттракторов. Если это так, то разные начальные условия могут
привести к различным аттракторов. Множество точек, приводящих к
некоторому аттрактору, называется его областью притяжения.
Микроскопические возмущения накапливаются и влияют на
макроскопическую поведение.
При наблюдении физической системы из-за появления неизбежных
ошибок измерения нельзя точно задать ее состояние. Одному состояния
отвечает не точка, а малая область в фазовом пространстве. Предельные
размеры области устанавливают соотношение неопределенностей, но, на
деле, разного рода шумы ухудшают точность измерений и способствуют
появлению более заметных ошибок.
Локализация системы в малой области фазового пространства,
достигнута путем измерения, дает определенное количество информации об
этой системе. Чем точнее проведено измерение, тем больше знает
27
28
наблюдатель о состоянии системы. И наоборот, чем больше область, тем
меньше уверенности у наблюдателя. Поскольку в не хаотично системе
близко расположенные точки остаются близкими в процессе эволюции, часть
информации, полученной измерением, сохраняется во времени. Именно в
этом смысле такие системы предсказуемы: начальный измерение содержит
информацию, которой можно воспользоваться для прогноза будущего
поведения. Иначе говоря, предполагаемые динамические системы не
особенно чувствительны к ошибкам измерения.
Задача исследователя - воспроизвести аттрактор с помощью неполных
данных. Ясно, что это не всегда возможно: если аттрактор слишком
сложный, то что-то будет потеряно. Однако в отдельных случаях динамику
можно восстановить на основе неполных данных [17].
Методика, которой Такенса дал прочное математическое обоснование,
позволяет воссоздать ( «реконструировать») фазовое пространство и искать
хаотические аттракторы. Ее основная идея заключается в том, что эволюция
всякой отдельной компоненты системы определяется другими
компонентами, с которыми она взаимодействует. Таким образом,
информация о таких компоненты неявно содержится в «истории» отдельной
части. Чтобы воссоздать «эквивалентный» фазовое пространство, мы берем
просто одну компоненту и обращаемся с измеренным значениям при
фиксированных запаздыванием (например, секунду назад, две секунды назад
и т. Д.) Так, как будто это новые размерности.
Эти «запоздалые» значения можно рассматривать как новые
координаты, которые определяют точку в многомерном фазовом
пространстве. Повторяя процедуру с другими интервалами запаздывания,
получаем много таких точек. Затем другими приемами можно проверить,
лежат либо не лежат эти точки на аттрактор. Хотя такое представление во
многих отношениях произвольно, оказалось, что оно сохраняет многие
важные свойства аттрактора, которые, как выяснилось, не зависят от деталей
реконструкции [1].
28
29
2.4 Предварительный анализ данных
Можно выделить две основные задачи анализа временных рядов:
определение природы ряда и прогнозирования. Каждая из них предполагает,
что модель ряда идентифицирована и, более или менее, формально описана.
Как только модель определена, можно с ее помощью интерпретировать
полученные данные. Не обращая внимания на глубину понимания и
справедливость теории, можно экстраполировать затем ряд на основе
найденной модели, то есть, предвидеть его будущие значения.
Известны такие методы анализа временных рядов: сглаживание
(экспоненциальное, методом скользящей средней), кросс-спектральный
анализ, спектральный анализ, быстрое преобразование Фурье.
Как и большинство других видов анализа, анализ временных рядов
предполагает, что данные содержат систематическую составляющую
(обычно включает несколько компонент) и случайный шум (ошибку),
который затрудняет обнаружение регулярных компонент. Большинство
методов исследования временных рядов включает различные способы
фильтрации шума, позволяющие увидеть регулярную составляющую более
отчетливо.
Сглаживания всегда включает некоторый способ локального
усреднения данных, при котором несистематические компоненты взаимно
погашают друг друга. Самый общий метод сглаживания - скользящее
среднее, в котором каждый член ряда заменяется простым или взвешенным
средним n соседних членов, где n - ширина «окна». Вместо среднего можно
использовать медиану значений, попавших в окно. Основное преимущество
медианного сглаживания, по сравнению со сглаживанием скользящим
средним, состоит в том, что результаты становятся более устойчивыми к
выбросам [18].
29
30
Метод скользящих средних используется, когда необходимо дать
общую картину развития, основанную на механическом повторении одних и
тех же действий по увеличению интервала времени.
Метод скользящих средних дает оценку среднего уровня за некоторый
период времени. Так как средняя образуется за более длительный отрезок
времени, она выступает не как средство обобщения единиц совокупности, а
как средство их сглаживания. Чем больше интервал времени, к которому
принадлежит средняя, тем более плавным будет сглажен уровень.
Данный метод применяется для характеристики тенденции развития
исследуемой статистической совокупности и основан на расчете средних
уровней ряда за определенный период. Последовательность определения
скользящей средней:
1. Устанавливается интервал сглаживания или число уровней, которые
в него входят. Если при расчете средней учитываются три уровня,
скользящая средняя называется трехчленной, пять уровней - пятичленного и
т.д. Если сглаживаются мелкие, беспорядочные колебания уровней в ряду
динамики, то интервал (число скользящей средней) увеличивают. Если
волны следует сохранить, число членов уменьшают.
2. Вычисляют первый средний уровень с арифметической простой
y 1=
∑ (ηi−m +ηi−m−1 + ηi−m−2 +. .+ηi−( m−m−1) )
m
(2.1)
- Первый уровень ряда;
m - количество скользящей средней.
3. Первый уровень исключают, а в расчет средней включают уровень,
следующий за последним уровнем, участвует в первом расчете.
Процесс продолжается до тех пор, пока в расчёт не будет включен
последний уровень исследуемого ряда динамики.
4. По ряду динамики, построенном из средних уровней, выявляют
общую тенденцию развития явления.
30
31
Отрицательной стороной использования метода скользящей средней
является образование сдвигов в колебаниях уровней ряда, обусловленных
«скольжением» интервалов укрупнения. Сглаживания с помощью
скользящей средней может привести к появлению «обратных» колебаний,
когда выпуклая «волна» заменяется на вогнутую [19].
2.5 Реконструкция фазовой траектории
Главная идея применения методов нелинейной динамики к анализу
временных рядов заключается в следующем. Оказывается, основная
структура нелинейной динамической системы, содержащей в себе всю
информацию о системе, а именно, ее аттрактор (подмножество фазового
пространства, которая притягивает траектории в пределы бесконечного
времени), может быть восстановлена через измерение только одной
наблюдаемой этой динамической системы, фиксированной как временной
ряд.
Детерминированы динамические системы описывают эволюцию
системы во времени в некотором фазовом пространстве:
Г⊂R d .
(2.2)
Эти системы могут быть порождены, например, обыкновенные
дифференциальные уравнения:
x̄=F (x (t )).
(2.3)
Временные ряды потом можно рассматривать как последовательность
наблюдений { x n=x ( x n ) } сделанных с помощью некоторой функции
измерения. Так как последовательность (обычно скалярная) { x n } сама по
себе не порождает многомерный фазовое пространство динамической
системы. Необходимо использовать технический прием, чтобы раскрыть
многомерную структуру, используя только имеющиеся данные [1, 20].
31
32
Существуют следующие методы реконструкции аттрактора: метод
временных задержек, метод ложных соседей, метод главных компонент и
другие методы, которые позволяют проводить реконструкцию фазовой
траектории.
В данной работе используется метод временных задержек, который
будет описан ниже.
Процедура реконструкции фазового пространства и восстановление
хаотического аттрактора системы при динамическом анализе временного
ряда сводится к построению так называемого лагового или восстановленного
пространства с помощью метода задержки (method of delays). Векторы в
новом пространстве, пространстве вложения, сформированные из значений
скалярных измерений временного ряда с временными запаздываниями:
Xj=(x ( j ,i) ,x ( j,i+τ) ,x ( j,i+2∗τ ) ,.., x( j ,i+(m−1)∗τ) ).
(2.4)
Количество элементов m называется размерностью вложения, время τ
обычно называется задержкой или лагом. В теорема Такенса и Сойера
показывается, что если последовательность { x n } самом деле состоит из
скалярных измерений структуры динамической системы, тогда, при
определенных допущениях, такое восстановление фазового портрета
является точной картиной настоящей множества {x}, если, конечно, m
достаточно велико.
В том случае, если рассматриваемый временной ряд является
реализацией случайного процесса, то восстановлен псевдоаттрактор
представляет собой бесструктурное облако точек, которое при
последовательном бесконечном увеличении размерности вложения лагового
пространства m, подобно газу, заполняет весь предоставленный ему объем.
Метод задержки для восстановления фазового портрета широко
используется при динамическом анализе временных рядов. Если временной
ряд содержит N измерений, то число вложенных векторов равно N - (m - 1) τ.
32
33
Одной из задач реконструкции фазовой траектории является задача
определения временной задержки . х к
Для малых интервалов времени Δt значение измерений
хк
и
Х к +1
будут близки, поэтому задача правильного выбора временной задержки τ
является одним из самых важных. Необходимо выбрать τ так, чтобы
корреляция между х к и
Х к +1
стремилась к нулю. Традиционный способ
выбора временной задержки заключается в вычислении автокорреляционной
функции временного ряда:
АКФ=
∑ j (x j− x̄ )⋅( x j+τ − x̄ )
.
2
2
(
x
−
x̄
)
⋅
(
x
−
x̄
)
∑
∑
√ j j
j+τ
j
(2.5)
2.6 Определение размерности модели
Задача определения аргументов функции состоит в том, чтобы
определить наименьшую размерность модели, обеспечивает однозначность
прогноза. Для определения размерности модели используются следующие
методы: метод ложных соседей, метод главных компонент, метод
Грассбергера-Прокаччиа, метод хорошо приспособленного базиса.
В данной работе используется метод Грассбергера-Прокаччиа. Этот
метод является одним из самых популярных для оценки корреляционной
размерности аттрактора.
Временной ряд получается в результате записи наблюдаемое
переменной в последовательные равноудалены моменты времени
x j , x j , .. , x j .
1
2
M
Зададимся некоторым целым m и осуществим идею
реконструкции аттрактора методом запаздывания в пространстве
размерности m, описанную выше.
33
34
Рассмотрим корреляционный интеграл C(ε), что показывает
относительное число пар точек аттрактора, находящихся на расстоянии не
более ε:
N
1
С( ε )= lim
∑ θ( ε−ρ( X i , X j )),
N →∞ N (N −1) i, j=1
(2.6)
где i ≠ j, е – размер ячейки (ограничен минимальным расстоянием
между ближайшими точками аттрактора, и размером аттрактора). – функция
Хевисайда, то есть:
0 , x <0
1 , x ≥0
,
¿
θ ( x )= ¿ { ¿ ¿ ¿
¿
(2.7)
Расстояние в m-мерном фазовом пространстве
ρ( X i , X j )=‖X i− X j‖.
(2.8)
N=M−(m−1)⋅τ ,
(2.9)
N – количество точек Xi на аттракторе
D
C( ε )≈ε 2 ,
(2.10)
D2 – корреляционная размерность аттрактора.
Учитывая, что из (2.10) следует
ln C( ε)≈ D 2⋅ln ε ,
(2.11)
получаем оценку размерности аттрактора как тангенс угла наклона прямой,
аппроксимирующей график корреляционного интеграла C(ε) в двойном
логарифмическом масштабе [22].Строим график зависимости ln(C(ξ)) от ln(ξ)
в двойном логарифмическом масштабе.
34
35
Выделяем линейные участки полученных кривых по методу наименьших
квадратов, проводим аппроксимацию их прямыми. Корреляционную
размерность D принимаем равным коэффициенту a, полученного уравнения
y = a * x + b.
Алгоритм состоит в следующем. Делаем реконструкцию аттрактора
методом запаздывания. Затем оцениваем его размерность по методу
Грассбергера-Прокаччиа, то есть вычисляем для различных ε
корреляционный интеграл, откладываем полученную зависимость на графике
в координатах (ln ε, ln C(ε)), ищем на ней наиболее линейный участок,
проводим аппроксимацию его по методу наименьших квадратов определяем
размерность. Описанную процедуру выполняем несколько раз, рассматривая
последовательно m = 1, 2, 3, ... .
Наличие или отсутствие насыщения D2(m) при увеличении m
рассматривается как критерий того, генерируется сигнал динамической
системой или же он является шумовым. Если наблюдается насыщение на
некотором уровне D2(m), то эту величину D2(m) принимаем в качестве
оценки корреляционной размерности аттрактора динамической системы,
породившей наблюдаемый сигнал. Основываясь на оценке D2(m) и теореме о
вложении, получаем, что размерность фазового пространства этой
динамической системы. Независимую оценку этой величины (размерности
вложения) дает число m, начиная с которого наступает насыщение
зависимости D2(m).
При выборе размерности пространства вложения обычно считается, что
если реконструкция достигается при некотором m, тоже справедливо и для
m+1. В частности, практически перестает изменяться взаимное расположение
точек в фазовом пространстве, то есть если расстояние между точками была
маленькой, она и останется маленькой, если большая – соответственно будет
большим.
35
36
Если D2 – корреляционная размерность аттрактора, то размерность
вложения. Условие является необходимым, но недостаточным условием для
прогнозирования.
Минимальная размерность вложения аттрактора m+1, где m –
размерность вложения выше которой, значения корреляционной размерности
D2 остается постоянным [23].
Количественную оценку точности нахождения корреляционной
размерности предложили Экман и Рюэль (1981). Обозначим через еМах –
максимальный размер элементарной ячейки, а еМіn – ее минимальный
размер, которые соответствуют началу и концу линейного участка
зависимости С(ε) от ε в двойном логарифмическом масштабе. Тогда p = еМах
/ еМіn. Для надежного измерения D2 необходимо p = 10. Одно из основных
условий данной оценки состоит в соблюдении неравенства D2 <2lgN, где N –
длина временного ряда [24].
2.7 Аппроксимация функции
При математическом моделировании часто требуется представить
некую зависимость, заданную отдельными точками, в виде гладкой функции.
Исходные точки могут быть заданы с ошибками. Выбор аппроксимирующей
функции во многом определяется физикой описываемого процесса. Если
36
37
известен вид аппроксимирующей функции, то задача сводится к отысканию
коэффициентов, входящих в функцию.
Классическим инструментом для создания детерминированных (в
которых отсутствуют явления случайного воздействия) математических
моделей являются дифференциальные уравнения. Они позволяют однозначно
предсказывать эволюцию объекта по заданном начальном состоянии. Будем
рассматривать дифференциальные уравнения, содержащие производные по
одной независимой переменной:
dx /dt=F (x )
(2.12)
где x – зависимая переменная, t – независимая переменная.
Производная в левой части характеризует скорость изменения переменной x
с течением времени t. Одним из достоинств дифференциальных уравнений
является возможность их наглядной геометрической интерпретации.
Уравнения, которые задают векторное поле – определяют значение вектора
скорости изменения состояния в точках фазового пространства [8].
Для построения дифференциальной модели используется метод
сильной аппроксимации – искусственные нейронные сети. С целью
определения типа нейронной сети, что дает лучший прогноз
метеопараметров, нами были проведены эксперименты. Они проводились
для дальности прогноза 1, 3, 6 и 9 часов, по каждому отдельному
метеопараметру (температура, влажность, давление и скорость ветра). В
результате опытов лучшие результаты для модели прогноза погоды дала
нелинейная нейронная сеть представлена на рис. 2.4.
Нелинейная сеть представлена одним скрытым слоем (от 1 до 10
нейронов) с функцией активации гиперболический тангенс и выходным
слоем, содержащим 1 нейрон с линейной функцией активации (рис. 2.4).
37
38
Рисунок 2.4 – Архитектура нелинейной ИНС
Сеть не содержит обратных связей, нейроны соединяются по принципу
«каждый с каждым». Оба слоя имеют смещение. Веса и смещения
настраиваются методом Левенберга-Марквардта, критерий качества
обучения – средняя квадратическая ошибка.
Как и было сказано выше, сначала происходит обучение сети на
тренировочной части временного ряда. Для контроля переобучения сети
используется тестовая выборка. Для выбора оптимальной нелинейной сети
организуется цикл, в котором меняется число нейронов в первом слое (от 1
до 10 нейронов). Далее проверяется работа построенной сети на тестовой
выборке и вычисляется ошибка тестирования. После выполнения цикла
перебора сетей с различным числом нейронов выбирается сеть с наименьшей
тестовой ошибкой [25, 26].
Окончательная дифференциально-математическая модель имеет
следующий вид:
N
dx /dt =∑
j=1
D
(w2j⋅th(
∑ w1ji x 1i +b1j ))+ b2j ,
i=1
(2.13)
здесь w – веса сети, b – смещение.
38
39
Данный метод считается самым быстрым и надежным алгоритмом
обучения. Метод Левенберга-Марквардта удачно сочетает в себе метод
наискорейшего спуска (т. е. минимизации вдоль градиента) и метод Ньютона
(т. е. использование квадратичной модели для ускорения поиска минимума
функции). От метода наискорейшего спуска алгоритм позаимствовал
стабильность работы, от метода Ньютона – ускоренную сходимость в
окрестностях минимума.
Применение метода Левенберга-Марквардта связано с определенными
ограничениями: метод применим только для сетей с одним выходным
элементом; метод требует памяти, пропорциональной квадрату числа весов в
сети. Фактически, это ограничение не позволяет использовать метод для
сетей большого размера (порядка тысячи и более весов); метод может
применяться только для среднеквадратичной функции ошибок
Алгоритм Левенберга-Марквардта реализует следующую стратегию
для оценки матрицы Гессе. В предположении, что функционал определяется
как сумма квадратов ошибок, что характерно при обучении нейронных сетей
с прямой передачей, Гессе может быть примерно вычислен как
(2.14)
а градиент рассчитан по формуле
grad = JTe,
где
J=
de
dW
(2.15)
– матрица Якоби производных функционала ошибки по
параметрам, параметров; е – вектор ошибок сети. Матрица Якоби может быть
вычислена на основе стандартного метода обратного распространения
ошибки, что существенно упрощает вычисления матрицы Гессе.
Алгоритм LM использует аппроксимацию гесиану следующего вида:
39
40
xk-1=xk – (JTJ+μI)-1JTek
(2.16)
гессиану уменьшают после каждой успешной итерации и увеличивают
только тогда, когда пробный шаг показывает, что функционал ошибки
возрастает. Такая стратегия обеспечивает уменьшение ошибки после каждой
итерации алгоритма.
Этот алгоритм имеет очень эффективную реализацию в системе
MatLAB, что является интерпретатором векторной машины, где операция
скалярного произведения реализуется с высокой точностью и
быстродействием. Поэтому преимущества алгоритма Левенберга-Марквардта
становятся еще более ощутимыми при работе в среде системы MatLAB.
2.8 Выводы по разделу
В данном разделе изложены этапы построения дифференциально математической модели прогнозирования метеопараметров по временным
рядам.
Исходные данные для модели представлены в виде временных рядов.
Временные ряды получают как величины метеопараметров, которые
снимаются через равные промежутки времени (температура, давление,
влажность и скорость ветра).
Построение модели состоит из ряда важных этапов. Первым из них
является начальная обработка данных (усреднение и предварительный анализ
временного ряда).
Одним из наиболее важных этапов является этап формирования
структуры модели. На этом этапе выбирается наименьшая размерность
модели, что обеспечивает однозначность прогноза. Для ее определения
существует ряд методов, а именно: метод ложных соседей [1], метод главных
компонент [1], метод Грассбергера-Прокаччиа и др.. В этой работе был
выбран метод Грассбергера-Прокаччиа.
40
41
Модель формируется в виде дифференциальных уравнений потому, что
именно они отражают природу исследуемого процесса. Для аппроксимации
функций выбрана нелинейная нейронная сеть. Эффективность применения
нейронных сетей определяется их универсальными аппроксимирующими
возможностями и способностью к обучению по данным наблюдений
исследуемого объекта. Поэтому в работе для реконструкции модельных
уравнений выбраны именно искусственные нейронные сети.
Последним этапом является проверка качества модели. Качество
модели определяется с помощью сравнения полученных прогнозных
результатов с истинными. Если модель признана удовлетворительной, –
полученная конструкция принимается для дальнейшего использования, в
противном случае – возвращается на доработку.
3 МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ЭВОЛЮЦИИ
МЕТЕОПАРАМЕТРОВ, ЕЕ ПРОГРАММНАЯ РЕАЛИЗАЦИЯ
3.1 Выбор и обоснование инструментальных средств для реализации
программы
В последнее время в широких кругах пользователей вычислительных
машин различного класса стал достаточно популярным и широко
используемым термин «компьютерная математика». Данное понятие
включает совокупность как теоретических и методических, так и
современных программных и аппаратных средств, позволяющих производить
все математические вычисления с высокой степенью точности и
производительности, а также строить сложные цепочки вычислительных
алгоритмов с широкими возможностями визуализации процессов и данных
при их обработке.
MatLAB – продукт компании MathWorks, Inc., который представляет
собой язык высокого уровня для научно-технических вычислений. Среди
41
42
основных областей применения MatLAB – математические расчеты,
разработка алгоритмов, моделирование, анализ данных и визуализация,
научная и инженерная графика разработка приложений, включая
графический интерфейс пользователя. MatLAB решает множество
компьютерных задач – от сбора и анализа данных до разработки готовых
приложений. Среда MatLAB объединяет в себе математические вычисления,
визуализацию и мощный технический язык. Встроенные универсальные
интерфейсы позволяют легко работать с внешними информационными
источниками, а также осуществлять интеграцию с процедурами,
написанными на языках высокого уровня (C, C + +, Java и др.)
Мультиплатформенность MatLAB сделала его одним из самых
распространенных продуктов – он фактически стал принятым во всем мире
стандартом технических вычислений. MatLAB имеет широкий спектр
применений, в том числе, цифровую обработку сигналов и изображений,
проектирование систем управления, естественные науки, финансы,
экономику, приборостроение и т.др. [27].
Главные преимущества «языка технических вычислений MatLAB,
которые выгодно отличают ее среди других существующих ныне
математических систем и пакетов, состоят в следующем:
– система MatLAB специально создана для проведения именно
инженерных расчетов: математический аппарат, который используется в ней,
предельно приближен к современному математическому аппарату инженера
и опирается на вычисления с матрицами, векторами и комплексными
числами;
– язык программирования системы MatLAB очень прост, близок к
языку BASIC;
– в отличие от большинства математических систем, MatLAB является
открытой системой, это означает, что практически все процедуры и функции
MatLAB доступны не только для использования, но и для корректировки и
модифицирования;
42
43
– можно составлять собственные отдельные программы с целью
многократного их использования для исследований. Это делает MatLAB
незаменимым средством проведения научных расчетных исследований.
Возможности системы огромны, а по скорости выполнения задач она
опережает много других подобных систем. По этим соображения в качестве
основной среды моделирования была выбрана среда MatLAB для построения
дифференциально - математической модели, способной выполнять прогноз
метеопараметров [28].
3.2 Порядок функционирования программы
Построение дифференциально - математической модели ведется в
таком порядке.
1. Получение временного ряда выбранной величины из базы данных.
На первом этапе происходит получение временного ряда заданного
метеопараметра из базы данных, которая содержит данные снятые с
метеостанции Vantage Pro 2.Временной ряд имеет вид: x1,x2,..xn.
Также происходит установка параметров прогноза. Следующим шагом
является усреднение значений полученного временного ряда за каждый час.
В результате мы имеем временной ряд длиной – 3500.
2. Предварительная обработка временного ряда (сглаживание
временного ряда).
Предварительная обработка временного ряда включает в себя удаление
аномальной точки, если такая есть, и сглаживание.
43
44
Функция, которая удаляет аномальную точку, вызывается при выборе
меню «Обработка временного ряда» –> «Удаление аномальной точки». На
рис. 3.6 представлен временной ряд, который не содержит аномальную точку
Рисунок 3.6 – Временной ряд после удаления аномальной точки
Также предварительной обработкой временного ряда выбрано
сглаживание скользящим средним. Функция, которая сглаживает временной
ряд может быть вызвана двумя способами: в главном меню в пункте
«Обработка временного ряда» –> «Сглаживание» и «Прогнозирование» –>
«Дифференциально-математическая модель» (рис. 3.7).
Рисунок 3.7 – Окно программы «Параметры прогноза»
Пример сглаживания временного ряда метеопараметров «Скорость
ветра» представлен на рис. 3.8.
44
45
Рисунок 3.8 – Сглаживание временного ряда
Проводилось сглаживание скользящим средним и экспоненциальное
сглаживание. В результате проведенных экспериментов выяснилось, что
лучшие результаты сглаживания временных рядов метеопараметров дает
сглаживание скользящим средним (средняя относительная ошибка
сглаживания была меньше в случае применения метода скользящего
среднего). Скользящее среднее предусматривает то, что каждый член ряда
заменяется простым средним 3 соседних членов ряда (3 – ширина окна
сглаживания).
3.3 Определение размерности модели.
Следующим этапом выполнения программы является расчет
размерности. Расчет размерности проводился методом ГрассбергераПрокачия
Для расчета размерности проводится реконструкция аттрактора
модели, с помощью метода временной задержки. Методика основана на
45
46
построении псевдоаттрактора, где компонент вектора служит сама
измеренная последовательность, но взятая с некоторой временной задержкой
Xj=(x ( j ,i) ,x ( j, i+τ) , x ( j,i+2∗τ ) ,.., x( j ,i+(m−1)∗τ) ),
(3.1)
здесь τ – временная задержка, m – размерность вложения. Величины τ
выбирается, как первое значение, при котором автокорреляционная функция
обращается в ноль.
Значение автокорреляции при сдвиге ровно один, рассчитывается для
последовательностей x 1 , x 2 ,, x 3 ,, ... и x 2 , x 3 , x 4 ,.... При сдвиге
ровно два, - для x 1 , x 3 , x 5 , x 3 , x 5 , x 7 ,.... При сдвиге ровно три, для x 1 , x 4 , x 7 ,.... и x 4 , x 7 , x 10
С использованием программы были проведены опыты для 5 временных
рядов метеопараметра – «Температура». Длина ряда равна 433 (4 суток). На
рис. 3.10 представлен график автокореляционной функции, временная
задержка для этого временного ряда получилась равной 32.
Рисунок 3.9 – Автокорреляционная функция
На рис. 3.10 представлен график автокореляционной функции,
временная задержка для этого временного ряда получилась равной 34.
46
47
Рисунок 3.10 – Автокорреляционная функция
Для дальнейших расчетов размерности модели используется временная
задержка равна 30. Тогда формула (3.1) принимает вид:
Xj=(x ( j ,i) ,x ( j,i+30) , x( j,i+2∗30) ,..,x ( j,i+( m−1)∗30 ) ).
(3.2)
Для каждого аттрактора, полученного методом временных задержек, в
пространстве m, находим корреляционный интеграл C(ξ), как количество
точек расстояние между которыми не превышает ξ – узловые точки
интервала:
Для найденных точек определяем корреляционную размерность.
Строим график зависимости ln (C(ξ)) от ln(ξ) в двойном логарифмическом
масштабе. Выделяем линейные участки полученных кривых, и по методу
наименьших квадратов делаем аппроксимация их прямыми. Для этого
используется функция polyfit. Корреляционную размерность принимаем
равной коэффициенту a из полученного уравнения y = a * x + b.
Начиная с некоторой размерности пространства m, корреляционная
размерность D достигает насыщения и перестает изменяться. Значение m,
при котором это происходит, является минимальной размерностью
вложения, а значение D – оценкой корреляционной размерности аттрактора.
Размерности модели определяем как D * 2 (согласно теореме Такенса).
47
48
На рис. 3.11 представлены графики корреляционных интегралов
вычисленных для m от 1 до 10, с временной задержкой равной 1.
Корреляционная размерность получилась ровной 0.9747.
Рисунок 3.11 – Корреляционный интеграл для временной задержки = 1
На рис. 3.12 изображен график зависимости корреляционного
интеграла от размерности вложения для временной задержки 1.
48
49
Рисунок 3.12 – График зависимости корреляционного интеграла от
размерности вложения
На рис. 3.13 представлены графики корреляционных интегралов
вычисленных для m от 1 до 10, с временной задержкой равной 30.
Корреляционная размерность получилась ровной 2.6464.
Рисунок 3.13 – Корреляционный интеграл для временной задержки = 30
На рис. 3.14 изображен график зависимости корреляционного
интеграла от размерности вложения для временной задержки 30.
49
50
Рисунок 3.14 – График зависимости корреляционного интеграла от
размерности вложения
4. Составление дифференциально - математической модели,
ее решения средствами MatLAB.
Дифференциально - математическая модель имеет следующий вид:
N
dx /dt =∑
j=1
D
(w2j⋅th(
∑ w1ji x 1i +b1j ))+ b2j ,
i=1
(3.3)
здесь w – веса сети, b – смещение.
В процессе обучения на ее вход подается временной ряд производных,
которые определяются по формуле:
50
51
ẋ (t i )=
x(t i+1 )−x(t i )
,
Δt
(3.4)
где = 1, то есть промежуток, равный одному часу между
последовательными элементами временного ряда, равен одному часу.
Объем выборки данных для обучения сети определяется по формуле:
SS = 10 * ((D +1) * 10 +11). Формируются две выборки, каждая объемом SS
(из массива данных выбранной переменной берутся значения и через одно
значение включаются в обучающую и тестовую выборки).
Для проверки адекватности построенной модели проводились
эксперименты на псевдоряд , полученном при решении уравнения y = th(x),
так как именно гиперболический тангенс является функцией активации для
нелинейной нейронной сети. Было проведено сравнение графиков реальной
функции и функции, полученной после обучения нейронной сети. Это
проводилось для различных значений обучающей выборки SS = 100, 300,
500, 700, 900. Результаты показали, что функция y = th (x) хорошо
восстанавливается при объемах выборки равных 700, 900 значений.
Результаты оказались очень близкими, это свидетельствует о корректности
составленного алгоритма.
Удалось определить зависимость числа коэффициентов нейронной сети
от размера обучающей выборки SS. При числе коэффициентов нейронной
сети ровно К (где K = NN * D +2 * NN +1, здесь NN – количество нейронов,
D – размерность модели), размер обучающей выборки определяется как SS =
К * 100.
Полученное соотношение попытались перенести на прогнозирование
метеопараметров. При увеличении объема обучающей выборки к к * 100
значительного улучшения прогноза метеопараметров не наблюдалось. В
девяти экспериментах с двенадцати наилучшие результаты получены при
прежних объемах исходных данных, и в двух приблизительно равны.
Объяснением можно считать то, что для прогнозирования метеопараметров
51
52
берутся достаточно удаленные данные от точки прогноза значений, влияние
которых на текущее значение или отсутствует совсем, или совсем
незначительный. Так, при размерности 4 и числу нейронов ровно 10 нужен
объем данных, равный 6100, что составляет 254 дня. При размерности 10 и
числу нейронов ровно 10 требуется объем данных, равный 12100, что
составляет 504 дня.
Сеть строится с помощью функции newff, обучается на обучающей
выборке с помощью функции trainlm, которая реализует метод ЛевенбергаМарквардта, критерий качества обучения – средняя квадратическая ошибка.
Сначала происходит обучение сети на тренировочной части
временного ряда. Для контроля переобучения сети используется тестовая
выборка. Для выбора оптимальной нелинейной сети организуется цикл, в
котором меняется число нейронов в первом слое (от 1 до 10 нейронов).
Проверяется работа построенной сети на тестовой выборке и вычисляется
ошибка тестирования. После выполнения цикла перебора сетей с различным
числом нейронов выбирается сеть с наименьшей тестовой ошибкой.
Полученное уравнение на этапе прогнозирования решается дальше,
методом Рунге-Кутта с шагом, равным 0,05. Начальное время задается
равным нулю, а заблаговременность прогноза устанавливается
пользователем.
Далее представлен код дифференциально - математической модели:
function prepare()
if isempty(net)
XTc=con2seq(XT);
YTc=con2seq(YT);
for i=1:D
A=XL(i,:);
PR(i,:)=[min(A) max(A)];
End
eps=EF(varF,ii);
for NN=1:10%цикл увеличения числа нейронов
EL(NN) = EF(varF,ii)+1;
cikl=1;
52
53
while ((EL(NN) > eps) )
net=newff(PR,[NN 1],{'tansig','purelin'},'trainlm');
net=init(net);
net.performFcn='mse';
net.trainParam.epochs=300;
net.trainParam.goal=0.01;
net.trainParam.showWindow = false;
VV.P=XTc;
VV.T=YTc;
VV.Pi=[];
VV.Ai=[];
[net,tr]=train(net,XLc,YLc,[],[],VV);
ALc=sim(net,XLc);
ALa=cell2mat(ALc);
EL(NN)=mse([ALa(:)]-[YL(:)]);
ATc=sim(net,XTc);
ATa=cell2mat(ATc);
ET(NN)=mse([ATa(:)]-[YT(:)]);
NETS{NN}=net;
end
end
[Y,IMIN]=min(ET);
NNET=NETS{IMIN};
end
end
function f = ode_system(t, x, c,d)
y = sim(NNET, d);
y = cell2mat(y);
f = y;
end
function run()
t0 = 0;
ts = 0.01;
tf = 1.0;
c=1;
MPx(1:D)=INFO1((CP-D+1):CP);%
k=R;
for ip=1:k
XP(1:D,1)=MPx(ip:(ip+D-1));
XPc=con2seq(XP);
x0 = MPx(D+ip-1);
d=XPc;
[t, y] = ode45(@(t, x) ode_system(t, x, c,d), (t0 : ts : tf), x0);
n1=size(t)*[1;0];
MPx(D+ip)=y(n1);
Forecast=MPx(D+ip);
end
end
На последнем этапе происходит сравнение реальных значений
метеопараметров со значениями, полученными путем построения
дифференциально - математической модели.
53
54
4.1 Выводы по разделу
В разделе описан порядок функционирования программы, которая
разработана в диссертации для формирования прогноза на основании
дифференциально - математической модели.
Программной средой разработки был выбран MatLAB. Это
обусловлено тем, что MatLAB интерактивная среда разработки алгоритмов и
современный инструмент анализа данных. Еще одной предпосылкой его
выбора в качестве языка программирования послужило наличие расширения
Neural Network Toolbox, которое предназначено для работы с нейронными
сетями. Данное обстоятельство существенно упростило создание
дифференциально - математической модели, так как в расширении Neural
Network Toolbox есть встроенные функции для построения нейронных сетей,
их обучение и моделирование.
. Данная модель позволяет изучать динамику и осуществлять прогноз
метеопараметров (температура, влажность, скорость ветра и давление
воздуха) на 1, 3, 6 и 9 часов.
5 ВЫЧИСЛИТЕЛЬНЫЕ ЭКСПЕРИМЕНТЫ: РЕЗУЛЬТАТЫ,
АНАЛИЗ
54
55
5.1 Расчет прогнозов для различных метеопараметров
С целью тестирования разработанного прогностического комплекса
был проведен ряд экспериментов для метеопараметров «Температура»,
«Давление», «Влажность», «Скорость ветра» с заблаговременностью
прогноза равной 1, 3, 6 и 9 часов. Данные эксперименты были сгруппированы
по разным сезонам.
Прогноз заключался в выполнении всех этапов общей схемы
прогнозирования: определении размерности модели, решении
дифференциального уравнения и определение ошибки прогноза. Для
иллюстрации результаты экспериментов «Температура» представлены в
табл. 5.1
Таблица 5.1 – Прогнозирование метеопараметра «Температура»
заблаговременностью в 1 час.
Текущая точка
Реальные
значения
12.12.2010 / 7:00
3.12.2010 / 19:00
21.01.2011 / 20:00
-0.9166
2.3333
-9.1833
03.03.2011 / 8:00
30.03.2011 / 20:00
15.04.2011 / 19:00
-0.2666
11.9000
12.9333
01.06.2011 / 18:00
26.06.2011 / 21:00
17.07.2011 / 14:00
23.8333
27.0333
36.4833
02.09.2011 / 18:00
16.09.2011 / 01:00
24.10.2011 / 04:00
20.8667
16.4667
10.3667
Размер
ность
Зима
3
4
3
Весна
3
3
4
Лето
4
4
4
Осень
4
4
4
Прогноз
-0.8527
2.3958
-8.8000
0.0639
0.0624
0.3833
-0.5309
11.5923
14.6729
0.2642
0.3077
1.7395
23.1052
26.9382
36.1716
0.7281
0.0951
0.3117
20.6819
16.3526
17.7509
0.1847
0.1141
7.3842
Аналогичные эксперименты были проведены для метеопоказаний
«Температура» с заблаговременностью 3, 6 и 9 часов. Для иллюстрации
эксперименты по три для каждого сезона представлены в табл. 5.2 – 5.4.
55
Ошибка
56
Таблица 5.2 – Прогнозирование метеопараметров «Температура»
заблаговременностью в 3 часа.
Текущая
точка
Реальные
значения
Размерн
Прогноз
Ошибка
ость
Зима
12.12.2010 / 7:00
-1.0000
3
-1.0698
3.12.2011 / 19:00
2.6000
4
2.3179
21.01.2011 / 20:00
-10.7500
3
-8.8969
0.06
97
0.28
20
1.85
31
Весна
03.03.2017 / 8:00
0.3800
3
-0.1616
30.03.2011 / 20:00
10.5333
3
9.0498
15.04.2011 / 19:00
10.0667
4
13.0523
01.06.2011 / 18:00
21.2167
4
22.2496
26.06.2011 / 21:00
24.2750
4
25.0120
17.07.2011 / 14:00
35.3667
4
33.1006
02.09.2011 / 18:00
18.2833
4
20.7782
16.09.2011 / 01:00
15.6000
4
19.0335
24.10.2011 / 04:00
15.7167
4
16.5877
0.21
83
1.48
35
2.98
56
Лето
1.03
28
0.73
70
2.26
60
Осень
2.49
48
3.43
35
0.87
10
Таблица 5.3 – Прогнозирование метеопараметра «Температура»
заблаговременностью в 6 часов
Текущая
точка
Реальные
значения
12.12.2010 / 7:00
3.12.2010 / 19:00
21.01.2011 / 20:00
-0.8166
2.8500
-11.1500
03.03.2011 / 8:00
30.03.2011 / 20:00
15.04.2011 / 19:00
2.7000
9.9000
8.3500
01.06.2011 / 18:00
26.06.2011 / 21:00
19.2167
22.2000
Размер
ность
Зима
3
4
3
Весна
3
3
4
Лето
4
4
56
Прогноз
Ошибка
-1.3517
3.3322
-8.2859
0.5350
0.4821
2.8641
0.1842
7.8596
12.048
2.5157
2.0404
3.6980
21.1351
26.1334
1.9184
3.9333
57
17.07.2011 / 14:00
31.7333
4
32.1206
0.3872
22.0730
17.8067
16.8556
4.0396
2.2899
3.6443
Осень
02.09.2011 / 18:00
16.09.2011 / 01:00
24.10.2011 / 04:00
18.0333
15.5167
20.5000
4
4
4
Таблица 5.4 – Прогнозирование метеопараметра «Температура»
заблаговременностью в 9 часов
Текущая
точка
Реальные
значения
12.12.2010 / 7:00
3.12.2010 / 19:00
21.01.2011 / 20:00
-0.9166
3.3000
-11.6667
03.03.2011 / 8:00
30.03.2011 / 20:00
15.04.2011 / 19:00
3.3000
9.9500
6.0000
01.06.2010 / 18:00
26.06.2011 / 21:00
17.07.2011 / 14:00
17.3500
21.9500
27.8333
02.09.2011 / 18:00
16.09.2011 / 01:00
24.10.2011 / 04:00
17.8500
18.9667
19.4333
Размер
ность
Зима
3
4
3
Весна
3
3
4
Лето
4
4
4
Осень
4
4
4
Прогноз
Ошибка
-0.9412
3.1381
-8.7670
0.0245
0.1619
2.8996
-0.1620
10.2988
13.6530
3.1379
0.3487
7.6530
21.3403
26.3282
32.3680
3.9903
4.3781
4.5347
21.6019
17.6138
16.3878
3.7519
1.3529
3.0455
Соответствующие таблицы с другими экспериментами для
прогнозирования метеопараметров «Давление», «Влажность» и «Скорость
ветра» представлены в приложении Е.
Для наглядности средние значения погрешностей прогнозирования по
временному ряду «Температура» с заблаговременностью 1, 3, 6 и 9 часов
представлены в виде диаграмм на рис. 5.1.
57
58
Рисунок 5.1 – Средняя погрешность прогнозирования временного
ряда «Температура» с заблаговременностью 1, 3, 6 и 9 часов
Таким образом, для указанных в таблице экспериментальных данных
погрешность прогноза для метеопараметра «Температура» увеличивается
практически линейно с увеличением заблаговременности.
Обобщенные результаты для данного метеопараметра для разных
сезонов представлены на рис. 5.2, где, для наглядности, графически указаны
средние значения погрешностей прогнозирования с заблаговременностью 1,
3, 6 и 9 часов.
58
59
Рисунок 5.2 – Средняя погрешность прогнозирования временного
ряда «Температура» с заблаговременностью 1, 3, 6 и 9 часа по сезонам
Анализ результатов позволяет сделать вывод, что наименьшая
погрешность прогнозирования наблюдается в зимнее время (максимальная
погрешность для этого сезона не достигает единицы). Погрешности для
других сезонов изменяются почти одинаково. Максимальная средняя
погрешность при прогнозе метеопараметра «Температура» была достигнута
прогнозирования, равняется 9 часам.
Аналогичные результаты для временного ряда «Влажность»
представлены на рис. 5.3 и 5.4, на рис. 5.3, – для выборочных контрольных
точек, на рис. 5.4 – результаты, сгруппированные по сезонам.
59
60
Рисунок 5.3 – Средняя абсолютная погрешность прогнозирования
временного ряда «Влажность» с заблаговременностью 1, 3, 6 и 9 часов
Рисунок 5.4 – Средняя погрешность прогнозирования временного
ряда «Влажность» с заблаговременностью 1, 3, 6 и 9 часа по сезонам
Максимальная средняя ошибка для влажности достигает 16.17. Это
может быть обусловлено более сложными физическими закономерностями,
60
61
описывающими динамику этого метеопараметра. Лучший прогноз получился
для зимней поры года. Ошибки для других сезонов примерно равны.
На рис. 5.5 в виде диаграмм представлены средние значения
погрешностей прогнозирования по временному ряду «Давление» с
заблаговременностью 1, 3, 6 и 9 часов.
Рисунок 5.5 – Средняя погрешность прогнозирования временного
ряда «Давление» с заблаговременностью 1, 3, 6 и 9 часа по сезонам
На рис. 5.6 представлены средние значения погрешностей
прогнозирования по временному ряду «Давление» с заблаговременностью 1,
3, 6 и 9 часов, сгруппированные по сезонам.
61
62
Рисунок 5.6 – Средняя погрешность прогнозирования временного
ряда «Давление» с заблаговременностью 1, 3, 6 и 9 часа по сезонам
Анализ полученных результатов показал, что метеопараметр
«Давление» прогнозируется плохо только для осенней поры года. Для
остальных сезонов средняя ошибка прогноза не превысила единицы.
Аналогичные результаты для временного ряда «Скорость ветра»
представлены на рис. 5.7 и 5.8, на рис. 5.7, – для выборочных контрольных
точек, на рис. 5.8 – результаты, сгруппированные по сезонам.
62
63
Рисунок 5.7 – Средняя абсолютная погрешность прогнозирования
временного ряда «Скорость ветра» с заблаговременностью 1, 3, 6 и 9
часов
Рисунок 5.8 – Средняя погрешность прогнозирования временного
ряда «Скорость ветра» с заблаговременностью 1, 3, 6 и 9 часа по сезонам
Наименьшие средние ошибки для проведенных экспериментов вышли
для временного ряда «Скорость ветра». Лучшие прогнозы метеопараметров
было получено для зимней поры года.
Из проведенных экспериментов следуют выводы, что: погрешность
увеличивается линейно с увеличением заблаговременности прогноза; самая
63
64
большая ошибка погрешности наблюдается при прогнозировании
метеопарметров для осенней поры года. Это можно объяснить большим
разбросом в данных для этого сезона; наибольшие ошибки получаются при
прогнозировании метеопараметру «Влажность».
5.2 Сравнение прогнозных моделей
В табл. 5.5 представлены результаты проведенных экспериментов для
определения лучшей прогнозной модели.
Таблица 5.5 – Сравнение методов прогнозирования
Текущая
точка
Заблаговреме
нность
1ч
3ч
11.01.2011
00:00
6ч
9ч
1ч
3ч
26.02.2011
04:00
6ч
9ч
1ч
3ч
20.05.2011
08:00
6ч
9ч
19.09.2011
22:00
1ч
3ч
6ч
9ч
Реальное
значение
Модель, основанная
на методах ложных соседей
и главных компонентов
Прогноз
Ошибка
Температура
0,3161
7.72
7,4039
0,1595
7.23333
7,0738
3
0,2079
6.55
6,3421
-7.2
0,748
6,4521
Влажность
91
91.14
0.1475
75
94
91.13
2.864
60
91.
91,41
0.3381
75
19
87.
90.59
2.7583
8333
13
Давление
741
741.3
0.1852
.183
682
741
741.5
0.0293
.6
707
741
732,2
9.6768
.967
902
741
721,5
20.317
.867
5
Скорость ветра
0.3
0.333
0.0001
33333
17
63
0.4
0.381
0.0184
6
0.3
0.252
0.0811
33333
2
33
0.4
0.387
0.0131
64
Дифференциально
математическая модель
Прогноз
Ошибка
7.4611
6.3105
5.4396
6.4888
0.258
932
0.922
863
1.110
39
0.711
242
90.8
162
91.9
75
90.9
697
90.8
761
0.183
819
2.025
741.
3396
741.
276
741.
111
741.
0939
0.156
263
0.323
959
0.855
645
0.772
809
0.45
125
0.55
788
0.45
055
0.60
0.117
92
0.157
882
0.117
217
0.200
0.780
259
3.042
74
65
9
067
666
На основе данных приведенных в табл. 5.5 можно сделать вывод, что
наилучшие результаты показала прогнозная модель основана на методах
ложных соседей и главных компонент (лучшие результаты в 10 из 16
экспериментов, дифференциально -математическая модель в 6 из 16
экспериментов).
5.3 Выводы по разделу
Основные результаты данной главы состоят в следующем.
С использованием дифференциально - математической модели
эволюции метеопараметров, описанной в разделе 3, проведена серия
вычислительных экспериментов по прогнозированию динамики
метеопараметров («Температура», «Влажность», «Давление», «Скорость
ветра») с заблаговременностью равной 1, 3, 6 и 9 часов и полученные
результаты сгруппированы по различным сезонным периодам. Эти
эксперименты позволили создать программу, реализующую формирование
математической модели и провести оценку качества получаемых прогнозов.
Корректность разработанного алгоритма оценивалась путем проверки
адекватности построенной модели на экспериментальном псевдоряде,
полученном при решении уравнения y = th (x), выбор которого обусловлен
тем, что именно гиперболический тангенс является нелинейной функцией
активации нейронной сети, используемой при проведении исследований.
Сравнительный анализ исходного и восстановленного временного ряда
показал высокий уровень совпадения, в пределах 99%, что свидетельствует о
корректности составленного алгоритма.
Каждый эксперимент выполнялся в различные моменты времени.
Графический анализ прогнозных значений показал, что погрешность
прогноза возрастает линейно с увеличением заблаговременности. В
результате анализа прогноза для разных сезонов года, выяснилось, что
65
66
наибольшая погрешность получается для осеннего периода, а наименьшая
для зимнего периода года.
Полученные результаты свидетельствуют о том, что наиболее
надежным из рассмотренных является прогнозирование временных рядов
«Температура», «Давление» и «Скорость ветра». Временной ряд
«Влажность» прогнозируются значительно хуже, что может быть
обусловлено более сложными физическими закономерностями, которые
описывают их динамику.
66
67
ЗАКЛЮЧЕНИЕ
В магистерской работе разработана математическая модель
прогнозирования метеопараметров на базе дифференциальных уравнений для
последующего решения задач прогноза на ее основе.
Выводы и результаты работы сводятся к следующему.
Проведена серия вычислительных экспериментов по прогнозированию
динамики метеопараметров («Температура», «Влажность», «Давление»,
«Скорость ветра») с заблаговременностью равной 1, 3, 6 и 9 часов и
полученные результаты сгруппированы по различным сезонным периодам.
Эти эксперименты позволили создать программу, реализующую
формирование математической модели и провести оценку качества
получаемых прогнозов.
Графический анализ прогнозных значений показал, что погрешность
прогноза возрастает линейно с увеличением заблаговременности. В
результате анализа прогноза для разных сезонов года, выяснилось, что
наибольшая погрешность получается для осеннего периода, а наименьшая
для зимнего периода года.
На основе полученных результатов сделали выводы о том, что
наиболее надежным из рассмотренных является прогнозирование временных
рядов «Температура», «Давление» и «Скорость ветра». Временной ряд
«Влажность» прогнозируются значительно хуже, что может быть
обусловлено более сложными физическими закономерностями, которые
описывают их динамику.
67
Отзывы:
Авторизуйтесь, чтобы оставить отзыв