Назвать ошибки, используя Monitor и Tally в SimPy - PullRequest
0 голосов
/ 24 апреля 2020

Здравствуйте. Я пытаюсь смоделировать дискретное событие, используя SimPy в python, но и классы SimPy монитора и Tally возвращают ошибку имени. Согласно документации (стр. 54) после импорта SimPy, я смогу определить новый монитор с m = Monitor(name="name).

. Когда я это сделаю, он вернет NameError: name Monitor' is not defined. Я также пробовал это как m=simpy.Monitor, в этом случае я получаю ошибку атрибута.

Любая помощь будет высоко ценится, спасибо.

1 Ответ

0 голосов
/ 24 апреля 2020

В более старой (2.x) версии simpy были доступны Monitor и Tally. Это ушло с (я думаю) версией 3. См. Здесь для получения информации о самой последней версии: https://simpy.readthedocs.io/en/latest/topical_guides/monitoring.html

В основном, для вещей, которые вы имеете контроль / доступ (например, процессы, которые создать), просто сохраните запись времени / событий / счетчиков, которые вам нужны (например, сколько времени было потрачено на ремонт, попросите процесс ремонта отслеживать время запуска, а затем рассчитайте timeInRepair = stopTime-startTime). Для других объектов, представляющих интерес, таких как ресурсы, у вас нет прямого доступа к записи того, что происходит при изменении состояний. В документации показан пример использования оболочки для изменения методов pre и post для ресурса.

...