Нечеткая логика

Автор: Пользователь скрыл имя, 05 Января 2012 в 21:39, доклад

Описание работы

Наверное, самым впечатляющим у человеческого интеллекта является способность принимать правильные решения в условиях неполной и нечеткой информации. Построение моделей приближенных размышлений человека и использование их в компьютерных системах представляет сегодня одну из важнейших проблем науки.
Основы нечеткой логики были заложены в конце 60-х лет в работах известного американского математика Латфи Заде. Исследования такого рода было вызвано возрастающим неудовольствием экспертными системами. Хваленый "искусственный интеллект", который легко справлялся с задачами управления сложными техническими комплексами, был беспомощным при простейших высказываниях повседневн

Содержание

Нечеткие множества
Основные характеристики нечетких множеств
Примеры нечетких множеств
Методы построения функций принадлежности нечетких множеств
Операции над нечеткими множествами
Примеры
Наглядное представление операций над нечеткими множествами
Свойства операций И і З
Нечеткая и лингвистическая переменные
Пример
Нечеткие высказывания и нечеткие модели систем
Высказывания на множестве значений фиксированной лингвистической переменной
Нечеткие множества в системах управления
Общая структура нечеткого микроконтроллера
Преимущества нечетких систем
Применение нечетких систем

Работа содержит 1 файл

нечёткие множества.docx

— 98.11 Кб (Скачать)

Вместе с рассмотренными выше базовыми значениями лингвистической  переменной "толщина" (Т={"маленькая  толщина", "средняя толщина", "большая толщина"}) существуют значения, зависящие от области определения  Х. В данном случае значения лингвистической  переменной "толщина изделия" могут быть определены как "около 20 мм", "около 50 мм", "около 70 мм", то есть в виде нечетких чисел.

Функции принадлежности нечетких множеств:

"маленькая  толщина" = А1 , "средняя толщина"= А2, " большая толщина"= А3.

Функция принадлежности:

нечеткое множество "маленькая или средняя толщина" = А1ИА1.

Нечеткие  высказывания и нечеткие модели систем

Нечеткими высказываниями будем называть высказывания следующего вида:

  1. Высказывание <b есть b'>, где b - имя лингвистической переменной, b' - ее значение, которому соответствует нечеткое множество на универсальном множестве Х. Например, высказывание <давление большое> предполагает, что лингвистической переменной "давление" предоставляется значение "большой", для которого на универсальном множестве Х переменной "давление" определено, соответственно данному значению "большой", нечеткое множество.
  2. Высказывание <b есть mb'>, де m - модификатор, которому соответствуют слова "ОЧЕНЬ", "БОЛЕЕ ИЛИ МЕНЕЕ", "НАМНОГО БОЛЬШЕ" и др.
  3. Сложные высказывания, образованные из высказываний вида 1. и 2. и союзов "И", "ИЛИ", "ЕСЛИ.., ТОГДА...", "ЕСЛИ.., ТОГДА.., ИНАЧЕ".

Высказывания  на множестве значений фиксированной лингвистической  переменной

Если значения фиксированной лингвистической  переменной соответствуют нечетким множествам одного универсального множества  Х, можно отождествлять модификаторы "очень" или "нет" с операциями "CON" и "дополнение", а союзы "И", "ИЛИ" с операциями "пересечение" и "объединение" над нечеткими  множествами.

Для иллюстрации  понятия лингвистической переменной мы в качестве примера рассматривали  лингвистическую переменную "толщина  изделия" с базовым терм-множеством Т = {"маленькая", "средняя", "большая"}. При этом на Х = [10, 80] мы определили нечеткие множества А1, А2, А3, соответствующие  базовым значениям: "маленькая", "средняя", "большая".

В этом случае высказыванию <толщина изделия очень маленькая> отвечает нечеткое множество CONA = A2; высказыванию <толщина изделия не большая  или средняя> - нечеткое множество  А2И  ; высказыванию <толщина изделия не маленькая и не большая> А1З .

Нечеткие  множества в системах управления

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

Общая структура нечеткого  микроконтроллера

Общая структура  микроконтроллера, использующего нечеткую логику, показана на рис.1. Она содержит:

  • блок фаззификации;
  • базу знаний;
  • блок решений;
  • блок дефаззификации.

Блок фаззификации преобразует четкие величины, измеренные на выходе объекта управления, в  нечеткие величины, которые описаны  лингвистическими переменными в  базе знаний.

Блок решений  использует нечеткие условные ( if - then ) правила, заложенные в базу знаний, для преобразования нечетких входных  данных в необходимые управляющие  влияния, которые также носят  нечеткий характер.

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

Рис. 1. Общая  структура нечеткого микроконтроллера

В качестве примера  известных микроконтроллеров, использующих нечеткую логику можно назвать 68HC11, 68HC12 фирмы Motorola, MCS-96 фирмы Intel, а также  некоторые другие.

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

Рассмотрим случай управления мобильным роботом, задачей  которого является объезд препятствий. Введем две лингвистические переменные: ДИСТАНЦИЯ (расстояние от робота до препятствия) и НАПРАВЛЕНИЕ (угол между продольной осью робота и направлением к препятствию).

Рассмотрим лингвистическую  переменную ДИСТАНЦИЯ. Ее значения можно  определить термами ДАЛЕКО, СРЕДНЕ, БЛИЗКО и ОЧЕНЬ БЛИЗКО. Для физической реализации лингвистической переменной необходимо определить точные физические значения термов этой переменной. Пусть  переменная ДИСТАНЦИЯ может принимать  любые значения из диапазона от нуля до бесконечности. Согласно теории нечетких множеств, в таком случае каждому  значению расстояния из указанного диапазона  может быть поставлено в соответствие некоторое число от нуля до единицы, которая определяет степень принадлежности данного физического расстояния (допустим 40 см) до того или другого  терма лингвистической переменной ДИСТАНЦИЯ. Степень принадлежности определяем функцией принадлежности М(d), где d - расстояние до препятствия. В  нашем случае расстояние 40 см. Можно  задать степень принадлежности до терма  ОЧЕНЬ БЛИЗКО равное 0,7 , а до терма  БЛИЗКО - 0,3 (рис. 2.). Конкретное определение  степени принадлежности проходит только при работе с экспертами.

Рис. 2. Лингвистическая  переменная и функция принадлежности

Переменной НАПРАВЛЕНИЕ, которая принимает значения в  диапазоне от 0 до 360 градусов, зададим  термы ЛЕВЫЙ, ПРЯМОЙ и ПРАВЫЙ.

Теперь необходимо задать исходные переменные. В данном примере достаточно одной, которую  назовем РУЛЕВОЙ УГОЛ. Она может  содержать термы: РЕЗКО ВЛЕВО, ВЛЕВО, ПРЯМО, ВПРАВО, РЕЗКО ВПРАВО. Связь  между входом и выходом запоминается в таблице нечетких правил.

Таблица нечетких правил

Каждая запись в данной таблице соответствует  своему нечеткому правилу, например "Если дистанция близко и направление  правое , тогда рулевой угол резко  влево".

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

Преимущества  нечетких систем

Коротко перечислим преимущества fuzzy-систем по сравнению  с другими:

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

Применение  нечетких систем

Что касается отечественного рынка коммерческих систем на основе нечеткой логики, то его формирование началось в середине 1995 года. Популярными  являются следующие пакеты:

  • CubiCalc 2.0 RTC - одна из мощных коммерческих экспертных систем на основе нечеткой логики, позволяющая создавать собственные прикладные экспертные системы ;
  • CubiQuick - дешевая "университетская" версия пакета CubiCalc ;
  • RuleMaker - программа автоматического извлечения нечетких правил из входных данных ;
  • FuziCalc - электронная таблица с нечеткими полями, позволяющая делать быстрые оценки при неточных данных без накопления погрешности;
  • OWL - пакет, содержащий исходные тексты всех известных видов нейронных сетей, нечеткой ассоциативной памяти и т.д.

Основными потребителями  нечеткой логики на рынке СНГ являются банкиры и финансисты, а также  специалисты в области политического  и экономического анализа. Они используют CubiCalc для создания моделей разных экономических, политических, биржевых ситуаций. Что же касается пакета FuziCalc, то он занял свое место на компьютерах  больших банкиров и специалистов по чрезвычайным ситуациям - то есть тех, для кого важна скорость проведения расчетов в условиях неполноты и  неточности входной информации. Однако можно с уверенностью сказать, что  эпоха расцвета прикладного использования  нечеткой логики на отечественном рынке  еще впереди.

Сегодня элементы нечеткой логики можно найти в  десятках промышленных изделий - от систем управления электропоездами и боевыми  вертолетами до пылесосов и стиральных машин. Без применения нечеткой логики немыслимы современные ситуационные центры руководителей западных стран, где принимаются ключевые политические решения и моделируются разные кризисные  ситуации. Одним из впечатляющих примеров масштабного применения нечеткой логики стало комплексное моделирование  системы здравоохранения и социального  обеспечения Великобритании (National Health Service - NHS), которое впервые позволило  точно оценить и оптимизировать затраты на социальные нужды.

Не обошли средства нечеткой логики и программные системы, обслуживающих большой бизнес. Первыми, разумеется, были финансисты, задачи которых  требуют ежедневного принятия правильных решений в сложных условиях непредвиденного  рынка. Первый год использования  системы Fuji Bank принес банку в среднем $770000 на месяц (и это только официально объявленная прибыль!).

Вслед за финансистами, обеспокоенные успехами японцев  и потерей стратегической инициативы, когнитивными нечеткими схемами  заинтересовались промышленные гиганты  США. Motorola, General Electric, Otis Elevator, Pacific Gas & Electric, Ford и другие в начале 90-х  начали инвестировать в разработку изделий, использующих нечеткую логику. Имея солидную финансовую "поддержку", фирмы, специализирующиеся на нечеткой логике, получили возможность адаптировать свои разработки для широкого круга  применений. "Оружие элиты" вышло  на массовый рынок.

Среди лидеров  нового рынка выделяется американская компания Hyper Logic, основанная в 1987 году Фредом Уоткинсом (Fred Watkins). Сначала  компания специализировалась на нейронных  сетях, однако в скором времени целиком  сконцентрировалась на нечеткой логике. Недавно вышла на рынок вторая версия пакета CubiCalc фирмы HyperLogic, которая  является одной из мощнейших экспертных систем на основе нечеткой логики. Пакет  содержит интерактивную оболочку для  разработки нечетких экспертных систем и систем управления, а также run-time модуль, позволяющий оформлять созданные  пользователем системы в виде отдельных программ.

Кроме Hyper Logic среди "патриархов" нечеткой логики можно  назвать фирмы IntelligenceWare, InfraLogic, Aptronix. Всего же на мировом рынке представлено более 100 пакетов, которые так или  иначе используют нечеткую логику. В трех десятках СУБД реализована функция нечеткого поиска. Собственные программы на основе нечеткой логики анонсировали такие гиганты как IBM, Oracle и другие.

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

Информация о работе Нечеткая логика