Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Генерирование системы нечеткого логического вывода типа Сугено из данных с использованием субтрактивной кластеризации






Синтаксис:

fis = genfis2(Xin, Xout, radii, xBounds, options)

Описание:

Функция genfis2 генерирует систему нечеткого логического вывода типа Сугено из данных с использованием субтрактивной кластеризации. При использовании данных только с одной выходной переменной, результат выполнения функции genfis2 может рассматриваться как исходная система для обучения посредством технологии ANFIS.

Генерирование правил из данных в функции genfis2 происходит в два этапа. Вначале используется функция subclust для определения количества правил и мощностей терм-множеств выходных переменных. Затем с помощью метода наименьших квадратов определяется " то-" часть каждого правила. В результате этого получается система нечеткого логического вывода с базой правил, покрывающих все предметную область.

Функция genfis2 может иметь до пяти входных аргументов, первые три из которых обязательны:

1. Xin – матрица, в которой каждая строчка содержит значения входных переменных данных;

2. Xout – матрица, в которой каждая строчка содержит значения выходных переменных данных;

3. radii – вектор, определяющий размеры области правил по каждой координате. Значения координат вектора radii должны находиться в диапазоне [0, 1] в связи с тем, что во время выполнения функции subclust данные масштабируется на единичный гиперкуб. Если значение radii задано скаляром, тогда все координаты считаются равноважными;

4. xBounds – матрица диапазонов изменения данных, необходимая для их масштабирования на единичный гиперкуб. Каждый столбец матрицы задает диапазон изменения данных по одной координате, таким образом размер матрицы – 2 x p, где р – количество входных и выходных переменных. Если аргумент xBounds не задан, тогда диапазоны изменения данных рассчитываются функцией subclust по фактическим значениям матриц Xin и Xout;

5. options – вектор параметров кластерного анализа, берутся значения по умолчанию.

Пример:

x=2*rand(100, 2);
y=x(:, 1).^2+2*x(:, 2);
fis=genfis2(x, y, 0.5)

y_fis=evalfis(x, fis);

plot(y, y_fis, 'r.')

hold on

min_y=min(y);
max_y=max(y);
plot([min_y max_y], [min_y max_y], '-k')

xlabel('target')
ylabel('fis output')

В первых двух строчка примера задаются 100 пар точек “входы-выход”, связанных зависимостью y=x1^2+2*x2. Затем генерируется система нечеткого логического вывода, которая идентифицирует представленную данными зависимость. На рисунке показано желаемое (сплошная линия) и действительное (красные точки) поведения нечеткой модели. Как видно из рисунка, даже без использования технологии обучения ANFIS, нечеткая модель, синтезированная функцией genfis2, хорошо описывает данные.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.