Я хочу создать многоагентную имитационную модель для реального производства, чтобы оценить некоторые правила диспетчеризации. Имитация должна создавать журналы событий для оценки влияния времени правил диспетчеризации по сравнению с журналами событий реального производства.
Как я могу включить «текущее время моделирования» в этот тип мультиагентного интенсивного моделирования с передачей сообщений?
Справка:
Классическое моделирование дискретных событий (которое хорошо обрабатывает продвижение по времени) здесь не может быть применено, поскольку агенты в системе представляют собой относительно сложное поведение и требования маршрутизации, а правила диспетчеризации требуют, чтобы они часто общались. Эта и другие сложности процесса исключают подход централизованного планирования.
В науке о производстве тысячи бумаг используют многоагентное моделирование для решения некоторых проблем, связанных с производством. Однако я еще не нашел документ, в котором подробно описываются внутренняя работа или детали реализации этого моделирования.
К сожалению, использование кратчайшего времени процесса для дискретного пошагового включения в системе может оказаться невозможным, поскольку диапазон времени процесса составляет от 0,1 с до 24 часов. Есть вероятность, что мое моделирование будет использовано для последующих оценок в проекте, поэтому моделирование должно выполняться как можно быстрее - без опций для ночных прогонов моделирования.
Размер проблемы составляет около 500 ресурсов и 1000–10000 агентов по продуктам, большинство из них завершено и не участвует в дальнейшем обмене информацией или использовании ресурсов.
Следовательно, в результате связи новые события могут побудить агента сделать что-то до того, как произойдет его первоначальное событие «в следующий раз». Например, агент в настоящее время заблокирован на ресурсе продолжительностью один час. Однако другому агенту с более высоким приоритетом нужен этот ресурс сразу же и он просит первого агента освободить этот ресурс.
В каком-то смысле мне нужен способ создать гибрид классической имитации передачи сообщений и имитации дискретных событий.
Я рассматривал посредника, который участвует в каждом сообщении, - маршрутизатор сообщений и средство контроля времени, которое отправляет сообщения и события отметки времени. Также агент-посредник хранит список времени следующего события для различных агентов. Тем не менее, я считаю, что должен быть лучший способ решения моей проблемы, поскольку концепция оказывает огромное давление на посредника.
Обновление
Это заняло некоторое время, но, похоже, мне удалось создать мини-фреймворк и объединить концепцию DES и агента в одну. Я уверен, что в этом нет ничего нового, но, по крайней мере, уникально: http://code.google.com/p/tidra-framework/, если вам интересно.