Nous et nos partenaires utilisons des cookies pour vous offrir la meilleure expérience en ligne, y compris pour personnaliser le contenu, la publicité et l'analyse Web. Vous pouvez refuser les cookies en modifiant les paramètres de votre navigateur. Pour en savoir plus sur les cookies que nous utilisons, consultez notre Politique en matière de cookies.
Utilisez la bibliothèque Pypeline pour exécuter du code Python directement depuis votre modèle AnyLogic. Elle fonctionne avec une installation locale de Python, permettant une intégration fluide de la logique, des calculs, du traitement de données ou de bibliothèques externes basés sur Python dans vos simulations AnyLogic.
Tout modèle développé dans AnyLogic est une application Java qui peut être personnalisée nativement à l'aide du langage de programmation Java. Cependant, il est possible d'introduire Python en tant que langage de programmation auxiliaire dans vos modèles, ce qui permet d'utiliser des bibliothèques et des algorithmes basés sur Python.
La bibliothèque Pypeline peut être utilisée pour des cas tels que :
Travailler avec n’importe quelle bibliothèque Python pour des tâches telles que l’analyse de données, le calcul scientifique et financier, l’apprentissage automatique, la visualisation avancée, et bien plus encore.
Utilisation de code écrit à l'origine en Python sans avoir à le porter en Java.
Écrire des algorithmes complexes en Python que vous pouvez appeler en Java, en passant éventuellement des objets/données entre les langages.
Utiliser la simulation comme banc d'essai pour tester des politiques d'intelligence artificielle entraînées.
Il est compatible avec AnyLogic avec n'importe quelle licence valide (Personal Learning Edition, University, or Professional) et n'importe quelle version de Python 3 (à l'exception du Windows Store) installée sur votre ordinateur.
Pour faciliter le transfert de données entre vos environnements Python et AnyLogic (Java), Pypeline est également livré avec des fonctionnalités permettant de convertir des objets de données vers et depuis le format JSON. Il s'agit d'un format de fichier standard ouvert et d'un format d'échange de données qui est convivial à analyser pour les humains et les ordinateurs.
Les modèles AnyLogic peuvent accéder au code Python à l’aide de la bibliothèque Pypeline. Inversement, pour lancer un modèle AnyLogic depuis du code Python, les développeurs peuvent utiliser l’API Cloud d’AnyLogic ou la bibliothèque Alpyne.
La société AnyLogic a développé Pypeline en tant que bibliothèque tierce gratuite, open source et un outil de connectivité optionnel, sans obligation de fournir un support officiel ou une promesse de compatibilité de quelque nature que ce soit. Les utilisateurs de la bibliothèque peuvent poser des questions ou fournir des commentaires dans les onglets Problème ou Discussion de la page GitHub page.
Webinaire : Pypeline – Une bibliothèque de connecteurs Python pour AnyLogic
Ce webinaire propose une introduction complète à Pypeline. La présentation commence par une explication de sa définition et des divers cas d'utilisation. S'ensuit une exploration technique approfondie, démontrant comment intégrer de manière optimale Pypeline dans les modèles de simulation. Pour les dernières mises à jour, y compris les nouveaux paramètres et fonctionnalités, veuillez vous référer au dépôt GitHub du projet.
Études de cas : utilisation de Python avec AnyLogic pour la prise de décision
Discover how GlaxoSmithKline (GSK), in partnership with Decision Lab, applied predictive analytics in manufacturing and advanced energy consumption forecasting to optimize production planning, reduce operational expenses, and advance its sustainability initiatives. Using a hybrid model of machine learning and AnyLogic...
Increasing energy costs in combination with fears about global warming are two problems that building owners and managers face. Noorjax Consulting created a predictive model to influence and change the behavior of individuals in a building in order to conserve energy and reduce costs.
Les exemples ci-dessous illustrent divers cas d'utilisation et niveaux de complexité de la bibliothèque Pypeline ; ils sont disponibles à partir du référentiel GitHub et du référentiel interne des modèles fournis avec n'importe quelle édition d'AnyLogic (écran d'accueil AnyLogic → Exemples de modèles → Modèles pratiques/Exemples).
01
Fonctionnalité de base (introduction interactive à Pypeline)
Il s'agit d'une démo d'introduction dans laquelle vous pouvez explorer les fonctionnalités de base que Pypeline fournit dans trois fonctions différentes - « run », « runResults » et « runFile ».
Contrairement à tout autre modèle, il est configuré pour vous permettre de configurer de manière interactive l'objet PyCommunicator et d'envoyer ou de recevoir des informations vers ou depuis l'environnement Python sous-jacent. Dans cette démo, les principales fonctionnalités sont présentées pour donner une introduction pratique à l'utilisation de Pypeline.
Cette maquette représente un hôpital simplifié où les patients arrivent, y restent un certain temps, puis partent. Deux réseaux neuronaux sont utilisés : l'un pour prédire le taux d'arrivée des patients en fonction des taux d'arrivée des derniers jours, et l'autre pour prédire la durée du séjour des patients sur la base de 24 attributs liés à la santé de l'individu.
Il s'agit d'un modèle de chaîne d'approvisionnement à 3 échelons pour un seul produit. Les clients demandent des quantités variables du produit chaque semaine aux usines, qui peuvent les stocker dans des entrepôts.
Le modèle comprend les coûts associés au transport du produit entre les trois niveaux de la chaîne d'approvisionnement. La chaîne d'approvisionnement est importée d'un fichier Excel vers la base de données au démarrage. Au début de chaque semaine, l'état actuel du modèle est envoyé à un optimiseur Python pour déterminer la quantité de produit à envoyer et à qui.
Ce modèle présente un exemple de problème de représentant de commerce (TSP). Dans le TSP, un ensemble de villes est présent, l'une d'entre elles étant désignée comme lieu d'origine.
Étant donné un nombre arbitraire de villes à visiter, l'objectif est de trouver l'itinéraire le plus court qui commence et se termine à l'endroit où l'on se trouve chez soi. Pour optimiser l'ordre, la bibliothèque Python OR-tools (de Google) est utilisée.
Ce modèle est une version légèrement modifiée de l'exemple de modèle original d'AnyLogic. L'original est un modèle de dynamique de système démontrant un système chaotique mais déterministe. Lorsque le modèle démarre, Pypeline génère une nouvelle fenêtre 3D (via la bibliothèque Python « MatPlotLib ») et commence à y diffuser des données.
Vous pouvez interagir avec celui-ci en faisant glisser le graphique 3D pour afficher le modèle sous différents angles ou en modifiant les curseurs dans la simulation et en affichant les résultats. Ce modèle démontre également la capacité de Pypeline à fonctionner dans des simulations parallèles sans aucun code supplémentaire.
Centres d'appels interconnectés (Web App avec Pypeline)
Ce modèle est une version légèrement modifiée de l'exemple original d'AnyLogic « Centres d'appels interconnectés ». Il montre comment utiliser les bibliothèques de tableau de bord (la bibliothèque « Dash » dans ce cas) pour créer une application web en direct pour le modèle en cours d'exécution.
Après le lancement du modèle, l'application web sera lancée dans un environnement Python en arrière-plan. Vous pouvez ouvrir un nouvel onglet du navigateur sur « localhost :8050 » pour le voir. Périodiquement, le modèle transmettra son état actuel à Python, qui mettra ensuite à jour l'application Web. Vous pouvez utiliser cette stratégie pour créer d'autres interfaces permettant d'analyser votre modèle pendant son exécution.
Ce modèle illustre un cas d'utilisation de base des fonctionnalités JSON intégrées à Pypeline. Il s'agit notamment de la possibilité de sérialiser les objets du modèle au format JSON (soit pour transférer des données vers Python, soit à des fins de journalisation) et de désérialiser le texte JSON pour les agents et les populations.
Les fonctionnalités de sérialisation sont également personnalisées via un objet de filtre intégré. L'ensemble des fonctionnalités JSON provient d'une bibliothèque AnyLogic JSONifier intégrée à Pypeline.
Ce modèle illustre la résolution de l'optimisation statique à l'aide des bibliothèques Python Numpy et Scipy. Dans le modèle, il existe trois types de machines ; Chacune a son propre coût de production et est construite en trois étapes, chaque étape ayant une exigence de temps différente pour chaque étape.
Il y a deux contraintes : le nombre de machines construites et le temps cumulé alloué à chaque étape. L'objectif est de changer le nombre de chaque type construit afin de minimiser le coût de production.
Il s'agit d'un modèle de preuve de concept sur la façon d'utiliser l'objet PyCommunicator de Pypeline à partir d'un expériment. Bien que l'objet PyCommunicator soit techniquement un agent, en l'initialisant à partir de certains champs d'action d'expérience, Python peut être appelé à, dans cet exemple, générer les valeurs suivantes dans une expérience de variation de paramètre.
Simulation pour l'entraînement et le test de l'IA – Pack d'e-mails
La simulation AnyLogic est la plateforme de formation et de test de l'IA en entreprise. Avec la simulation à usage général AnyLogic, vous pouvez construire des environnements virtuels détaillés et robustes pour l'entraînement et le test de vos modèles d'IA. Les capacités uniques de simulation multi-méthodes constituent un outil complet pour l'apprentissage automatique.
Utilisée par des entreprises de premier plan dans tous les secteurs, cette plateforme entièrement compatible avec le cloud et dotée d'une API ouverte améliore et accélère le développement de l'IA aujourd'hui. Pour en savoir plus sur ce puissant outil d'apprentissage automatique, consultez notre pack d'e-mails et notre livre blanc sur l'IA !