ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Journal influence

Higher Attestation Commission (VAK) - К1 quartile
Russian Science Citation Index (RSCI)

Bookmark

Next issue

4
Publication date:
09 December 2024

Expert systems design based on the transformation of domain information models

The article was published in issue no. № 3, 2013 [ pp. 143-147 ]
Abstract: The paper describes the software to design rule-based expert systems. The software includes MDA methodolo-gy (Model Driven Architecture) and is intended for non-programmers. MDA is based on the stepwise transformation of do-main models. The proposed methodology feature is using ontology as a computation independent model (CIM); RVML (Rule Visual Modeling Language) as a platform independent model (PIM); JESS as a platform specific model (PSM). The architecture, main modules, functions and the universal logic data model for storing and interacting ontology and rules are presented. The RVML (designed to describe the rules with theaid of graphical primitives) is described. RVML increases the efficiency of rule-bases development by improving the clarity and comprehensibility of visualization of cause-effect relations (as compared with UML).
Аннотация:Описан программный комплекс для создания продукционных экспертных систем, ориентированный на непрограммирующего специалиста. Комплекс реализует методологию MDA, позволяющую создавать программные приложения на основе последовательной (пошаговой) трансформации информационных моделей предметной области. Особенностью предлагаемой реализации методологии MDA является использование онтологии в качестве вычислительно-независимой модели, авторской нотации RVML (Rule Visual Modeling Language) для создания платформенно-независимой модели, языка представления знаний JESS в качестве платформенно-зависимой модели. Приведены описания архитектуры, основных модулей программного комплекса, функций и универсальной логической модели базы данных, позволяющей хранить онтологию и продукционные модели, а также обеспечивать их взаимодействие. В статье также описывается авторская нотация RVML, специально разработанная для описания продукций с помощью графических примитивов, повышающая эффективность разработки продукционных БЗ и обладающая большей наглядностью по сравнению с UML при отображении причинно-следственных зависимостей.
Authors: Grishchenko M.A. (makcmg@icc.ru) - Institute of System Dynamics and Control Theory SB RAS, Irkutsk, Russia, Yurin A.Yu. (iskander@irk.ru) - Institute of system dynamics and control theory SB RAS, National Research Irkutsk State Technical University, Irkutsk, Russia, Ph.D, Pavlov A.I. (asd@icc.ru) - Institute for System Dynamics and Control Theory Siberian Branch of RAS, Irkutsk, Russia, Ph.D
Keywords: ontology, web-application, transformation of models, rules, knowledge base, expert systems, mda
Page views: 13767
Print version
Full issue in PDF (13.63Mb)
Download the cover in PDF (1.39Мб)

Font size:       Font:

Одним из самых трудоемких этапов создания экспертных систем (ЭС) является этап разработки БЗ, на котором решаются задачи концептуализации и формализации предметных знаний [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).

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

–      CIM реализована в виде онтологии, описывающей основные понятия и отношения предметной области;

–      PIM представляет собой описание продукций, полученных путем автоматизированной трансформации CIM и уточнения полученных результатов;

–      PSM представляет продукции на ЯПЗ JESS (в результате трансформации PIM), интерпретирует их и объясняет вывод в специальной среде;

–      PM – синтаксические правила ЯПЗ JESS.

Важным аспектом применения MDA является визуальное моделирование. При этом методология предписывает использовать UML для построения моделей предметной области. Полагая, что UML не позволяет наглядно и однозначно представить причинно-следственные зависимости, предлагается при описании PIM использовать дополнительно к UML авторскую нотацию для представления продукций – RVML (Rule Visual Modeling Language).

Нотация для представления продукций – Rule Visual Modeling Language

Предлагаемая нотация обладает большей выразительностью при описании причинно-следствен­ных зависимостей по сравнению с UML, в частности, RVML позволяет (см. рис. 2)

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

–      присваивать отдельным фактам субъективные вероятности в виде коэффициентов уверенности;

–      более наглядно отображать тип выполняемых действий (добавление, удаление, остановка);

–      отображать логические операторы в условиях правил (ИЛИ и НЕ).

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

В процессе решения практических задач реализации и апробации предлагаемого подхода был разработан исследовательский прототип программного комплекса.

Функции программного комплекса

Разработанный программный комплекс, являясь CASE-средством для создания БЗ и экспертных систем продукционного типа на основе ЯПЗ JESS, реализует следующие основные функции.

·       Создание вычислительно-независимой модели на основе онтологического моделирования:

–      в интерактивном режиме,

–      в процессе реинжиниринга существующих моделей.

·       Создание платформенно-независимых моделей БД и БЗ на основе трансформации модели онтологии:

–      описание БЗ продукционного типа,

–      создание логических моделей БД и их редактирование.

·       Создание и редактирование продукционных БЗ непрограммирующим пользователем в контексте управления БЗ.

·       Генерация БЗ и БД на основе трансформации платформенно-зависимых моделей:

–      преобразование моделей в БД в postgreSQL,

–      преобразование продукций на различные ЯПЗ (например CLIPS, JESS); обеспечивается возможность дальнейшей работы с продукциями в машине вывода CLIPS, JESS.

·       Тестирование и исполнение сгенерированных БЗ.

Архитектура комплекса

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

Серверная часть:

–      модуль управления БЗ: загрузка и сохранение БЗ, а также слияние и разделение существующих БЗ;

–      модуль управления БД: взаимодействие системы с БД, загрузка и сохранение БД;

–      модуль управления онтологиями: интеграция понятия предметной области в БЗ с созданием на их основе продукций;

–      модуль генерации БЗ и БД на основе платформенно-зависимых моделей: преобразование продукции БЗ в выбранный ЯПЗ (например CLIPS, JESS) и логических моделей БД в БД.

Клиентская часть:

–      модуль создания вычислительно-независи­мой модели (взаимодействия с онтологией): создание и редактирование модели предметной области (онтологии) непрограммирующими пользователями;

–      модуль создания платформенно-независи­мых моделей: создание непрограммирующим пользователем платформенно-независимых моделей (БЗ) в графическом виде;

–      редактор БЗ продукционного типа [4].

Структура хранения данных

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

Представленная модель включает понятия БЗ, правила, действия правил, постусловия правил, условия правил, предусловия правил, набор условий, шаблоны фактов, новые факты, новые факты на основании шаблонов, параметры новых фактов, атрибуты фактов, типы атрибутов фактов, возможные значения атрибутов, определения атрибутов фактов, условия на значения фактов (рис. 4).

Программная реализация

Для реализации клиент-серверной архитектуры используются сервер Apache2 с поддержкой PHP5, а также сервер PostgreSQL. Клиентская часть выполнена с помощью языка JavaScript и библиотек jQuery, jQueryUI, jsPlumb.

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

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

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

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

Для более эффективного построения платформенно-независимых моделей было предложено использовать авторскую нотацию Rule Visual Modeling Language, обеспечившую более наглядное (по сравнению с UML) отображение продукций.

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

Литература

1.     Jess, the Rule Engine for the Java TM Platform. URL: http://www.jessrules.com/ (дата обращения: 28.03.2013).

2.     The Protégé project. URL: http://protege.stanford.edu/ (дата обращения: 28.03.2013).

3.     Грибачев К.Г. Delphi и Model Driven Architecture. Разработка приложений баз данных. СПб: Питер, 2004. 348 с.

4.     Николайчук О.А., Павлов А.И., Юрин А.Ю. Компонентный подход: модуль продукционной экспертной системы // Программные продукты и системы. 2010. № 3. С. 41–44.

5.     Юрин А.Ю., Грищенко М.А. Редактор баз знаний в формате CLIPS // Программные продукты и системы. 2012. № 4. С. 83–87.

References

1.     Jess, the Rule Engine for the Java TM Platform, available at: http://www.jessrules.com/ (accessed 28 March 2013).

2.     The Protégé project, available at: http://protege.stan­ford.edu/ (accessed 28 March 2013).

3.     Gribachev K.G., Delphi i Model Driven Architecture. Razrabotka prilozheniy baz dannykh [Delphi i Model Driven Architecture. Data bases applications development], Piter, 2004.

4.     Nikolaychuk O.A., Pavlov A.I., Yurin A.Yu., Pro- grammnye produkty i sistemy [Software & systems], 2010, no. 3, pp. 41–44.

5.     Yurin A.Yu., Grishchenko M.A., Programmnye produkty i sistemy [Software & systems], 2012, no. 4, pp. 83–87.


Permanent link:
http://swsys.ru/index.php?page=article&id=3575&lang=&lang=&like=1&lang=en
Print version
Full issue in PDF (13.63Mb)
Download the cover in PDF (1.39Мб)
The article was published in issue no. № 3, 2013 [ pp. 143-147 ]

Perhaps, you might be interested in the following articles of similar topics: