1626434812-e667f6b6e7e69d3a0798830a58e9075b (844135), страница 49
Текст из файла (страница 49)
Глава 8. Геиетические алгоритмы Как видно, бТО реализует довольно ограниченный генетический алгоритм обучения нейросети по сравнению с тем, который рассматривался в параграфе 3.3. Однако он и не претендует на универсальность. Это всего лишь дополнение к ВгашМаЕег. Но оно предоставляет пользователю массу настраиваемых параметров, что дает широкие возможности для экспериментов. Практика показывает, что применение бТО при построении нейросети в Вга1пМа1ег значительно повышает ее качество.
Здесь мы рассмотрели лишь ничтожную часть программных продуктов, реализуюших генетические алгоритмы. Однако даже приведенные примеры позволяют оценить, насколько они сложны в реализации и просты в применении — требуют от пользователя только формализации задачи и формирования исходных данных. Такая ситуация во многом способствует расширению области применения генетических алгоритмов. Глава 9.
Нечеткая логика и ее применение в экспертных системах 9.1. Предпосылки возникновения нечеткой логики Довольно часто оптимальное решение практической задачи трудно найти, используя классические методы математики. Причины этого состоят в следующем. Во-первых, не всегда возможно сделать приемлемое с точки зрения точности и компактности аналитическое описание решаемой задачи. Во многих случаях затраты на его разработку превысили бы эффект от решения, а кроме того, время, необходимое для получения аналитического описания, как правило, неприемлемо велико.
Но всегда ли такое описание требуется, ведь человек способен находить оптимальные решения, пользуясь лишь абстрактными сведениями и субъективными представлениями о задаче? Во-вторых, в жизни нам постоянно приходится оперировать неточными значениями и не вполне ясными понятиями, однако традиционные методы математики не допускают таких "вольностей".
Осознание этих проблем привело к появлению новой математической дисциплины — нечеткой логики, претендующей на устранение противоречий между математикой и реальным миром. 9.2. Основы нечеткой логики Нечеткая логика ~йкху 1оя1с) — это надмножество классической булевой логики ~55, 561. Она расширяет возможности классической логики, позволяя применять концепцию неопределенности в логических выводах.
Употребление термина "нечеткий" применительно к математической теории может ввести в заблуждение. Более точно ее суть характеризовало бы название "непрерывная логика". Аппарат нечеткой логики столь же строг и точен, как и классический, но вместе со значениями "ложь" и "истина" он позволяет оперировать значениями в промежутке между ними. Говоря образно, нечеткая логика позволяет ощущать все оттенки окружающего мира, а не только чистые цвета.
Нечеткая логика как новая область математики была представлена в 60-х годах профессором калифорнийского университета Лотфи Заде (1 о16 УадеЬ). Первоначально она разрабатывалась как средство моделирования неопределенности естественного языка, однако впоследствии круг задач, в которых нечеткая логика нашла применение, значительно расширился. В настоящее время она используется для управления линейными и нелинейными системами реального времени, при решении задач анализа данных, распознавания, исследования операций. Хлава 9. Нечеткая логика и ее применение в экспертных системах 255 Часто для иллюстрации связи нечеткой логики с естественными представлениями человека об окружающем мире приводят пример о пустыне. Определим понятие "пустыня" как "бесплодная территория, покрытая песком".
Теперь рассмотрим простейшее высказывание: "Сахара — это пустыня". Нельзя не согласиться с ним, принимая во внимание данное выше определение. Предположим, что с поверхности Сахары удалена одна песчинка. Осталась ли Сахара пустынеИ Скорее всего, да. Продолжая удалять песчинки одну за другой, всякий раз оцениваем справедливость приведенного ранее высказывания. По прошествии определенного промежутка времени песка в Сахаре не останется и высказывание станет ложным. Но после какой именно песчинки его истинность меняется~ В реальной жизни с удалением одной песчинки пустыня не исчезает. Пример показывает, что традиционная логика не всегда согласуется с представлениями человека.
Для оценки степени истинности высказываний естественный язык имеет специальные средства (некоторые наречия и обороты, например: "в некоторой степени", "очень" и др.). С возникновением нечеткой логики они появились и в математике. Одно из базовых понятий традиционной логики — понятие подмножества.
Подобно этому в основе нечеткой логики лежит теория нечетких подмножеств (нечеткихмножеств). Эта теория занимается рассмотрением множеств, определяемых небинарными отношениями вхождения. Это означает, что принимается во внимание не просто то, входит элемент во множество или не входит, но и степень его вхождения, которая может изменяться от О до 1.
Пусть 8 — множество с конечным числом элементов, 8=(э„э„..., э 1, где и — число элементов (мощность) множества 8. В классической теории множеств подмножество Ю множества 8 может быть определено как отображение элементов 8 на множество В = 10, 1): 11: 8 =."> В. Это отображение может бьп.ь представлено множеством упорядоченных пар вида: (э. т, 1, 3е(1, и], где э, - 1-й элемент множества 8; л - мощность множества 8; т, - элемент множества В = 10, 1). Если т„, = 1, то э, является элементом подмножества 6.
Элемент "О" множества В используется для обозначения того, что э, не входит в подмножество Ю. Проверка истинности предиката "в„я С" осуществляется путем нахождения пары, в которой э, — первый элемент. Если для этой пары т, = 1, то значением предиката будет "истина", в противном случае - "ложь". Если 0 — подмножество 8, то Ю может быть представлено и-мерным вектором (т „т„,,..., т„„)„где 1-й элемент вектора равен "1", если соответствующий элемент множества 8 входит и в 1.1, и "О" в противном случае. Таким образом, С может быть однозначно представлено точкой в и-мерном бинарном гиперкубе В", В = 10, 1) (см.
рис. 9.1). 256 Базы даниых. Интеллектуальная обработка информации Рис. 9.!. Графическое представление традиционного множества. Нечеткое подмножество Р может быть представлено как отображение элементов множества 8 на интервал 1 = [О, 11. Это отображение определяется множеством упорядоченных пар: (з, т.1з,Ц, ~'е [1, п|, где з, - ~-й элемент множества Я; п - мощность множества $; тф~ а [О, 11— степень вхождения элемента з, в множество Р. Значение т 1Ц, равное 1, означает полное вхождение, т 1з~ = О указывает на то, что элемент з„. не принадлежит множеству Р. Часто отображение задается функцией т 1х1 принадлежности х нечеткому множеству Р.
В силу этого термины '"нечеткое подмножество" и "функция принадлежности" употребляются как синонимы, Степень истинности предиката "з„~ Р" определяется путем нахождения парного элементу з„значения т„ф~, определяющего степень вхождения з„в Р. Обобщая геометрическую интерпретацию традиционного подмножества на нечеткий случай, получаем представление Р точкой в гиперкубе 1",1= [0, 1].
В отличие от традиционных подмножеств точки, изображающие нечеткие подмножества, могут находиться не только на вершинах гиперкуба, но и внутри него (см. рис. 9.2). Рис. 9.2. Графическое представление нечеткого множества. Глава 9. Нечеткая логики и ее применение в экспертных системах 257 Рассмотрим пример определения нечеткого подмножества. Имеется множество всех людей Б.
Определим нечеткое подмножество Т всех высоких людей этого множества. Введем для каждого человека степень его принадлежности подмножеству Т. Для этого зададим функцию принадлежности т ®, определяющую, в какой степени можно считать высоким человека ростом Ь сантиметров. О,Ь < 150 Ь-150 зпКН) = б, 150 ~ Ус ~ 210 1, Ь >210 где А - рост конкретного человека в сантиметрах. График этой функции представлен на рис.
9.3. Рис. 9.3. График фтнкцнп принидлежноппи т (Ь). Пусть рост Михаила - 163 см, тогда истинность высказывания "Михаил высок" будет равна 0.21. Использованная в данном случае функция принадлежности тривиальна. При решении большинства реальных задач подобные функции имеют более сложный вид, кроме того, число их аргументов может быть большим. Методы построения функций принадлежности для нечетких подмножеств довольно разнообразны. В большинстве случаев они отражают субъективные представления экспертов о предметной области. Так, например, кому-то человек ростом 180 см может показаться высоким, а кому-то — нет.
Однако часто такая субъективность помогает снизить степень неопределенности при решении слабо формализованных задач. Как правило, для задания функций принадлежности используются типовые зависимости, параметры которых определяются путем обработки мнений экспертов. Представление произвольных функций при реализации автоматизированных систем часто затруднено, поэтому в реальных разработках такие зависимости аппроксимируются кусочно-линейными функциями. 9 — ЗЯ Базы данных. Интеллектуальная обработка информации Необходимо осознавать разницу между нечеткой логикой и теорией вероятностей.
Заключается она в различии понятий вероятности и степени принадлежности, Вероятность определяет, насколько возможен один из нескольких взаимоисключающих исходов или одно из множества значений. Например, может определяться вероятность того, что утверждение истинно. Утверждение может быть либо истинным, либо ложным. Степень принадлежности показывает„насколько то или иное значение принадлежит определенному классу ~подмножеству). Например, при определении истинности утверждения ее возможные значения не ограничены "ложью" и "истиной", а могут попадать и в промежуток между ними. Еще одно различие выражено в математических свойствах этих понятий. В отличие от вероятности для степени принадлежности не требуется выполнение аксиомы аддитивности.
9.3. Экспертные системы, основанные на нечеткой логике Описанные выше положения можно применять для логического вывода утверждений. Например, если известно, что х ~ А и А ~ В, то из аксиомы вывода имеем х ~ В. Пусть А - множество всех народных депутатов, а В - множество тех, кго пользуется правом бесплатного проезда в общественном транспорте. Тогда утверждение о вхождении А в В трансфорьп~руется в правило вывода: "Если лицо является народным депутатом, то оно пользуется правом бесплатного проезда в общественном транспорте". Если множества не сравнимы непосредственно, может потребоваться дополнительное функциональное преобразование, которое позволит рассматривать одно множество как подмножество другого.