ISSN 0236-235X (P)
ISSN 2311-2735 (E)
3

13 Сентября 2024

Разработка программного комплекса адаптивного нейропрогнозирования


Пятковский О.И. (poi1952@mai.ru) - Алтайский государственный технический университет им. И.И. Ползунова, г. Барнаул, доктор технических наук, Авдеев А.С. ( ishimael@bk.ru) - Алтайский государственный технический университет им. И.И. Ползунова, г. Барнаул
Ключевые слова: адаптивные модели прогнозирования, нейронные сети, прогнозирование временных рядов
Keywords: adaptive forecasting models, neural network, forecasting time series


     

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

Цель работы – разработка программного комплекса адаптивного нейропрогнозирования временных рядов на примере объемов продаж автомобилей. Общая структура информационных систем (ИС), использующих интеллектуальные аналитические модули, показана на рисунке 1. Интеллектуальные модули представлены в виде гибридных экспертных систем {ГЭС1, ГЭС2,..., ГЭСH}, в которых используются нейросетевые адаптивные блоки {НС1, НС2,..., НСG} с модулями датчиков {МД1, МД2, …,МДn} [2]. На вход датчиков поступают измеряемые показатели процесса, на основе которых рассчитываются коэффициенты {K1,K2,…,Km}; значения коэффициентов используются модулями принятия решений {МПРД1, МПРД2, …,МПРДn}. Далее они поступают в блок принятия решения более высокого уровня для управления работой интеллектуального блока.

Подпись:  Рис. 1. Архитектура информационных системс адаптаптивными интеллектуальными компонентамиПредставленная система позволяет осуществлять контроль за следующими этапами создания прогнозной нейросетевой модели: проверка однородности данных, фильтрация ряда, повышение информативности данных, погружение ряда, формирование комитета сетей. На рисунке 2 представлена модель нейросетевого блока с адаптивными датчиками.

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

С помощью методов фильтрации снижается размерность ряда, отделяются трендовые изменения от нетрендовых. В модели используются следующие методы фильтрации: скользящее среднее, экспоненциальное сглаживание, вейвлет-преобразование. Алгоритм датчика позволяет выбрать метод фильтрации на основании следующих критериев:  – средняя абсолютная ошибка;  – максимальная абсолютная ошибка;  – средняя ошибка;  – коэффициент детерминации (где N – количество значений ряда,  – значение ряда,  – ошибка модели фильтрации,  – среднее значение).

В результате повышения информативности временной ряд преобразуется к виду . Коэффициенты, влияющие на алгоритм преобразования: , .

При погружении временного ряда используется метод скользящего окна. Для сформированной обучающей выборки рассчитывается константа Липшица: , где f – таблично заданная функция, которая в точках xi принимает значения fi. На основе анализа константы Липшица делается заключение о том, насколько удачно выбраны вид и размер окна погружения.

Подпись:  Рис. 2. Модель адаптивного нейросетевого блокаВ результате обучения нейронных сетей может получиться несколько моделей, обладающих удовлетворительными характеристиками. В этом случае строится обобщенный прогноз, который формируется как линейная комбинация: , где М – число объединяемых прогнозов; pj – весовые коэффициенты частных прогнозов;  – частные прогнозы. Весовые коэффициенты определяются из условия минимума дисперсии ошибок обобщающего прогноза.

В общем случае модель нейропрогнозирования считается адекватной до тех пор, пока в систему не поступает достаточное количество данных, на основании которых принимается решение о необходимости изменения параметров модели. Такой же вывод можно сделать на основе анализа данных, выдаваемых самой моделью. В существующей модели при поступлении нового фактического значения вычисляются следующие индикаторы: , , , , где Avg() – среднее значение временного ряда; Disp() – дисперсия значений временного ряда;  – стандартное отклонение;  – новое значение временного ряда;  – среднее значение текущей выборки. Далее рассчитанные индикаторы поступают на вход продукционной экспертной системы, в которую в виде правил продукции заложен алгоритм дообучения. Алгоритм представляет собой множество конъюнктивных правил вида:

Pr: (d(K_Avg))D(K_Avg), d(K_Disp)) D(K_Disp), d(K_New_Avg))D(K_New_Avg), d(K_))D(K_))→d(Decide), где d(x) – текущее значение параметра x; D(x) – множество интервалов, определенное для параметра x.

Модель программного комплекса, который реализуют описанные алгоритмы и методы системы нейропрогнозирования, представлена на рисунке 3.

Средством программной реализации клиентских приложений аналитического программного комплекса является среда программирования Visual Studio 2008. Модуль реализован в виде динамической библиотеки и легко может быть интегрирован в любую существующую информационную систему.

Эффективность использования созданного программного комплекса подтверждается результатами сравнения прогнозных значений, полученных с помощью разработанной модели, и значений, полученных при помощи стандартных методов нейропрогнозирования (табл. 1). Исходными данными при создании и тестировании моделей служили значения ежемесячных продаж автомобилей регионального автодилера ОАО «Алтай-Лада» (г. Барнаул).

Подпись:  Рис. 3. Структура нейросетевого блокаТаблица 1

Сравнение моделей

Модель

01.05.2006

01.06.2006

01.07.2006

01.08.2006

01.09.2006

Нейросеть № 1

56

55

66

75

75

Нейросеть № 2

60

58

70

72

72

Адаптивная нейросетевая модель

55

59

66

75

78

Факт продаж

52

64

60

80

92

Для проверки работы блока адаптации (Ка) в ходе имитационного эксперимента получены следующие значения коэфициентов:  = 0.08, , , Kσ_min = 1.5, Kσ_max = =2.45. В результате моделирования поступления новых фактических значений рассчитаны значения индикаторов и определены моменты их срабатывания. В результате процесс дообучения был запущен на 6, 13, 14, 17 и 21-м шагах поступления новых значений.

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

Таблица 2

Ошибки прогнозов

Шаг

Без дообучения

Дообучение на каждом шаге

Модуль адаптации (Ка)

01.10.2006

39.73 %

39.73 %

39.73 %

01.03.2007

42.46 %

42.58 %

36.15 %

01.10.2007

38.15 %

44.43 %

31.64 %

01.11.2007

45.37 %

38.15 %

27.52 %

01.02.2008

48.41 %

34.87 %

23.21 %

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

Литература

1.  Лукашин Ю.П. Адаптивные методы краткосрочного прогнозирования временных рядов: учеб. пособие. М.: Финансы и статистика, 2003. 416 с.

2.  Пятковский О.И. Интеллектуальные компоненты автоматизированных информационных систем управления предприятием. Барнаул: Изд-во АлтГТУ, 1999. 355 c.

3.  Горбань А.Н., Россиев Д.А. Нейронные сети на персональном компьютере. Новосибирск: Наука. Сибирская издат. фирма РАН, 1996. 276 с.



http://swsys.ru/index.php?id=2445&lang=%E2%8C%A9%3Den&like=1&page=article


Perhaps, you might be interested in the following articles of similar topics: