Опубликован: 26.07.2006 | Доступ: свободный | Студентов: 2742 / 421 | Оценка: 4.00 / 3.77 | Длительность: 15:27:00
ISBN: 978-5-94774-818-5
Специальности: Программист, Математик
Лекция 11:

Нечеткие алгоритмы

< Лекция 10 || Лекция 11: 1234 || Лекция 12 >

Способы выполнения нечетких алгоритмов

Для реализации поиска какого-либо выполнения нечеткого алгоритма \sigma = \sigma_{1}\sigma_{2} \ldots \sigma_{n} необходимо определить правила выбора машинной инструкции на каждом шаге. Правила выбора машинной инструкции и переходов из состояния в состояние зависят от типа нечеткой машины.

Выбор машинной инструкции:

a. Нечеткий выбор. Машина выбирает машинную инструкцию k_{i}\in K(i,s_{i-1}) с наивысшей степенью на каждом шаге \sigma_{i}\colon  \sigma_{i}(s_{i-1},k)\ge   
\sigma_{i}(s_{i-1},k') для любой инструкции k'\in K.

b. Вероятностный выбор. Машина на каждом шаге нечеткой инструкции \sigma_{i} выбирает инструкцию k\in K(i,s_{i-1}) с вероятностью p, пропорциональной нечеткой степени \sigma_{i}(s_{i-1},k)

p = \sigma _i (s_{i - 1} ,k)/\sum\limits_{k'} {\sigma _i
(s_{i - 1} ,k')} ,\quad \quad k' \in K(i,s_{i - 1} ).

c. Недетерминированный выбор. Машинная инструкция k\in
K(i,s_{i-1}) выбирается недетерминированным образом.

Определение перехода из состояния в состояние:

a. Нечеткий переход. Машина переходит из состояния s_{i} в состояние \(s\colon \Psi (s_i ,k_i ,s) \geqslant \Psi (s_i ,k_i ,s')\) для любого состояния \(s' \in K(i,s_{i - 1} ,k_i )\).

b. Вероятностный переход. Машина переходит из состояния s_{i} в состояние s с вероятностью

p = \frac{\Psi (s_{i - 1} ,k_i ,s)}{\displaystyle
\sum\limits_{s' \in K(i,s_{i - 1} ,k_i )}\Psi (s_{i - 1} ,k_i ,s')}.

c. В случае детерминированного перехода состояние, пригодное для машины, единственным образом определяется функцией переходов \Psi.

Процедура возврата:

a. Вернуться на предыдущую нечеткую инструкцию.

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

c. Осуществить возврат так же, как описано в пункте (b), но при этом машинная инструкция выбирается со степенью более высокой, чем выбранная перед этим.

Представление нечеткого алгоритма в виде графа

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

Определение. Графом G называется тройка (V,U, \varphi), где V=\{v\} — множество элементов, называемых вершинами графа; U=\{u\} множество элементов, называемых ребрами графа, причем V\cap U=\varnothing ; \varphiфункция, ставящая в соответствие каждому ребру u\in U упорядоченную или неупорядоченную пару вершин (v_{1},v_{2}), v_{1} и v_{2} называются концами ребра u. Если множество U\cup V конечно, то граф называется конечным. Если \varphi(u)=(v_{1},v_{2}) — упорядоченная пара (т.е. (v_{1},v_{2})\ne  (v_{2},v_{1}) ), то ребро u называется ориентированным ребром или дугой, исходящей из вершины v_{1} и входящей в вершину v_{2} ; v_{1} называется началом, v_{2} — концом дуги u. Граф, все ребра которого ориентированные, называется ориентированным графом.

Определение. Последовательность вершин и ребер графа G\(v_{i_0 } u_1 v_{i_2 } u_2 \ldots v_{i_{n - 1} } u_n v_{i_n }\) называется путем \([v_{i{}_0} ,v_{i_n } ]\) из вершины \(v_{i{}_0}\) в вершину \(v_{i{}_n}\), если \(\varphi (u_k ) = (v_{i_{k - 1} } ,v_{i_k } )\) для k=1,2,\ldots,n. Вершина \(v_{i{}_0}\) называется началом, а \(v_{i{}_n}\) — концом пути; число n называется длиной пути.

Определение. Нечеткая программа есть четверка (X,Y,Z,G), где X=(x_{1},\ldots,x_{l})вектор входа, Y=(y_{1},\ldots,y_{n})вектор программы (внутренние переменные), Z=(z_{1},\ldots,z_{m})вектор выхода, G — ориентированный граф:

  • x_{i}, y_{i}, z_{i} — нечеткие переменные, определяющие нечеткие множества на U, V, W ;
  • В графе G существует точно одна вершина, называемая начальной (стартовой), которая не является конечной вершиной никакой дуги, и существует точно одна вершина, называемая конечной (финальной), которая не является начальной вершиной никакой дуги: любая вершина графа находится на некотором пути из стартовой вершины S в финальную вершину H ;
  • В графе G любая дуга a, не ведущая в H, связана с нечетким отношением R_{a} (X,Y) и нечеткой инструкцией Y=f_{a}(X,Y) ; каждая дуга a, ведущая в H, связана с нечетким отношением R_{a} (X,Y) и инструкцией z=f_{a}(z,x,y), где R — нечеткое отношение, и f — нечеткая операция типа пересечения, объединения, отрицания нечеткой арифметики, оператор размывания, оператор типа модификаторов и т.д.
< Лекция 10 || Лекция 11: 1234 || Лекция 12 >
Владимир Власов
Владимир Власов

Зачем необходимы треугольные нормы и конормы? Как их использовать? Имеется ввиду, на практике.