SDBUILDER - интеллектуальная гибридная система имитационного моделирования и управления сложными дискретными системами


Скачать

С.И. Ясиновский (компания Simpartners)


В современном управлении производством многие проблемы могут быть решены с помощью имитационного моделирования. К таким проблемам относятся проектирование, анализ и оценка функционирования производственных систем, их реорганизация, а также оперативное управление. Существующие методы и языки имитации СДС позволяют решить многие из этих проблем, но обладают определенными недостатками. Их гибкость (легкость описания СДС), универсальность (широта класса описываемых систем) и способность представлять логику принятия решений часто оказываются недостаточными.


Большинство широко известных языков имитации таких, как Arena, Extend, GPSS/H, SIMUL8, SIMPLE++, ProModel, WITNESS, QUEST, Automod, Enterprise Dynamics, AnyLogic и др. не имеют простых и мощных механизмов включения в модель правил и алгоритмов принятия решений. Очень часто возможности описания различных стратегий принятия решений сводятся к выбору из предопределенного набора правил для некоторых частных ситуаций (например, приоритеты упорядочивания очередей) или просто к написанию подпрограмм на языке программирования общего назначения, что требует владения языком программирования и знания внутренней структуры имитатора. В любом случае это долгий и трудоемкий процесс.


Отсутствие подходящих средств моделирования привело исследователей к попыткам разработать так называемые гибридные системы, сочетающие в одном инструментальном средстве различные методы исследования операций, искусственного интеллекта, объектного анализа и имитации. Основной проблемой на пути интеграции различных методов в одном инструментальном средстве является то, что каждый подход использует собственное представление СДС, что усложняет и загромождает обмен данными. В результате часто появляются неповоротливые приложения, отдельные части которых реализованы с использованием разных средств разработки. Обмен данными в таких системах занимает больше времени, чем сама имитация. Гибридное средство, основанное на едином представлении СДС для имитации, оптимизации и принятия решений, было бы предпочтительнее. Таким средством является интеллектуальный имитатор System Dynamic Builder (SDBuilder или SDB) – построитель динамики систем, разработанный, сопровождаемый и внедряемый фирмой Simpartners (Бельгия).

Описание СДС и виртуальная машина SDBuilder

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

Рассматриваемый подход основан на объектно-ориентированном представлении элементов СДС и описании изменения состояния посредством продукционных правил. SDBuilder является развитием метода и языка имитационного моделирования РДО [1, 2], который лежит в основе РДО-имитатора [3].

Объекты СДС и классы объектов

СДС на концептуальном уровне представляется в SDB как множество объектов – элементов системы, внутренней структурой и поведением которых можно пренебречь для целей описания. В то же время наличие элемента как целого важно с точки зрения изучения поведения системы либо управления ею (рис. 1).


 

Рис.1 – Объекты СДС и их параметры


Объекты в SDB ассоциируются с классами. Класс объекта – это абстрактное описание подмножества объектов, имеющих общие структуру и поведение.



Рис.2 – Структура описания класса


Описание класса объектов (рис. 2) включает параметры (атрибуты) объекта, методы изменения состояния объекта, которые объединяют логически связанные изменения значений параметров, локальные продукционные правила, которые могут модифицировать только значения параметров данного объекта (экземпляра класса), показатели функционирования, позволяющие собирать статистическую информацию об эволюции состояния объекта, и, наконец, форматы трассировки, определяющие состав и формат информации о состоянии объекта, записываемой в файл трассировки для дальнейшего анализа.


Класс описывает объекты, имеющие собственное поведение (локальный процесс) и собственную базу знаний. Локальные события изменяют состояние только данного объекта и требуют сканирования только правил в локальной базе знаний. Если локальный процесс приводит к существенным с точки зрения верхнего уровня изменениям состояния объекта, сканируются также правила в базе знаний верхнего уровня.

Действия, события и нерегулярные события

Определяем активность как элементарное изменение состояния СДС. Кроме действия, описываемого двумя событиями, активность может представлять собой выполнение обычного продукционного правила (одно событие), нерегулярное событие или реакцию на внешнее событие.


Действия имеют длительность. Они описываются модифицированными продукционными правилами, введенными в SDB методе следующим образом: Если P(Сн – ) То Fн (Сн – ) Ждать ϕ(Сн – ) То Fк(Сн – ). Здесь Сн – , Ск – – состояния системы непосредственно перед событиями начала и конца действия соответственно, P(Сн – ) – предусловие действия, Fн(Сн – ) и Fк(Ск – ) – алгоритмы преобразования состояния СДС в начале и в конце действия. Модифицированное продукционное правило описывает два события (изменения состояния СДС). Первое событие – начало действия, второе – окончание действия происходит после истечения временного интервала ∆t = ϕ(Сн – ), определяемого природой действия и состоянием СДС (рис. 3).

 


Рис.3 – Диаграмма выполнения действия


Очевидно, обычное продукционное правило – частный случай модифицированного правила при ϕ(Сн – ) = 0.

Так как состояние СДС представлено значениями параметров объектов, действие может быть рассмотрено на концептуальном уровне как сущность, меняющая значения параметров объектов, участвующих в действии. Действие может также создавать и уничтожать объекты.


Описание действия в SDB на примере действия транспортировки приведено на (рис. 4).

 


Рис.4 – Представление действия траспортировки


Для начала действия необходим свободный грузовик и ожидающая заявка. В начале действия грузовик переходит в состояние "занят", заявка – в состояние "транспортируется", ее параметр Время_начала приобретает значение текущего модельного времени. Длительность действия равна сумме расстояний от места, где находится грузовик, до места погрузки груза и от места погрузки до места доставки груза, разделенной на среднюю скорость грузовика. В конце действия заявка уничтожается, грузовик становится свободен, его параметр Местоположение приобретает значение параметра Место_доставки заявки. Кроме этого, в параметрах грузовика накапливается пройденный путь и количество перевезенных грузов.

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

Представление СДС в SDB

Модель СДС в SDB – это динамическая продукционная система, БД которой содержит множество объектов, представляющих элементы СДС, база знаний – множество модифицированных продукционных правил, описывающих возможные действия (поведение СДС в тех или иных обстоятельствах).

Основным компонентам СДС (элементам, процессу, правилам функционирования) соответствуют в SDB-представлении объекты, действия, нерегулярные события, модифицированные продукционные правила. Процесс функционирования СДС есть последовательность действий и нерегулярных событий.

При управлении СДС в РВ блок управления (логического вывода) инициирует события начала действий на основе модели и текущего состояния СДС, в то время как моменты окончания действий и нерегулярные события являются откликом реального объекта.


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

Блок поиска на графе состояний

В состав SDB входит блок поиска решений на графе состояний, являющийся одним из методов принятия решений. Для его использования необходимо описать пространство состояний системы, правила изменения состояния, целевое состояние, критерий качества решения и некоторую другую информацию. Алгоритм позволяет находить оптимальные решения, а также компромиссные решения, не являющиеся оптимальными, но требующие приемлемых вычислительных затрат. Важным является то, что этот метод позволяет решать проблемы оптимизации различной природы и использует те же фундаментальные концепции, что и SDB – состояния и изменения состояний. Как и для имитации, состояние системы описывается значениями параметров объектов, а изменения состояния – продукционными правилами.

Решение, найденное с помощью поиска на графе состояний, есть путь на графе состояний системы, имеющий минимальную стоимость. Путь – это в свою очередь последовательность продукционных правил, необходимых для преобразования состояния из исходного в целевое. Найденная алгоритмом последовательность правил применяется к исходному состоянию системы и изменяет его в соответствии с принятым решением. Измененное состояние системы и есть результат принятия решений.

Структура виртуальной машины SDB

В основе виртуальной машины (ВМ) SDB лежат модифицированная продукционная система и аппарат событий (рис. 5).

 


Рис.5 - Структура виртуальной машины SDB

 

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


Для наблюдения за эволюцией состояний моделируемой СДС ВМ SDB включает блоки: сбора статистической информации, анимации (позволяет отображать изменения состояния СДС в наглядной форме на экране ПК), трассировки (записывает детальную информацию о процессе в файл трассировки для последующего анализа).

Среда разработки приложений SDB

Графическая среда разработки приложений SDB обеспечивает иерархическое представление подсистем и связанных с ними подпроцессов. Редактор приложений состоит из редакторов: классов объектов, экземпляров, сообщений, имитационных экспериментов и результатов. Редактор классов позволяет описывать параметры объектов, методы манипуляции состоянием объекта, способы анимации объектов класса и вычисления показателей функционирования, активности, структуру локального процесса. Редактор экземпляров (рис. 6) позволяет на основе классов описывать состав и структуру конкретного экземпляра СДС, задавать начальное состояние объектов СДС и описывать происходящий в СДС процесс на основе активностей, определенных в описании класса.



Рис.6 - Окно редактора экземпляров класса

Сообщение и управление дискретными процессами

ВМ SDB содержит блок приема/передачи сообщений. Каждому типу приходящих сообщений ставится в соответствие активность некоторой подсистемы приложения SDB. При приходе сообщения происходит проверка выполнения предусловий соответствующей активности с учетом значений параметров сообщения. В случае выполнения предусловия активность срабатывает и изменяет состояние подсистемы. В процессе выполнения активность может отправлять сообщения: от одной подсистемы приложения SDB к другой, между подсистемами различных приложений SDB и между приложением SDB и любой программой, находящейся на том же компьютере или удаленной (рис. 7).



Рис.7 – Архитектура системы управления на основе SDB


Для работы в составе систем управления ВМ SDB интегрирована со SCADA и SoftLogic системой MasterSCADA, обеспечивающей непосредственный сбор данных и управление, либо связь с внешними системами управления с помощью OPC-серверов, а также передачу и получение информации через локальные сети и Internet, доступ к реляционным БД других приложений (например, MES и ERP).

Пример приложения: изучение алгоритмов синхронизации линии упаковки жидких продуктов

В рассматриваемом примере с помощью имитационной модели производилась разработка алгоритмов системы управления автоматизированной линией упаковки жидких продуктов, установленной на одном из заводов фирмы Перье (Франция). Линия упаковки состоит из нескольких машин, выполняющих различные этапы процесса упаковки, соединенные между собой системой конвейеров, предназначенных для передачи емкостей между машинами и их накопления (рис. 8).



Рис.8 – Структура линии упаковки жидкостей


Цех упаковки состоит из нескольких линий, объединенных системой транспортировки палет и складской системой. Он имеет сложную структуру и подвержен различным возмущениям таким, как краткосрочные или длительные отказы линий упаковки, сбои транспортной системы.


Основная цель управления линиями такого рода – это балансировка производственных потоков и емкости буферных накопителей. Это достигается регулировкой скоростей ресурсов линии, в частности, конвейеров, чтобы получить оптимальную производительность линии.


Если бы функционирование линии было идеальным, регулирование было бы не нужно. Но при высоком уровне производительности элементы линии подвержены мелким отказам и сбоям. Одной из задач системы управления (СУ) является (с помощью специальных стратегий) сглаживание и минимизация воздействия сбоев на некотором элементе линии на другие элементы. Различные стратегии управления могут быть описаны в терминах правил, определяющих как переключаться из одного устойчивого состояния в другое или когда и как реагировать на конкретные ситуации.


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


ИМ, разработанная для изучения различных стратегий регулирования, позволяет детально воспроизводить поведение линии упаковки жидких продуктов, описывать и исследовать различные алгоритмы системы управления. Модель состоит из трех основных частей: модель физической линии, модель датчиков и СУ. Все составные части описываются одинаковым образом с использованием языка SDB. Модель включает три машины, шесть конвейеров и четырнадцать датчиков. Кадр анимации для разработанной модели отражает текущее состояние машин, конвейеров и датчиков, расположение партий емкостей вдоль лент конвейеров, положение фронтов аккумуляции и другие данные, позволяющие наглядно представить процесс и оценить качество управления.


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

На рис. 9 показан пример изменения параметров процесса на линии и режимов при наличии сбоев и отказов машин и при управлении с использованием информации о числе емкостей и временных ограничений на переключение скорости машин.

 


Рис.9 – Изменение значений параметров линии


Использование ИМ вместо реальной линии для проектирования и отладки алгоритмов управления позволяет существенно снизить риски вмешательства в реальный процесс и избежать неоправданных потерь производства или порчи оборудования. Наличие проверенных на ИМ алгоритмов управления позволяет снизить сроки и затраты при их запуске на реальном объекте.

Примеры приложений

Исследование проекта гибкого автоматического участка


Применение SDBuilder для исследования проекта производственной системы рассмотрим на примере гибкого автоматического участка, предназначенного для изготовления деталей сверхпроводящих магнитов. Проект разработан в Институте физики высоких энергий в рамках программы создания ускорительно-накопительного комплекса (УНК) заряженных частиц.


Одними из ключевых элементов в сверхпроводящем магните являются детали типов "воротник" и "пластина". Серийное производство магнитов предусматривало изготовление 5.2 млн. пластин и 5 млн. воротников в год. Для решения этой задачи Институтом совместно со смежными предприятиями был разработан ТП и проект автоматизированного участка по изготовлению воротников и пластин. Участок размещается в четырех помещениях: заготовительных операций и штамповки, сборки и сварки модулей воротников и других слесарных операций и в двух помещениях мойки (для пластин и для воротников). Для повышения наглядности представления и удобства отладки модели использовался блок анимации.

Исследование проекта участка проводилось с целью оценить качество разработанного проекта и выдать рекомендации по его доработке.


Общий вывод, который можно сделать, анализируя результаты экспериментов, следующий: при правильности общей концепции проекта, он требует серьезной доработки. Непонятна практическая роль стеллажей (поскольку они почти не используются), не нужен один из складских блоков. В то же время нужна еще одна автоматическая монорельсовая дорога (АМД) для разгрузки существующих и еще одно приемное устройство. Очевидно, функции одного из операторов должны выполнять двое рабочих. Нерационально используется мостовой кран. Производительность штамповочного и заготовительного оборудования не соответствует производительности остальных участников ТП. Большой простой имеют устройства зачистки и кассетирования.


Полученные с помощью ИМ результаты позволяют уже на этапе проектирования обнаружить и устранить потенциальные проблемы, которые могут возникнуть при функционировании участка, и тем самым снизить инвестиционные риски.

Гибридная система для краткосрочного планирования производства

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


Рассмотрим реализованную на SDBuilder гибридную систему, предназначенную для автоматизации процесса составления расписания на основе ИМ. Для имитации деятельности планировщика используется экспертная система (ЭС).


ИМ используется для построения версии расписания при заданных значениях переменных оптимизации. Участок, для которого проводится планирование, состоит из семи станков и производит детали десяти различных типов. Маршрут обработки деталей представляет собой граф возможных альтернатив. Для каждой операции известны номер станка, который должен выполнять эту операцию, длительность операции и номер наладки. Каждый заказ включает детали одного типа и описывается номером типа деталей, числом деталей, наиболее ранним временем начала и сроком выполнения. Исходными данными для системы краткосрочного планирования являются результаты работы систем долгосрочного планирования типа MRP-II.


ИМ для оценки качества полученного расписания вычисляет следующие показатели: число опоздавших заказов, общее время выполнения расписания и операций обработки для всего расписания (оно может быть разным из-за наличия альтернатив в маршрутах деталей), общее время переналадок и транспортировок для всего расписания, отклонение от планового срока, время изготовления и опоздание для каждого заказа и их суммарное значение для всего расписания, значение функции качества расписания. Функция качества расписания вычисляется как сумма штрафов для каждого заказа. Штраф заказа равен нулю, если заказ не опоздал и не был изготовлен более, чем на 4 ч раньше планового срока. Штраф равен опережению 4 ч, если заказ изготовлен более, чем на 4 часа раньше планового срока. Наконец, штраф равен квадрату опоздания, если заказ опоздал.


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

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

Раскрой бревен на участке распилки

В данном разделе представлена система оптимизации раскроя бревен для пилофабрики. Эта система включает имитатор OPC сервера, два приложения SDBuilder – модель участка распилки бревен (левая верхняя часть рис. 10) и приложение раскроя бревен (левая нижняя часть рис. 10), монитор процесса (справа внизу).


 

Рис.10 – Система оптимизации раскроя бревен


 Кроме этого, каждое приложение SDBuilder дополняется служебным приложением (правая верхняя часть рис. 10). Приложение SDBuilder – модель участка распилки имитирует процесс поступления бревен, их измерения и распилки, движения конвейеров. На основе моделирования процесса приложение изменяет значения переменных на OPC сервере, как если бы он был подключен к реальному программируемому автомату и реальному процессу. Приложение раскроя бревен с помощью служебного приложения имеет доступ к OPC серверу. Получив сообщение об окончании измерения бревна с параметрами бревна (длина, большой и малый диаметр), приложение на основе портфеля заказов осуществляет раскрой бревна с помощью эвристических правил или поиска на графе состояний. Результаты раскроя записываются в переменные сервера OPC, то есть фактически приложение дает команды автомату, управляющему пилой, как пилить данное бревно. Сообщения о параметрах бревен и результатах их раскроя отправляются также монитору процесса, который позволяет мастеру наблюдать процесс. Монитор хранит данные обо всех заказах, бревнах и результатах раскроя и вычисляет статистические показатели о параметрах бревен и качестве их раскроя.


                                   

Сглаживание пиков энергопотребления на металлургическом предприятии в режиме PB

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


 

Рис.11 – Суммарное потребление печей за сутки


По контракту с поставщиком электроэнергии общее потребление завода, усредненное за четверть часа, не должно превышать 70 МВт. Однако суммарное потребление электроэнергии часто превышает установленный лимит (рис. 11), что приводит к значительным штрафным санкциям. Причина этого состоит в том, что решение о запуске очередного цикла на печи принимается без учета уже запущенных циклов других печей. Учет этого фактора позволил бы избежать превышения установленного лимита энергопотребления за счет небольшого сдвига времени запуска цикла на более поздний срок.

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

 



Рис.12 – Суммарное потребление печей со сдвигом циклов за сутки

Заключение

System Dynamics Builder, являющаяся гибридом дискретно-событийного имитатора, экспертной системы и блока оптимизации, позволяет разрабатывать имитационные модели сложных систем, в том числе предприятий, системы оперативного планирования производства и системы принятия решений в режиме РВ. Использование приложений SDB позволяет провести анализ и реорганизацию бизнес и производственных процессов, рациональнее использовать ресурсы предприятия, оперативно реагировать на отклонения в процессе, а также улучшить другие показатели функционирования, специфические для данного предприятия.


Компания ИнСАТ (www.insat.ru), разработчик MasterSCADA и представитель компании Simpartners в России, обеспечивает техническую поддержку и продвижение SDBuilder и совместных решений.

 

Список литературы


1. Емельянов В.В., Ясиновский С.И. Введение в интеллектуальное имитационное моделирование сложных дискретных систем и процессов. Язык РДО. М.: АНВИК. 1998.


2. Artiba A., Emelyanov V.V., Iassinovski S.I. Introduction to Intelligent Simulation: The RAO language. Kluwer Academic Publishers., 1998.


3. Ясиновский С.И. Интеллектуальная гибридная система поддержки принятия решений РДО // Тр. междун. IEEE конференции по интеллектуальным системам AIS. 2005. Дивноморское. Россия.


Ясиновский Сергей Иванович – менеджер проектов компании Simpartners. 

Контактный телефон +32 474 997032 E-mail: iassinov@fucam.ac.be