2. Piriyakitpaiboon K. and Suwannasart T. RealGen: A Test Data Generation Tool to Support Software Testing / In the proc. of the second international conference on information and communication technologies (ICT2004). Assumption University, Bangkok, Thailand, Nov. 18-19, 2004.
3. Alwan A.A., Ibrahim H., Udzir N.I. A Framework for Checking Integrity Constraints in a Distributed Database. 2008. ICCIT 08. Third International Conference on Convergence and Hybrid Information Technology. Vol. 1. Busan, Korea, Nov. 11-13, 2008, pp. 644-650.
4. Ibrahim H., Gray W.A., and Fiddian N.J. Optimizing Fragment Constraints - a Performance Evaluation / International Journal of Intelligent Systems - Verification and Validation Issues in Databases, Knowledge-Based Systems, and Ontologies. New York, John Wiley & Sons Inc, 2001. 16(3), pp. 285-306.
5. Tongrak P., Suwannasart T. A Tool for Generating Test Case from Relational Database Constraints Testing / Computer Science and Information Technology (ICCSIT 2009). 2nd IEEE International Conference on Date: Aug. 8-11. Beijing, China, 2009, pp. 435-439.
УДК 519.866
НЕЙРОННЫЕ СЕТИ И МОДЕЛИ АШИА ДЛЯ ПРОГНОЗИРОВАНИЯ КОТИРОВОК
П.В. Кратович (Тверской государственный университет, [email protected])
В работе динамика стоимости ценных бумаг моделируется с помощью аппарата нейронных сетей и дискретных стохастических моделей. На основе разработанного в среде Borland Delphi 7.0 программного продукта проведено сравнительное исследование построенных моделей на примере временного ряда котировок акций ОАО «Сбербанк» на ММВБ.
Ключевые слова: временной ряд, прогнозирование, нейронные сети, дискретные стохастические модели, методика Бокса-Дженкинса.
Цель исследования - прогнозирование стоимости ценных бумаг с использованием нейронных сетей и дискретных стохастических моделей и сравнительная оценка рассмотренных методов. Актуальность данного исследования объясняется важностью получения качественных прогнозов основных индикаторов фондового рынка, а также успешным опытом применения нейронных сетей и стохастических моделей в задачах прогнозирования.
Для достижения поставленной цели необходимо:
• предварительно обработать данные для прогнозирования;
• программно реализовать многослойную нейронную сеть, выбрать структуру, параметры и алгоритм обучения для решения задачи прогнозирования динамики котировок ценных бумаг;
• построить стохастические дискретные модели, описывающие динамику котировок ценных бумаг (AR(p), MA(p), ARMA(p, q), ARIMA(p, d, q)), осуществить их идентификацию и программную реализацию;
• провести сравнительный анализ построенных моделей.
Для решения поставленных задач в среде программирования Borland Delphi 7.0 разработан программный продукт, реализующий построение дискретных стохастических моделей по методике Бокса-Дженкинса и моделей нейронных сетей на основе многослойного персептрона.
Исходные данные для прогнозирования представляют собой табулированный текстовый файл,
который содержит ежедневные котировки акций ОАО «Сбербанк» по цене закрытия. Файл содержит 125 записей, что соответствует временному интервалу в 6 месяцев (с 12.01 по 12.07.2009 г.).
На рисунке 1 представлены исходные данные в графическом виде.
Рис. 1. График котировок акций ОАО «Сбербанк»
Для улучшения качества прогноза исходный временной ряд предварительно обрабатывается (подробнее см. [1]).
На первом этапе предобработки данных использован метод сглаживания скользящим средним с периодом сглаживания р=3.
На втором этапе на основе сглаженных значений котировок zn, п=0, 1, 2, ..., вычисляются изменения котировок Дzn=zn-zn_l, которые наиболее значимы при прогнозе финансовых временных рядов.
Таким образом, в качестве исходных данных для прогнозирования выбираются логарифмы относительного приращения сглаженных котировок
( z ^ Д
И = 1п I —— »—-, = 0, п ^ 0, ведущие себя I гп-1 ) гп-1
более однородно, что особенно важно для длительных временных рядов, когда уже заметно влияние инфляции.
Методика Бокса-Дженкинса. В качестве инструментария для моделирования динамики временного ряда анализируемого в рамках методики Бокса-Дженкинса, используются стохастические модели авторегрессии - проинтегрированного скользящего среднего (ЛШМЛ) вида
г =ФА-1 + ••• + Фpzt-p + at -0lat-l-••• -еч^-ч> где 91? 02, ..., 9q - параметры скользящего среднего; ф1? ф2, ..., фp - параметры авторегрессии; at, at_1, at_2, ... - белый шум [2].
Методика, предложенная Боксом и Дженкин-сом для построения моделей типа ЛЯ1МЛ, в общем случае включает четыре этапа.
1. Идентификация стохастической модели. На основе вычисленных оценок для автокорреляционной и частной автокорреляционной функций делается предварительный вывод о порядке интеграции d, а также о значениях порядков p и q операторов авторегрессии и скользящего среднего.
2. Оценивание стохастической модели. На основе вычисленных автоковариаций для идентифицированной модели типа ARIMA(p, d, q) определяются начальные оценки ф(0) = (ф(0),ф(20),...,ф(0)^ параметров авторегрессии и начальные оценки 9(0) =(9(0),9(20),...,9(ч0)) параметров скользящего
среднего, затем с помощью алгоритма Левенбер-га-Марквардта вычисляются оценки наименьших квадратов для соответствующих параметров стохастической модели.
3. Диагностика стохастической модели. Исходной информацией для диагностики служат остатки построенной стохастической модели. Проверке подлежат качество модели и некоррелированность остатков.
4. Прогнозирование с помощью стохастической модели. После определения оценок наименьших квадратов для параметров стохастической модели и ее диагностики можно прогнозировать будущие значения временного ряда. Для записи прогноза используется общая формула представления ряда в виде разностного уравнения:
= фА+8-1 + ••• + фр+А+8-р-а ■ -9А+5-1-... -9ча,+5-ч + а,+5.
(2)
Построение модели нейронной сети для прогнозирования. Для моделирования динамики временного ряда использована полносвязная нейронная сеть с одним скрытым слоем, в которой
каждый нейрон слоя ! связан со всеми нейронами предыдущего слоя И; - синаптический
вес, связывающий выход нейрона 1 с входом нейрона ] на итерации п; (у1)(п) - функциональный сигнал, генерируемый на выходе нейрона 1 на итерации п.
Индуцированное локальное поле ^)(п), полученное на входе функции активации, связанной с нейроном вычисляется по формуле
(^)(п) = £ ^.УЧу.Г
(3)
где m - общее число входов (за исключением порога) нейрона^
Функциональный сигнал у(п) на выходе нейрона ] на итерации п будет выглядеть так:
(у^(п) =фД^)(п)), (4)
где фj - функция активации ^го нейрона. В качестве функции активации в работе используется функция гиперболического тангенса:
фj ((Sj )(п)) = а1апЬ(Ь(^ )(п)), (н, Ь)>0, (5)
где a и Ь - константы.
Нейронная сеть указанной структуры обучается по алгоритму обратного распространения ошибки в последовательном режиме, в котором корректировка весовых коэффициентов проводится после подачи каждого примера обучения вида
х(п),^п), где x(п) - входной вектор, поступающий на вход сети; d(п) - желаемый отклик; N -общее число примеров.
Цель обучения - минимизация суммарной среднеквадратической ошибки на всем обучающем множестве:
1 к
I =1 £^(п) - г(п))2
2 п=1
(6)
где d(п) - целевое значение для примера п; г(п) -прогнозное значение.
Для повышения качества прогноза направления тренда в целевой функционал I вводится штрафной коэффициент у, таким образом, целевой функционал вычисляется по формуле
1 *
I = 1 Еу(й(п) - г(п))2
2 п=1
(7)
где у =«
Р, если (г(п) - г(п- 1))(г(п) - г(п-1)) £ 0
2 -Р, если (г(п) - г(п- 1))(г(п) - г(п-1)) < 0 Ре(0, 1).
Для практической реализации алгоритма обратного распространения ошибки будем полагать, что сходимость алгоритма достигнута, если значение целевой функции !^)<е, где е>0 - заранее заданный вещественный параметр, называемый точностью обучения.
Для организации процессов обучения и тестирования нейронной сети сформированный на этапе предварительной обработки набор исходных
т
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
—о— Прогнозные значения —■— Фактические значения
а)
б)
Рис. 2. Результаты прогнозирования а) одношагового для модели АШМА(1, 1, 1), б) многошагового для модели ЛКМЛ(2, 1, 1)
данных делится на два множества - обучающее и тестовое. Из элементов этих множеств по методу скользящего окна формируются примеры для обучения и тестирования нейронной сети соответственно. Таким образом, обучающее множество для данной задачи состоит из 105 примеров, тестовое содержит 15 примеров.
Выбор оптимальной архитектуры нейронной сети и параметров скорости обучения ^ и момента а не имеет математического решения и производится опытным путем. Проведенный численный эксперимент показал, что оптимальные значения параметров скорости обучения и момента для рассматриваемого временного ряда ^„пт, аоте(0,1; 0,5). В случае, когда параметр момента а=0, оптимальное значение параметра скорости обучения ^опг^1. Также отметим, что конечная среднеквад-ратическая ошибка мало отличается для разных кривых, это означает, что поверхность ошибок в рассматриваемой задаче достаточно гладкая.
Для определения оптимального значения параметра точности обучения е используется метод обучения с ранним остановом, подробно описанный в [3]. В результате оптимальное значение точности обучения е для метода обратного распространения ошибки для исследуемого временного ряда е=0,06.
Согласно результатам проведенных исследований, оптимальная нейронная сеть для рассматриваемой задачи содержит один скрытый слой. Входной слой содержит 5 нейронов, скрытый - 3 нейрона, а выходной - 1 нейрон.
Критерий оценки качества прогноза котировок на рынке ценных бумаг должен учитывать отклонение прогноза от истинного значения, а также ошибку в направлении тренда на каждом шаге.
В качестве критерия для оценки отклонения прогноза от истинного значения используется ошибка, рассчитываемая по формуле
1 N
е=1 У
N у
• 100%.
(8)
где N - размерность тестовой выборки; - прогноз.
Для определения ошибки в направлении тренда на тестовом множестве вычисляется процент угаданных знаков по формуле 1 N
Е = — У К -100%,
11=1
(9)
где *„ =
|1, если (2(11) - 2(11-1))(2(11) - 2(11-1)) > 0, |о, если (2(11) -2(1-1))(2(п) -2(1-1)) <0.
Результаты прогнозирования цены закрытия по методике Бокса-Дженкинса для 15 значений временного ряда представлены в таблицах 1 и 2 и на рисунке 2.
Таблица 1
Значения критериев качества для одношагового прогноза
Модель E
MA(2) 4,89 20
AR(5) 3,31 20
ARIMA(1,1,1) 3,01 33,33
ARIMA(2,1,1) 3,09 33,33
ARIMA(4,1,1) 3,19 20
Таблица 2
Значения критериев качества для многошагового прогноза
Модель Критерий День
3-й 6-й 9-й 12-й 15-й
AR(2) E 6,32 9,18 11,14 13,29 15,1
Et 33,33 50 33,33 33,33 40
ARIMA(1,1,1) E 6,28 8,84 11,17 12,95 14,4
Ъ 33,33 33,33 33,33 41,67 46,67
ARIMA(2,1,1) E 6,18 8,63 11,09 12,94 14,3
Et 33,33 33,33 33,33 41,67 46,67
Итоги одношагового и многошагового прогнозирования цены закрытия с помощью нейросете-вой модели, обученной по алгоритму обратного распространения ошибки с целевым функционалом (7) для 15 значений временного ряда, представлены в таблице 3 и на рисунке 3.
50 40 30 20 10 0
50 40 30 20 10 0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- Прогнозные значения
-Фактические значения
Прогнозные значения
Фактические значения
а)
б)
Рис. 3. Результаты прогнозирования ()001 < 1, г]=0,5, а=0,1, /3=0,5): а) одношагового, б) многошагового
Таблица 3
Значения критериев качества для одношагового и многошагового нейросетевого прогноза
Прогноз Среднее число эпох обучения Е, % Е„ %
одношаговый 1038 1,9765 73,33
многошаговый 1078 7,0446 66,67
Результаты прогнозирования цены закрытия для временного ряда котировок акций ОАО «Сбербанк» на ММВБ показывают, что и стохастические модели ЛШМЛ, и нейронные сети обеспечивают одношаговый прогноз высокой точности с ошибками E=3,01 % и E=1,9765 % соответственно.
Качество одношагового прогноза направления тренда по моделям ЛЯ1МЛ оказалось неудовлетворительным (Е^33,33 %), что ограничивает возможности использования данных моделей в системах принятия инвестиционных решений на фондовом рынке.
Построенная в работе нейросетевая модель показала хорошее качество прогноза направления тренда (Е^73,33 %). Это свидетельствует о применимости построенной модели к инвестиционной деятельности на фондовом рынке.
Результаты многошагового прогнозирования для нейросетевых и стохастических моделей также демонстрируют преимущество моделей на основе нейронных сетей, однако общее качество прогноза оказалось недостаточно высоким по точности, что не позволяет рекомендовать ни одну из построенных моделей для планирования среднесрочной и долгосрочной динамик индексов на фондовом рынке.
Литература
1. Кратович П.В. Нейросетевая модель прогнозирования временных рядов финансовых данных // Программные продукты и системы. 2010. № 1(89). С. 132-134.
2. Бокс Дж., Дженкинс Г. Анализ временных рядов, прогноз и управление. М.: Мир, 1974. 406 с.
3. Хайкин С. Нейронные сети: полный курс; 2-е изд.; [пер. с англ.]. М.: Издат. дом «Вильямс», 2006. 1104 с.
УДК 519.688
РЕШЕНИЕ РАСШИРЕННОЙ ЛОГИСТИЧЕСКОЙ ЗАДАЧИ С ИСПОЛЬЗОВАНИЕМ ЭВОЛЮЦИОННОГО АЛГОРИТМА
М.В. Медянников
(Южно-Российский гуманитарный институт, г. Ростов-на-Дону, [email protected])
В работе рассмотрены функциональные блоки генетического алгоритма. Определены аргументы и решена задача коммивояжера. Добавлены новые переменные и детализированы вычисления функции через оптимизацию функции времени.
Ключевые слова: генетический алгоритм, логистическая задача, функция времени.
При современном развитии экономики все более расширяют свои позиции глобальные торговые сети, которые располагают огромным количеством товаров различных наименований, причем в разных странах и на разных континентах. В этих условиях при проектировании бизнес-процессов нельзя не принимать во внимание проблему дос-
тавки определенных объемов товара в срок. Иными словами, при формировании запасов приходится решать логистическую задачу, оптимизированную по функции времени с добавлением таких параметров, как расстояние между городами, объем перевозимого товара, скорость выгрузки и загрузки. При этом затраты времени и ресурсов должны