Зачем необходимы треугольные нормы и конормы? Как их использовать? Имеется ввиду, на практике. |
Нечеткие алгоритмы
Обобщенная нечеткая машина определяется парой , где
—
обобщенная машина,
— конечное множество нечетких
инструкций и каждая
нечеткая инструкция
из
есть
-функция из
в
.
Пусть задана некоторая обобщенная нечеткая машина .
Выполнение
последовательности
на обобщенной машине
есть последовательность
![s_{0} k_{1} s_{1} k_{2} \ldots k_{n}s_{n},\ \t{где}\ s_{i}\in S,\ k_{i}\in
K,\ s_{n}\in T.](/sites/default/files/tex_cache/e377a4f7cb4d422513782ef686aa43e3.png)
![w \in W:\quad w = w_1 \otimes w'_1 \otimes w_2 \otimes
w'_2 \,\ldots\,w_n \otimes w'_n ,](/sites/default/files/tex_cache/7a340e667bf5aeb3c1ca1a0524ad1c00.png)
![w_i = \sigma _i (k_i |s_{i - 1} ),\quad w'_i = \psi (s_i
|k_i ,s_{i - 1} ).](/sites/default/files/tex_cache/8df4e8a7654108b53322118fb5122969.png)
Выполнение возможно тогда и только тогда, если . Если
и
принимают значения из различных множеств
и
, то
вес, соответствующий
выполнению, будет
определяться парой
. В этом случае говорят, что программа
выполнима с
весом
,
если
.
Пример.
Пусть имеется последовательность инструкций для водителя автомобиля и карта
местности.
Водителю предлагается найти место назначения, используя карту и
последовательность
нечетких инструкций, описывающих маршрут. Для простоты изложения предположим,
что все точки на плоскости имеют только целочисленные координаты. Типичные
инструкции для водителя: "двигаться прямо около
метров", "повернуть налево", "повернуть
направо", "двигаться прямо до тех пор,
пока не увидишь ...".
Сконструируем соответствующую -машину
.
-машина имеет множество состояний
памяти
в виде упорядоченных троек
, где
—
точка на плоскости, соответствующая местонахождению
автомобиля,
— единичный вектор направления движения
автомобиля.
Множество входов
и множество выходов
состоят
из упорядоченных
пар
;
— функция входов,
соответствует тождественной функции;
— функция выходов, соответствует функции,
отображающей каждую
тройку
в
.
Машина не имеет ни одной функции условия. Каждой инструкции,
приведенной выше, соответствует функция операции. При этом
-я
инструкция в последовательности инструкций может быть преобразована в
инструкцию
операции вида do
; go to
. Совокупность
таких инструкций и инструкций
start: go to
и
: halt, где
— длина последовательности,
составляет программу
. Процесс выполнения программы
на машине
определяется последовательностью инструкций и картой местности. Краткости
ради приведем только функцию операции для инструкции типа "двигаться
прямо около
метров":
![\begin{gathered}
M_{F_L } = \left( {(a_2 ,b_2 ,\bar v_2 )|(a_1 ,b_1 ,\bar v_1 )} \right) =
\\
=f_L \left( {\sqrt {(a_2 - a_1 )^2 + (b_2 - b_1 )^2 } } \right) \times
G\left( {(a_2 ,b_2 ,\bar v_2 )|(a_1 ,b_1 ,\bar v_1 )} \right), \\
\end{gathered}](/sites/default/files/tex_cache/4f1390a359b58bc7cc7e0e9f74c8e90a.png)
![f_{L}(d)](/sites/default/files/tex_cache/002437cf369a89f4300fbaecbf35c794.png)
![d](/sites/default/files/tex_cache/8277e0910d750195b448797616e091ad.png)
![\(G( (a_2 ,b_2 , \bar v_2 )](/sites/default/files/tex_cache/cd63fd3009fbd3008a5b145a3710d8a0.png)
![(a_1 ,b_1 ,\bar v_1 ))\)](/sites/default/files/tex_cache/8340b9818a68ec77bdf151179d70962f.png)
![(a_{2},b_{2})](/sites/default/files/tex_cache/36402c9e06e9767602bf8d772448fd9b.png)
![v_{2}](/sites/default/files/tex_cache/43078bbe67ed8d55801deec58a70f40b.png)
![(a_{1},b_{1})](/sites/default/files/tex_cache/fa53c8deb976a1d57cae705d8046296c.png)
![v_{1}|](/sites/default/files/tex_cache/b59835ead5ff70f807484f595ebf1ee8.png)
Примеры функций и
, где
—
параметр:
тогда и только тогда, если
вектор из
в
параллелен
и каждая точка на отрезке линии, проходящей
через
и
, имеющая целые
координаты, есть точка
на карте. Очевидно, что
зависит только от
, а
зависит только от карты.
Другие функции операций могут быть построены аналогично. Нечеткий алгоритм,
описывающий движение автомобиля к месту назначения, определяется конкретной
последовательностью инструкций приведенного вида, которая реализуется
на рассмотренной
-машине.
Приведем другие примеры применения нечетких алгоритмов.
- Алгоритмы определения сложного нечеткого понятия
через более простые понятия, которые легко описать нечеткими множествами; результатом применения таких алгоритмов к некоторому элементу
области рассуждений
будет степень принадлежности
понятию
(степень, с которой элемент
может характеризоваться понятием
);
- Алгоритмы порождения, в результате выполнения которых порождается один из элементов нечеткого множества, которое описывает интересующее нас понятие (например, алгоритм порождения образцов почерка, рецептов приготовления пищи, сочинения музыки, предложений в естественном языке);
- Алгоритмы описания отношений между нечеткими переменными,
например, в виде последовательности нечетких инструкций
типа: "если
мало и
увеличить слегка, то
увеличится слабо"; такие алгоритмы позволяют приближенно описывать поведение систем, входные и выходные сигналы которых являются нечеткими подмножествами;
- Алгоритмы принятия решения, позволяющие приближенно описывать стратегию или важнейшее правило, например, алгоритм проезда перекрестка, содержащий последовательность действий, которые необходимо выполнить, при этом описания этих действий состоят из нечетких понятий типа: нормальная скорость, несколько секунд, медленно приближаться.