Le défi
par Mohammad Dehghanimohammadabadi & Thomas K. Keyser (Western New England University)
Présenté lors de la Conférence d'hiver sur la simulation 2015
La modélisation de simulation est de plus en plus utilisée pour traiter une variété de questions dans plusieurs disciplines, y compris, mais sans s'y limiter, les soins de santé, la fabrication, les services et les systèmes de la chaîne d'approvisionnement. En tant qu'outil central de prise de décision, la simulation détermine les configurations et les alternatives attrayantes afin de fournir une justification suffisante pour convaincre les gestionnaires d'adopter des améliorations. Cependant, il existe certaines activités dans les systèmes du monde réel que les progiciels de simulation ne sont pas en mesure de traiter correctement. Ces activités sont principalement des boîtes à outils de prise de décision qui sont développées afin d'améliorer les performances du système. Par exemple, dans les systèmes de fabrication, les techniques d'ordonnancement sont largement utilisées pour fournir un ordonnancement optimal des activités de l'atelier. Par conséquent, dans l'optique d'une planification stratégique à long terme du système par le biais de la simulation, il est essentiel d'intégrer ces activités de prise de décision dans le modèle de simulation. Cette capacité rend la simulation plus intelligente et plus précise, car elle offre une perspective plus réaliste du système et de ce qui s'y passe réellement.
Intégrer cette logique exceptionnelle dans un modèle de simulation est un véritable défi ; cependant, grâce aux progrès des progiciels de simulation actuels tels que SIMIO, c'est réalisable. L'un des nombreux avantages de SIMIO est sa capacité d'interface de programmation d'applications (API), qui permet aux utilisateurs de personnaliser ou d'étendre correctement le modèle qu'ils souhaitent. Il peut s'agir d'ajouter de nouvelles étapes, de nouveaux éléments et de nouvelles règles, d'importer et d'exporter des données, d'améliorer l'expérimentation avec des algorithmes externes ou d'assurer l'interface avec des programmes externes. En tirant parti de la capacité API, cette étude présente une nouvelle instance d'étape définie par l'utilisateur qui intègre MATLAB comme partie intégrante de SIMIO. Cette étape est appelée "CallMatlab" et requiert l'adresse du dossier dans lequel se trouve le fichier MATLAB ainsi que le nom de la fonction MATLAB. Comme pour les instances d'étape existantes dans SIMIO, l'utilisateur peut facilement glisser-déposer CallMatlab lors de l'élaboration des processus.
La solution
L'application
L'une des applications de l'étape "CallMatlab" proposée est l'appel à l'optimisation au cours de la simulation. Dans la littérature, ce type de simulation est appelé simulation itérative basée sur l'optimisation (IOS), dans laquelle un gestionnaire d'optimisation est intégré à un agent de simulation. Cette étape permet de déclencher l'optimiseur en cas d'événements prédéfinis dans la simulation. Quel que soit le type d'optimisation, on peut utiliser MATLAB soit pour exécuter des algorithmes d'optimisation personnalisés par l'utilisateur, soit pour appeler des optimiseurs commerciaux, par exemple CPLEX, par l'intermédiaire de MATLAB. L'objectif de la simulation étant de refléter les activités du monde réel, l'utilisateur peut appliquer cette étape chaque fois qu'il effectue une optimisation de routine dans une situation réelle. Par exemple, dans un système de fabrication, les planificateurs utilisent l'optimisation pour programmer les tâches soit de manière régulière, comme au début de chaque équipe, soit en cas d'urgence, comme en cas de panne de machine, de réparation ou d'arrivée d'une nouvelle tâche. Par conséquent, en fonction de la fréquence d'utilisation de l'optimisation dans le système, l'étape fournie sera appelée pendant l'exécution de la simulation, ce qui déclenchera l'optimiseur dans MATLAB. Certaines des applications de cette instance d'étape dans la modélisation de simulation sont présentées ci-dessous.
Application aux systèmes de santé
La planification des patients, des infirmières ou des médecins est une tâche très courante dans la plupart des hôpitaux et des services d'urgence. L'étape CallMatlab peut être utilisée pour modéliser les opérations quotidiennes de planification dans un hôpital où des événements imprévus peuvent se produire et où une optimisation est nécessaire. Voici quelques exemples de ces événements : deux médecins malades, l'annonce d'un accident de bus qui va faire déborder les urgences, un retard dans l'arrivée de pièces de rechange essentielles, etc. En général, ces événements nécessitent des mesures compensatoires immédiates qui peuvent être évaluées à l'aide d'un modèle de simulation (Espinoza et al., 2014). Un modèle de décision basé sur la simulation, initialisé par les informations les plus récentes sur l'état du système, peut être utile pour l'évaluation à court terme de plusieurs solutions alternatives ou de stratégies opérationnelles alternatives (Espinoza et al., 2014). Cependant, pour la planification à long terme, l'étape proposée pourrait aider les praticiens à exécuter l'IOS pour représenter leur système, alors qu'il est optimisé plusieurs fois face à tout défi pouvant exister dans le système de santé réel.
Application aux systèmes de fabrication
Au cours d'une simulation d'un système de fabrication, l'optimisation est appelée chaque fois que l'état du système change et qu'un réordonnancement est nécessaire. Le gestionnaire d'optimisation de MATLAB résout un problème analytique et renvoie les résultats à la simulation afin de redistribuer les tâches non traitées entre les machines disponibles. Parmi les événements déclencheurs d'un système de fabrication, on peut citer les pannes de machines, la maintenance préventive, les changements dans la structure de la demande, les retards inattendus dans les tâches programmées ou l'heure de début de l'équipe. Si l'un de ces événements se produit, le gestionnaire de simulation lance l'optimisation et réorganise toutes les tâches non traitées en fonction de la nouvelle solution optimale.
Application aux systèmes de gestion de la chaîne d'approvisionnement (GCA)
Un modèle de simulation pourrait englober divers modèles de gestion de la chaîne d'approvisionnement avec leurs relations non linéaires et complexes, dans le cadre d'hypothèses plus réalistes. La demande des clients et les capacités des fournisseurs évoluent constamment en termes de variété et de gamme de prix. Il est possible d'exploiter le modèle IOS sur un modèle de chaîne d'approvisionnement, tout changement dans le système pouvant être considéré comme un point de déclenchement. Par exemple, si la demande du client change, si la capacité du fournisseur varie, si un nouveau fournisseur a été sélectionné, si le nombre de transports disponibles fluctue ou même si les prix changent, la simulation peut se mettre en pause et optimiser le système en fonction des nouvelles conditions de la chaîne d'approvisionnement. L'application de l'approche IOS proposée permet aux entreprises de concevoir leur propre chaîne d'approvisionnement, non seulement en optimisant les opérations internes, mais aussi en examinant et en améliorant les performances de l'ensemble de la chaîne d'approvisionnement à long terme.
L'impact sur les entreprises
Conclusion
L'étape SIMIO proposée intègre un logiciel de simulation à un agent informatique afin d'effectuer des opérations informatiques de haut niveau telles que l'optimisation. Plusieurs applications sont présentées pour illustrer le potentiel de l'instance d'étape CallMatlab proposée afin de mettre en œuvre la modélisation IOS. Cependant, cette étape n'est pas limitée à l'optimisation et pourrait être utilisée pour exécuter tout type de calcul souhaité par l'utilisateur. Nous pensons que cet ajout donne une nouvelle dimension à l'approche de la modélisation par simulation. Cela permettrait aux experts de profiter de la simulation de modélisation tout en mettant en œuvre leurs propres logiques et outils de prise de décision dans le cadre de l'exécution de la simulation.

