Jump to content

СимПи

SimPy, бесплатный пакет моделирования дискретных событий, основанный на Python.
Оригинальный автор(ы) Клаус Г. Мюллер, Тони Виньо
Разработчик(и) Онтье Люнсдорф, Стефан Шерфке
Первоначальный выпуск 17 сентября 2002 г. ( 17 сентября 2002 г. )
Стабильная версия
4.1.1 / 12 ноября 2023 г .; 8 месяцев назад ( 12.11.2023 )
Репозиторий
Написано в Питон
Операционная система Кросс-платформенный
Тип Дискретное моделирование событий
Лицензия С
Веб-сайт простой .readthedocs .org

SimPy означает «Моделирование на Python», основанную на процессах, моделирования дискретных событий, представляет собой среду основанную на стандартном Python . [1] Он позволяет пользователям моделировать активные компоненты, такие как клиенты, транспортные средства или агенты, как простые функции генератора Python . SimPy выпускается как программное обеспечение с открытым исходным кодом под лицензией MIT . Первая версия была выпущена в декабре 2002 года. [2]

Его диспетчер событий основан на генераторах Python и может использоваться для асинхронной сети или для реализации многоагентных систем (как с моделируемой, так и с реальной связью). Моделирование может выполняться «как можно быстрее», в реальном времени (по времени настенных часов) или путем ручного пошагового прохождения событий. Хотя теоретически возможно проводить непрерывное моделирование с помощью SimPy, в нем отсутствуют функции для его поддержки. Однако для моделирования с фиксированным размером шага, где процессы не взаимодействуют друг с другом или с общими ресурсами, простой while петли достаточно. [3]

Кроме того, SimPy предоставляет различные типы общих ресурсов для моделирования точек перегрузки с ограниченной пропускной способностью, таких как серверы, кассы и туннели. В версии 3.1 и выше SimPy предлагает возможности мониторинга, помогающие собирать статистику о процессах и ресурсах.

SimPy 3.0 требует Python 3., [4] а для SimPy 4.0 требуется Python 3.6+. Дистрибутив SimPy содержит учебные пособия, [5] документация и примеры.

Ниже приведена симуляция SimPy. [6] показ часового процесса, который печатает текущее время моделирования на каждом этапе:

>>> import simpy
>>>
>>> def clock(env, name, tick):
...     while True:
...         print(name, env.now)
...         yield env.timeout(tick)
...
>>> env = simpy.Environment()
>>> env.process(clock(env, 'fast', 0.5))
<Process(clock) object at 0x...>
>>> env.process(clock(env, 'slow', 1))
<Process(clock) object at 0x...>
>>> env.run(until=2)
fast 0
slow 0 
fast 0.5 
slow 1 
fast 1.0 
fast 1.5
  1. ^ Ивата, Кертис; Маврис, Дмитрий (01 января 2013 г.). «Объектно-ориентированная среда моделирования дискретных событий для процессов обслуживания и логистики аэрокосмических аппаратов» . Procedia Информатика . 2013 Конференция по системным инженерным исследованиям. 16 : 187–196. дои : 10.1016/j.procs.2013.01.020 . ISSN   1877-0509 .
  2. ^ Сюн, Синьли; Ма, Линру; Цуй, Чао (13 января 2020 г.). «Среда моделирования оценки и оптимизации защиты от движущихся целей: подход SimPy» . Материалы 9-й Международной конференции по коммуникации и сетевой безопасности 2019 . ICCNS '19. Нью-Йорк, штат Нью-Йорк, США: Ассоциация вычислительной техники: 114–117. дои : 10.1145/3371676.3371692 . ISBN  978-1-4503-7662-4 .
  3. ^ Олайтан, Оладипупо; Джерати, Джон; Янг, Пол; Дагкакис, Георгиос; Хиви, Катал; Байер, Мартин; Перрен, Джером; Робин, Себастьян (01 января 2014 г.). «Внедрение ManPy, бессемантического пакета моделирования дискретных событий с открытым исходным кодом, в магазине вакансий» . Процесс CIRP . 8-я Международная конференция по технологиям цифрового предприятия - DET 2014. Прорывные инновации в машиностроении на пути к 4-й промышленной революции. 25 : 253–260. дои : 10.1016/j.procir.2014.10.036 . ISSN   2212-8271 .
  4. ^ «История и журнал изменений SimPy — документация SimPy 4.0.2.dev1+g2973dbe» .
  5. ^ Зиновьев Дмитрий (февраль 2018 г.). «Дискретное моделирование событий. С SimPy это легко!». ПрагПаб (104): 1–16.
  6. ^ Шерфке, Стефан (25 июля 2014 г.). «Дискретно-событийное моделирование с помощью SimPy» (PDF) . п. 5 . Проверено 10 августа 2016 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 6502f17bca8b32c0171bc59aa5780331__1717215780
URL1:https://arc.ask3.ru/arc/aa/65/31/6502f17bca8b32c0171bc59aa5780331.html
Заголовок, (Title) документа по адресу, URL1:
SimPy - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)