В наших предыдущих главах мы изучали, что нечеткая логика — это подход к вычислениям, основанный на «степенях истины», а не на обычной «истинной или ложной» логике. Он имеет дело с рассуждениями, которые являются приблизительными, а не точными для решения проблем способом, который больше напоминает человеческую логику, поэтому процесс запросов к базе данных посредством двухзначной реализации булевой алгебры не является адекватным.
Нечеткий сценарий отношений по базам данных
Нечеткий сценарий отношений с базами данных можно понять с помощью следующего примера:
пример
Предположим, у нас есть база данных с записями о лицах, посетивших Индию. В простой базе данных у нас будут записи, сделанные следующим образом:
название | Возраст | Гражданин | Посещенная страна | Проведенные дни | Год посещения |
---|---|---|---|---|---|
Джон Смит | 35 | НАС | Индия | 41 | 1999 |
Джон Смит | 35 | НАС | Италия | 72 | 1999 |
Джон Смит | 35 | НАС | Япония | 31 | 1999 |
Теперь, если кто-то спросит о человеке, который посетил Индию и Японию в 99 году и является гражданином США, то на выходе будут показаны две записи с именем Джона Смита. Это простой запрос, генерирующий простой вывод.
Но что, если мы хотим знать, молод человек в приведенном выше запросе или нет. Согласно вышеуказанному результату возраст человека составляет 35 лет. Но можем ли мы считать человека молодым или нет? Аналогичным образом, то же самое можно применить к другим полям, таким как дни, проведенные в году посещения и т. Д.
Решение вышеуказанных проблем можно найти с помощью наборов нечетких значений следующим образом:
-
Ф.В. (возраст) {очень молодой, молодой, несколько старый, старый}
-
FV (Проведенные дни) {всего несколько дней, несколько дней, довольно много дней, много дней}
-
FV (год посещения) {далекое прошлое, недавнее прошлое, недавнее}
-
Теперь, если любой запрос будет иметь нечеткое значение, результат также будет нечетким по своей природе.
Ф.В. (возраст) {очень молодой, молодой, несколько старый, старый}
FV (Проведенные дни) {всего несколько дней, несколько дней, довольно много дней, много дней}
FV (год посещения) {далекое прошлое, недавнее прошлое, недавнее}
Теперь, если любой запрос будет иметь нечеткое значение, результат также будет нечетким по своей природе.
Система нечетких запросов
Система нечетких запросов — это интерфейс для пользователей, чтобы получать информацию из базы данных, используя (квази) предложения на естественном языке. Было предложено много реализаций нечетких запросов, что привело к немного отличающимся языкам. Хотя существуют некоторые вариации в соответствии с особенностями различных реализаций, ответ на нечеткое предложение запроса, как правило, представляет собой список записей, ранжированных по степени соответствия.