Simulation d'événements discrets en Python
Dr Diogo Costa
Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific
Comprendre le système dynamique
Définir l'objectif ou les objectifs du modèle à événements discrets
Repérer les processus :
Choisir les ressources SimPy appropriées (resource, container, store)
Définir l'architecture du modèle :
Comprendre le système dynamique
Objectifs du modèle
Quels aspects voulez-vous optimiser ?
Variables d'état pour suivre ces objectifs
Ressources partagées
simpy.Resource(env, capacity=4)
Exemples
Conteneurs
simpy.Container(env, capacity,
init=initial_capacity)
Ressource qui se comporte comme un réservoir ou un panier
Ajouter et retirer une quantité :
.put() et .get()
Exemples
Entrepôt (Store)
simpy.Store(env, capacity=4)
Ressource comme un magasin avec plusieurs articles
Capacité illimitée (par défaut)
Emplacements pour stocker des objets arbitraires
Ajouter et retirer des articles :
.put() et .get()
Exemples
SimPy utilise des opérateurs au niveau du bit pour concaténer deux événements
Types d'opérateurs en Python
Opérateurs au niveau du bit
a & b, a >> b, a ^ bDans SimPy
Opérateurs pertinents pour SimPy
__and__() ou &__or__() ou |Simulation d'événements discrets en Python