Научная статья на тему 'Разработка нечеткой модели для прогноза'

Разработка нечеткой модели для прогноза Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
251
35
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БАЗА ДАННЫХ / ПРОГНОСТИЧЕСКАЯ МОДЕЛЬ / МОДЕЛЬ МАНДАМИ / ДЕФАЗЗИФИКАЦИЯ / ЯЗЫК PHP / DATABASE SYSTEM / PROGNOSTIC MODEL / FUZZY MODEL / PHP LANGUAGE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Астахова Ирина Федоровна, Коробкин Александр Александрович, Фалалеева Юлия Леонидовна

Разработана прогностическая модель, основанная на методах нечеткой логики. С помощью генетического алгоритма осуществлена настройка прогностической модели. Приведены практические результаты работы прогностической модели. Описана реализация построения и настройки модуля прогностической модели.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Астахова Ирина Федоровна, Коробкин Александр Александрович, Фалалеева Юлия Леонидовна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ELABORATION FUZZY LOGIC MODEL FOR PROGNOSIS

The prognostic model is worked out by fuzzy logic. The adjustment of prognostic model is made by genetic algorithm. Practical results of prognostic model are reduced. Realization and turning of prognostic model is described.

Текст научной работы на тему «Разработка нечеткой модели для прогноза»

УДК 004.8

РАЗРАБОТКА НЕЧЕТКОЙ МОДЕЛИ ДЛЯ ПРОГНОЗА

© И.Ф. Астахова, A.A. Коробкин, Ю.Л. Фалалеева

Ключевые слова: база данных; прогностическая модель; модель Мандами; дефаззификация; язык PHP. Разработана прогностическая модель, основанная на методах нечеткой логики. С помощью генетического алгоритма осуществлена настройка прогностической модели. Приведены практические результаты работы прогностической модели. Описана реализация построения и настройки модуля прогностической модели.

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

В данной статье рассмотрены результаты анализа, а также прогностические модели процесса развития вуза и его образовательной деятельности. Разработанная информационная система содержит большой объем информации, что позволяет использовать ее для расчетов прогноза ожидаемых темпов развития, а также для прогноза тенденций качества обучения [1,2].

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

>*2 >*з > »>*з }■■»

где i - номер трехлетнего цикла, х\ - количество студентов в стадии цикла «перед скачком» или после «спада», х2 - количество студентов в стадии цикла

«перед удержанием» или после «скачка», х\ - количество студентов в стадии цикла «перед спадом» или после «удержания».

На основе выявления такой закономерности становится возможным записать их в виде правил «ЕСЛИ -ТО», которые связывают численность студентов в разные годы.

Правило «подъема» Р1 описывается следующими высказываниями:

ЕСЛИ х\ = НИЗКОЕ И х'2 = ВЫШЕ СРЕДНЕГО, ТО 4 = ВЫСОКОЕ; ЕСЛИ х[ = НИЖЕ СРЕДНЕГО И х'2 = СРЕДНЕЕ, ТО х!ъ = СРЕДНЕЕ;

Правило «удержания» ¥2 выглядит следующим образом:

ЕСЛИ х\ = ВЫШЕ СРЕДНЕГО И Х3 = ВЫСОКОЕ, ТО = НИЖЕ СРЕДНЕГО; ЕСЛИ х2 = СРЕДНЕЕ И х'3 = СРЕДНЕЕ, ТО = НИЗКОЕ;

И, наконец, правило «падения».

ЕСЛИ х[ = ВЫСОКОЕ И х|+1 = НИЖЕ СРЕДНЕГО, ТО х?1 = СРЕДНЕЕ.

На основе описанных правил можно представить к рассмотрению модель прогнозирования.

На основе существующих функциональных связей стоится сеть зависимостей для прогнозирования.

Для использования экспертно-лингвистических оценок П - РЗ используется аппарат теории нечетких множеств. Для лингвистических оценок «НИЗКОЕ», «ВЫСОКОЕ», «СРЕДНЕЕ» и т. д. применяется формализация при помощи функций принадлежности.

цг(х) = 1/(1 + ((х-6)/с)2) ,

где Ь и с - параметры настройки. Параметр Ь представляет собой координату максимума функции принадлежности - \1Т(Ь) = 1. А параметр с является коэффициентом концентрации - растяжения функции. Число Ь представляет собой наиболее возможное значение переменной х для нечеткого терма Т .

игМ 1

Рис. 1. Модель функции принадлежности

Таблица 1

Параметры функций принадлежности до настройки

Лингвистические оценки Параметр Параметр

переменных Ь с

ВЫСОКОЕ 290 35

ВЫШЕ СРЕДНЕГО 275 30

СРЕДНЕЕ 265 25

НИЖЕ СРЕДНЕГО 251 30

НИЗКОЕ 233 40

В табл. 1 представлен экспертный выбор параметров b и с для разных лингвистических оценок, которые используются в правилах Fl и F4.

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

Обозначим через [A"min, A"max] диапазон возможных значений количества студентов. И разобьем его на пять равных частей.

Каждая из пяти частей ассоциируется с лингвистическими оценками: «НИЗКОЕ» - (Н), «НИЖЕ СРЕДНЕГО» - (НС), «СРЕДНЕЕ» - (С), «ВЫШЕ СРЕДНЕГО» - (ВС) и «ВЫСОКОЕ» - (В). Используя нечетко -логические операции «И» (min), «ИЛИ» (шах) и операцию дефаззификации для преобразования нечеткого вывода к четкому значению, можно в явном виде записать модель прогнозирования. Дефаззификация произведена по методу центра тяжести, который описывается следующей формулой:

' m;t*

j'k-\iA(u)du

X _ ^min

'max

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

Х =

л

2

i=i

(=1

На основе выбора метода центра тяжести, процедура дефаззификации проводится следующим образом:

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

Fl:

=

Для F2 его необходимо эта операция записывается

F 2:

../+1

И ,.H,J+U

Рис. 2. Функции принадлежности лингвистических оценок до настройки

?87

279 ^2г\ / \

\ /

2/0

273

/ /

/

230/230

еггог = 4 й

2003 2004 200!> 2006 2007 2008 2009 2010 7011 2012

Рис. 3. Снижение погрешности почти в два раза

'•иъ \

270

гзе ¡х

»6 \ / \ и '

Ып1=ЗЧе.6Э8156186 Ы «¡1=260.323511251 Ыо1=?«7,125073518 Ь[«,]=И7.14М15?96 .113513514 с[п)з1в.260Б9135б4 , с[пз1=?8,7689888948 \?39 сМ=5,Н920956237 1 сГпГО.ИОИЖга с[у]=27,1107040816

Епиг -- 0.вССЁбСв№67 У.

2003 2004 20«) 20«! 200/ 2008 2009 2010 2011 2012

Рис. 4. Результаты прогнозирования после гастройки модели

И, наконец, операция дефаззификации для правила «падения» РЗ описывается следующим выражением:

^3:

в /-„14 „НС(1+К

,41 _ ъс -цс(4+1) 2 " ЦС(4+1)

Использование выявленных законов изменения количества студентов приводит к следующим результатам.

При проведении вычислительного эксперимента ошибка прогнозирования при выбранных параметрах составила 7 %.

При помощи полученной модели можно грубо прогнозировать количество студентов в последующие годы. Однако, для повышения точности прогноза, необходимо осуществить настройку модели. В настоящей работе для настройки модели прогнозирования применяется генетический алгоритм. С его помощью осуществляется варьирование параметров модели бис, что приводит к снижению погрешности прогнозирования (рис. 3). Так, например, изменение параметра «с», связанного с термами «НИЗКО» и «ВЫШЕ СРЕДНЕГО», приводит к уменьшению ошибки до 4 %.

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

цикла, представляющего пять прогнозируемых

лет. После нескольких запусков генетического алгоритма для оптимизации модели прогнозирования было получено несколько вариантов сборок параметров Ь и с. На рис. 4 изображено прогнозирование с помощью настроенной модели. Ошибка прогнозирования составила 0,67 %. В правой части рис. 4 отображены и значения параметров бис.

На рис. 4 видно, что прогнозируемые данные мало отличаются от экспериментальных цифр. Это позволяет с определенной степенью уверенности полагать, что в 2010, 2011, а также 2012 г. обучения, количество студентов, одновременно обучающихся в ЛФВГУ, будет мало отличаться от прогнозируемого.

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

Рис. 5. Функции принадлежности лингвистических настроек после настройки 1484

ПРАКТИЧЕСКАЯ ЧАСТЬ

В качестве средств реализации поставленных задач была выбрана связка PHP + MySQL + HTML [3-5]. PHP - это язык программирования, позволяющий организовать удобный доступ к базам данных. Взаимодействие PHP + HTML предоставляет неплохие возможности представления информации пользователю [4]. Благодаря тому, что PHP является серверным языком сценариев, разработанные алгоритмы выполняются на сервере, выдавая пользователям конкретные результаты. Это позволяет получить доступ к разработанному программному обеспечению с любой ЭВМ сети инфраструктуры учебного заведения.

Модуль прогнозирования представляет собой структуру, располагающуюся в рамках файла PROG-NOZ.PHP. Условно, его работу можно разделить на несколько этапов. Первым этапом является сбор нужных сведений из базы данных. А также представление их в виде, необходимом для построения модели прогнозирования.

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

PKOGNOZPHP

-база ..1 данных

модуль Щбрки данных . . «збД.

,, «й >;•£ . прдакша^ jjffi

дроима

j*2ho 1

.г.г^йедай.'.'.'лк

- «pa wn

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

мешу» .--(»уценки--МЧ6С)8а

.прогноза

модуль каоройкн прогнозной. .-.- модели

геиетичвош. алгоритм

... И

отображения результатов "" оронозирования

на основании параметров, выбранных экспертами, производится настройка модели. Сущность настройки заключается в интеллектуальной настройке параметров прогнозирования. Для достижения высоких результатов в работе предложен метод генетического поиска наилучшего выбора параметров прогнозирования. Метод генетического поиска описан генетическим алгоритмом. Массив $РА11АМ[$к][$^ представляет собой средство хранения всей популяции. На первом шаге генетического алгоритма в качестве исходной особи выбирается особь, построение которой проводилось по оценкам экспертов. Далее популяция поиска заполняется до необходимого количества особями, имеющими определенные случайные отклонения от родительской особи. Этот процесс эквивалентен операции мутации. После успешного синтеза остальных особей популяции происходит оценка их пригодности. Данная процедура осуществляется с использованием функции пригодности, основным критерием работы которой является фактическая погрешность прогнозирования, основанная на параметрах, определяемых генами текущей особи. Количество параметров в решаемой задачи достигает десяти, поэтому в одиннадцатой ячейке массива особи сохраняется значение его функции пригодности. После оценки особей происходит селекция, т. е. отбор наиболее приспособленных особей для операции репродукции. Селекция исключает из популяции определенное количество слабых особей, также запрещая им скрещиваться. Оставшиеся особи производят скрещивание и дают новое потомство. Слияние двух массивов в принципиально новый массив происходит по схеме одноточечного кроссинговера. Оператор мутации организован весьма специфичным способом. Так как каждый ген хромосомы представляет собой значение конкретного параметра прогнозной модели, то подмена этого значения соседним может существенно отбросить искомое решение в сторону. Для того чтобы избежать этот неприятный эффект, оператор мутации производит изменение текущего гена в некоторую сторону на определенную случайным образом величину.

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

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

Рис. 6. Структура модуля прогнозирования

ВЫВОДЫ

1. Разработана прогностическая модель, основанная на методах нечеткой логики.

2. С помощью генетического алгоритма осуществлена настройка прогностической модели.

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

4. Описана реализация построения и настройки модуля прогностической модели.

ЛИТЕРАТУРА

1. Шакис В.М. Вопросы применения орграфов для автоматизации календарного планирования (на примере втузов): дис. ... канд. тех. наук. Каунас, 1975. 163 с.

2. Д1)шик Э., Мюллер П. Методы принятия технических решений, М,: Мир, 1990. 206 с.

3. Архангельский СИ. Учебный процесс в высшей школе, его закономерные основы и методы. М.: Высш. шк., 1980. 36$ с.

4. Гончаров А. Самоучитель HTML. СПб.: Питер, 2000. 240 с.

5. Профессиональное PHP программирование / Дж. Кастаньетго, X. Рафат, С. Шуман и др.; пер. с англ. СПб.: Символ-Плюс, 2001. 912 с.

Поступила в редакцию 22 сентября 2011 г.

Astakhova I.F., Korobkin A.A., Falaleeva Yu.L. ELABORATION FUZZY LOGIC MODEL FOR PROGNOSIS

The prognostic model is worked out by fuzzy logic. The adjustment of prognostic model is made by genetic algorithm. Practical results of prognostic model are reduced. Realization and turning of prognostic model is described.

Key words', database; database system; prognostic model; fuzzy model; PHP language.

i Надоели баннеры? Вы всегда можете отключить рекламу.