О журнале
Рекомендации
Нечеткая логика и точные знания
Золотарев В.В., Масалович А.И.
________________________________
Золотарев В.В., Масалович А.И.
Рассмотрены возможности новой предметной области искусственного интеллекта методов нечеткой логики. Анализируются ее достижения при совместном использовании с другими компьютерными технологиями ИИ: нейронными сетями и генетическими алгоритмами. Кратко охарактеризованы лучшие известные прикладные программные пакеты на базе нечеткой логики для широкого использования в науке, технике и бизнесе.
Поезд на Сендай тронулся настолько плавно, что никто не успел заметить момента начала движения. Лишь с неправдоподобным ускорением рванулся назад индустриальный пейзаж за окном. И только один из пассажиров знал секрет колдовской мягкости хода и экономичности этой необычной "электрички". Это был Лотфи Заде (Lotfi Zadeh), профессор из университета Беркли, чьи работы в конце 60-х годов дали начало новой науке — fuzzy logic или нечеткой логике. Действительно, движением пригородных поездов до японского города Сендай, начиная с 1987 года, управляет система, основанная на нечеткой логике (кстати, некоторые характеристики этой системы и сегодня - спустя почти десятилетие - остаются недостижимыми для железнодорожников многих стран).
Судьба нечеткой логики, как нового научного направления, сходна с ее содержимым - необычна, сложна и парадоксальна. Обвинения в шаманстве и лженаучности преследуют ее уже более четверти века. В США еще помнят времена, когда увлечение теорией Заде могло всерьез повредить карьере молодого ученого. Достаточно сказать, что даже в 1989 г., когда примеры успешного применения Нечеткой логики в обороне, промышленности и бизнесе исчислялись десятками, Национальное научное общество США всерьез обсуждало вопрос об исключении материалов по нечетким множествам из институтских учебников.
Итак, что же это за наука, которую одни считают ключом к компьютерам будущего, а другие — авантюрой и спекуляцией? В основе нечеткой логики лежит теория нечетких множеств, изложенная в серки работ Л. Заде в 1965-1973 годах [1]. В этих работах рассматриваются элементы Множеств, для которых функция принадлежности представляет собой не жесткий порог (принадлежит/не принадлежит), а плавную сигмоиду (часто упрощаемую ломаной линией), пробегающую все значения от нуля до единицы. Кстати, некоторые ученые полагают, что само название "fuzzy" (что означает "нечеткий", "размытый", "пушистый") применительно к теории Заде является не совсем адекватным и излишне рекламным и предлагают заменить его на более точное — "непрерывная логика".
Надо сказать, что понятие нечеткого множества вполне согласуется с нашими интуитивными представлениями об окружающем мире. Большая часть используемых нами понятий по своей природе нечетки и размыты и попытка загнать их в шоры двоичной логики приводит к недопустимым искажениям. Попробуйте, например, построить пороговую функцию принадлежности для множеств "взрослый", "популярный", "качественный", "быстрый" и т.д.! А в рамках теории нечетких множеств эта задача не вызывает никаких затруднений. Возьмем, например, понятие "взрослый" и попробуем построить функцию принадлежности человека ко множеству взрослых людей. По оси абсцисс откладывается возраст, по оси ординат мера принадлежности множеству "взрослый". Очевидно, что до определенного значения возраста (скажем, 15 лет) человек явно "не взрослый" и значение функции принадлежности будет равно нулю, а после некоторого возраста (например, 30 лет) очевидно "взрослый", и значение функции равно единице. Соединим полученные горизонтальные отрезки наклонной линией, и функция, описывающая понятие "взрослый", готова. Теперь вы можете использовать это понятие (не заботясь более о его нечеткой природе) в работе с базами данных, экспертными системами и электронными таблицами, т. е. там, где ранее ни о какой неточности не могло быть и речи.
Несмотря на внешнюю простоту и естественность базовых понятий нечеткой логики, понадобилось более пяти лет,, чтобы построить и доказать комплекс постулатов и теорем, делающих логику логикой, а алгебру — алгеброй. Параллельно с разработкой теоретических основ новой науки, Заде прорабатывал различные возможности ее практического применения. И в 1973 г. эти усилия увенчались успехом — ему удалось показать, что нечеткая логика может быть положена в основу нового поколения интеллектуальных систем управления. Практически сразу после выхода в свет фундаментального доклада Заде [2] одна небольшая предприимчивая фирма из Дании применила изложенные в нем принципы для усовершенствования системы управления сложным производственным процессом. Результат, что называется, превзошел все ожидания — через четыре года прибыли от внедрения новой системы исчислялись десятками тысяч долларов.
Чтобы понять, что дает применение нечеткой логики в системах управления, рассмотрим простой пример. Представьте себе, что вам необходимо разработать систему управления тяжелым длинномерным грузовиком, способную автоматически загонять его в узкий гараж из произвольной начальной точки. Если вы попытаетесь решить эту задачу классическим способом, то вам можно только посочувствовать. Придется в буквальном смысле слова увешать автомобиль всевозможными датчиками и акселерометрами, после чего привлечь пару докторов наук для составления отнюдь не простой системы уравнения в частных производных.
Использование нечеткой логики принципиально упрощает задачу. Прежде всего, используя лишь три нечетких параметра — скорость, ориентацию автомобиля и расстояние до гаража, вы получаете исчерпывающее описание текущей ситуации. Далее вы строите простую и естественную систему нечетких правил типа: "Если до гаража достаточно далеко, скорость невелика, а нос смотрит влево — возьми правее". В пакете CubiCalc, одном из наиболее популярных пакетов на основе нечеткой логики, для .полной реализации указанной задачи понадобилось описать лишь двенадцать ситуаций и тридцать пять нечетких правил — каждое не сложнее приведенного выше. Вы можете часами наблюдать за кружевом трасс на экране — действия системы экономичны и безошибочны.
Этот несложный пример позволяет проиллюстрировать два ключевых преимущества нечеткой логики по сравнению с другими методами построения систем управления. Во-первых, при тех же объемах входной и выходной информации, центральный блок принятия решений становится компактнее и проще для восприятия человеком. Во-вторых, решение сложной и громоздкой задачи вычисления точных воздействий подменяется значительно более простой и гибкой стратегией адаптивного "подруливания" при сохранении требуемой точности результата!
Совершенно естественно, что мимо такого перспективного инструмента не могли пройти военные — ив начале 80-х годов в Японии, а затем и в США в обстановке глубокой секретности были развернуты комплексные работы по использованию нечеткой логики в различных оборонных проектах. Одним из самых впечатляющих результатов стало создание управляющего микропроцессора на основе нечеткой логики (т.н. "fuzzy-chip"), способного автоматически решать известную "задачу о собаке, догоняющей кота". Разумеется, в роли кота выступала межконтинентальная ракета противника, а в роли собаки — мобильная зенитная ракета, слишком легкая для установки на нее громоздкой традиционной системы управления. Кстати, задача о коте и собаке с той поры относится к разряду классических, обошла все учебные пособия и пакеты по нечеткой логике, и вы можете вдоволь поэкспериментировать с различными стратегиями поражения движущейся цели одним или несколькими самоуправляемыми зарядами. Между прочим, впоследствии те же методы нечеткой логики позволили решить и обратную задачу — разработать маневры для эффективного ухода от антиракет.
Первый успех окрылил военных и нечеткая логика уверенно заняла свое место в ряду стратегически важных научных дисциплин. Возникла парадоксальная ситуация — официально не признаваемая американской академической наукой нечеткая логика в то же время вошла в перечень передовых технологий, запрещенных комитетом СОСОМ к экспорту из США. Автору этой статьи доводилось принимать участие в получении лицензии на ввоз в Россию пакетов CubiCalc и CubiQuick и держать в руках более новую программу RuleMaker с красной наклейкой "Запрещен к вывозу из США".
Однако основные результаты использования нечеткой логики в прикладных задачах были получены не военными, а промышленниками, и не в США, а в противоположном полушарии — в Японии. Да-да, изобретенная и разработанная в США нечеткая логика начала свой триумфальный путь на массовый рынок в далекой азиатской стране. Такое, впрочем, случалось и ранее (например, с технологиями плоских экранов для портативных компьютеров), однако обычно это было связано с непомерными по американским меркам долгосрочными инвестициями. В случае же с нечеткой логикой причина была совершенно иной — новая наука оказалась абсолютно чуждой менталитету рациональных американцев (исключение составляет Бартоломей Коско (Bart Kosko), молодой классик "второй волны" нечеткой логики в США, однако он также является приверженцем буддизма и имеет черный пояс по карате). Нечеткие, зыбкие построения fuzzy logic выглядят иррациональными и на удивление созвучными ранним восточным философиям. Не случайно среди приверженцев нечеткой логики преобладают, выходцы из Азии и необычно много женщин. Так, основу теории нечетких баз данных [б] заложила Мария Земанкова (Zemankova), а нечеткую экспертную систему Фудзи-банка, приносящую до 700000 дол. в месяц на краткосрочной биржевой игре, создала Сизуко Ясунобу (Chizuko Yasunobu).
Японцы довели практическое воплощение нечеткой логики до совершенства. Можно много рассказывать об автоматических прокатных станах, интеллектуальных складах и "безлюдных производствах", созданных с использованием нечеткой логики. Однако, пожалуй, более впечатляющим выглядит применение нечеткой логики в дешевых изделиях массового рынка — пылесосах, видеокамерах, микроволновых печах и т.п. Пионером в применении нечеткой логики в бытовых изделиях выступила фирма Matsuhita. В феврале 1991 г. она анонсировала первую "интеллектуальную" стиральную машину, в системе управления которой сочетались нечеткая логика и нейронная сеть. Автоматически определяя нечеткие входные факторы (объем и качество белья, уровень загрязненности, тип порошка и т.д.), стиральная машина безошибочно выбирала оптимальный режим стирки из 3800 возможных. А спустя пару лет применение нечеткой логики в японской бытовой технике стало повсеместным.
Параллельно с использованием нечеткой логики в системах управления предпринимались энергичные усилия по созданию на ее основе нового поколения экспертных систем. Как отмечает Коско [5], нечеткие экспертные системы, помимо своего основного преимущества — лучшей адаптированности к условиям реального мира, обладают еще двумя достоинствами по сравнению с традиционными. Во-первых, они свободны от т. н. "циклических блокировок" при построении заключений. Во-вторых, различные базы нечетких правил можно с легкостью объединять, что редко удается в обычных экспертных системах. Многочисленные примеры экспертных систем (преимущественно из области промышленной диагностики и медицины), основанных на нечеткой логике, можно найти в работе [3]. Из этой же книги взяты и некоторые приведенные выше примеры.
Отдельного рассказа заслуживает опыт применения нечеткой логики в финансовой сфере. Для решения сложнейших задач прогнозирования различных финансовых индикаторов банкиры и финансисты используют дорогостоящие комплексные системы, в состав которых входит и нечеткая логика. Начало этому процессу положила японская финансовая корпорация Yamaichi Securuties. Задавшись целью автоматизировать игру на рынке ценных бумаг, эта компания привлекла к работе около 30 специалистов по искусственному интеллекту. В первую версию системы, завершенную к началу 1990 г., вошли 600 нечетких правил — воплощение опыта десяти ведущих брокеров корпорации. Прежде чем решиться на использование новой системы в реальных условиях, ее протестировали на двухлетней выборке финансовых данных (1987—1989 г). Система с блеском выдержала испытание. Особое изумление экзаменаторов вызвало то, что за неделю до наступления биржевого краха (знаменитого "Черного понедельника" на токийской бирже в 1988 г.) система распродала весь пакет акций, что свело ущерб практически к нулю. Надо ли говорить, что после этого вопрос о целесообразности применения нечеткой логики в финансовой сфере уже не поднимался. Хотя скептики могут привести и другие примеры — например, ни одна и3 банковских систем не смогла предсказать падение биржевого индекса Nikkei весной 1992 г.
Можно привести и другие примеры применения нечеткой логики в бизнесе. Удачный опыт Ганса Зиммермана (Hans Zimmermann) по использованию экспертной системы с нечеткими правилами для анализа инвестиционной активности в городе Аахене (ФРГ) привел к созданию коммерческого пакета ASK для оценки кредитных и инвестиционных рисков. А система управления складскими запасами, описанная в качестве примера в пакете CubiCalc, настолько проста, что может быть с легкостью использована самым неподготовленным оптовым торговцем.
Попробуем рассмотреть вопросы соответствия методов нечеткой логики другим активно развиваемым за рубежом направлениям интенсивного использования методов искусственного интеллекта (ИИ).
Как уже отмечалось в работе [9], наиболее развиваемыми в настоящее время у нас и в какой-то степени действительно первыми методами ИИ новой волны, последовавшей за этапом интенсивных попыток внедрения экспертных систем классического типа, оказались системы оценок предсказаний и классификации на базе нейронных сетей (НС). Там же были рассмотрены их основные особенности и кратко проанализированы проблемы эффективности, а также перспективы развития. Поэтому отметим сейчас только ту полезную особенность НС, которая существенна для данного рассмотрения: возможность использования в НС при оценках и анализе различных объектов не только явно определенных параметров и критериев, но и неточно известных, заведомо приблизительных или даже просто неизвестных данных, на которых тем не менее возможно и обучение, и последующая вполне эффективная работа НС.
Следует призвать, что в методах и технологиях применения НС даже в обычных ситуациях весьма много эмпирики, которая, конечно же, неизбежна и понятна, особенно учитывая, что она дает вполне .ощутимые результаты. Л .хотя при этом в НС доказано множество полезных содержательных результатов, теоретическая поддержка для использования в НС нечетких или частично неизвестных параметров пока еще недостаточно эффективна. Этим и объясняется то, что разные, вполне профессионально подготовленные специалисты, работая, конечно, на весьма различных обучающих; выборках, а следовательно, и имеющие весьма разнящийся опыт применения НС, дают также довольно сильно отличающиеся между собой рекомендации по использованию таких неточных данных в НС. Разумеется, сам факт успешной работы обученных таким образом НС снимает все вопросы о возможности применения этих методов, но уже сама необходимость обучения сети на данных, которые неверны, очень быстро поставила проблему разработки специальных Систем, предназначенных для обработки именно такой неопределенной информации. Так что преемственность между нейросетевой тематикой и методами нечеткой логики оказывается самоочевидной. Эти методы в тех или иных ситуациях также используют подходы нейросетевого стиля оценок, так что в нечеткой логике нейросетевые подходы, можно утверждать, действительно поднимаются на новый уровень обобщения их свойств и возможностей.
Но для краткого и вместе с тем хотя бы относительно полного сравнительного описания новых подходов ИИ к обработке информации в сложных системах следует иметь в виду еще один идеологически важный методический компонент многих интеллектуальных систем нетрадиционной обработки данных, который многие авторы справедливо рассматривают как совершенно отдельное серьезное достижение в области оптимизации сложных функционалов. Разумеется, речь идет о генетических алгоритмах оптимизации, важная роль которых при решении огромного разнообразия задач многокритериальных оценок признана уже настолько единодушно, что очень многие прикладные пакеты вычислительного плана содержат весьма сложные генетические оптимизационные процедуры. Поскольку к настоящему времени отечественных публикаций по этой тематике в научно-технической литературе и периодике практически нет, остановимся на этом вопросе чуть подробнее. Название генетических алгоритмов обязано своим появлением очевидной аналогии между биологическими механизмами наследования признаков и предложенным их авторами' методами оптимизации. При этом для Описания методов поиска новых точек Некоторого многомерного пространства параметров, например оптимизируемых функций, Используются традиционные понятия родителей, генов, хромосом, скрещивания и поколений. Наглядность этих категорий облегчает использование данного метода при решении оптимизационных задач в весьма сложных случаях при работе в пространствах параметров очень большой размерности и необычных конфигураций. В конце концов именно наглядность интерпретации и хороший интерфейс взаимодействия системы с пользователем и определили успех применения генетических алгоритмов (ГА) при решении многих весьма сложных задач в различных сферах обработки данных. В частности, при использований ГА для обучения НС в очень многих случаях удается ускорить этот очень важный и несомненно самый проблемный этап из весьма непростого цикла работы с НС в десятки и более раз и получать существенно лучше "вымуштрованные" нейросети, чем это обычно возможно, например, для многослойного перцептрона при традиционно Используемом для обучения методе обратного распространения. Как полагают некоторые авторы, появление генетических алгоритмов представляет собой если не революцию в сфере оптимизационного процессинга, то крайне важную веху его развития. Оставаясь в рамках рассматриваемой здесь тематики, можно выразить в целом согласие с такой оценкой хотя бы из-за того, что методы обучения НС с использованием ГА действительно приобрели новое качество, существенно ускорились и при этом позволили найти более "умные" сети, в том числе и на основе нечетких методов.
Разумеется, необходимо определить и место ГА среди очень богатого класса уже известных алгоритмов поиска экстремума. Кратко достоинство ГА может быть выражено как способность эффективной автоматической адаптации алгоритма к особенностям того функционала, на котором ищется глобальный экстремум, без использования каких-либо специальных методов дополнительного анализа свойств оптимизируемой функции. В соответствии со свойствами области поиска решения и видом оптимизируемой функции ГА использует как методы большого, так и малого отклонения варьируемых параметров от тех множеств значений, при которых функционал достигает, например, локальных максимумов, многие из которых активно используются в процессе поиска новых точек экстремума. Конечно, при этом объем вычислений ГА для некоторых видов оцениваемых функций оказывается существенно большим, чем в случае использования наиболее соответствующих им конкретных методов (релаксационного, кратчайшего спуска и т. д.). Однако синтетичность подхода ГА и их высокая адаптивность, получение на их основе хороших результатов за приемлемое время без сколько-нибудь глубокого анализа оптимизируемых функций позволяет считать ГА действительно этапными технологиями для сложных информационных систем. Большой объем счета при использовании ГА, как, впрочем, и при решении вопроса о выборе алгоритмов при решении совершенно разных задач в других сферах обработки данных, обычно несложно скомпенсировать за счет применения более быстрых процессоров. Такой на первый взгляд крайне упрощенный подход к проблеме производительности и вычислительных затрат на самом деле имеет вполне здравую основу, заключающуюся в том, что многие стандартные процедуры типа сортировок, поиска и т. д. стараются решать на основе достаточно эффективных, хотя и не обязательно лучших методов, дающих гарантированно неплохие результаты, а все усилия направлять на решение только новых специальных и действительно трудных проблем обработки, которые затем в свою очередь постепенно переводятся в разряд стандартных, что и позволяет быстро повышать скорость решения новых проблем, обеспечивающих ускоренное продвижение на пути информатизации социумов.
Еще более глубокие плодотворные идеи заключены в подходах к обработке и анализу информационных потоков, базирующихся на идее хаоса, которая позволила описывать сложнейшие структуры реального мира, не поддававшиеся ранее содержательному анализу. Однако рассмотрение этой новейшей волны информационных технологий целесообразно выполнить отдельно.
Что касается российского рынка коммерческих систем на основе нечеткой логики, то его формирование началось в середине 1995 г. Наиболее популярны у российских заказчиков следующие пакеты:
CubiCalc 2.0 RTC — одна из наиболее мощных коммерческих экспертных систем на основе нечеткой логики, позволяющая создавать собственные прикладные экспертные системы;
CubiQuick — дешевая "университетская" версия пакета CubiCalc; . RuleMaker — программа автоматического извлечения нечетких правил из входных данных;
FuziCalc — электронная таблица с нечеткими полями, позволяющая делать быстрые оценки при неточно известных данных без накопления ошибок при выполнении оценок [7] ;
OWL — пакет, содержащий исходные тексты всех известных видов нейронных сотен, нечеткой ассоциативной памяти и т.д.
Основными "потребителями" нечеткой логики на рынке России являются банкиры и финансисты, а также специалисты в области политического и экономического анализа. Они используют CubiCalc для создания моделей различных экономических, политических, биржевых ситуаций. Что же касается изумительно легкого в освоении пакета FuziCalc, то он занял свое место на компьютерах крупных банкиров и специалистов по чрезвычайным ситуациям — т.е. тех, для кого более всего важна быстрота проведения расчетов в условиях неполноты и неточности входной информации. Подробнее о российском рынке программ на основе нечеткой логики можно прочесть в работе [8]. Однако можно с уверенностью сказать, что эпоха расцвета прикладного использования нечеткой логики на отечественном рынке еще впереди. Существенного ускорения Вашего освоения программных средств ИИ "новой волны" можно добиться с помощью российского ТОРА-Центра", обеспечивающего мониторинг десятков известнейших фирм США, производящих программные пакеты, реализующие новейшие идеи ИИ. Уже сейчас более 50 таких разнообразных интеллектуальных помощников исследователей и администраторов, проектировщиков и банкиров можно посмотреть в этом Центре, получить консультации по их применению и сравнить с Вашими потребностями. Число инсталляций предлагаемых пакетов уже стало трехзначным и очень быстро растет. Сформированы учебные курсы, проводятся семинары и решены десятки конкретных реальных задач научной сферы, медицинской диагностики, прогнозирования и бизнеса в самом Центре и во многих активно сотрудничающих с ним организациях. На Ваши вопросы там всегда ответят по тел. (095) 229-32-86.
Глубокое осознание необходимости использования самых современных средств анализа, оценок, классификации и прогнозирования заставило "ТОРА-Центр" уже сейчас пойти гораздо дальше чисто академического и узкоприкладного подхода к новым сферам обработки информации на базе последних достижений ИИ. В связи с этим Центр предпринял большие усилия для того, чтобы приобрести для одного из своих постоянных клиентов из АО "ОГО" пока что уникальную для России специальную ускорительную компьютерную плату для систем, рассматриваемых в этой работе. Как показали ее сравнительные испытания на разных модельных примерах и реальных задачах, например, с популярным программным нейросетевым пакетом "BrainMaker Pro", такой ускоритель позволяет сократить самую трудоемкую операцию обучения нейросети, возможно, содержащую и нечеткие или неизвестные данные, приблизительно в тысячу раз по сравнению с чисто программными методами обучения сети на тех же довольно значительных объемах данных. При этом наблюдалось улучшение качества обучения, что в итоге уже позволило в нескольких случаях выйти на совершенно новый уровень предсказания ситуаций, цен и курсов валют, а также урожаев, фьючерсов и сильно зашумленных цифровых сигналов. Этот существенный "аппаратный аспект" проблематики ИИ заслуживает внимания исследователей и прогнозирования его воздействия на прогресс в развитии интеллектуальных систем новых поколений, которые могут появиться в ближайшее время при столь резком мгновенном росте вычислительных ресурсов для рассматриваемого важнейшего класса задач.
Таким образом, только четкое понимание основных аспектов развития и применения методов "нечеткой логики", как и других систем и новейших научных достижений в области "искусственного интеллекта", может обеспечить быстрое решение многих научных задач, а также разнообразных проблем в различных областях деловой деятельности человека.
Литература
1. Zadeh, Lotfi. Fuzzy Sets / Information and Control, 8(3), June 1965, p. 338—53.
2. Zadeh, Lotfi. Outline of a New Approach to the Analysis of Complex Systems and Decision Processes /IEEE Transactions on Systems, Man, and Cybernetics, SMC-3(1), January 1973, p. 28-44.
3. McNeill, Daniel and Freiberger, Paul. Fuzzy Logic / Touchstone Rockefeller Center, 1993.
4. Kosko, Bart. Fuzzy thinking / Hyperion, 1993.
5. Kosko, Bart Neural Networks and Fuzzy Systems / Englewood Cliffs, NJ: Prentice-Hall, 1991.
6. Zemankova-Leech, Maria, and Abraham Kandel. Fuzzy Relational Data Bases: A Key to Expert Systems / Cologne: Verlag TUV Rheinland, 1984.
7. Kaufmann, Arnold, and Gupta, Madan M. Introduction to Fuzzy Arithmetic / Thomson Computer Press, 1991.
8. Масалович А.И. Этот нечеткий, нечеткий, нечеткий мир / PC Week / RE, № 16, 1995.
9. Золотарев В.В. Кто умнее нейрокомпьютеров? — Вестник Российского общества информатики и вычислительной техники. М., ВИМИ, № 5, 1995.
Статья поступила в редакцию в июне 1996 г.
НИИ 'Квант', АО 'ОГО'
© Информационное общество, 1996, вып. 2, с. 55-62.