Аппарат нечеткой логики. Экспертные системы
Далее принимается, что экспертная система обеспечивает обмен данными между пользователями через вычислительную среду и между пользователями и вычислительной средой. Частным случаем внешних спецификаций являются языковые средства и входные языки.Будем называть программу эвристической, если не существует единственного точного алгоритма, который она реализует. Предлагается также называть алгоритм нечетким, если по нему осуществляются операции с нечеткими переменными либо с его помощью описываются нечеткие отношения. Выбор более или менее строгого определения «экспертной системы вообще» сделан далее.
Наиболее распространенным определением экспертной системы, сделанным на основе внешней спецификации, является утверждение о том, что это вычислительная система, оперирующая знаниями специалистов в определенной предметной области и способная принимать предметной области и способная принимать решения на уровне этих специалистов. В этом определении остается неясным, что следует понимать под термином «знания» и что означает способность принимать решения вычислительной системой решения на уровне этих специалистов. Эта неясность исчезает, если достаточно строго отнестись к термину «вычислительная система».
Таким образом, экспертная система, как всякая вычислительная система, ни в какой момент времени ее создания и функционирования неотделима от пользователя и разработчика, сопровождающего систему от замысла до полного ее морального устаревания. Первый существенный признак, позволяющий рассматривать экспертную систему как самостоятельный класс вычислительных систем, заключается в том, что она не должна морально устаревать. Знания часто понимаются как совокупность правил, определяющих характер обработки данных, в результате применения которых может продуцироваться новая совокупность правил.
Приведенные выше определения оперируют понятиями «знания» и «данные», довольно широко трактуемыми в различных работах по искусственному интеллекту.
На основе обзора различных работ можно утверждать, что данные в вычислительных системах — это с наперед заданной точностью закодированные образы объектов реального мира, имеющих количественную меру. Наличие количественной меры говорит о возможности сопоставления объектов.
В соответствии с принятым определением в дальнейшем термин «данные» и производные от него («управление базой данных», «база данных» и т.д.) будет использоваться для обозначения любых констант (включая логические, холлеритовые, строковые), переменных и функций, а также множеств, их объединяющих.
Опираясь на определение данных, удобно сформулировать определение термина «знания», причем необходимо подчеркнуть еще раз, что речь идет о знаниях в вычислительных системах, а не о знаниях вообще. Если измеримость объектов реального мира вытекает из возможности их как-то сопоставить, т.е. установить отношения между ними, то среди этих отношений всегда можно выделить подмножество, которое объединяет объективные закономерности, т.е. знания.
Если соотнести теперь определения данных и знаний, то становится ясным, что данные являются частным случаем знаний. В самом деле, измеримость объекта, т.е. существование данных об объекте предполагает его сопоставимость с каким-либо другим, условно принятым за эталон. Это сопоставление позволяет установить отношение между объектами (например, равно, больше, одинаково по смыслу и т. п.), которое, в свою очередь, может быть закодировано и представлено в вычислительной системе. Если результат этого сопоставления кодируется константами, переменными либо функциями, то речь идет о представлении данных. Если же в вычислительной системе представляют (кодируют) способ и результат сопоставления и сущностью этой информации является отношение между данными, которое также может кодироваться константами, переменными и функциями, то такого рода данные в дальнейшем будут называться знаниями На основании вышеизложенного ясно, что СУБД (например, реляционного типа), которая управляет размещением таких данных (представляемых, например, продукционными правилами) и позволяет устанавливать между ними определенные отношения, условно может быть названа системой управления базой знаний, что и имеет место во многих работах по искусственному интеллекту (в частности, по экспертным системам).
Наиболее распространенными формами представления знаний являются логические, семантические, продукционные модели и нечеткие системы..
Содержание
Особенности нечетких систем
- возможность оперировать нечеткими входными данными: например, непрерывно изменяющиеся во времени значения (динамические задачи), значения, которые невозможно задать однозначно (результаты статистических опросов, рекламные компании и т.д.);
- возможность нечеткой формализации критериев оценки и сравнения: оперирование критериями "большинство", "возможно", преимущественно" и т.д.;
- возможность проведения качественных оценок как входных данных, так и выходных результатов: вы оперируете не только значениями данных, но и их степенью достоверности и ее распределением;
- возможность проведения быстрого моделирования сложных динамических систем и их сравнительный анализ с заданной степенью точности: оперируя принципами поведения системы, описанными fuzzy-методами, вы во-первых, не тратите много времени на выяснение точных значений переменных и составление описывающих уравнений, во-вторых, можете оценить разные варианты выходных значений.
Основы нечеткой логики были заложены в конце 60-х лет в работах известного американского математика Латфи Заде. Для создания действительно интеллектуальных систем, способных адекватно взаимодействовать с человеком, был необходим новый математический аппарат, который переводит неоднозначные жизненные утверждения в язык четких и формальных математических формул. Первым серьезным шагом в этом направлении стала теория нечетких множеств, разработанная Заде. Его работа "Fuzzy Sets", опубликованная в 1965 году в журнале "Information and Control", заложила основы моделирования интеллектуальной деятельности человека и стала начальным толчком к развитию новой математической теории. Он же дал и название для новой области науки - "fuzzy logic" (fuzzy - нечеткий, размытый, мягкий).
Аппарат теории нечетких множеств, продемонстрировав ряд многообещающих возможностей применения - от систем управления летательными аппаратами до прогнозирования итогов выборов, оказался вместе с тем сложным для воплощения. Учитывая имеющийся уровень технологии, нечеткая логика заняла свое место среди других специальных научных дисциплин - где-то посредине между экспертными системами и нейронными сетями. Свое второе рождение теория нечеткой логики пережила в начале восьмидесятых годов, когда несколько групп исследователей (в основном в США и Японии) всерьез занялись созданием электронных систем различного применения, использующих нечеткие управляющие алгоритмы.
Третий период начался с конца 80-х годов и до сих пор. Этот период характеризуется бумом практического применения теории нечеткой логики в разных сферах науки и техники. До 90-ого года появилось около 40 патентов, относящихся к нечеткой логике (30 - японских). Сорок восемь японских компаний создают лабораторию LIFE (Laboratory for International Fuzzy Engineering), японское правительство финансирует 5-летнюю программу по нечеткой логике, которая включает 19 разных проектов - от систем оценки глобального загрязнения атмосферы и предвидения землетрясений до АСУ заводских цехов. Результатом выполнения этой программы было появление целого ряда новых массовых микрочипов, базирующихся на нечеткой логике. Смещение центра исследований нечетких систем в сторону практических применений привело к постановке целого ряда проблем, в частности: