Примеры экспертных систем

Диагностика экспертных систем

Диагностика – процесс соотнесения
объекта с некоторым классом объектов
и/или обнаружение неисправности в некоторой
системе. Неисправность – это отклонение
от нормы. Такая трактовка позволяет с
единых теоретических позиций рассматривать
и неисправность оборудования в технических
системах, и заболевания живых организмов,
и всевозможные природные аномалии

Важной
спецификой является здесь необходимость
понимание функциональной структуры («анатомии»)
диагностируемой системы. 
Примеры:

  1. Диагностика и терапия сужения коронарных сосудов – ANGY.
  2. Диагностика ошибок в аппаратуре и математическом обеспечении ЭВМ – CRIB.

1.2. Отличие эс от других программных продуктов.

Основными отличиями
ЭС от других программных продуктов
являются использование не только данных,
но и знаний, а также специального
механизма вывода решений и новых знаний
на основе имеющихся. Знания в ЭС
представляются в такой форме, которая
может быть легко обработана на ЭВМ. В
ЭС известен алгоритм обработки знаний,
а не алгоритм решения задачи. Поэтому
применение алгоритма обработки знаний
может привести к получению такого
результата при решении конкретной
задачи, который не был предусмотрен.
Более того, алгоритм обработки знаний
заранее неизвестен и строится по ходу
решения задачи на основании эвристических
правил. Решение задачи в ЭС сопровождается
понятными пользователю объяснениями,
качество получаемых решений обычно не
хуже, а иногда и лучше достигаемого
специалистами. В системах, основанных
на знаниях, правила (или эвристики), по
которым решаются проблемы в конкретной
предметной области, хранятся в базе
знаний. Проблемы ставятся перед системой
в виде совокупности фактов, описывающих
некоторую ситуацию, и система с помощью
базы знаний пытается вывести заключение
из этих фактов (см. рис.1).

Рис.1

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

В
любой момент времени в системе существуют
три типа знаний:


Структурированные знания — статические
знания о предметной области. После того
как эти знания выявлены, они уже не
изменяются.


Структурированные динамические знания
— изменяемые знания о предметной области.
Они обновляются по мере выявления новой
информации.


Рабочие знания- знания, применяемые для
решения конкретной задачи или проведения
консультации.

Все
перечисленные выше знания хранятся в
базе знаний. Для ее построения требуется
провести опрос специалистов, являющихся
экспертами в конкретной предметной
области, а затем систематизировать,
организовать и снабдить эти знания
указателями, чтобы впоследствии их
можно было легко извлечь из базы знаний.

Рис.2
Схема работы ЭС.

2.2 Описание работы программы, составление блок-схемы алгоритма решения задачи

В программе определены 4 процедуры — ввод размерностей матрицы, поэлементный ввод прямоугольной матрицы с клавиатуры, генерация случайных элементов матрицы в заданном диапазоне, поэлементный вывод матрицы на экран в «естественном» виде (т.е. по строкам).

В основной части программы после вызова процедуры ввода размерностей матрицы пользователю предоставляется выбор способа заполнения матрицы — с клавиатуры или с помощью датчика случайных чисел. После выбора способа запускается соответствующая процедура, матрица заполняется элементами и выводится на экран. Далее при переборе всех элементов матрицы определяется минимальный по модулю элемент, запоминаются его индексы, и вычисляется среднее арифметическое исходной матрицы; эти значения также выводятся на экран. Далее на экран выводится матрица после суммирования всех элементов исходной матрицы с ее наименьшим по модулю элементом, и матрица, где среднее арифметическое исходной матрицы заменяет элемент, стоящий в позиции с индексами k, b в полученной матрице (k, b вводятся с клавиатуры пользователем).

Рисунок 2.1 — Общий алгоритм программы

Описанный общий алгоритм программы представлен на рисунке 2.1.

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

· при вводе размерности матицы менее 1 или более указанной максимальной размерности;

· при выборе в режиме меню пункта, отличного от 1 или 2;

· при введении индексов элемента, который надо заменить на среднее арифметическое исходной матрицы, менее 1 или более размерности исходной матрицы.

Факты [ править | править код ]

Информация, на основании которой экспертная система делает логический вывод, называется фактами. В CLIPS есть 2 вида фактов: упорядоченные и шаблонные. Шаблонные факты имеют шаблон, задаваемый конструкцией deftemplate. Упорядоченные не имеют явной конструкции deftemplate, однако она подразумевается. Шаблонный факт напоминает структуру в языке C или запись в языке Pascal, поля называются слотами и объявляются конструкцией slot. Например, следующий шаблон объявляет шаблон с именем cars и полями: model, color и number.

Факты размещаются в рабочей памяти. Новые факты помещаются в рабочую память командой assert. Например, следующая команда

добавит в рабочую память упорядоченный факт cars.

Следующая команда поместит шаблонный факт с тремя атрибутами.

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

Этап идентификации

Этап
идентификации связан, прежде всего, с
осмыслением тех задач, которые предстоит
решить будущей ЭС, и формированием
требований к ней. Результатом данного
этапа является ответ на вопрос, что надо
сделать и какие ресурсы необходимо
задействовать (идентификация задачи,
определение участников процесса
проектирования и их роли, выявление
ресурсов и целей).

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

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

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

При
проектировании ЭС типичными ресурсами
являются источники знаний, время
разработки, вычислительные средства и
объем финансирования. Для эксперта
источниками знаний служат его
предшествующий опыт по решению задачи,
книги, известные примеры решения задач,
а для инженера по знаниям — опыт в
решении аналогичных задач, методы
представления знаний и манипулирования
ими, программные инструментальные
средства. При определении времени
разработки обычно имеется в виду, что
сроки разработки и внедрения ЭС
составляют, как правило, не менее года
(при трудоемкости 5 чел.-лет). Определение
объема финансирования оказывает
существенное влияние на процесс
разработки, так как, например, при
недостаточном финансировании предпочтение
может быть отдано не разработке
оригинальной новой системы, а адаптации
существующей.

При
идентификации целей важно отличать
цели, ради которых создается ЭС, от
задач, которые она должна решать.
Примерами возможных целей являются:
формализация неформальных знаний
экспертов; улучшение качества решений,
принимаемых экспертом; автоматизация
рутинных аспектов работы эксперта
(пользователя); тиражирование знаний
эксперта

Преимущества и недостатки услуги компании

Указанные услуги хороши тем, что оказываются комплексно. Дело в том, что формирование инвестиционного портфеля и получения прибыли от него, неизбежно расходов, связанных с налогообложением. Поэтому, услуги в сфере минимизации налоговой нагрузки очень актуальны, так как сохранить практически всю прибыль.

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

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

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

Оценка (4.8 / 5)

Подходы к экспертным оценкам

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

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

Прогнозные экспертные оценки – они отражают индивидуальность суждения каждого из специалистов относительно эффективности, безопасности, расхода ресурсов, а также перспектив развития объекта. Основаны прогнозные экспертные оценки как правило на мобилизации профессионального опыта и интуиции экспертов.

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

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

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

Кроме того, известны два подхода к использованию экспертов: индивидуальные оценки и групповые.

Методы коллективной работы экспертной группы предполагают получение общего мнения в ходе совместного обсуждения проблемы, которая решается.

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

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

Коллективные методы экспертизы основываются на групповой работе экспертов и получении суммарной оценки от всей группы специалистов в целом. Среди коллективных методов самым распространенным является метод мозговой атаки (это метод коллективной генерации идей или же метод группового рассмотрения с отнесенной оценкой), а также и метод Дельфи.

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

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

Примеры экспертных систем в военном деле

ACES. Экспертная система выполняет картографические работы по нанесению обстановки на карты. Система получает в качестве исходных данных карту без обстановки и информацию, описывающую расположение объектов на местности. Система выдает карту, содержащую все желаемые условные обозначения и подписи, размещенные без взаимного наложения. ACES применяет объектно-ориентированную схему представления знаний и реализована на языке Loops для работы на АРМ Xerox Dolphin. Система разработана компанией ESL и доведена до уровня исследовательского прототипа.

ASTA. Экспертная система помогает аналитику определить тип радара, пославшего перехваченный сигнал. Система анализирует этот сигнал в свете имеющихся у нее общих знаний о физике радаров и специальных знаний о конкретных типах радарных систем. ASTA также помогает аналитику, обеспечивая ему доступ к соответствующим базам данных и давая объяснения своим заключениям. Знания в системе представлены в виде правил. Эта система разработана компанией Advanced Information & Decision Systems и доведена до уровня исследовательского прототипа.

DART. Экспертная система помогает обрабатывать разведданные о центрах командования, управления и связи противника. Она дает советы аналитикам по идентификации критических узлов сети командования, управления и связи и помогает обрабатывать сообщения о боевой обстановке. Система DART реализована на языках Паскаль и Си для компьютерных систем VAX 11/780. Она разработана компанией «Par Technology Corporation» и доведена до уровня исследовательского прототипа.

HANNIBAL. Экспертная система выполняет оценивание ситуаций в области разведки радиообмена противника. Система идентифицирует соединения противника и боевой порядок их связи, интерпретируя данные радиоперехвата. Эти данные включают информацию о местонахождении и характеристиках сигналов (частоте, модуляции, классе канала и другие) обнаруженных средств связи. Знания в системе представлены в рамках архитектуры доски объявлений, координирующей деятельность нескольких специалистов, или источников знаний. Система реализована с помощью средств AGE. Она разработана компанией ESL и доведена до уровня исследовательского прототипа.

I&W. Экспертная система помогает аналитикам из разведки предсказывать, когда и где произойдет следующее вооруженное столкновение. Система анализирует поступающие сообщения разведки, например донесения о местонахождении воинских соединений, их деятельности и передвижениях, применяя знания об обычных признаках активности войск. Знания представлены в рамках архитектуры доски объявлений, в которой для обеспечения компетентности применены как правила с прямой цепочкой рассуждений, так и фреймы. Система реализована на языке INTERLISP-D для АРМ Xerox 1100. Она разработана компанией ESL в сотрудничестве со Стенфордским университетом и доведена до уровня демонстрационного прототипа.

RUBRIC. Экспертная система помогает пользователю получить доступ к базам данных, содержащим неформатированные тексты. Например, когда пользователь называет какую-нибудь тему, RUBRIC автоматически разыскивает все документы, содержащие тексты, связанные с этой темой. В системе RUBRIC взаимоотношения между темами, подтемами и фразами, содержащими ключевые слова, выражены в виде правил. Правила также определяют другие варианты терминов, выражений и способов написания одной и той же темы или понятия. Пользователь может сформулировать запрос в виде правила, задающего критерий поиска, например эвристический вес, определяющий насколько сильно образец правила указывает на наличие темы правила. В ходе поиска RUBRIC предоставляет пользователю документы, которые лежат в кластере, содержащем по крайней мере один документ с весом выше заданного пользователем порога. Это предотвращает ситуацию, в которой произвольно выбранный порог мог бы разделить близкие по рангу документы. Система реализована на языке FRANZ LISP, разработана компанией «Advanced Information & Decision Systems» и доведена до уровня исследовательского прототипа.

Организация знаний в базе данных

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

Связность знаний

Связанность знаний является основным способом, обеспечивающим повышение скорости поиска релевантных данных. Распространено мнение, что знания следует организовывать вокруг наиболее важных объектов предметной области. Все знания, характеризующие некоторую сущность, связываются и представляются в виде отдельного объекта. При подобной организации знаний, если системе необходима информация о некоторой сущности, то она ищет объект, описывающий эту сущность, а затем уже внутри объекта находит информацию о данной сущности. В объектах выделяют два типа связок между элементами: внешние и внутренние. Внутренние связки организуют элементы в единый объект и выражают структуру объекта. Внешние связки указывают на взаимосвязи, между объектами в области экспертизы. Существует деление внешних связок на логические и ассоциативные. Логические отражают семантические отношения между элементами знаний. Ассоциативные связки обеспечивают взаимосвязи, способствующие повышению скорости процесса поиска релевантных знаний.

Проблема поиска знаний

Основной проблемой при работе с большой базой знаний является проблема поиска знаний, относящихся к решаемой задаче. В связи с тем, что в обрабатываемых данных может не содержаться явных ссылок на значения, требуемые для их обработки, необходим некий более общий механизм поиска, чем метод прямого доступа (метод явных ссылок). Этот способ предназначен для того, чтобы по некоторому описанию показателя, имеющемуся в рабочей памяти, найти уже в базе знаний объекты, удовлетворяющие этому описанию. Таким образом, упорядочение и структурирование знаний могут значительно ускорить процесс поиска.
Поиск данных можно рассмотреть как процесс, состоящий из двух этапов. Первый этап соответствует процессу выбора по ассоциативным связкам. Здесь происходит предварительный выбор потенциальных кандидатов на роль желаемых объектов в базе знаний. На втором этапе путем выполнения операции сопоставления потенциальных кандидатов с описаниями кандидатов осуществляется окончательный выбор искомых объектов
Операция сопоставления также может быть использована для классификации, подтверждения, декомпозиции и коррекции. Для идентификации неизвестного объекта его можно сопоставить с некоторыми известными образцами. Это позволит классифицировать неизвестный объект как такой известный образец, при сопоставлении с которым были получены лучшие результаты. Сопоставление используется для подтверждения некоторых кандидатов из множества возможных. Если сопоставить некоторый известный объект с неизвестным описанием, то в случае успешного сопоставления будет произведена частичная декомпозиция описания.

1.1. Определение экспертных систем, достоинство и назначение

Экспертные системы — это яркое и быстро
прогрессирующее направление в области
искусственного интеллекта.

Искусственный интеллект — самое молодое
научное направление. Появление его было
подготовлено развитием мощности
вычислительных машин.

Искусственный интеллект занимает
исключительное положение. Это связано
со следующим:

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

· в связи с внедрением ЭВМ во все сферы
человеческой жизни становится возможным
переход к безбумажной технологии
обработки информации.

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

· интеллектуальные системы в настоящее
время начинают занимать ведущее положение
в проектировании образцов изделий.
Часть изделий невозможно спроектировать
без их участия.

Системы, относящиеся к системам
искусственного интеллекта в настоящее
время:

· экспертные системы. Первые системы,
которые нашли широкое применение. Их
элементы используются в системах
проектирования, диагностики, управления
и играх. Основаны на вводе знаний
высококвалифицированных специалистов
(экспертов) в ЭВМ и разработке специальной
системы по их использованию.

· системы естественно-языкового общения
(подразумевается письменная речь).
Данные системы позволяют производить
обработку связанных текстов по какой-либо
тематике на естественном языке.

· системы речевого общения.

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

· системы машинного перевода.
Подразумеваются естественные языки
человеческого общения.

Экспертная система — это набор программ
или программное обеспечение, которое
выполняет функции эксперта при решении
какой-либо задачи в области его
компетенции. Экспертная система, как и
эксперт-человек, в процессе своей работы
оперирует со знаниями. Знания о предметной
области, необходимые для работы экспертных
систем, определённым образом формализованы
и представлены в памяти ЭВМ в виде базы
знаний, которая может изменяться и
дополняться в процессе развития системы.

Экспертные системы выдают советы,
проводят анализ, выполняют классификацию,
дают консультации и ставят диагноз. Они
ориентированы на решение задач, обычно
требующих проведения экспертизы
человеком-специалистом. В отличие от
машинных программ, использующий
процедурный анализ, экспертные системы
решают задачи в узкой предметной области
(конкретной области экспертизы) на
основе дедуктивных рассуждений. Такие
системы часто оказываются способными
найти решение задач, которые
неструктурированны и плохо определены.
Они справляются с отсутствием
структурированности путём привлечения
эвристик, то есть правил, взятых «с
потолка», что может быть полезным в тех
системах, когда недостаток необходимых
знаний или времени исключает возможность
проведения полного анализа.

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

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

Методология разработки экспертных систем

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

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

  • Потребность в решении должна соответствовать затратам на ее раз­работку. Суммы затрат и полученная выгода должны быть ре­а­листическими.
  • Невозможно использовать знания человека-эксперта там, где это необходимо. Если «экспертные» знания широко распростра­не­ны, то маловероятно, что стоит разрабатывать экспертную сис­тему. Однако в таких областях как разведка нефти и медицина мо­гут быть редкие специализированные знания, которыми можно недорого снабдить экспертную систему, и не использовать очень высоко оплачиваемого эксперта.
  • Проблема может быть решена с использованием символических методов рассуждения.
  • Проблема хорошо структурирована и не требует применения зна­ний, основанных на здравом смысле. Знания, основанные на здра­вом смысле, хорошо известны, поэтому их незачем фиксировать и представлять.
  • Проблема не может быть легко решена с использованием более тра­диционных вычислительных методов. Если имеется хорошее ал­горитмическое решение проблемы, не следует использовать экспертную систему.
  • Существуют эксперты в данной проблемной области. Поскольку экспертная система проектируется для успешной работы, весьма существенно, чтобы эксперты желали помогать при ее проек­ти­ро­ва­нии, а не считали, что их работе угрожают. Кроме того не­об­хо­дима поддержка администрации и потенциальных пользователей.
  • Проблема имеет подходящий размер и область применения. Как правило, проблема требует применения знаний высоко спе­ци­а­ли­зи­рованных экспертов, но человек-эксперт должен тратить на ее ре­ше­ние короткое время, максимум час.

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

Рис. 10.2. Технология разработки экспертных систем

.3 Представление знаний фреймами

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

Формальная структура фрейма имеет следующий вид:

,

где f — имя фрейма;

пара <Ni,Vi> — i-й слот,- имя слота

и Vi — его значение.

Значение слота может быть представлено последовательностью

<K1><L1>; . . . ; <Kn><Tn>;<R1>; . . . ;
<Rm>,

где Ki — имена атрибутов, характерных для данного слота;- значения этих
атрибутов или множества их значений;- различные ссылки на другие слоты.

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

Рассмотрим примеры.

Фрейм-описание:

Ролевой фрейм:

Во фрейме-описании в качестве имен слотов задан вид продукции, а значение
слота характеризует массу и производителя конкретного вида продукции. В ролевом
фрейме в качестве имен слотов выступают вопросительные слова, ответы на которые
являются значениями слотов, для данного примера представлены уже описания
конкретных фреймов, которые могут называться либо фреймами-примерами, либо
фреймами-экземплярами. Если в приведенном примере убрать значения слотов,
оставив только имена, то получим так называемый фрейм-прототип.

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

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

Для многих предметных областей фреймовые модели являются основным
способом формализации знаний.

Рисунок
4. Сеть фреймами.

Концепция быстрого прототипа

Концепция быстрого прототипа, как правило, используется при создании экспертных систем. Суть концепции состоит в том, что разработчики не имеют целью сразу построить конечный продукт. Сначала происходит создание одного или нескольких прототипов ЭС. Прототип должен удовлетворять двум противоречивым требованиям: с одной стороны, они должны решать типичные задачи конкретного приложения, с другой стороны, время и трудоемкость их разработки должны быть весьма незначительны. Последнее требование необходимо, чтобы можно было максимально совместить процесс накопления и отладки знаний, осуществляемый экспертом, с процессом разработки программных средств. Для соблюдения этих требований при создании прототипа используются разнообразные средства, ускоряющие процесс создания.

Методы прототипа экспертной системы, кроме того, должны подходить для конкретной программы. В случае успеха знания прототипа о проблемной области подвергаются расширению. При неудаче может потребоваться разработка нового прототипа, или принимается решение о непригодности методов ЭС для данного приложения. По мере расширения базы знаний прототип может достигнуть такого состояния, когда все задачи данного приложения решаются успешно. Преобразование прототипа в конечный продукт обычно связано с перепрограммированием системы на языках низкого уровня, обеспечивающих как увеличение быстродействия ЭС, так и уменьшение требуемой памяти. Трудоемкость и время создания ЭС в значительной степени зависят от типа инструментов создания.

Многофункциональные среды создания оболочек

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

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

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

  • процедурно-ориентированное программирование. Язык LISP, в котором активным компонентом являются процедуры, а пассивным – данные.
  • программирование, ориентированное на правила. Принцип аналогичен предыдущему, но роль процедур играют правила «условие-действие». Множество правил связано с управляющими компонентами, необходимых для разрешения конфликтов в простейшей форме.
  • объектно-ориентированное программирование. Структурированные объекты имеют двойственную структуру: они обладают свойствами и процедур, и данных, причем побочные эффекты обычно локализуются в пределах объекта.
  • программирование, ориентированное на данные. Доступ к данным и их обновление запускает определенные процедуры, причем не имеет значения, почему изменен компонент данных. Это может являться результатом побочного эффекта или действия других процедур

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

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий