Назад в библиотеку

Разработка экспертных систем на основе трансформации информационных моделей предметной области

Автор: Грищенко М.А.
Источник: Сайт международного научно-практического журнала «Программные продукты и системы», 2013. [Ссылка]

Аннотация: В статье описан программный комплекс для создания продукционных экспертных систем, ориентированный на непрограммирующего специалиста. Комплекс реализует методологию MDA, позволяющую создавать программные приложения на основе последовательной (пошаговой) трансформации информационных моделей предметной области. Особенностью предлагаемой реализации методологии MDA является использование онтологии в качестве вычислительно-независимой модели, авторской нотации RVML (Rule Visual Modeling Language) для создания платформенно-независимой модели, языка представления знаний JESS в качестве платформенно-зависимой модели. Приведены описания архитектуры, основных модулей программного комплекса, функций и универсальной логической модели базы данных, позволяющей хранить онтологию и продукционные модели, а также обеспечивать их взаимодействие. В статье также описывается авторская нотация RVML, специально разработанная для описания продукций с помощью графических примитивов, повышающая эффективность разработки продукционных БЗ и обладающая большей наглядностью по сравнению с UML при отображении причинно-следственных зависимостей.

Ключевые слова: онтология., web-приложения, трансформация моделей, продукции, бз, экспертные системы, mda

Введение

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

Решением данной проблемы является создание и использование программных средств, позволяющих абстрагироваться от конкретных ЯПЗ и сосредоточиться на моделировании предметной области. Пример таких систем — Protege [2]. Однако Protege не обеспечивает визуальное моделирование продукций и тестирование (исполнение и проверку) сгенерированных БЗ. В связи с этим требуется разработать программное средство, обеспечивающее моделирование предметной области и последующее автоматизированное создание БЗ и ЭС на основе разработанных моделей предметной области. В качестве методологической основы предлагается использовать MDA (Model Driven Architecture — архитектура, управляемая моделью) — перспективное направление в области программной инженерии, предполагающее разработку систем на основе трансформации и интерпретации информационных моделей [3].

Трансформация моделей при создании БЗ

Согласно MDA [3], логика работы програм- мной системы, включая описание основных по- нятий, отношений между ними и способов их обработки, описывается в виде моделей, определяющих состав, структуру и поведение будущего программного продукта. При этом выделяют несколько моделей: вычислительно-независимую – CIM (Computation Independent Model), платформенно-независимую – PIM (Platform Independent Model), платформенно-зависимую – PSM (Platform Specific Model) и модели платформы – PM (Plat­form Model). CIM и PIM не привязаны к конкретным языкам или средам программирования и по сути являются моделями предметной области, PSM и PM зависят от платформ разработки и выполняют функции адаптеров или трансляторов, преобразующих или интерпретирующих модели предметной области в программный код или программные среды. Процесс разработки представляет собой последовательный переход и трансформацию моделей (рис. 1).

pic1

В настоящей работе данный подход применяется для создания БЗ и ЭС продукционного типа: