Понятие нечетких множеств и их связь с теорией построения экспертных систем

Одной из основных трудностей при принятии решений (даже у естественного интеллекта) является наличие неопределенностей при получении, формировании и представлении знаний.

Мы говорим: «Я поздно пришел домой». «Поздно» - это во сколько?

Или: «Это дорогой компьютер». А «дорогой» - это сколько?

Интеллектуализированным информационным системам во многом труд­нее оценивать ситуацию, воспринимать события и явления в пред­метной области, решать задачи контроля, управления, поиска и другие при наличии нечеткого представления знаний.

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

Дефицит информации возникает по следующим причинам:

- из-за неполноты (ограничен­ности) информации, описывающей объект или наблюдаемый процесс (явление);

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

- из-за нечеткости информации, появляющейся в условиях неопределенности.

Проблему, связанную с недостатком информации, решают следующими способами:

- стараются уменьшить дефицит информации;

- примиряются с недостатком информации и продолжают исследование в сложившихся условиях.

При попытке формализовать человеческие знания исследователи столк­нулись с проблемой, затруднявшей использование традиционного математиче­ского аппарата для их описания. Существует целый класс описаний, оперирую­щих качественными характеристиками объектов (много, мало, сильный, очень сильный и т. п.). Эти характеристики обычно размыты и не могут быть однознач­но интерпретированы, однако содержат важную информацию (например, «Од­ним из возможных признаков гриппа является высокая температура»).

Кроме того, в задачах, решаемых интеллектуальными системами, часто прихо­дится пользоваться неточными знаниями, которые не могут быть интерпретиро­ваны как полностью истинные или ложные (логические true/false или 0/1). Су­ществуют знания, достоверность которых выражается некоторой промежуточной цифрой, например 0.7.

Лингвистическая переменная (ЛП) - это переменная, значение которой определяется набором вербальных (то есть словесных) характеристик некоторого свойства.

Например, ЛП «рост» определяется через набор {карликовый, низкий, средний, высокий, очень высокий}.

Значения лингвистической переменной (ЛП) определяются через так называе­мые нечеткие множества (НМ), которые в свою очередь определены на некото­ром базовом наборе значений или базовой числовой шкале, имеющей размер­ность. Каждое значение ЛП определяется как нечеткое множество (например, НМ «низкий рост»).

Нечеткое множество определяется через некоторую базовую шкалу В и функцию принадлежности НМ - m(х), хÎВ, принимающую значения на интервале [0...1]. Таким образом, нечеткое множество В - это совокупность пар вида (х, m(х)), где хÎВ.

Часто встречается и такая запись:

В = å(хi / m(хi)), i=1,n.

где хi - i-e значение базовой шкалы.

Функция принадлежности определяет субъективную степень уверенности экс­перта в том, что данное конкретное значение базовой шкалы соответствует опре­деляемому НМ. Эту функцию не стоит путать с вероятностью, носящей объек­тивный характер и подчиняющейся другим математическим зависимостям.

Например, для двух экспертов определение НМ «высокая» для ЛП «цена автомо­биля» в условных единицах может существенно отличаться в зависимости от их социального и финансового положения.

«Высокая_цена_автомобиля_1» - {50000/1 + 25000/0.8 + 10000/0.6 + 5000/0.4}.

«Высокая_цена_автомобиля_2» = {25000/1 + 10000/0.8 + 5000/0.7 + 3000/0.4}

Рассмотрим пример. Пусть перед нами стоит задача интерпретации значений ЛП «возраст», таких как «мо­лодой» возраст, «преклонный» возраст или «переходный» возраст. Определим «воз­раст» как ЛП (рис. 5.9). Тогда «молодой», «преклонный», «переходный» будут значе­ниями этой лингвистической переменной.

Полный базовый набор значений ЛП «возраст» следующий: В - {младенческий, детский, юный, молодой, зрелый, преклонный, старческий}.

Рис. 5.9 - Лингвистическая переменная «возраст» и нечеткие множества, определяющие ее значения

Для ЛП «возраст» базовая шкала - это числовая шкала от 0 до 120, обозначающая ко­личество прожитых лет, а функция принадлежности определяет, насколько мы увере­ны в том, что данное количество лет можно отнести к данной категории возраста. На рис. 5.10 отражено, как одни и те же значения базовой шкалы могут участвовать в опре­делении различных НМ.

0 1 2 3 4 5 6 7 8 9 10

Рис. 5.10 – Формирование нечетких множеств

Например, определить значение НМ «младенческий возраст» можно так:

«младенческий» = { 0.5/1 + 1/0.9 + 2/0.8 + 3/0.7 + 4/0.6 + 5/0.3 + 10/0.1}.

Рисунок 5.11 иллюстрирует оценку НМ неким усредненным экспертом, который ребен­ка до полугода с высокой степенью уверенности относит к младенцам (m = 1). Дети до четырех лет причисляются к младенцам тоже, но с меньшей степенью уверенности (0.5< m <0.9), а в десять лет ребенка называют так только в очень редких случаях - к примеру, для девяностолетней бабушки и 15 лет может считаться младенчеством. Та­ким образом, нечеткие множества позволяют при определении понятия учитывать субъективные мнения отдельных индивидуумов.

0 1 2 3 4 5 6 7 8 9 10 11 Возраст

Рис. 5.11 - График функции принадлежности нечеткому множеству «младенческий возраст»

Усиление или ослабление лингвистических понятий достигается введением спе­циальных квантификаторов.

Например, если понятие «старческий возраст» определяется как

«старческий» = { 60/0.6 + 70/0.8 + 80/0.9 + 90/1},

то понятие «очень старческий возраст» определится как

con(А) = А2 = å(хi / mi2),

i

то есть

«очень старческий возраст» = {60/0.36 + 70/0.64 + 80/0.81 + 90/1}.

В настоящее время в большинство инструментальных средств разработки систем, основанных на знаниях, включены элементы работы с нечеткими множествами, кроме того, разработа­ны специальные программные средства реализации так называемого нечеткого вывода, например «оболочка» FuzzyCLIPS.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: