Целью любого производства является получение однородной высококачественной продукции. Ведение технологического процесса в автоматическом режиме не всегда возможно из-за сложности математических моделей. Например, процесс получения полиакрилонитрильного (ПАН)-волокна (нити) включает более 15 стадий и порядка тысячи параметров. Управлять процессом приходится вручную, пользуясь системой локального контроля и регулирования параметров. Это предъявляет очень высокие требования к уровню специализации технолога.
Для систематического и непрерывного определения тенденций изменения параметров объекта разработана и успешно функционирует на предприятии система мониторинга [1], которую можно рассматривать как инструмент обратной связи в целях повышения качества выпускаемой продукции. Чтобы облегчить труд технолога производства и дать ему возможность оперативно и правильно управлять процессом, используется система мониторинга всего процесса, основанная на инструментальной возможности быстрого анализа и надежной статистической оценки многочисленных текущих данных. Для сохранения и передачи знаний и опыта, сокращения времени на обучение нового персонала и для повышения скорости принятия решения в сложной ситуации разработана экспертная система (ЭС) [2–7], входящая в систему мониторинга.
Основная цель разработанной ЭС – помощь эксперту-технологу в настройке параметров процесса, в оптимизации этой процедуры с учетом внешних воздействий, например, изменений, связанных с выбором сырья или производственного оборудования. ЭС позволяет анализировать полученные данные с помощью системы мониторинга и информировать технолога о возможных направлениях оптимизации технологического процесса по производству ПАН-нитей с целью получения постоянного или более высокого качества.
Исходя из классификации ЭС [2, 8, 9], разработанную систему по назначению определим как диагностическую, по методам представления знаний – как традиционную, по степени сложности – как поверхностную, по динамичности – как динамическую.
По результатам использования программы мониторинга для работы производства ПАН-нитей экспертом-технологом, непосредственно участвующим в технологическом процессе, был сформирован перечень основных правил [1, 10].
· Оценка среднего значения удлинения на отдельной машине.
· Оценка среднего значения разрывной нагрузки на отдельной машине.
· Оценка среднеквадратичного отклонения (СКО) отдельной машины.
· Зависимость между разрывной нагрузкой и разрывным удлинением свежесформованной нити.
· Зависимость между этими величинами, близкая к линейной y=ax+b. Это свидетельствует о дефектности структуры нити. Чем больше коэффициент a, тем выше разнородность структуры нити.
· Оценка СКО удельной вязкости полимера. Величина ее является показателем качества работы полимеризационной установки.
Для примера рассмотрим алгоритм последнего правила.
1. Если нет технических условий (ТУ).
1.1. Считаем СКО удельной вязкости полимера.
1.2. Считаем отклонение от нормы в процентах:
– если есть ТУ, отклонение = 100 – (СКО * 100) / СКО по ТУ;
– если нет ТУ, отклонение = 100 – (СКО * 100) / СКО.
2. Определяем отклонение от нормы в процентах:
– если отклонение меньше или равно 10 %, значит, разброс приемлемый, полимеризационная установка настроена хорошо;
– если отклонение больше или равно 10 % и отклонение меньше или равно 16 %, значит, полимеризационная установка настроена недостаточно хорошо, требуется подредактировать параметры;
– если отклонение больше или равно 16 %, значит, полимеризационная установка настроена плохо, требуется ее срочная настройка.
Важной особенностью при формировании правил является учет всех параметров (предикатов и их возможных видов (правил, функций)). Поэтому эксперту-технологу необходимо формировать эти правила с учетом всех параметров, всех знаний, с помощью которых ему удалось сделать тот или иной вывод. Это вызывает сложности, так как возможна ситуация, когда тот параметр, который технологу интуитивно кажется не важным, существенно влияет на логический вывод и итог правила.
Каждое правило описывается независимо от конкретной выборки данных и наименования параметров производственного процесса, которая будет к нему применена. Данный подход позволяет применять одно и то же правило для различных данных. Если бы мы для каждого параметра создавали свое правило, у нас был бы список повторяющихся правил, которые по сути своей выполняют одну задачу, но над разными данными. Поэтому реализовано решение: правило не зависит от данных, но если ему необходимо по мере работы использовать какие-либо конкретные параметры из БД, программа автоматически сделает это.
Каждое правило состоит из набора логических выводов (условий ЕСЛИ – ТО). Левая сторона (ЕСЛИ) включает в себя предикаты логического вывода, которые могут быть различного типа, а именно:
– параметры технологического процесса;
– функции (действия);
– правила, факты которых влияют на результат логического вывода.
Правая часть (ТО) представляет собой новый факт, который ЭС получает в ходе своей работы и может использовать для дальнейших рассуждений.
Механизм логического вывода обеспечивает формирование заключений, воспринимая вводимые факты как элементы правил, отыскивая правила, в состав которых входят введенные факты, и актуализируя те части продукций, которым соответствуют введенные факты. Рассмотрим конкретный пример функционирования ЭС для правила «Оценка корреляции», структура интерфейса представлена в виде таблицы.
После выбора пользователем правила и запуска его на выполнение ЭС анализирует каждый логический вывод правила. Рассмотрим алгоритм выполнения правила, которое приведено выше:
– в рабочей памяти был найден предиктор «Коэффициент корреляции»;
– установлено, что данный предиктор имеет тип «Действие»;
– согласно определенному типу предиктора найден и вызван метод «Расчет коэффициента корреляции»;
– данный метод вернул некоторое значение, которое было сохранено в рабочей памяти;
– затем полученное значение сравнивалось со значениями допустимого диапазона;
– после сравнения получен некоторый результат логического типа: либо Истина, либо Ложь;
– затем проверялось наличие других предикатов, в случае их наличия продолжался анализ;
– так как в данном случае этим предикатом оказалось правило «Оценка угла наклона», рекурсивно вызывалось это правило и анализировались уже его предикаты, и так далее, пока не было определено конечное правило, которое не зависит от других правил;
– затем результаты применения данных правил записывались в рабочую память и осуществлялся возврат к анализу родительского правила;
– анализировался результат (новый факт) выполнения включаемого правила и сверялся с тем, что был занесен в логический вывод;
– после получения очередного значения предиката осуществлялась проверка его на ис- тинность, затем оно объединялось логическим оператором связывания с логическим результатом предыдущего предиката; тот логический вывод, который в итоге давал значение Истина, возвращал новый факт в рабочую память.
Как можно заметить из перечисленных шагов, даже такое простое правило требует множества действий и разработки алгоритма анализа. Для реализации универсального алгоритма для всех правил был разработан парсер, активно использующий механизм reflection языка C#, а также созданы собственные атрибуты, устанавливаемые на методы ЭС и доступные механизму логического вывода.
Рабочая память предназначена для хранения исходных и промежуточных фактов решаемой в текущий момент задачи. Она размещается в оперативной памяти ЭВМ и отражает текущее состояние предметной области в виде фактов с коэффициентами уверенности (КУ) в истинности этих фактов.
Приведем общее представление рабочей памяти. Пока ЭС не начала работу, рабочая память пуста. Ее начальное состояние представлено на рисунке (а).
По мере того, как ЭС начала свою работу и механизм логических выводов стал анализировать предикаты, рабочая память начинает заполняться. Новое состояние рабочей памяти представлено на рисунке (б).
Программа состоит из двух основных частей.
· Блок формирования правил для того, чтобы технолог-эксперт совместно с инженером по знаниям могли создавать правила, сохранять их в базу правил и дополнять их новыми. Это позволит накапливать опыт и знания эксперта по ведению технологического процесса. Отдельно ведется список взаимозависимых правил, которые, в свою очередь, могут зависеть от других.
· Блок использования правил для того, чтобы эксплуатационный технолог мог применить некоторое правило к данным и получить конкретные рекомендации к дальнейшим действиям в зависимости от результата.
В блок формирования правил также входит специально разработанный парсер составных частей логического вывода, чтобы технолог без вмешательства программиста мог сам создавать новые правила и сохранять их в базе правил. Одно из первостепенных требований пользователей-технологов к ЭС – удобный интерфейс (см. http:// www.swsys.ru/uploaded/image/2015-2-dop/1.jpg).
Интерфейс для управления правилами, исходя из названия, служит как для создания новых правил, так и для модификации или удаления уже существующих.
Кроме того, разработан пользовательский интерфейс для выбора предикатов (http://www.swsys.ru/uploaded/image/2015-2-dop/2.jpg). Список параметров технологического процесса удобен для вызова: достаточно просто нажать на стрелку и выбрать нужные параметры для правила.
Как уже говорилось, предикат может быть не только параметром технологического процесса, но и сложной формулой, и результатом другого правила. Поэтому необходимо реализовать ин- терфейс, позволяющий пользователю добавлять функции (действия) и правила, от которых зави- сит текущее правило. На примере можно видеть, что правило «Расчет коэффициента корреля- ции» зависит от правила «Оценка угла наклона», а также действия по «Расчету коэффициента корреляции».
На данный момент реализован следующий список возможных действий по расчету
– коэффициента корреляции,
– коэффициента ковариации,
– коэффициента асимметрии,
– коэффициента эксцесса,
– дисперсии,
– стандартного отклонения,
– центрального момента,
– среднего значения,
– угла наклона,
– отклонения.
Каждое из этих действий может участвовать в логических выводах.
Приведем конкретный пример формирования логических выводов для правила «Оценка корреляции».
В логическом выводе участвуют результат действия, а также результат правила «Оценка угла наклона». Так как правило возвращает некоторый факт, необходимо предоставить пользователю возможность выбора этих фактов. В данном примере правило «Оценка угла наклона» может вернуть один из нескольких фактов: допустимый наклон, плохой наклон, очень плохой наклон.
Информация о правиле «Оценка угла наклона» отображается в окне интерфейса (http://www.swsys.ru/uploaded/image/2015-2-dop/11.jpg).
Вторым модулем программы является подсистема применения правил. Чтобы воспользовать- ся сформированными правилами, необходимо выбрать пункт меню «Анализ», а затем в зависимости от требования выбрать или «Анализ двух параметров», или «Анализ параметров между машинами» (http://www.swsys.ru/uploaded/image/ 2015- 2-dop/12.jpg).
Если, например, выбрать пункт «Анализ двух параметров», откроется форма системы мониторинга, на которой можно указать некоторую выборку. В данном случае выбраны параметры «Удлинение» и «Нагрузка нити».
После перехода на форму проверки правил (http://www.swsys.ru/uploaded/image/2015-2-dop/13.jpg) предлагается список доступных правил из базы правил для данной выборки, выбираем «Оценка корреляции» и нажимаем «Выполнить».
Разработанная ЭС предусматривает возможность получать в качестве выходной информации не только решение, но и необходимые объяснения этого решения, реализованные в модуле «Подсистема объяснений». Различают два вида объяснений:
− объяснения, выдаваемые по запросам; ЭС объясняет свои действия пользователю (ответ на вопрос «Почему система приняла такое решение?»);
− объяснения полученного решения проблемы (ответ на вопрос «Как была получена та или иная рекомендация?»); после получения решения система должна пояснить каждый шаг своих рассуждений, ведущих к решению задачи.
В данной ЭС выдается ответ сразу же после получения решения. Результат выполнения правила «Оценка корреляции», выбранного выше, следующий: имеется дефектность волокна, и качество волокна очень плохое, потому что значение параметра «Коэффициент корреляции» равно 1 (больше 0,75) И (меньше или равно 1). Результат выполнения правила «Оценка угла наклона» – очень плохой наклон, потому что значение параметра «Угол наклона» равно 42,27 (больше 10) И (меньше или равно 100).
Очевидно, что ЭС проанализировала все логические выводы, которые были занесены для правила «Оценка корреляции», подсчитала коэффициент корреляции, который оказался равным 1, и затем произвела анализ правила «Оценка угла наклона», показавшего результат «Очень плохой наклон». В итоге правило вернуло результат «Дефектность волокна высокая, качество волокна очень плохое». Проведенная опытная эксплуатация ЭС показала ее удовлетворительную работоспособность.
В перспективе планируется перевести данную ЭС в класс глубинных, чтобы ее работа осуществлялась даже при неполноте знаний. Это может быть достигнуто при помощи методов DataMining, то есть будут добавлены алгоритмы, которые могут обнаруживать некоторые закономерности между данными и тем самым предоставят пользователю новые знания, которые ранее не были заложены в базе знаний ЭС. Тогда ЭС сможет автоматически пополнять свою базу знаний.
Литература
1. Калабин А.Л., Козлов А.В., Пакшвер Э.А. Програм- мная система мониторинга производственных процессов // Программные продукты и системы. 2012. № 1. C. 95–99.
2. Нейлор К. Как построить свою экспертную систему. М.: Энергоатомиздат, 1991. 280 с.
3. Джарратано Д., Райли Г. Экспертные системы. Принципы разработки и программирование. М.: Вильямс, 2007. 1152 с.
4. Джексон П. Введение в экспертные системы. М.: Вильямс, 2001. 624 с.
5. Борисов В.В., Федулов А.С., Зернов М.М. Основы нечеткого логического вывода. М.: Горячая линия–Телеком, 2014. 122 с.
6. Уотермен Д. Руководство по экспертным системам. М.: Мир, 1989. 388 с.
7. Таунсенд К., Фохт Д. Проектирование и программная реализация экспертных систем на персональных ЭВМ. М.: Финансы и статистика, 1990. 320 с.
8. Классификация экспертных систем. URL: http://www. aiportal.ru/articles/expert-systems/classification.html (дата обращения: 15.08.2014).
9. Структура экспертной системы. URL: http://www. aiportal.ru/articles/expert-systems/structure.html (дата обращения: 15.08.2014).
10. Калабин А.Л., Козлов А.В., Мальков А.А., Пакш- вер Э.А. Программная система поддержки принятия решений на основе анализа данных технологического процесса производства полиакрилонитрильных волокон // XII национ. конф. по искусственному интеллекту с междунар. участ. КИИ-2010 (20–24 сентября 2010 г., г. Тверь, Россия): тр. конф. М.: Физматлит, 2010. Т. 3. С. 128–136.