Система нечеткого вывода и программные средства ее реализации
Основы теории и применение СНВ изложены в Приложении3 настоящих методических указаний.
Основные этапы построения систем нечеткого вывода
Переменная, описываемая в условиях правила, называют входной переменной, переменная, стоящая в заключении правила, является выходной переменной. Системы нечеткого вывода предназначены для преобразования значений входных переменных в выходные переменные на основе использования правил нечетких продукций. Для этого системы нечеткого вывода должны содержать базу правил нечетких продукций и реализовывать вывод заключений на основе условий, представленных в виде нечетких лингвистических высказываний.
Основными этапами формирования СНВ являются: формирование базы правил системы нечеткого вывода (СНВ); фаззификация входных переменных; агрегатирование подусловий в нечетких правилах продукций; активизация (композиция) подзаключений в нечетких правилах продукций; аккумулирование заключений нечетких правил продукции.
Формирование базы правил СНВ.
База правил нечетких продукций представляет собой конечное множество правил нечетких продукций, согласованных относительно используемых в них лингвинистических переменных. Наиболее часто база правил представляется в форме текста:
Правило_1:ЕСЛИ «Условие_1» то «Заключение_1» (F1)
…………………………………………………………….
Правило_n:ЕСЛИ «Условие_n» то «Заключение_n» (Fn)
Здесь F1, Fn-коэффициенты определенности или веса. Эти коэффициенты могут принимать значения из интервала [0,1]. Таким образом, при задании базы правил нечетных продукций необходимо определить:
множество правил нечетких продукций R={R1,R2,...,Rn};
множество входных переменных: b={b1,b2,...,bn};
множество выходных переменных: W={w1,w2,...,wg}.
Таким образом, база правил нечетких продукций считается заданной, если заданы множества R, b и W.
Фаззификация.
Целью этапа фаззификации является установленные соответствия между конкретным (обычно численным) значением отдельной входной переменной СНВ и значением функции принадлежности соответствующего ей терма входной лингвинистической переменной.
После завершения этого этапа для всех входных переменных должны быть определены конкретные значения функции принадлежности по каждому из лингвинистических термов, которые используются в условиях базы СНВ. Формально процедура фаззификации выполняется следующим образом: до начала этапа фаззификации предполагаются известными конкретные значения всех входных переменных СНВ. Рассматривается каждое из подусловий вида «bi есть ai» правил СНВ, где ai- некоторый терм с известной функцией принадлежности m(x). При этом значение ai используется в качестве аргумента m(х), тем самым находится количественное значение bi=m(ai). Это значение и является результатом фаззификации подусловия «bi есть ai». Этап фаззификации считается завершенным, когда будут найдены все значения bi=m(ai) для каждого подусловия всех правил, входящих в рассматриваемую базу правил СНВ. Это множество значений обозначим через В=[bi].
При этом если некоторый терм лингвинистической переменной bi не существует ни в одном из высказываний, то соответствующее ему значения функции принадлежности не находился в процессе фаззификации.
Агрегатирование.
Агрегатирование представляет процедуру определения степени истинности условий по каждому правилу СНВ. До начала этого этапа предполагаются известными значения истинности всех подусловий, т.е. множество значений b. Далее рассматривается каждое из условий правил СНВ. Если условие правила представляет собой нечеткие высказывания вида 1 или 2, то степень истинности равна bi т.к. подусловий в этом правиле нет.
Если же условие состоит из нескольких подусловий , причем лингвинистические переменные в подусловиях не равны друг другу, то на этапе агрегатирования используются формулы.
Активизация(Activation).
Активизация в СНВ представляет процедуру нахождения степени истинности каждого из подзаключений правил нечетких продукций Для этой цели используем метод min-активизации m’(y)=min{ci, m(y)}.
Этап активизации считается законченным, когда для каждой из выходных лингвинистических переменных, входящих в отдельные подзаключения правил нечетких продукций, будут определены функции принадлежности нечетких множеств их значений, т.е. совокупность нечетких множеств: c1,c2,...,cg, где g общее количество подзаключений в базе правил СНВ.