Процесс разработки ЭС

Вопросы, подлежащие изучению

ОСНОВЫ МЕТОДОЛОГИИ РАЗРАБОТКИ ЭС

5.1. Применение принципа прототипирования при разработке ЭС. Этапы разработки ЭС, их цели и содержание. [4, 6, 8, 9, 17].

5.2. Виды инструментальных средств разработки ЭС (краткая характеристика) [4, 6, 9,15,17].

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

Это концепция, зародившаяся при разработке ЭС, стала основой методологии быстрой разработки приложений (Rapid Application Development - RAD), применяющейся сейчаспри разработке и других сложных программных систем.

Современная технология создания ЭС, основанная на данном принципе, включает шесть этапов: идентификация, концептуализация, формализация, реализация, отладка и тестирование, опытная эксплуатация и внедрение. Этот процесс полно описан в [4, 6, 8, 9, 17].

5.2. Выделяют четыре категории инструментальных средств,

применяемых при разработке ЭС (в соответствии с их назначением и функциональными возможностями [4, 6, 9, 15,17].

1. Оболочки экспертных систем (Expert system shells). Средства этого типа создаются, как правило, на основе какой-нибудь экспертной системы, достаточно хорошо зарекомендовавшей себя на практике. При создании оболочки из системы-прототипа удаляются компоненты, слишком специфичные для области ее непосредственного применения, и оставляются те, которые не имеют узкой специализации. Примером может служить система EMYCIN, созданная на основе прошедшей длительную "обкатку" системы MYCIN [6].

2. Языки программирования высокого уровня. Их применение избавляет разработчика от необходимости углубляться в детали реализации системы - способы эффективного распределения памяти, низкоуровневые процедуры доступа и манипулирования данными. Исторически первыми языками, предназначенными для программирования задач ИИ и используемыми в дальнейшем для разработки ЭС, были LISP (начало 60-х гг.) и PROLOG (начало 70-х гг.). Первый основывался на едином списковом представлении программ и данных и методах работы со списками, второй - на идеях логического программирования. В настоящее время наряду с этими двумя языками достаточно широко применяются разработанные позже языки, составляющие три следующие группы: языки описания порождающих правил (наиболее известный - OPS5), объектно-ориентированные языки, языки логического программирования (типа PROLOG) [4, 6].

3. Многофункциональные программные среды (Multiple-paradigm programming - environment) - среды программирования, поддерживающие несколько парадигм. Они включают несколько программных модулей, что позволяет пользователю комбинировать в процессе разработки ЭС разные стили программирования. Одна из первых сред такого рода - LOOP, которая в рамках единой архитектуры обмена сообщениями объединила четыре парадигмы программирования: процедурно-ориентированное программирование (на основе языка LISP), программирование, ориентированное на правила, объектно-ориентированное программирование, программирование, ориентированное на данные [6]. На основе этой архитектуры во второй половине 1980х годов было разработано несколько коммерческих программных продуктов (наиболее известны KEE, KnowledgeCraft и ART), которые использовались для последующих разработок, таких как КАРРА и CLIPS. Многофункциональная среда CLIPS и ее более поздние версии широко применя.тся в настоящее время.

4. Дополнительные автономные программные модули - это некоторые полезные программы, которые можно выполнять вместе с приложением. Они предназначены для выполнения специфических задач в рамках выбранной архитектуры ЭС. Примеры: модуль работы с семантической сетью, использованный в системе VT[6], программный пакет Simkit из комплекта среды KEE, позволяющий использовать в ЭС методы моделирования.

В дальнейшем были разработаны мощные инструментальные комплексы для создания ЭС, представляющие собой интегрированные среды поддержки разработки ЭС. Характерными примерами являются комплекс G-2 (фирма Gensum, США) для создания ЭС реального времени и комплекс ЭКО для создания статических ЭС (Россия) [8]. Другие известные комплексы: ART, KEE, Knowledge Craft [4].


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: