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

  • уровень используемого языка;
  • парадигмы программирования и механизмы реализации;
  • способ представления знаний;
  • механизмы вывода и моделирования;
  • средства приобретения знаний;
  • технологии разработки приложений.

Уровень используемого языка.

Мощность и универсаль­ность языка программирования определяет трудоемкость разра­ботки ЭС.

  • Традиционные (в том числе объектно-ориентированные) языки программирования типа С, C++ (как правило, они ис­пользуются не для создания ЭС, а для создания инструменталь­ных средств).
  • Специальные языки программирования (например, язык LISP, ориентированный на обработку списков; язык логического программирования PROLOG; язык рекурсивных функций РЕ- ФАЛ и т.д.). Их недостатком является слабая приспособленность к объединению с программами, написанными на языках тради­ционного программирования.
  • Инструментальные средства, содержащие многие, но не все компоненты ЭС (например, система OPS 5, которая поддержива­ет продукционный подход к представлению знаний; языки KRL и FRL, используемые для разработки ЭС с фреймовым представ­лением знаний). Такое программное обеспечение предназначено для разработчиков, владеющих технологиями программирования и умеющих интегрировать разнородные компоненты в программный комплекс.
  • Оболочки ЭС общего назначения, содержащие все про­граммные компоненты, но не имеющие знаний о конкретных предметных средах. Средства этого типа и последующего не требуют от разработчика приложения знания программирования. Примерами являются ЭКО, Leonardo, Nexpert Object, Kappa, EXSYS, GURU, ART, KEE и др. В последнее время все реже употребляется термин «оболочка», его заменяют более широким тер­мином «среда разработки».
Если хотят подчеркнуть, что средство используется не только на стадии разработки приложения, но и на стадиях использования и сопровождения, то употребляют тер­мин «полная среда» (complete environment). Для поддержания всего цикла создания и сопровождения программ используются интегрированные инструментальные системы типа Work Bench, например KEATS, Shelly, VITAL. Основными ком­понентами системы KEATS являются:
ACQUIST — средства фрагментирования текстовых источников знаний, позволяющие разбивать текст или протокол беседы с экспертом на множество взаимосвязанных, аннотированных фрагментов и создавать по­нятия (концепты);
FLIK — язык представления знаний средства­ми фреймовой модели;
GIS — графический интерфейс, использу­емый для создания гипертекстов и концептуальных моделей, а также для проектирования фреймовых систем;
ERI — интерпре­татор правил, реализующий процедуры прямого и обратного вы­вода;
TRI — инструмент визуализации логического вывода, демонстрирующий последовательность выполнения правил;
Tables — интерфейс манипулирования таблицами, используемы­ми для хранения знаний в БЗ;
CS — язык описания и распростра­нения ограничений;
TMS — немонотонная система поддержания истинности.

При использовании инструментария данного типа могут воз­никнуть следующие трудности:

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

Большая часть этих трудностей разрешена в проблемно/пред­метно-ориентированных средствах разработки ИИС.

Проблемно/предметно-ориентированные оболочки и сре­ды (не требуют знания программирования):

проблемно-ориентированные средства — предназначены для решения задач определенного класса (задачи поиска, управления, планирования, прогнозирования и др.) и содержат соот­ветствующие этому классу альтернативные функциональные модули;

предметно-ориентированные средства — включают знания о типах предметных областей, что сокращает время разработки БЗ.

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

Парадигмы программирования и механизмы реализации.

Спо­собы реализации механизма исполняемых утверждений часто на­зывают парадигмами программирования. К основным парадигмам относят следующие:

  • процедурное программирование;
  • программирование, ориентированное на данные;
  • программирование, ориентированное на правила;
  • объектно-ориентированное программирование. Парадигма процедурного программирования является самой распространенной среди существующих языков программирова­ния (например, С и Паскаль). В процедурной парадигме актив­ная роль отводится процедурам, а не данным; причем любая про­цедура активизируется вызовом. Подобные способы задания поведения удобны для описаний детерминированной последова­тельности действий одного процесса или нескольких взаимосвя­занных процессов.

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

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

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

Способ представления знаний.

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

Механизмы вывода и моделирования.

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

Структура процесса получения решения:

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

Поиск (выбор) решения:

  • направление поиска — от данных к цели, от целей к данным, двунаправленный поиск;
  • порядок перебора вершин в сети вывода — «поиск в шири­ну», при котором сначала обрабатываются все вершины, непо­средственно связанные с текущей обрабатываемой вершиной G; «поиск в глубину», когда сначала раскрывается одна наиболее значимая вершина — G1, связанная с текущей G, затем вершина G1 делается текущей, и для нее раскрывается одна наиболее значи­ мая вершина G2 и т. д.

Процесс генерации предположений и сети вывода:

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

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

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

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

Средства приобретения знаний.

В инструментальных системах они характеризуются следующими признаками:

1. Уровень языка приобретения знаний:

  • формальный язык;
  • ограниченный естественный язык;
  • язык пиктограмм и изображений;
  • ЕЯ и язык изображений.

2. Тип приобретаемых знаний:

  • данные в виде таблиц, содержащих значения входных и выходных атрибутов, по которым индуктивными метода­ми строится дерево вывода;
  • специализированные правила;
  • общие и специализированные правила.

3. Тип приобретаемых данных:

  • атрибуты и значения;
  • объекты;
  • классы структурированных объектов и их экземпляры, получающие значения атрибутов путем наследования.
content_editor

Share
Published by
content_editor

Recent Posts

Магнитное поле тока. Магнитные силовые линии

Разница между энергией электрического поля и энергией магнитного поля примерно такая же, как между энергией,…

12 месяцев ago

Постоянные магниты

Когда-то легендарный пастух Магнес, нашел природный магнитный камень, притягивающий железо. В последствии этот камень назвали магнетит или магнитный…

12 месяцев ago

Соединение конденсаторов

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

12 месяцев ago

Обозначение конденсаторов

Обозначение конденсаторов на схемах определено ЕСКД ГОСТ 2.728-74. Обозначения условные графические в схемах. Резисторы, конденсаторы. Итак,…

1 год ago

Виды конденсаторов

Узнав, что же такое конденсатор, рассмотрим, какие бывают виды конденсаторов. Итак, виды конденсаторов можно классифицировать по…

1 год ago

Энергия поля конденсатора

Вся энергия заряженного конденсатора сосредотачивается в электрическом поле между его пластинами. Энергию, накоп­ленную в конденсаторе, можно определить…

1 год ago