La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Analyses de sûreté de fonctionnement multi-systèmes

Présentations similaires


Présentation au sujet: "Analyses de sûreté de fonctionnement multi-systèmes"— Transcription de la présentation:

1 Analyses de sûreté de fonctionnement multi-systèmes
Présenté par Romain Bernard Doctorant LaBRI / ONERA / Airbus Analyses de sûreté de fonctionnement multi-systèmes

2 Plan Introduction et objectifs de la thèse Contexte
Raffinement AltaRica Raffinement appliqué à la sûreté de fonctionnement Conclusion

3 Plan Introduction et objectifs de la thèse Contexte
Raffinement AltaRica Raffinement appliqué à la sûreté de fonctionnement Conclusion

4 Conception de systèmes embarqués et SdF
La sécurité dans l’aéronautique est une priorité: certification Besoin d’analyses de sûreté de fonctionnement des systèmes (SdF) pour garantir un niveau de sécurité requis Evolution des systèmes embarqués liée aux contraintes de poids: systèmes multi-fonctions, intégration en hausse complexité d’analyse croissante Besoin d’outils d’aide aux analyses Les avionneurs s’intéressent aux méthodes formelles: modèles formels exploités à l’aide d’outils/services Scade, Esterel, Simulink, etc… : conception AltaRica: sûreté de fonctionnement

5 Utilisation des modèles dans le processus SdF
Résultat informel lié à l’expertise de l’ingénieur SdF Documents de conception Description du système Schéma d’architecture Résultats de l’analyse SdF Abstraction SdF du Système Interpretation SdF Formalisation actuelle Diagramme de dépendance Arbre de défaillances Modèle formel Formalisation proposée Génération automatisée Coupes minimales exhaustives Résultats de l’analyse SdF

6 Objectifs industriels
L’utilisation de modèles a introduit dans l’industrie le souhait d’une modélisation complète de l’avion: Un modèle présentant tous les systèmes embarqués Les premières expérimentations de connexion de modèles ont montré: Difficultés de création du modèle: Gestion des interfaces entre modèles Difficultés d’exploitation du modèle: Lenteur des analyses, difficulté d’utilisation des résultats Une méthodologie d’analyse multi-systèmes est nécessaire

7 Approche proposée Conception industrielle de systèmes: processus incrémental Conception de modèles formels par raffinement progressif Raffinement: cohérence entre différents modèles d’un même systèmes détaillé pour analyses mono-système abstrait pour analyses multi-systèmes Cadre AltaRica: théorème de compositionnalité [Point2000] bisimulation A A’ M M’ Objectif: théorème de compositonnalité pour du raffinement coupler des modèles de niveaux de détail différents

8 Plan Introduction et objectifs de la thèse Contexte
Sûreté de fonctionnement AltaRica et MecV Raffinement AltaRica Raffinement appliqué à la sûreté de fonctionnement Conclusion

9 Contexte détaillé: sûreté de fonctionnement
Objectif: Vérifier que chaque système répond au critères réglementaires imposés pour la certification Principe: Fonctions Ctl yaw Situations redoutées Loss of yaw ctl HAZ Coupes minimales G.Fail & B.fail & P3.loss Classification MIN MAJ HAZ CAT Objectif (/FH) 10-3 10-5 10-7 10-9

10 Processus actuel de SdF
Vue avion Analyses fonctionnelles → fonctions → situations redoutées Vue multi-systèmes Vue système Analyses de la sûreté de fonctionnement → coupes minimales → probabilité d’occurrence (par heure de vol) Vue équipement

11 Plan Introduction et objectifs de la thèse Contexte
Sûreté de fonctionnement AltaRica et MecV Raffinement AltaRica Raffinement appliqué à la sûreté de fonctionnement Conclusion

12 Contexte détaillé: AltaRica
Projet AltaRica: Collaboration chercheurs (LaBRI) et industriels (Dassault…) Création d’un langage formel pour la sûreté de fonctionnement Langages AltaRica: Langage originel: contraintes Langage « industriel »: flot de données Outils Simulation Model checking Génération de coupes/séquences

13 AltaRica: présentation
Un composant AltaRica est appelé nœud Hypothèses/spécification Description textuelle d’un noeud AltaRica Soit un calculateur « Cpu1 »: node Cpu1 edon event error, loss; extern law <loss> = exp (1 e -4) law <error> = exp (1 e -7); state Status : {ok, err, lost}; init Status := ok; flow Output : {ok, err, lost} : out; assert Output = Status; trans Status = ok |- error -> Status := err; Status != lost |- loss -> Status := lost; deux modes de défaillances erroné et perdu →Trois états possibles: ok (initial), err et lost une sortie correcte, erronée ou perdue →Trois valeurs possibles: ok, err et lost deux défaillances: erreur et perte Status = err Error Loss Status = lost Status = ok le signal en sortie correspond à l’état du calculateur Représentation graphique du noeud AltaRica

14 AltaRica: sémantique La sémantique d’un nœud AltaRica est un système de transition interfacé: Configurations: variables d’état et de flux Transitions Status = ok Output = ok Loss Error Status = lost Output = lost Status = err Output = err Loss

15 Description textuelle Représentation graphique
AltaRica: hiérarchie Un nœud AltaRica peut contenir des instances d’autres nœuds. Description textuelle Représentation graphique node RudderCtl sub P1,P2,P3:Cpu1; assert G.in = P1.Output; sync <P1.loss,P2.loss,P3.loss>; edon

16 AltaRica: modèle pour la SdF
AltaRica est adapté aux modèle dits « de propagation de défaillance »: Actions nominales (reconfigurations, détections d’erreur…) Défaillances Modèle ServoCtl Cpu Observateur

17 MecV Model checker développé au LaBRI (A.Vincent), Capable de:
Traiter directement du code AltaRica Manipuler plusieurs nœuds à la fois Effectuer des calculs de points fixes (plus grand ou plus petit) pour un ensemble d’états donné, recherche du sous-ensemble d’états satisfaisant les conditions spécifiées Outil de calcul nécessitant l’écriture des formules souhaitées dans un langage propre (inspiré du µ-calcul) ReachA(s) += nodeA!init(s) | <u><e>(ReachA(u) & nodeA!t(u,e,s));

18 Plan Introduction et objectifs de la thèse Contexte
Raffinement AltaRica Raffinement appliqué à la sûreté de fonctionnement Conclusion

19 Objectifs liés aux besoins industriels
Compositionnalité (pour analyses multi-systèmes) Préservation des résultats d’analyse (coupes/séquences) La compositionnalité sous-entend que tout raffinement d’un système peut être utilisé dans un modèle multi-systèmes: variables de flux du modèle abstrait à conserver raffinement A A’ M M’

20 Candidats au raffinement
Substitution d’événement node Cpu0 event loss; trans Status != lost |- loss -> Status := lost; edon node Cpu0’ event loss1, loss2; trans Status != lost |- loss1, loss2 -> Status := lost; edon Loss Status = lost Output = lost Status = ok Output = ok Status = err Output = err Status = err Output = err Loss1 Status = lost Output = lost Status = ok Output = ok Loss2

21 Candidats au raffinement
Renforcement de la garde d’une transition node Cpu1 event error, loss; trans Status = ok |- error -> Status := err; Status != lost |- loss -> Status := lost; edon node Cpu2 event error, loss; trans Status = ok |- error -> Status := err; Status = ok |- loss -> Status := lost; edon Status = err Output = err Error Loss Status = lost Output = lost Status = ok Output = ok Status = err Output = err Error Loss Status = lost Output = lost Status = ok Output = ok

22 Candidats au raffinement
Ajout de hiérarchie node Cpu2 flow Output:{ok,err,lost}:out; edon node Cpu3 sub Com,Mon:Cpu2 flow Output:{ok,err,lost}:out; edon Com Mon

23 Candidats au raffinement
Ajout d’événement/transition node Cpu0 event loss; trans Status != lost |- loss -> Status := lost; edon node Cpu1 event error, loss; trans Status = ok |- error -> Status := err; Status != lost |- loss -> Status := lost; edon Status = err Output = err Loss Status = lost Output = lost Status = ok Output = ok Status = err Output = err Error Loss Status = lost Output = lost Status = ok Output = ok Non retenu car peut introduire de nouveaux états accessibles

24 Raffinement AltaRica La relation de bisimulation forte interfacée [Point2000] est trop contraignante en pratique. Nous avons souhaité étudier de nouvelles relations: moins fines: relations de type simulation applicables aux enrichissements choisis principe de compositionnalité Étudier les restrictions sur le langage nécessaires pour pouvoir établir le théorème de compositionnalité Chaque relation étudiée est spécifiée en MecV: Simulation interfacée paramétrée Simulation quasi-branchante interfacée paramétrée

25 La relation de simulation
Classiquement, un objet A simule un objet B si: toute séquence d’événements depuis l’état initial de B peut être effectuée depuis l’état initial A, les états atteints étant comparables MecV nécessite de spécifier les relations permettant de comparer: les états respectifs (RelF) les événements considérés comme similaires (RelEvt)

26 La relation de simulation
Simulation interfacée paramétrée: Tout état s’ du nœud détaillé est en relation avec un état s du nœud abstrait. Pour toute transition (s’,e’,t’) du nœud détaillé et tout état s en relation avec s’, il existe une transition (s,e,t) du nœud abstrait telle que sont respectivement en relation: les flux, les événements, les états cibles. relF s’ t’ s relEvt e e’ t sim sim(s,s’) -= RelF(s,s’) & ([e’][t’](transA’(s’,e',t’) => <e><t >(transA(s,e,t) & RelEvt(e,e’) & sim(t,t’))));

27 Renforcement de garde Soit un calculateur de type Cpu1.
Pour restreindre le comportement, défaillances seulement considérées depuis l’état initial. La relation sur les flux est l’égalité. La relation sur les événements est l’identité. Cpu1 Cpu2 Status = err loss Status = lost Status = ok Status = err error loss Status = lost Status = ok error loss Cpu1 simule Cpu2 Cpu2 ne simule pas Cpu1

28 Substitution de défaillance
Soit un calculateur de type Cpu0. Pour analyses SdF, nécessité de différencier loss1 et loss2 (même effet mais probabilités d’occurrence différentes). La relation sur les flux est l’égalité. La relation sur les événements est: {loss}≡{loss1,loss2}. Status = err loss Status = lost Status = ok Cpu0 Status = err loss1 loss2 Status = lost Status = ok Cpu0’ Cpu0 simule Cpu0’ Cpu0’ simule Cpu0

29 Compositionnalité Restrictions du langage
Priorités Diffusion dans les vecteurs de synchronisation Théorème de compositionnalité Soient M et M’ deux nœuds hiérarchiques sans priorité ni diffusion. Alors M simule M’ si tout sous-nœud Ni de M simule un sous-nœud N’i de M’. a b A a A’ A simule A’ Hiérarchie: « b plus prioritaire que a » b M a M’ M ne simule pas M’

30 Calcul de séquences Le théorème permet en plus de calculer des séquences détaillées à partir des séquences abstraites G.fail & B.fail & P3.loss {loss} ≡ {loss1, loss2} G.fail & B.fail & P3.loss1 G.fail & B.fail & P3.loss2

31 Simulation quasi-branchante
Besoins: Relation de simulation Distinction: événements observables et non observables  Travaux existants: Van Glabbeek, Van Benthem Simulation quasi-branchante interfacée qb-sim e * e’ qb-sim * e * e’ Si aucun événement non observable dans le nœud abstrait qb-sim qb-sim

32 Simulation quasi-branchante
Illustration: Théorème de compositionnalité Soient M et M’ deux nœuds hiérarchiques sans priorité ni diffusion. Alors M qb-simule M’ si tout sous-nœud Ni de M qb-simule un sous-nœud N’i de M’. Bus Loss Bus 1 Bus 2 Loss of Bus 1 Loss of Bus 2

33 Bilan - Définition de deux relations de simulation
Théorèmes de compositionnalité Implémentation en MecV de ces relations Restrictions Composition Calcul séquences Adéquation besoins industriels Bisimulation Non Oui - Simulation Pas de priorités = Simulation quasi-branchante ? +

34 Plan Introduction et objectifs de la thèse Contexte
Raffinement AltaRica Raffinement appliqué à la sûreté de fonctionnement Conclusion

35 Opérations préparatoires
En SdF, les séquences ne contiennent que des défaillances: Nécessité de masquer les événements nominaux Status = err Error Correction Loss Status = lost Status = ok État « transitoire » Transition à masquer masquage Error Loss Status = lost Status = ok Le raffinement ne peut être vérifié que si le modèle détaillé n’introduit pas de nouvel état accessible (vis-à-vis de RelF)

36 Raffinement pour la sûreté de fonctionnement
Formules MecV de vérification du raffinement implémentées pour être génériques: Seuls quelques éléments communs à toutes les relations sont à initialiser par l’utilisateur. Liberté d’utilisation restreinte à la définition des relations RelF et RelEvt MecV permet deux approches: vérification : relations spécifiées par l’utilisateur exploration : relations calculées

37 Approches vérification/exploration
Approche vérification: Travail coûteux pour spécifier tous les événements en relation Si la relation est vérifiée par MecV alors le raffinement est prouvé sans travail supplémentaire Approche exploration Pas de spécification initiale: RelEvt(e,e’) = true Si relation non vérifiée par MecV alors pas de raffinement Si relation vérifiée alors nécessité de vérifier les couples d’événements calculés par MecV

38 Méthodologie de vérification du raffinement
Masquage des événements/transitions nominales Test des états accessibles Vérification qualitative Existe-t-il une relation? Analyse quantitative: Génération des séquences détaillées et quantification

39 La compositionnalité pour la SdF
raffinement raffinement

40 Bilan Méthodologie appliquée sur deux cas d’étude:
Calculateur raffiné jusqu’à contenir une architecture contrôle/commande Système de génération électrique Expérimentations de vérification globale du raffinement: Vérification possible sur modèles les plus abstraits mais rapidement impossible sur des modèles plus détaillés Confirme le besoin d’appliquer un raffinement progressif et de tirer partie de la compositionnalité

41 Plan Introduction et objectifs de la thèse Contexte
Raffinement AltaRica Raffinement appliqué à la sûreté de fonctionnement Conclusion

42 Conclusion: travaux académiques
Apports: deux relations étudiées simulation paramétrée interfacée Compositionnalité préservée et théorème établi Algorithmes de calcul des séquences écrit Relation adaptée au raffinement sans ajout de hiérarchie simulation quasi-branchante paramétrée interfacée Relation adaptée au raffinement par ajout de hiérarchie Perspectives à court terme: Étudier la préservation des séquences pour la relation de simulation quasi-branchante Algorithme de calcul des séquences détaillées à partir des séquences abstraites pour la simulation quasi-branchante

43 Conclusion: travaux industriels
Apports industriels: Méthodologie détaillée de raffinement Spécification générique des relations en MecV utilisation facilitée manipulations nécessaires réduites Enseignement: le raffinement est difficilement vérifiable a posteriori Industrialisation: Développer une IHM pour: saisir les relations RelF et RelEvt appels aux différentes relations dans MecV Identifier de nouveaux besoins (principe de conception) de nouvelles relations à étudier

44 Publications / Communications
Dependable Control of Discrete Systems (DCDS’07) Experiments in model-based safety analysis: flight controls International System Safety Conference (ISSC’08) Failure propagation modeling: multi-system safety analysis Lambda-Mu (LM16) Raffinement AltaRica pour l’étude de systèmes à différents niveaux de détail

45 © AIRBUS FRANCE S.A.S. Tous droits réservés. Document confidentiel.
Ce document et son contenu sont la propriété d’AIRBUS FRANCE S.A.S. Aucun droit de propriété intellectuelle n’est accordé par la communication du présent document ou son contenu. Ce document ne doit pas être reproduit ou communiqué à un tiers sans l’autorisation expresse et écrite d’AIRBUS FRANCE S.A.S. Ce document et son contenu ne doivent pas être utilisés à d’autres fins que celles qui sont autorisées. Les déclarations faites dans ce document ne constituent pas une offre commerciale. Elles sont basées sur les postulats indiqués et sont exprimées de bonne foi. Si les motifs de ces déclarations n’étaient pas démontrés, AIRBUS FRANCE S.A.S serait prêt à en expliquer les fondements. AIRBUS, son logo, A300, A310, A318, A319, A320, A321, A330, A340, A350, A380 et A400M sont des marques déposées.


Télécharger ppt "Analyses de sûreté de fonctionnement multi-systèmes"

Présentations similaires


Annonces Google