ГИБРИДНОЕ МОДЕЛИРОВАНИЕ МУЛЬТИАГЕНТНЫХ ПРОЦЕССОВ ПРЕОБРАЗОВАНИЯ РЕСУРСОВ
Аксенов К. А., Гончарова Н. В.,
Экспертная система реального времени G2
Модель в G2 описывается в виде блоков, представляющих собой какие-либо задачи (работы), связанные между собой путями («дорожками»), определяющими последовательность выполнения операций. На рис. П.3.1 представлены основные процессы предприятия.
Рис. П.3.1. Модель абстрактного предприятия на G2
В модели на базе G2 существует понятие рабочего объекта. Данный вид объектов модели является динамическим и представляет собой такой объект, обработка которого и происходит в процессе моделирования (заказы, расходные материалы, готовые продукты). Рабочие объекты передаются в модели от объекта к объекту по установленным путям и подвергаются некоторым изменениям / преобразованиям.
Модель преобразователя «выполнение заказов на производстве» (рис. П.3.2).
● вектора входов / выходов / средств представлены входами («заказы на выполнение»; выходами («выполненные заказы»); средствами («Мощности», «Рабочие»).
Рис. П.3.2. Вектора входов/выходов/средств
Для выполнения тех или иных операций может потребоваться описание необходимых ресурсов / средств (рабочие, станки, транспорт, ЭВМ и т. п.). В G2 данный вид объектов представлен набором подклассов класса ресурсов (рис. П.3.3).
● объем захватываемого / освобождаемого ресурса / средства описывается количеством средств на обработку одного объекта (партии заказа). Кроме того, существует возможность задавать правило выбора средств из числа свободных на данный момент (первый попавшийся, по приоритету, по наименьшей стоимости пользования или наименее редко используемого). Захват / освобождение необходимого количество ресурсов реализуется внутренними механизмами G2.
● длительность операции задается в виде постоянной величины или величины с заданным отклонением. Каждый заказ перед производством разбивается на партии. На рис. П.3.4 длительность равна значению переменной t, т. е. задается норматив производства 1 партии;
Рис. П.3.3. Настройка используемых ресурсов/средств
Рис. П.3.4. Длительность операции
● приоритет операции не устанавливается, обрабатывается очередь поступивших на производство партий (первым пришел – первым ушел);
● условие запуска преобразователя (рис. П.3.5) реализуется внутренними механизмами G2. Таким образом, выполнение работы инициируется поступлением на вход блока рабочего объекта.
Рис. П.3.5. Инициализация ресурсов
Определение функции расчета параметра «штрафные санкции».
Расчет любых параметров описывается функциями, а при наличии условий при расчете необходимо воспользоваться механизмом процедур, инициируемым правилом. Правила в G2 позволяют отслеживать некоторые события модели и инициировать операции.
Иерархическая структура модели процесса преобразования ресурсов. Поддерживается.
Элементы слияния и разветвления процессов. В G2 предусмотрено слияние и разветвление потоков ресурсов. Для реализации разветвления используется 2 типа блоков:
● блок «Copy» осуществляет безусловное копирование входящего рабочего объекта на каждый из своих выходов. Для синхронизации разветвленных потоков рабочих объектов далее в модели используются блоки «Associate» и «Reconcile». «Associate» связывает объекты, а «Reconcile», получая на вход 2 потока объектов, далее пропускает парами и только связанные объекты. При этом каждый входящий рабочий объект дожидается свою пару в очереди блока;
● блок «Branch» – имитирует процесс принятия решения и перемещает входящий рабочий объект на один из своих выходов, в зависимости от условия. В качестве условия возможен анализ атрибутов рабочего объекта.
Блоки разветвления потоков ресурсов показаны на рис. П.3.6.
Рис. П.3.6. Разветвление потоков ресурсов
Синхронизация по времени процессов. G2 имеет специальные средства поддержки синхронизации по времени процессов (рис. П. 3.1). Реализованы режим синхронизации с реальным временем и пошаговый режим, который, в свою очередь, делится на временные шаги и на шаги по событиям.
Функционально-стоимостный анализ. G2 имеет специальные средства поддержки функционально–стоимостного анализа. Каждый блок, ресурс и рабочий объект модели имеет встроенные средства учета стоимости работ, совершенных блокомнад рабочим объектом (рис. П.3.7). При построении модели задается стоимость обработки рабочего объекта в каждом блоке, а при моделировании ведется автоматический учет стоимости.
Рис. П.3.7. Элементы функционально-стоимостного анализа
Время работы / прерывания / простоя. Длительность операции задается в виде постоянной величины или величины с заданным отклонением (рис. П.3.4).
Динамический анализ данных. Проанализируем возможности средств анализа динамических данных.
На рис. П.3.8 отражены варианты представления результатов моделирования. В G2 существует класс датчиков, которые могут быть подключены к любому статичному объекту (блок, средства и т. п.), и настроены на накопление истории изменения любого из атрибутов динамических рабочих объектов модели. История значений датчика может быть представлена в табличном виде или в виде графика значений. Кроме того, представление информации может быть организовано как в виде индивидуальных таблиц/графиков по каждому атрибуту, так и в виде общего, где значения всех или части датчиков отражается в одной таблице / графике.
Рис. П.3.8. Отображение результатов моделирования
В процессе моделирования вся динамика движения заказов и готовой продукции наглядно реализована средствами среды G2.
Поддержка русского языка. Русский язык поддерживается только для обозначения элементов модели (наименования объектов и их атрибутов).
Изменение параметров модели во время эксперимента. При проведении эксперимента в любое время можно остановить имитацию и изменить характеристики и/или параметры.
Возможность построения мультиагентных моделей. Существует возможность разработать описания агентов, каждый из которых обладает индивидуальным поведением и знаниями. На основе описанных классов агентов можно создавать экземпляры класса с индивидуальным поведением (рис. П.3.9).
Рис. П.3.9. Отображение иерархии классов агентов
Поведение экземпляров задается структурой агента и набором правил, касающихся именно этого класса агентов. Под структурой подразумевается возможность детализации агента, путем разделения операций агента на составляющие (рис. П.3.10).
Рис. П.3.10. Отображение структуры агента
База знаний агентов описывается правилами G2 (рис. П.3.11). Правила G2 – это функции поведения объектов модели, описанные на ограниченном естественном языке (английский), которые определяют, как модель будет реагировать на факт выполнения каких-либо условий.
Обмен сообщениями между агентами может быть реализован несколькими способами как через состояние некоторых объектов модели, так и через содержание переменных / массивов модельной среды.
Рис. П. 3.11. Фрагмент базы знаний (3 правила поведения агентов менеджер и потребитель)
Описание базы знаний о предметной области. G2 имеет специальные средства описания базы знаний. Знания описываются в виде правил на языке высокого уровня, приближенного к английскому (рис. П.3.12).
Описание целей системы. G2 не имеет специальных средств описания целей системы или отдельных ее элементов. При необходимости цели можно описать функциями на языке G2.
Наличие механизмов описания ситуаций (поддержка ситуационного подхода). G2 не имеет специальных средств описания ситуаций. При необходимости их можно описать на языке G2.
Наличие средств описания команд. Команды описываются на собственном языке G2.
Описания модели на ограниченном естественном языке. Для описания модели используется приближенный к естественному английский язык.
Рис. П. 3.12. Функции поведения агентов, вызываемые правилами
Поддержка аппарата ЭС – да.
Поддержка ИМ. Реализовано.
Удобство интерфейса пакета при описании агентов – дружественный английский интерфейс.
Экспорт/ импорт/ открытый доступ к базе знаний модели:
● импорт начальных условий и исходных данных из внешних источников – существует механизм настройки экспорта из внешних баз данных, текстовых файлов и т. п.;
● экспорт результатов экспериментов – существует модуль двухстороннего взаимодействия с базами данных и встроенные механизмы работы с текстовыми файлами;
● открытый доступ к базе знаний модели – отсутствует.
Проектирование концептуальной модели предметной области – не поддерживается.