Бахусова Е.В.
Тольяттинский филиал Российского государственного
социального университета, доцент, [email protected]
Нечёткая математика для 1Т- специалистов
Аннотация
В статье изложен краткий исторический очерк развития нечёткой математики, дан обзор сфер применения приложений нечёткой математики, выделены методические особенности преподавания дисциплины «Нечёткая математика» в вузе для будущих ¡^специалистов.
Математическая подготовка ^-специалистов в вузе за последнее десятилетие пополнилась новой дисциплиной, знакомящей студентов с основами и приложениями нечёткой математики (fuzzy-математика). Нечёткая математика зародилась и сформировалась во второй половине прошлого столетия в связи с развитием интеллектуальных систем. Чтобы максимально приблизить механизм компьютерной обработки информации к мышлению человека, необходимо было разработать новый математический аппарат, формализующий неоднозначные, нечёткие утверждения типа «высокая скорость», «низкая зарплата», «молодой человек» или нечёткие оценки типа «неплохо», «более или менее», «скорее да, чем нет» и т.д. Базовые понятия нового направления в математике -«нечеткое множество», «нечёткое отношение», «нечёткое высказывание», «нечёткое число» и т.д. послужили началом для математических исследований, в рамках которых за короткий срок были предложены нечеткие обобщения всех основных теоретико-множественных и формально-логических понятий.
Основателем нечёткой математики принято считать профессора Калифорнийского университета (Беркли) Лотфи Заде, родившегося в Азербайджане в 1921 году [1]. С 1944 года Л.Заде проживает в США. Первая работа, принесшая ему известность в международном сообществе, посвящена частотному анализу нестационарных цепей. В 1952 году вместе с Ч. Рагассини он предлагает интересное обобщение теории экстраполяции Н. Винера. В это же время Л.Заде работает над методом Z-преобразования для дискретных систем. В 1957 году он становится профессором Колумбийского университета в сфере электрической инженерии и, по рекомендации Н.Винера, переезжает в Калифорнию. В Калифорнийском университете в Беркли он возглавляет кафедру компьютерных наук и электротехники. В 1963 году предлагает теорию пространства состояний, в корне изменившую теорию управления, и вместе с Ч. Дезоиром опубликовывает книгу «Теория линейных систем». В середине 1960-х годов
Лотфи Заде становится одним и самых известных специалистов в области теории автоматического управления и её приложений. В 1965 году Лотфи Заде опубликовал первую научную статью по нечётким множествам «Fuzzy Sets» [2] . Термин «fuzzy» в переводе с английского означает «нечеткий», «размытый», «пушистый». Есть мнение, что импульсом для создания новой теории послужил спор профессора Л. Заде со своим другом о том, чья из жен привлекательнее. К единому мнению они так и не пришли, но этот спор побудил ученого разработать концепцию, позволяющую формализовать на математическом языке нечеткие понятия типа «привлекательность».
Вместе с разработкой теоретических основ нечёткой математики, Лотфи Заде прорабатывал возможности ее практического применения. В 1973 году ему удалось показать, что нечеткая логика может быть положена в основу нового поколения интеллектуальных систем управления.
Наиболее значимыми из работ в области нечёткой математики следует отметить публикации Л. Заде, Д. Дюбуа (D. Dubois) и А. Прада (Н. Prade) по теории нечеткой меры и меры возможности, М.Сугено (М. Sugeno) по нечеткому выводу и нечеткому интегралу, Дж. Беждека (J. Bezdek) по нечеткой кластеризации и распознаванию образов, Р. Ягера (R. Yager) по нечеткой логике [3].
В середине 1970-х г.г. были предложены первые реализации нечетких моделей в промышленности, а в начале 1980-х гг. нечеткая математика получила свое дальнейшее развитие в целом ряде программных средств поддержки принятия решений и в экспертных системах анализа данных.
В конце 1980-х годов Бартоломеем Коско была доказана теорема о нечеткой аппроксимации (Fuzzy Approximation Theorem), согласно которой любая математическая система может быть аппроксимирована системой, основанной на нечеткой логике. Была исследована взаимосвязь нечеткой логики и теории нейронных сетей [4]. В работах М. Земанковой (Maria Zemankova-Leech) и А. Кандела (Abraham Kandel) были заложены основы теории нечетких систем управления базами данных, способных оперировать неточными данными, обрабатывать нечетко заданные запросы, а также использовать качественные параметры наряду с количественными. Была разработана нечеткая алгебра, позволяющая использовать при вычислениях как точные, так и приблизительные значения переменных [5]. Широкое распространение получили изобретенные Б. Коско нечеткие когнитивные модели (Fuzzy Cognitive Maps), на которых базируется большинство современных систем динамического моделирования в области финансов, политики и бизнеса.
В настоящее время приложения нечеткой математики можно найти в сотнях промышленных изделий — от систем управления электропоездами и боевыми вертолетами до бытовой техники. Нечеткая логика используется для принятия политических решений и моделирования возможных кризисных ситуаций в современных ситуационных центрах
руководителей западных стран, в программных системах, обслуживающих большой бизнес. Например, компания Yamaichi Securities на основе нечёткой логики разработала интеллектуальную банковскую систему для средне и долгосрочных операций с корпоративными бумагами системы, а компания Fuji Bank предложила нечеткую экспертную систему, управляющую игрой «электронного трейдера» на рынке ценных бумаг в режиме «on-line» (которую брокеры называют «коррида»). Первый год использования новой системы приносил банку в среднем $770000 в месяц [3].
Американская компания Hyper Logic является разработчиком одной из самых мощных экспертных систем на основе нечеткой логики CubiCalc, которая сегодня применяется при решении десятков различных задач — от адаптивного управления оптовыми складами до моделирования рынка фьючерсных контрактов. Большинство пользователей CubiCalc — это финансовые и политические аналитики.
Нечеткой логике обязано своим рождением и новое поколение систем имитационного моделирования. Большинство программных комплексов, используемых в мире для экономического, политического и финансового моделирования, базируется на методах динамики систем (system dynamics), а последняя, в свою очередь, использует аппарат нечетких когнитивных схем (FCM), предложенных Б. Коско в начале 80-х ХХ в. и впервые испытанных «в боевых условиях» во время политического кризиса в Южной Африке. Без систем когнитивного моделирования не обходится ни один ситуационный центр военного и политического руководства западных стран [3].
Перечисленные выше программы — это сложные комплексные системы, требующие определенных усилий по освоению и настройке. К семейству легких и компактных программ, основанных на нечеткой алгебре, относится пакет FuziCalc американской фирмы FuziWare. Внешне FuziCalc — это обычная электронная таблица, оперирующая нечёткими числами. Благодаря своей компактности и простоте интерфейса, пакет FuziCalc в большом почете у бизнесменов, банкиров, крупных оптовиков, различных служб быстрого реагирования - спасателей из МЧС и др. Там, где исходные данные неточны и неполны, а скорость получения первых оценок критична, нечеткая алгебра практически не имеет альтернатив. На принципах нечеткой алгебры построен и один из отечественных программных продуктов «Бизнес-прогноз». Назначение этого пакета — оценка рисков и потенциальной прибыльности различных бизнес-планов, инвестиционных проектов и просто идей по развитию бизнеса.
Приведённый выше (далеко неполный) обзор программных продуктов, разработанных на основе нечёткой математики, и востребованность этих продуктов в различных областях профессиональной деятельности человека подтверждают важность знания нечёткой математики и её приложений в подготовке IT-специалистов. Использование
готовых программных продуктов для решения стандартных задач, как правило, не требуют от пользователя теоретических знаний нечёткой математики. Но эти знания необходимы для поиска новых возможностей применения нечёткой математики.
Остановимся подробнее на методических особенностях преподавания дисциплины «Нечёткая математика». Содержательно дисциплина делится на два раздела: первый раздел — основы нечёткой математики, второй раздел - алгоритмы задач принятия решений на основе нечёткой математики. В таблице 1 представлено содержание первого раздела: темы раздела, содержание тем и теоретические знания из классической математики, которые желательно знать студентам перед изучением тем. _Таблица 1
Темы Содержание тем Теоретические знания классической математики
Тема 1. Определение и основные Понятие множества. Числовые
Нечёткие характеристики нечёткого множества (^ Z,Q,R). Мощность
множества множества. множества. Способы задания
Виды и способы задания множеств. Упорядоченные
функций принадлежности. множества. Сравнение множеств.
Сравнение нечётких множеств. Операции над нечеткими множествами. Операции над множествами. Способы задания линейной функци. Собственный вектор матрицы. Вероятность события. Относительные и абсолютные величины. Индексы.
Расстояние между нечёткими множествами. Индексы нечёткости.
Тема 2. Определения нечёткой Определение нечёткого множества.
Нечёткие величины, нечёткого числа и
величины, нечёткого интервала
числа и Операции над нечёткими
интервалы числами и интервалами.
Тема 3. Определение нечёткого Декартово произведение
Нечёткие отношения. Способы задания и множеств.
отношения основные характеристики Понятие п-местного отношения.
нечёткого отношения Бинарные отношения.
Сравнение нечётких отношений. Ориентированный граф.
Операции над нечёткими Операции над отношениями.
отношениями Произведение матриц.
Композиция бинарных нечётких Свойства бинарных отношений,
отношений. заданных на одном множестве:
Свойства бинарных нечётких рефлексивность, симметричность,
отношений, заданных на одном транзитивность.
универсуме.
Тема 5. Нечёткие высказывания и Высказывания. Логические
Элементы нечёткие логические операции. операции над высказываниями.
нечёткой Нечёткие логические формулы и Логические формулы.
логики. их свойства. п-местный предикат. Операции
Нечёткие предикаты и кванторы. навешивания кванторов общности и
Нечёткая и лингвистическая существования.
переменная.
Нечёткие лингвистические
__высказывания.__
Как видно из третьего столбца таблицы 1, изучение раздела «Основы нечёткой математики» предполагает наличие у студентов знаний по теории множеств, математическому анализу, математической логике, теории вероятностей и математической статистике, линейной алгебре, что, к сожалению, далеко не всегда наблюдается в реальности. Специфика дисциплины заключается в том, что большинство вводимых в нечёткой математике понятий обобщают соответствующие понятия классической (чёткой) математики. Учитывая данную специфику дисциплины и математическую подготовку студентов, у лектора есть как минимум две стратегии проектирования содержания лекционного и теоретического материала дисциплины.
Первая стратегия рассчитана на математически подготовленного студента. В этом случае теоретический материал по нечёткой математике можно преподносить с опорой на уже известные понятия (свойства) из классической математики (множества, отношения, высказывания и т.д.) как их обобщение. Студенты способны самостоятельно сформулировать некоторые определения, например, определения операций пересечения, объединения, разности нечётких множеств. Такой подход естественным образом подготавливает систему задач на доказательство того, что некое понятие (свойство) классической математики является частным случаем соответствующего понятия (свойства) нечёткой математики. Например:
• Доказать, что любое обычное множество является частным случаем нечёткого множества. Обратное неверно.
• Доказать, что в нечёткой логике не работает закон исключённого третьего.
• Показать, что любое действительное число является нечётким числом.
В учебно-методическом пособии «Нечёткая математика для программистов» [6] предложена система задач по всем темам, указанным в таблице 1.
Вторая стратегия подразумевает слабую математическую подготовку студентов. При этом целесообразно сразу приступать к изложению теории нечёткой математики, а соответствующие понятия классической математики вводить как частные случаи. Практические занятия в этом случае будут посвящены отработке введенных понятий, свойств и т.д.
Второй раздел дисциплины посвящён алгоритмам принятия решений на основе нечёткой математики. В таблице 2 перечислены алгоритмы и соответствующие им знания по классической и нечёткой математике, необходимые для неформального понимания алгоритмов.
Название алгоритма Теоретические знания классической математики Теоретические знания нечёткой математики
Метод анализа иерархий Матрица. Собственный вектор матрицы. Нормирование вектора. Нечёткое множество. Выпуклая комбинация нечётких множеств
Задача принятия решения группой экспертов, характеризуемы х весовыми коэффициентам и. Матрица. Транспонирование матриц. Разность матриц. Нечёткое отношение. Обратное нечёткое отношение. Операции разности, объединения, пересечения нечётких отношений. Выпуклая комбинация нечётких отношений. Нечёткое множество. Пересечение нечётких множеств.
Задача принятия решения группой экспертов, характеризуемы х нечётким отношением нестрого предпочтения между ними. Матрица. Транспонирование матриц. Операции над матрицами. Нечёткое отношение. Обратное нечёткое отношение. Операции разности, объединения, пересечения нечётких отношений. Выпуклая комбинация нечётких отношений. Композиция нечётких отношений. Нечёткое множество. Пересечение нечётких множеств.
Системы нечёткого логического вывода. Продукционные системы. База знаний продукционной системы. Логические операции: импликация, конъюнкция, дизъюнкция, отрицание. Лингвистические переменные. Нечёткие логические формулы. Нечёткие логические операции конъюнкции, дизъюнкции, импликации, отрицания. Операции разности, объединения, пересечения нечётких множеств.
Ограниченность учебного времени не позволяет дать строгое математическое обоснование каждого алгоритма. Но аппарат нечёткой математики максимально приближен к мышлению человека, интуитивно понятен, что позволяет объяснить каждый шаг алгоритма. Поэтому, в качестве упражнения студентам можно предложить прокомментировать каждый шаг изучаемого алгоритма, то есть перевести с математического (формального) языка на обычный язык. Например, в таблице 3 приведены первые шаги алгоритма задачи принятия решений группой экспертов, характеризуемых весовыми коэффициентами. Студентам предлагается самостоятельно заполнить третий столбец в виде комментария к каждому
шагу алгоритма. В таблице 3 столбец с комментариями уже заполнен. Заполненная таблица выдаётся студентам, испытывающим затруднение.
Таблица 3
№ шага Описание шага алгоритма на математическом языке Неформальный комментарий
1. Найти нечёткое отношение нестрого предпочтения как пересечение нечётких отношений (Д, (¿2, ..., (¿т. С>= (}1и(}2и...и(}т. Нечёткое отношение выражает совместное пессимистическое, критическое или минимальное, мнение экспертов относительно парных сравнений альтернатив из множества и.)
2. Найти нечёткое отношение С}"1, обратное к нечёткому отношению Отношение выражает степень предпочтения альтернативы ш перед альтернативой и], отношение О"1 выражает степень предпочтения альтернативы перед альтернативой ш
3. Найти нечёткое отношение как разность нечётких отношений и С}1. = / (Г. Нечёткое отношение строгого предпочтения выражает, какие альтернативы ш доминируют над альтернативами и] и с какой разницей это доминирование происходит.
Как правило, студенты с лёгкостью используют алгоритмы задач принятия решений для конкретных ситуаций и творчески подходят к поиску своих формулировок задач, решаемых при помощи изученных алгоритмов. В пособии «Автоматизированные информационные системы поддержки принятия решений» [7] изложены приведённые выше алгоритмы и дано описание информационных систем, реализующих данные алгоритмы.
Литература
1. Пашаева Г. Великий и простой азербайджанец Лютфи Заде. Сайт «Day.As» ÎURLhttp://news.dav.az/societv/131685.html 09.09.2012).
2. Zadeh L. A. (1965) «Fuzzy sets». Information and Control 8 (3) 338-353.
3. Масалович А. . Нечёткая логика: на гребне «Третьей волны»». Сайт «Тора-^m^^URL http://www.tora-centre.ru/library/fuzzy/ct fuz.htm 02.09.2012).
4. Kosko, Bart. Fuzzy thinking / Hyperion, 1993. 5. Kosko, Bart. Neural Networks and Fuzzy Systems / Englewood Cliffs, NJ: Prentice-Hall, 1991.
5. Zemankova-Leech, Maria, and Abraham Kandel. Fuzzy Relational Data Bases: A Key to Expert Systems / Cologne: Verlag TUV Rheinland, 1984.
6. Бахусова Е.В. Нечёткая математика для программистов: учебно-методическое пособие. Тольятти: ТФ РГСУ, 2012. 88 с.
7. Бахусова Е.В. Автоматизированные информационные системы поддержки принятия решений: учебное пособие. Тольятти: ТФ РГСУ, 2012. 88 с.