SimPy - SimPy - Wikipedia
Tento článek má několik problémů. Prosím pomozte zlepšit to nebo diskutovat o těchto otázkách na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
Původní autoři | Klaus G. Müller, Tony Vignaux |
---|---|
Vývojáři | Ontje Lünsdorf, Stefan Scherfke |
První vydání | 17. září 2002 |
Stabilní uvolnění | 3.0.11 / 16. listopadu 2018 |
Úložiště | |
Napsáno | Krajta |
Operační systém | Cross-platform |
Typ | Diskrétní simulace událostí |
Licence | MIT |
webová stránka | simpy |
SimPy je procesní diskrétní událost simulace rámec založený na standarduKrajta. Jeho dispečer událostí je založen na Pythonu generátory a lze je také použít pro asynchronní vytváření sítí nebo k implementaci systémů s více agenty (s oběma, simulovanými a skutečnými komunikačními systémy).
Procesy v SimPy jsou jednoduché funkce generátoru Pythonu a slouží k modelování aktivních komponent, jako jsou zákazníci, vozidla nebo agenti. SimPy také poskytuje různé typy sdílených zdroje k modelování míst s přetížením s omezenou kapacitou (jako jsou servery, čítače pokladen a tunely). Od verze 3.1 bude také poskytovat monitorovací funkce, které usnadní shromažďování statistik o zdrojích a procesech.
Simulace lze provádět „co nejrychleji“, v reálném čase (hodiny na zdi) nebo manuálním procházením událostí.
Ačkoli je teoreticky možné provádět kontinuální simulace pomocí SimPy, neexistují žádné funkce, které by to mohly provádět. SimPy je však zbytečný pro simulace s pevnou velikostí kroku, kde vaše procesy neinteragují s jinými nebo se sdílenými prostředky - použijte jednoduchý zatímco
smyčka v tomto případě.
Distribuce SimPy obsahuje výukové programy, podrobnou dokumentaci a velké množství příkladů.
SimPy je vydán jako otevřený zdroj software pod Licence MIT. První verze byla vydána v prosinci 2002.
Příklad
Jedním z hlavních cílů SimPy je snadné použití. Zde je příklad jednoduché simulace SimPy:[1] A hodiny proces, který v každém kroku vytiskne aktuální čas simulace:
>>> import simpy>>>>>> def hodiny(env, název, klíště):... zatímco Skutečný:... tisk(název, env.Nyní)... výtěžek env.Časový limit(klíště)...>>> env = simpy.životní prostředí()>>> env.proces(hodiny(env, 'rychle', 0.5))<Process(clock) object at 0x...>>>> env.proces(hodiny(env, 'pomalý', 1))<Process(clock) object at 0x...>>>> env.běh(dokud=2)rychle 0pomalé 0 rychle 0,5 pomalý 1 rychlý 1.0 rychle 1.5
Reference
- ^ Scherfke, Stefan (25. července 2014). „Simulace diskrétních událostí se SimPy“ (PDF). p. 5. Citováno 10. srpna 2016.