Студопедия

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

КАТЕГОРИИ:

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






Технологии искусственного интеллекта. Представление нечетких знаний. Нечеткая логика






 

Нечеткая логика – это надмножество классической булевой логики, расширяющее ее возможности и позволяющее применить концепцию неопределённости в логических выводах. Она была введена Л.Заде как способ моделирования неопределенностей естественного языка. Концептуальное отличие нечеткой логики от классической заключается в том, что она интерпретирует не только значениями «истина» и «ложь», но и промежуточными значениями. В основе нечеткой логики лежит теория нечетких множеств.

Нечёткое множество A определяется в виде множества упорядоченных пар или кортежей: < x, μ A(x)>, где х является элементом некоторого универсального множества или универсума Х, а µA(x) – функция принадлежности, которая ставит в соответствие каждому из элементов x Î Х некоторое действительное число из интервала [0, 1], т.е. данная функция определяется в форме отображения:

µA: X → [0, 1].

При этом значение µA(x) = 1 для некоторого x Î Х означает, что элемент х определённо принадлежит нечёткому множеству A, а значение µA(x) = 0 означает, что элемент х определённо не принадлежит нечёткому множеству A. Будем записывать конечное нечёткое множество в виде: A = {< x1, μ A(x1)>, x2, μ A(x2)>, …, xn, μ A(xn)> }, а в общем случае – в виде: A = {< x, μ A(x)> }. Нечеткое множество называется пустым, если его функция принадлежности тождественно равна нулю и обозначается через Ø для всех элементов. Носителем нечеткого множества А называется обычное множество As, которое содержит те и только те элементы универсума, для которых значения функции принадлежности соответствующего нечеткого множества отличны от нуля, т.е.: As = {x Î Х, µA(x)> 0} " x Î Х. Нечеткое множество называется конечным, если его носитель является конечным множеством. Нечеткое множество называется бесконечным, если его носитель является бесконечным множеством.

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

 

В этом случае µA(x) характеризуется четверкой (m, m, α, β).

Как частный случай при m = m функция принадлежности будет иметь треугольную форму, при α = β = 0 - прямоугольную форму, а при m = m и α =β =0 - выродится вообще в точку, т.е. будет соответствовать своему четкому значению.

Одно из главных понятий в нечеткой логике — понятие лингвистической переменной. Лингвистическая переменная определяется как кортеж < β, T, X, G, M>, где:

β – наименование или название лингвистической переменной;

T – базовое терм-множество лингвистической переменной или множество её значений (термов), каждое из которых представляет собой наименование отдельной нечёткой переменной α;

X – область определения (универсум) нечётких переменных, которые входят в определение лингвистической переменной β;

G – некоторая синтаксическая процедура, которая описывает процесс образования или генерирования новых, осмысленных в рассматриваемом контексте значений из множества Т для данной лингвистической переменной, т.е. процесс образования новых термов при помощи логических связок «И», «ИЛИ» и соответствующих модификаторов;

M – семантическая процедура, которая позволяет поставить в соответствие каждому новому значению данной лингвистической переменной, получаемому с помощью процедуры G, некоторое осмысленное содержание посредством формирования соответствующего нечёткого множества. Процедура M является процедурой задания на Х [0, N] нечётких переменных α 1, α 2, …, α n, а также соответствующих нечётких множеств из G(T) в соответствии с правилами трансляции нечётких связок и модификаторов.

Для представления операций с нечеткими знаниями, выраженных при помощи лингвистических переменных, существует много различных способов. Эти способы являются в основном эвристиками.

Стандартные определения в нечеткой логике (логике Заде):

Истинно (не x) = 1.0 – истинно (x);

Истинно (x и y) = минимум (истинно (x), истинно (y));

Истинно (x или y) = максимум (истинно (x), истинно (y)).

Нечеткое правило логического вывода представляет собой упорядоченную пару (А, В), где А — нечеткое подмножество пространства входных значений X, В — нечеткое подмножество пространства выходных значений Y.

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

Основные этапы нечеткого вывода:

1. Формирование базы правил.

2. Фаззификация.

3. Агрегирование.

4. Активизация.

5. Аккумуляция.

6. Дефаззификация.

 

На этапе фаззификации происходит определение (введение) нечёткости. Каждому конкретному значению отдельной входной переменной системы нечёткого управления ставится в соответствие значение функции принадлежности соответствующего ей терма входной лингвистической переменной.

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

Активизация в системах нечеткого вывода – это процедура или процесс нахождения степени истинности каждого из элементарных логических высказываний (подзаключений). Поскольку заключения делаются относительно выходных лингвистических переменных, то степеням истинности элементарных подзаключений при активизации ставятся в соответствие элементарные функции принадлежности. Если заключение нечеткого продукционного правила является простым нечетким высказыванием, то степень его истинности равна алгебраическому произведению весового коэффициента и степени истинности условия данного нечеткого продукционного правила. Если заключение представляет составное высказывание, то степень истинности каждого из элементарных высказываний равна алгебраическому произведению весового коэффициента и степени истинности условия данного нечеткого продукционного правила. Если весовые коэффициенты продукционных правил не указаны явно на этапе формирования базы правил, то их значения по умолчанию равны единице. Функции принадлежности μ (y) каждого из элементарных подзаключений консеквентов всех продукционных правил находятся при помощи одного из методов нечеткой композиции:

min-активизация – μ ’(y) = min{ci, μ (у)};

prod-активизация – μ ’(y) = ci × μ (у);

average-активизация – μ ’(y) = 0, 5(ci + μ (у)),

где μ (у) и ci – соответственно функции принадлежности термов лингвистических переменных и степени истинности нечетких высказываний, образующих соответствующие следствия ядер нечетких продукционных правил.

Аккумуляция – это процесс нахождения функции принадлежности для каждой из выходных лингвистических переменных. Целью этапа аккумуляции является объединение всех степеней истинности подзаключений для получения функции принадлежности каждой из выходных переменных.

Дефаззификация в системах нечеткого вывода – это процесс перехода от функции принадлежности выходной лингвистической переменной к её четкому (числовому) значению. Цель дефаззификации заключается в том, чтобы, используя результаты аккумуляции всех выходных лингвистических переменных, получить количественное значение каждой из выходных переменных, которое может быть использовано исполнительными механизмами системы управления, внешними по отношению к системе нечеткого вывода. Этап дефаззификации считается законченным, когда для каждой из выходных лингвистических переменных будут определены итоговые количественные значения в виде некоторого действительного числа, т.е. в виде: у1, у2, …, уs, где s общее количество выходных лингвистических переменных в базе правил системы нечеткого вывода.

Для выполнения численных расчетов на этапе дефаззификации могут быть использованы следующие методы:

- метод центра тяжести (определяется абсцисса центра тяжести кривой по функцией принадлежности);

- метод первого максимума (выбирается первый элемент нечеткого множества при котором достигается максимум значения функции принадлежности);

- метод среднего максимума;

- метод наименьшего максимума.

Нечеткая логика используется при создании систем, понимающих тексты на естественном языке, при создании планирующих систем, опирающихся на неполную информацию, при обработке зрительных сигналов, при управлении техническими, социальными и экономическими системами, в системах искусственного интеллекта и робототехнических системах.

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал