Любая экспертная система, в том числе экспертная система обнаружения предвестников отказов, предполагает в своем составе функционал, направленный на разъяснение промежуточных и конечных результатов. Помимо этого, полезной является возможность получения от экспертной системы рекомендаций, направленных на дальнейшее принятие решений по текущей обработанной ситуации и данных. Рекомендации могут быть ориентированы на различные аспекты объекта исследования и основаны на множестве входных параметров экспертной системы. Большее число параметров и факторов, влияющих на результат экспертной системы, позволяет получить более точные рекомендации, релевантные анализируемой ситуации, однако увеличение количества обрабатываемых входных данных системы усложняет процедуру выработки рекомендаций. Таким образом, построение подсистемы рекомендаций экспертной системы обнаружения предвестников отказов является важной и практически значимой задачей.
Цель исследования заключается в разработке подсистемы рекомендаций, направленных на формирование оператором экспертной системы обнаружения предвестников отказов решения по улучшению исследуемого объекта.
Материал и методы исследования
Подсистема рекомендаций в экспертной системе обнаружения предвестников отказов предполагает формирование выводов на основе входных данных. При этом требование от оператора вводить дополнительную информацию по исследуемому объекту, отличную от необходимой для формирования основного результата экспертной системы, привносит необходимость в сборе излишних для основных преобразований данных. Таким образом, при построении подсистемы рекомендаций в качестве ее входов следует предполагать набор данных, аналогичных основным входным параметрам экспертной системы обнаружения предвестников отказов, исключающий дополнительные действия со стороны оператора [1]:
– USL – верхняя граница допуска;
– LSL – нижняя граница допуска;
– k – коэффициент, зависящий от закона распределения показателя качества процесса и достоверной вероятности;
– d2 – коэффициент, который зависит от объема выборок;
– xi – результат измерений показателей качества отдельных единиц продукции.
В качестве результатов подсистемы рекомендаций могут выступать:
– набор возможных решений. К таким решениям могут относиться допустимые изменения в структуре исследуемого объекта, его элементах либо процессах, связанных с ним;
– инструкции к дальнейшим действиям. Они содержат конкретные последовательности действий по изменению установленной в экспертной системе ситуации, продемонстрированной в результате расчетов;
– логические интерпретации, основанные на экспертных знаниях. К ним могут относиться определения и пояснения полученных значений по отношению к различным диапазонам допустимых значений, помогающие оператору экспертной системы в принятии решений.
Разрабатываемая подсистема рекомендаций реализуется как часть экспертной системы обнаружения предвестников отказов. Она контактирует со следующими модулями:
– преобразования входных данных экспертной системы. Модуль представляет собой набор функций, ориентированных на расчет промежуточных параметров, применяемых в экспертной системе, на основе представленных выше данных;
– формирования и преобразования набора объяснений и рекомендаций. В модуле происходит формирование объяснений по каждой операции экспертной системы, выводимое оператору в целях ознакомления с ее процедурами. Предварительно информация преобразуется в вид нужный и воспринимаемый оператором экспертной системы, не обладающим специальными познаниями в данной области.
Расположение подсистемы рекомендаций в структуре экспертной системы обнаружения предвестников отказов показано на рисунке 1.
Рис. 1. Расположение подсистемы рекомендаций в структуре экспертной системы обнаружения предвестников отказов
В составе подсистемы рекомендаций находятся наборы условий активации и текстов рекомендаций, которые формируются на основе экспертных знаний, заложенных в систему. При формировании итогового набора рекомендаций осуществляется выборка из всех возможных рекомендаций тех, условия активации которых выполняются. В математическом виде взаимосвязь элементов и выборка рекомендаций могут быть представлены следующим образом:
Rв
где Rв – множество итогового набора рекомендаций; n – количество подходящих рекомендаций; Ti – текст i-ой рекомендации; Ri(Ui,Ti) – i-я рекомендация, состоящая из i-ого условия активации Ui и i-го текста рекомендации Ti.
Реализовать такую подсистему можно различными способами, к примеру:
– с применением внешней реляционной базы данных с собственной системой управления [2, 3]. Такой способ реализации предполагает наличие дополнительного программного обеспечения, выполняющего обработку запросов к базе данных, структурно реализованную в виде таблиц. Часто применяется при построении распределенных информационных систем, предполагающих наличие клиентской и серверной части. Реляционные базы данных на текущий момент являются наиболее распространенными;
– с применением внешней нереляционной базы данных с собственной системой управления [4, 5]. Основным отличием от предыдущего способа является особенность структуры данных и, как следствие, их обработка. Нереляционные базы данных применяются для решения определенных специфических задач, что, в свою очередь, усложняет процесс интеграции и настройки базы данных;
– с применением внутренней базы данных [6, 7]. Такая база данных предполагает хранение информации непосредственно в рамках самого программного дистрибутива экспертной системы, что, с одной стороны, обеспечивает быстроту доступа к данным, однако, с другой стороны, обязывает осуществлять самостоятельную обработку данных и их выборку. Для задач построения экспертной системы обнаружения предвестников отказов, которая позиционируется как сервис и не предполагает клиент-серверного разделения функций, такой способ является достаточным.
Реализация подсистемы рекомендаций в виде внутренней базы данных возможна с применением поименованных (ассоциативных) массивов. В такой реализации предполагается иерархическая структура рекомендаций recoms, состоящая из условий активации usl и текста рекомендаций val.
Рекомендации recoms являются массивом, каждый элемент которого служит поименованным массивом из условий и текстов рекомендаций.
Условия активации usl представляют собой логическое выражение, которое при его расчете в экспертной системе обнаружения предвестников отказов может вернуть значение «истина» или «ложь». Условия могут быть реализованы в виде текстовой строки, содержащей логическое выражение, при условии возможной последующей обработки такой строки с целью ее расчета, что может вносить ряд ограничений в выбор языка программирования при реализации подсистемы рекомендаций.
Текст рекомендаций val представляет собой текстовую строку, содержащую возможные решения, инструкции к дальнейшим действиям или логические интерпретации, основанные на экспертных знаниях. Текст может быть предварительно отформатированным и содержать дополнительные элементы оформления и визуализации при необходимости и возможности их обработки выбранным языком программирования.
С целью выборки набора рекомендаций возможно применение проверки условий активации в рамках цикла, проходящего по каждой рекомендации, заданной в базе знаний. Такой цикл представлен на рисунке 2.
Пример реализации подсистемы рекомендаций с применением языка JavaScript, выраженный в фрагменте набора рекомендаций, представлен на рисунке 3.
В данном примере v() является функцией получения и возврата значения объекта (элемента), принятого в качестве параметра. Так, v(“p0_12”) вернет значение, заданное в элементе p0_12.
Рис. 2. Фрагмент выбора рекомендаций в рамках цикла
Рис. 3. Фрагмент набора рекомендаций, заданных в экспертной системе обнаружения предвестников отказов
Результаты исследования и их обсуждение
В ходе исследования были решены следующие задачи.
1. Проанализированы входные и выходные данные подсистемы рекомендаций экспертной системы обнаружения предвестников отказов. К входным данным относятся доступные для сбора оператором системы показатели USL (верхняя граница допуска), LSL (нижняя граница допуска), k (коэффициент, зависящий от закона распределения показателя качества процесса и достоверной вероятности), d2 (коэффициент, который зависит от объема выборок), xi (результат измерений показателей качества отдельных единиц продукции). Выявлены возможные группы рекомендаций: набор возможных решений, инструкции к дальнейшим действиям и логические интерпретации, основанные на экспертных знаниях.
2. Разработана структура подсистемы рекомендаций и выявлено ее расположение в общей структуре модулей экспертной системы обнаружения предвестников отказов. Подсистема состоит из набора знаний, связанных с рекомендациями, условий активаций и текстов рекомендаций. Контактирующими модулями по отношению к такой подсистеме являются модуль преобразования входных данных экспертной системы, ориентированный на получение промежуточных параметров экспертной системы, и модуль формирования и преобразования набора объяснений и рекомендаций, приводящий результаты расчетов в вид, достаточный для понимания оператором процедур экспертной системы и разработки решений по ситуации.
3. Сформировано математическое представление задачи взаимосвязи элементов подсистемы и выборки рекомендаций из общей базы знаний. Представленная в работе формула обозначает связь множества итогового набора рекомендаций, количества подходящих рекомендаций, текстов рекомендации и условий активации, является основой для построения соответствующей подсистемы рекомендаций и написания программного кода. Математическое представление описывает процедуру выборки из всех возможных рекомендаций, условия активации которых выполняются.
4. Проанализированы возможные варианты реализации подсистемы рекомендаций в ориентации на применение различных способов хранения информации. Рассмотрены варианты с применением внешней реляционной базы данных с собственной системой управления, с использованием внешней нереляционной базы данных с собственной системой управления и с применением внутренней базы данных. Выявлены основные особенности, достоинства и недостатки. Выбран способ реализации подсистемы рекомендаций на основе применения внутренней базы данных, так как ее возможно создать с применением поименованных (ассоциативных) массивов.
5. Представлены пример реализации подсистемы рекомендаций с применением языка JavaScript. Сформирован фрагмент программного кода цикла, в котором осуществляется выборка рекомендаций, условия активации которых являются верными, и фрагмент программного кода набора рекомендаций, заданных в экспертной системе обнаружения предвестников отказов.
Заключение
Рассмотренные в исследовании положения являются основой для построения подсистемы рекомендаций экспертной системы обнаружения предвестников отказов. Выбранные входные и выходные данные согласуются с основными данными экспертной системы и не требуют дополнительных операций со стороны ее оператора. Структура подсистемы рекомендаций влияет и изменяет только интерфейсы взаимодействия (получения данных) с модулем преобразования входных данных экспертной системы и частично затрагивает модуль формирования и преобразования набора объяснений и рекомендаций. Представленные фрагменты программного кода могут быть применены при программной реализации подсистемы рекомендаций как экспертной системы обнаружения предвестников отказов, так и других экспертных систем. Изменения могут быть связаны непосредственно с текстами рекомендаций, ориентированными на объект исследования и задачи конкретной экспертной системы, а также с условиями активации, зависящими от применяемых параметров и показателей. Результаты работы согласованы с основными принципами организации экспертной системы обнаружения предвестников отказов, а также применяемыми в ней модулями.