500 likes | 651 Views
Apport de la simulation en ligne dans l’aide à la décision pour le pilotage des systèmes de production Application à un système flexible de production. Olivier CARDIN Institut de Recherche en Communications et Cybernétique de Nantes Équipe Analyse et Commande des Systèmes à Évènements Discrets.
E N D
Apport de la simulation en ligne dans l’aide à la décision pour le pilotage des systèmes de productionApplication à un système flexible de production Olivier CARDIN Institut de Recherche en Communications et Cybernétique de Nantes Équipe Analyse et Commande des Systèmes à Évènements Discrets Soutenance publique du 26 Octobre 2007 Devant le jury composé de: M. Henri Pierreval, LIMOS, Rapporteur M. André Thomas, CRAN, Rapporteur M. Pierre Castagna, IRCCyN, Examinateur M. Franck Fontanili, CGI, Examinateur M. Khalid Kouiss, LIMOS, Examinateur M. Jean-Jacques Loiseau, IRCCyN, Examinateur M. Patrick Pujo, LSIS, Examinateur
Contexte des travaux • Études réalisées en industrie au sein de l’équipe ACSED • Étude d’un atelier d’étirage de tôles[Castagna et al., 2001] • Des décisions complexes pour le pilotage • Beaucoup de références • Automatisation poussée • Très peu de temps pour fournir une solution • Affectation des ressources • Stratégies d’ordonnancement des productions • Quelle aide à la décision est-il possible d’apporter au pilote de production? 2
Déroulement de la présentation • L’aide à la décision pour le pilotage des systèmes de production • La simulation en ligne • Initialisation des simulations • Observateur par simulation • Application à un système flexible de production • Faisabilité dans une situation proche d’une fabrication réelle 3
L’aide à la décision pour le pilotage des systèmes de production • Complexité du pilotage des systèmes de production • Identification d’une réponse pertinente en cas de perturbation • Modèle de résolution de problème en cas de perturbation
Pilotage des systèmes • Structures hétérarchiques de pilotage [Trentesaux, 2005] • Agents constitutifs de l’architecture • Autonomie d’action et de décision • Distribution de l’information • Distribution de la décision • Structures hiérarchisées de pilotage [Mesarovic et al., 1970] • Propagation descendante des décisions • Propagation ascendante des informations 5
Décision et perturbation Phase de Diagnostic • Ces décisions répondent à des perturbations • Évènement imprévu dont l’occurrence gène la réalisation des objectifs de production du système [Cauvin, 2005] • Indisponibilité d’une ressource, arrivée d’un nouvel Ordre de Fabrication, etc. Perception de la perturbation Application de la décision Disparition de la perturbation Occurrence de la perturbation Détection de la perturbation Analyse de laperturbation Conception dela réaction Implantation dela réaction Cycle de vie d’une perturbation [Cauvin, 2005]
Vision et prévision pour le diagnostic Phase de Diagnostic • Nous nous intéressons ici à la phase de diagnostic • Action de compréhension relative à une décision d’action [Hoc, 1990] • Deux phases distinctes • Analyse: vision globale • Conception: prévision de comportement Perception de la perturbation Application de la décision Disparition de la perturbation Occurrence de la perturbation Détection de la perturbation Analyse de laperturbation Conception dela réaction Implantation dela réaction Cycle de vie d’une perturbation [Cauvin, 2005]
Modèle de résolution deproblèmes en phase de diagnostic [Rasmussen, 1983] [Rasmussen, 1986] [Rasmussen, 1983] [Rasmussen, 1986] Comportement basésur la connaissance Comportement basésur la connaissance RECONSTRUCTIONd’une solution originale RECONSTRUCTIONd’une solution originale ÉVALUATIONen relation avec les contraintes globales du système ÉVALUATIONen relation avec les contraintes globales du système [Hoc, 1990] [Hoc, 1990] Comportement basésur les règles Comportement basésur les règles IDENTIFICATIONde l’état du système IDENTIFICATIONde l’état du système PRÉVISIONdu comportement du système PRÉVISIONdu comportement du système ÉLABORATIONdes hypothèses et des tests associés ÉLABORATIONdes hypothèses et des tests associés CHOIXde la solutionappropriée CHOIXde la solutionappropriée FORMULATIONde la procédure d’implantation FORMULATIONde la procédure d’implantation RECHERCHE de données explicites RECHERCHE de données explicites Attentes DÉTECTION de conditions anormales EXÉCUTION DÉTECTION de conditions anormales EXÉCUTION Comportement basé sur les automatismes Comportement basé sur les automatismes
La simulation en ligne • Évolution de la simulation à évènements discrets: de la conception au pilotage des systèmes de production • Construction des modèles de simulation • Utilisation de la simulation en ligne pour la prise de décision • Applications de la simulation en ligne dans la littérature
La simulation: de la conceptionau pilotage des systèmes de production • Outil de conception ou de re-conception des systèmes de production • Après conception, peut-on réutiliser ces modèles de comportement très détaillés pour des prévisions à court terme? • Apparition du concept de simulation en ligne • Deux caractéristiques nécessaires [Davis, 1998] • Date d’obtention des résultats préétablie • Connexion avec le système réel: le modèle doit être initialisé avec l’état du système réel à chaque début de simulation
La simulation: de la conceptionau pilotage des systèmes de production • Apparition du concept de simulation en ligne pour la phase d’Utilisation du système • Pilotage – surveillance: cadre d’utilisation différent • Deux caractéristiques nécessaires [Davis, 1998] • Date d’obtention des résultats préétablie • Connexion avec le système réel: le modèle doit être initialisé avec l’état du système réel à chaque début de simulation Émulation pour la mise au point de la commande Simulation pour la conception Simulation pour la reconception Utilisation Utilisation Cycle de vie d’un système de production
Étude de l’en-cours d’une production • En simulation pour la conception • État initial vide et inactif • Moyenne de l’en-cours • Utilisation d’une périodede chargement (warm-up) • En simulation en ligne • Comportement exactde l’en-cours • Initialisation à un état non-vide • Beaucoup de données en jeu • Faible durée de prisede décision • Nécessité d’une initialisation automatisée En-cours En-cours Date simulée (heures) Date simulée (mois) 2 3 4 5 6 10 0 11 1 12 13 14 15 16
Construction du modèle de simulation • Connexion avec le système réel: le modèle doit être initialisé avec l’état du système réel à chaque début de simulation • Initialisation automatisée • Faible prise en compte des phénomènes aléatoires • Occurrence significative dans l’horizon de simulation • Prise en compte dans le scénario de la simulation • Vitesse de calcul au détriment de la flexibilité du modèle • Spécialisation des modèles par types de problème
Déroulement d’une prise de décision basée sur une simulation en ligne Phase de Diagnostic Détail d’une simulation Fin de la simulation n°i Application virtuelle de la stratégie n°i Initialisation du simulateur à la date d avec les données du système de production Simulation sans application de la stratégie n°i jusqu’à la date d+Dd Déroulement de la simulation jusqu’à la condition d’arrêt avec application de la stratégie n°i Application de la décision Prise de décision sur la stratégie la plus adaptée Perception de la perturbation Élaboration de N stratégies – Choix des modèles associés Décision d’utiliser la simulation en ligne Détermination de Dd Évaluation des résultats Latence … … i N 3 1 2 Perception de la perturbation Application de la décision Disparition de la perturbation Occurrence de la perturbation Date d+Dd Simulations successives Date d Analyse de la perturbation Conception de la réaction Détection de la perturbation Analyse de laperturbation Conception dela réaction Implantation dela réaction Phase de Diagnostic Durée de prise de décision Dd Cycle de vie d’une perturbation [Cauvin, 2005]
La simulation en ligne dans la littérature • Développements sur des cas spécifiques • Contrôle aérien [Rogers et Flanagan, 1991] • Pas de temps de transferts [Wu et Wysk, 1989] • Flux de personnes dans un bâtiment public [Hanischet al., 2003] • Développements limités • Paramétrage de distributions [Peters et Smith, 1998] [Kouiss et Pierreval, 1999] [Kouiss et Najid, 2004] • Développements non-traités [Gupta et Sivakumar, 2005] [Hotzet al., 2006] • Principal écueil des applications: L’initialisation des simulations
Initialisation dessimulations en ligne • L’initialisation dans le cas de la simulation en ligne • Le concept d’observateur par simulation
État du système – État du simulateur • État du système de production: [Pooch et Wall, 1993] • Collection minimale d’informations avec lesquelles le comportement futur du système peut être déterminé de façon unique en l’absence de hasard • État du système physique et du système d’information • État du modèle de simulation: • Entités, attributs, variables, ressources, transporteurs, files d’attente, convoyeurs, etc. • Comment identifier les données extraites du système avec celles nécessaires à l’initialisation? • Comment assurer d’avoir l’ensemble des données nécessaires?
Première solution:Utiliser les données issues de la commande • La commande connaît forcément une partie de l’état du système pour prendre ses décisions • Avantages • Données fiables • Architecture économique • Mise au point rapide • Inconvénients • Besoin de retraiter les données • Non-exhaustivité des données
Incertitudes spatiales et temporelles Information connue: Présence de la palette sur le lien n°1 Information connue: Position et date actuelle Détecteur de présence Lien n°1 Lien n°3 Lien n°2
Incertitudes spatiales et temporelles Information connue: Présence de la palette sur le lien n°1 Information connue: Position et date actuelle Information connue: Présence de la palette sur le lien n°3 Détecteur de présence Lien n°1 Lien n°3 Lien n°2
Seconde solution: Reconstruire les données manquantes par observation Information connue: Présence de la palette sur le lien n°1 Date d’entrée sur le lien Vitesse moyenne de la palette Détecteur de présence • Il est possible d’estimer la position de la palette par régression linéaire Lien n°1 • Utiliser l’observation pour fournir la position en continu à la simulation Lien n°3 Lien n°2
Spécifications de l’observateur • Fournir à tout instant une image de son état exploitable par les simulateurs en ligne • Estimer les données partiellement ou totalement inconnues tout au long de l’évolution du système • Communiquer avec les éléments de l’architecture de commande du système • Intégrer des mécanismes de recalage pour corriger ses prévisions dès qu’une donnée fiable lui parvient depuis le système réel
Le recalage par l’exemple • 1er cas: La palette réelle est en retard sur l’observateur • 2e cas: La palette réelle est en avance sur l’observateur
Technologie de l’observateur • Estimer les données partiellement ou totalement inconnues tout au long de l’évolution du système • Dynamique complexe • Beaucoup d’acteurs simultanément impliqués • La simulation est la solution qui s’impose pour la modélisation détaillée du comportement des systèmes de production • Technologie identique observateur/simulateur • Transfert d’état facilité • L’observateur sera également réalisé par simulation à évènements discrets
Application à un système flexible de production • Étude d’un système flexible de taille réelle • Exemples de décision à prendre pour le pilotage du système • Date de fin de production • Ordonnancement local • Mise en place de l’observateur – Architecture complète • Résultats sur la précision de l’architecture
Fonctionnement de la ligne • Les palettes sont équipées d’une étiquette électronique contenant: • La référence de la palette • L’ordre de fabrication auquel elle est allouée • La gamme de fabrication du produit transporté • Le nombre de produits à réaliser avant de rentrer au magasin • Un pointeur d’avancement dans la gamme • Les palettes circulent sur les convoyeurs à ruban de la boucle centrale et vont de poste en poste • À chaque entrée de poste, une règle l’autorise ou non à y rentrer pour poursuivre la production
Un exemple de cas d’étude:Date de fin estimée de production • Le comportement d’une production est lié au paramétrage des ordres de fabrication • Le couple (Np,Npp) paramétré pour le nouvel ordre satisfait-il à toutes les contraintes de production? • Décision centrée sur l’humain
Second cas d’étude:Ordonnancement local sur un poste • Les postes 2 et 6 ont des stocks ayant une règle de gestion paramétrable • Règle dynamique visant àlimiter le nombre deréglages • La palette A est rentrée • N’aurait-il pas été plus intéressant d’attendre la palette B avant d’entamer le réglage? • Décision totalement automatisée
Architecture de référence ERP SCM APS • Instanciation de la décomposition CIM • Cadre de travail centré sur le MES • Niveau du pilote • IHM (Supervision) • Identité Horizon de travail / Horizon de simulation • Collecte et acquisition de données • etc. etc. etc. Niveau de la planification 1 jour – 1 année MES Niveaude l’exécution Horizon de travail 1 min – 1 jour API API API API API Niveaude la commande 1 s – 1 min Capteur etc. Actionneur Niveau de l’opération 1 µs – 1 s
Intégration dans l’architecture ERP SCM APS • L’observateur utilise les fonctions de communication du MES, notamment au niveau de la collecte et l’acquisition des données • Le simulateur s’insère dans les fonctions de pilotage du MES (ordonnancement, cheminement, etc.) etc. etc. Niveau de la planification 1 jour – 1 année Simulateur MES MES Observateur Niveaude l’exécution Horizon de travail 1 min – 1 jour API API API API API Niveaude la commande 1 s – 1 min Capteur etc. Actionneur Niveau de l’opération 1 µs – 1 s
Architecture de commande initiale MES Supervision Niveau del’exécution SQL DCOM Serveur OPC Base de données Niveau de lacommande FipIO Pupitres, capteurs, butées, verrines, etc… Modules de lecture/écriture Niveau del’opération
Architecture de commande complète MES Aide à la décision Simulation, optimisation, etc. Socket TCP/IP + Partage de fichiers MES Socket TCP/IP Observateur Supervision Supervision SQL Niveau del’exécution Niveau del’exécution SQL DCOM SQL DCOM Serveur OPC Serveur OPC Base de données Base de données Niveau de lacommande FipIO Pupitres, capteurs, butées, verrines, etc… Modules de lecture/écriture Niveau del’opération
Justesse des prévisions MES • La justesse des prévisions dépend: • De la fidélité du simulateur • De la justesse de l’état de l’observateur • L’état de l’observateur dépend: • De la performance de la remontée d’information (OPC) • Estimation: R=1.27p+80 • R: temps de réponse (ms) • p: période de rafraichissement OPC • pmini=20 ms, donc Rmini=105 ms • 105 ms correspond à 2 cm • De la fidélité du modèle de reconstruction Aide à la décision Simulation, optimisation Socket TCP/IP + Partage de fichiers MES Socket TCP/IP Observateur Supervision Supervision SQL Niveau del’exécution Niveau del’exécution SQL SQL DCOM DCOM Serveur OPC Serveur OPC Base de données Base de données Niveau de lacommande FipIO Pupitres, capteurs, butées, verrines, etc… Modules de lecture/écriture Niveau del’opération
Justesse des prévisions • Évaluation de la date de fin prévue en cours de fabrication • Lancement d’une production test • Simulations à intervalles réguliers • Comparaisons de la date de fin prévue à la date de fin réalisée • Lancement de productions amenant des charges du système différentes • Charge: nombre de palettes engagées dans la production
Conclusions • Aide à la décision pour le pilotage des systèmes de production • Phase de diagnostic en réponse à une perturbation • Apport de la simulation en ligne: • Vision de l’état du système • Prévision de la conséquence des décisions sur le comportement du système • Initialisation délicate à réaliser en pratique • Initialisation des simulations • Nécessairement sur l’état actuel du système réel • Difficile à réaliser « directement »
Conclusions • Proposition de l’utilisation d’un observateur réalisé par simulation • Intègre les informations issues du système réel • Reconstruit les données non-mesurées • Fournit son état au simulateur comme meilleure approximation de l’état du système réel • Intégration au niveau de l’exécution de l’architecture de commande d’un système flexible de production • Une évaluation de la performance de notre solution satisfaisante • Justesse des prévisions inférieure à 3%
Perspectives • Mise en œuvre dans un contexte industriel • Utilisation de l’observateur pour la détection de fonctionnement anormal • Nature des décisions de pilotage considérées • Contraintes, limites • Acceptabilité des erreurs de justesse • Utilisation d’algorithmes d’optimisation • Nature des systèmes considérés • Développement sur un système continu: robot cartésien
Perspectives • Construction des modèles: • Transformation de modèles dédiés à la conception en modèle destinés à la simulation en ligne • Validation – qualité des modèles • Vie des modèles: • Ajustement automatique des paramètres de l’observateur et du simulateur en fonction du vécu de l’atelier • Réutilisation des modèles: • Développer une certaine généricité des travaux pour faciliter l’implantation sur des systèmes et des progiciels différents
Connexion avec le système réel • Évaluation de l’importance de la prise en compte de l’état du système réel dans l’initialisation • Construction d’un cas test: • Un système de production type job-shop à six machines • Des ordres de fabrication en cours • Un ordre de fabrication à lancer • Un paramètre à régler: le nombre de transporteurs réservés pour le nouvel ordre • Deux méthodes d’obtention du paramètre: • Simulation en ligne • Simulation dite « classique » (état initial vide) • Comparaison des durées de production obtenues
Calcul de l’indicateur de performance Meilleur résultat par simulation en ligneMen ligne Meilleur résultat par simulation classique Résultat obtenu par application du résultat de la simulation classique Mclassique
Évolution du gain obtenu enfonction de la charge initiale du système
Utilisation de la simulation en ligne pour la résolution de problèmes PRÉVISION de l’évolution du système pour toutes les hypothèses IDENTIFICATION de l’état du système ÉLABORATION d’un nombre fini d’hypothèses RECHERCHE de données explicites FORMULATION de la procédure Choix de l’hypothèsela plus adaptée Attentes DÉTECTION de conditions anormales EXÉCUTION • Simulations en temps fini, sans optimisation
Utilisation de la simulation en ligne pour la résolution de problèmes Critère d’arrêt non-atteint ÉLABORATION d’une hypothèse PRÉVISION de l’évolution du système pour l’hypothèse étudiée IDENTIFICATION de l’état du système • Optimisation, arrêt sur critère de convergence ou de temps Critère d’arrêt atteint Choix de l’hypothèsela plus adaptée RECHERCHE de données explicites FORMULATION de la procédure DÉTECTION de conditions anormales Attentes EXÉCUTION