Зачем необходимы треугольные нормы и конормы? Как их использовать? Имеется ввиду, на практике. |
Теория приближенных рассуждений
Рассмотрим алгоритм нечеткого вывода на конкретном примере.
Пусть у нас есть некоторая система, например, реактор, описываемая тремя параметрами: температура, давление и расход рабочего вещества. Все показатели измеримы, и множество возможных значений известно. Также из опыта работы с системой известны некоторые правила, связывающие значения этих параметров. Предположим, что сломался датчик, измеряющий значение одного из параметров системы, но знать его показания необходимо хотя бы приблизительно. Тогда встает задача об отыскании этого неизвестного значения (пусть это будет давление) при известных показателях двух других параметров (температуры и расхода) и связи этих величин в виде следующих правил:
- если Температура низкая и Расход малый, то Давление низкое;
- если Температура средняя, то Давление среднее;
- если Температура высокая или Расход большой, то Давление высокое.
В нашем случае Температура, Давление и Расход — лингвистические переменные. Опишем каждую из них.
Температура. Универсум (множество возможных значений) — отрезок . Начальное множество термов {Высокая, Средняя, Низкая}. Функции принадлежности термов имеют следующий вид:
Давление. Универсум — отрезок . Начальное множество термов {Высокое, Среднее, Низкое}. Функции принадлежности термов имеют следующий вид:
Расход. Универсум — отрезок . Начальное множество термов {Большой, Средний, Малый}. Функции принадлежности термов имеют следующий вид:
Пусть известны значения Температура 85 и Расход 3,5 . Произведем расчет значения давления.
Последовательно рассмотрим этапы нечеткого вывода:
Сначала по заданным значениям входных параметров найдем степени уверенности простейших утверждений вида "Лингв. переменная есть Терм Лингв. переменной ". Этот этап называется фаззификацией, т.е. переходом от заданных четких значений к степеням уверенности. Получаем следующие степени уверенности:
- Температура Высокая — 0,7;
- Температура Средняя — 1;
- Температура Низкая — 0,3;
- Расход Большой — 0;
- Расход Средний — 0,75;
- Расход Малый — 0,25.
Затем вычислим степени уверенности посылок правил:
- Температура низкая и Расход малый: min(Темп. Низкая, Расход Малый)= min(0.3, 0.25)=0.25;
- Температура Средняя: 1;
- Температура Высокая или Расход Большой: max(Темп. Высокая, Расход Большой)= max(0.7,0)=0,7.
Следует отметить также тот факт, что с помощью преобразований нечетких множеств любое правило, содержащее в левой части как конъюнкции, так и дизъюнкции, можно привести к системе правил, в левой части каждого будут либо только конъюнкции, либо только дизъюнкции. Таким образом, не уменьшая общности, можно рассматривать правила, содержащие в левой части либо только конъюнкции, либо только дизъюнкции.
Каждое из правил представляет из себя нечеткую импликацию. Степень уверенности посылки мы вычислили, а степень уверенности заключения задается функцией принадлежности соответствующего терма. Поэтому, используя один из способов построения нечеткой импликации, мы получим новую нечеткую переменную, соответствующую степени уверенности в значении выходных данных при применении к заданным входным соответствующего правила. Используя определение нечеткой импликации как минимума левой и правой частей (определение Mamdani), имеем:
Теперь необходимо объединить результаты применения всех правил.
Этот этап называется аккумуляцией. Один из основных способов аккумуляции — построение максимума полученных функций принадлежности. Получаем:
Полученную функцию принадлежности уже можно считать результатом. Это новый терм выходной переменной Давление. Его функция принадлежности говорит о степени уверенности в значении давления при заданных значениях входных параметров и использовании правил, определяющих соотношение входных и выходных переменных. Но обычно все-таки необходимо какое-то конкретное числовое значение. Для его получения используется этап дефаззификации, т.е. получения конкретного значения из универса по заданной на нем функции принадлежности.
Существует множество методов дефаззификации, но в нашем случае достаточно метода первого максимума. Применяя его к полученной функции принадлежности, получаем, что значение давления — 50. Таким образом, если мы знаем, что температура равна 85, а расход рабочего вещества — 3,5, то можем сделать вывод, что давление в реакторе равно примерно 50.