Алгоритм самоорганизации приписывает вектор x к соответствующей группе данных, представляемых центром , с использованием обучения конкурентного типа подобно сетям Кохонена. При обучении этого типа процесс самоорганизации становится возможным при предъявлении вектора х.
Допустим, что в сети существует нечётких нейронов с центрами в точках . Начальные значения этих центров могут быть выбраны случайным образом из областей допустимых значений соответствующих компонентов векторов , использованных для обучения. Пусть функция фуззификации задана в форме обобщенной функции Гаусса, выраженной формулой (8.40).
Подаваемый на вход сети вектор будет принадлежать к различным группам, представляемым центрами , в степени , причем , а суммарная степень принадлежности ко всем группам, очевидно, равна единице. Поэтому
(8.90)
для . Функцию погрешности, соответствующую такому представлению, можно определить как сумму частных погрешностей принадлежности к центрам с учетом степени принадлежности Следовательно
, (8.91)
где m — это весовой коэффициент, который принимает значения из интервала [1, ∞), на практике часто принимают m=2. Цель обучения с самоорганизацией состоит в таком подборе центров , чтобы для заданного множества обучающих векторов обеспечить достижение минимума функции (8.91) при одновременном соблюдении условий ограничения (8.90). Таким образом возникает задача минимизации нелинейной функции (8.91) с р ограничениями типа (8.90). Решение этой задачи можно свести к минимизации функции Лагранжа, определенной в виде [6].
, (8.92)
где - это множители Лагранжа. Доказано, что решение задачи (8.92) можно представить в виде
, (8.93)
, (8.94)
где - это эвклидово расстояние между центром и вектором , . Поскольку точные значения центров в начале процесса не известны, алгоритм обучения должен быть итерационным:
1. Выполнить случайную инициализацию коэффициентов , выбирая их значения из интервала [0,1] таким образом, чтобы соблюдать условие (8.90).
2. Определить M центров в соответствии с (8.93).
3. Рассчитать значение функции погрешности в соответствии с (8.91). Если её значение ниже установленного порога, либо если уменьшение этой погрешности относительно предыдущей итерации пренебрежимо мало, то закончить вычисления. Иначе, перейти к п.4.
4. Рассчитать новые значения по формуле (8.94) и перейти к п.2.
Многократное повторение итерационной процедуры ведёт к достижению минимума функции E, который необязательно будет глобальным.