YAO : Un logiciel pour les modèles

Dimension: px
Commencer à balayer dès la page:

Download "YAO : Un logiciel pour les modèles"

Transcription

1 YAO : Un logiciel pour les modèles numériques et l'assimilation de données Sylvie Thiria, Fouad Badran, Charles Sorror Rapport de recherche (22 juin 2006) 1

2 Table des matières 1 Introduction 3 2 Principes Théoriques de l'assimilation Variationnelle Introduction et notation Calcul de l'adjoint[27] Méthode incrémentale Quelques extensions Transformation du vecteur d'état Prise en compte du bruit du modèle Fonctions de validation Graphe Modulaire Concept de graphe modulaire Tangent linéaire d'un graphe modulaire Adjoint d'un graphe modulaire Représentation d'une application par graphe modulaire Mise au point d'expériences de simulation et/ou d'assimilation 22 4 YAO Présentation générale Concepts généraux, dénitions, vocabulaire Fichier de description Structuration d'une application sous YAO: Le chier d'instructions Schéma global d'agencement des calculs dans YAO Exemple pratique d'application : LE SHALLOW-WATER (TP didactique) Discrétisation Modélisation Par graphe modulaire YAO Etude de cas Implémentation dans YAO Fichier de description Programmation du hat et des modules Fichier d'instructions Exemples supplémentaires Achage avec gnuplot Conclusion et Perspectives 54 6 Remerciements 55 7 Annexes Démonstration de la formule de la procédure backward Simulation du modèle direct Test de la fonction objective Exécution d'une assimilation (cas 1)

3 1 Introduction La modélisation numérique est de plus en plus utilisée comme complément à l'étude d'un phénomène physique se déroulant dans le temps, dans l'espace à une, deux ou trois dimensions (1D, 2D, 3D) ou bien tout à la fois dans le temps et l'espace. Dans une première étape le modèle numérique permet de choisir et d'adapter les équations permettant de reproduire les lois physiques qui sous tendent le phénomène. Une fois vérié le bon comportement de ces lois il est alors utilisé pour l'étude du phénomène lui même. Cependant, les modèles ainsi crées restent toujours imparfaits. La paramétrisation des phénomènes, les discrétisations, l'incertitude sur les conditions initiales et les conditions limites introduisent des approximations dont il faudra tenir compte au moment d'étudier le comportement du phénomène ou de prédire les évolutions de celui-ci. De nouvelles techniques qui utilisent à la fois la modélisation et la résolution de problème inverse ont vu le jour, elles se regroupent sous le nom d'assimilation des données. Celles-ci tentent de faire évoluer le modèle physique ou les paramètres qui le contraignent (conditions initiales,...) en introduisant un nouveau type d'information : les observations. Elles utilisent alors le modèle du phénomène ou modèle direct et se servent des observations pour contrôler les modications nécessaires. Il existe deux grandes familles de technique pour faire de l'assimilation de données : les méthodes séquentielles et les méthodes variationnelles ([6, 21, 23, 25, 26, 28]), les secondes étant plus adaptées si l'on veut prendre en compte d'une manière globale les variations du phénomène pendant une période de temps donnée. Toutes sont aujourd'hui de plus en plus utilisées car elles permettent de faire interagir l'ensemble des informations disponibles (connaissances théoriques sur le phénomène et observations de celui-ci) dans l'espace et dans le temps. L'ecacité de l'approche est visible si l'on considère leurs bonnes performances, on peut faire référence, parmi d'autres, à l'amélioration actuelle obtenue sur les prévisions météorologiques qui assimilent les observations satellitaires et in situ depuis une vingtaine d'années. La technique choisie par les centres de prévision météorologique est en général l'assimilation variationnelle dont le principe repose sur la minimisation d'une fonction de coût (objective). Il faut pour cela déterminer le gradient de la fonction par rapport aux variables à contrôler. Ce calcul nécessite la programmation du code adjoint du modèl direct (parfois aussi celui du linéaire tangent de ce même modèle pour certains algorithmes) qui permet de rétropropager le gradient de l'erreur sur les valeurs de sortie du modèle vers les variables d'entrée. Il faut donc décider d'investir dans la réalisation de ces développements, survient alors la diculté de programmer ces codes (code adjoint, tangent linéaire) qui ne relèvent pas d'un sens physique commun, mais plutôt d'une démarche purement mathématique. Jusqu'à présent, deux approches sont utilisées pour créer ces codes adjoints à partir du code du modèle direct :. 3

4 - Le code adjoint peut être généré à la main. Dans ce cas, il est souhaitable de choisir le nom des variables en suivant des règles précises qui facilitent la dérivation composée. Après cette première phase d'analyse et d'écriture qui est longue et délicate, le code doit être entièrement écrit.. - Le code adjoint peut être généré d'une manière automatique à partir du code de l'application directe [14, 15, 16, 17, 19, 18]. Cette approche répond à un besoin actuel qui consiste à exploiter de très gros code existant dont on est sur du bon fonctionnement. Le code adjoint généré de manière automatique est alors dépendant du langage de programmation dans lequel il est écrit. Il contient des instructions qui ne sont pas nécessaires et doit être nettoyé avant son utilisation. Cette opération doit d'autre part être recommencée si l'on fait évoluer le code direct et que l'on désire faire évoluer également son adjoint. Il est dicile de modier directement le code adjoint, son écriture n'étant pas obligatoirement très lisible.. D'autres méthodes existent actuellement qui permettent d'eectuer ces mêmes études (Krigeage, Filtrage de Kalman), les méthodes variationnelles sont cependant celles qui semblent devenir les plus populaires étant données leurs capacités à prendre en compte toute une trajectoire d'assimilation. Leur principale diculté est d'être longue à mettre en oeuvre, il faut écrire le modèle tangent, le modèle adjoint, gérer les observations qui peuvent intervenir en n'importe quel lieu et à n'importe quel temps, gérer aussi les diérentes fonctions de coût ainsi que les matrices de variance-covariance d'erreur qui interviennent dans le processus. Une méthode nouvelle d'écriture de codes de modèles numériques est développée au LOCEAN pour l'assimilation variationnelle de données. Elle est basée sur la représentation du modèle numérique du phénomène physique étudié sous forme de graphe modulaire. Ce formalisme nous a ammené à la conception d'un outil général : Le logiciel YAO qui va être présenté dans ce document. En déchargeant l'utilisateur de l'implémentation des diérents algorithmes nécessaires, YAO se propose d'être une aide à la réalisation d'inversion variationnelle et d'une manière plus générale à l'assimilation variationnelle. Il permet à l'utilisateur de réduire sa part de programmation et de ne se concentrer ainsi que sur la spécication de son problème, en particulier sur les dépendances physiques qui existent entre les diérentes variables qui constituent le phénomène physique. Tout code écrit à partir de YAO bénécie de façon quasi-automatique du code adjoint qui permet de calculer le gradient d'une fonction de coût. Un grand avantage de cette méthode est sa exibilité et la facilité avec laquelle il est possible de modier le modèle pour le faire évoluer. La méthodologie a été testée sur diérents exemples (modèle Météo ISBA, modèle traceur OPA) ; elle a montré sa capacité à produire facilement des modèles adjoints et à permettre l'assimilation des données en 4D-Var (prise en compte des observations à n'importe quel moment durant le temps d'assimilation). Le champ d'utilisation de YAO n'est cependant pas limité aux seules simulations physiques. Il peut être utilisé pour d'autres domaines d'application. YAO s'est donc avérer être une solution ecace pour surmonter plus aisément l'investissement nécessaire à la réalisation des modèles (direct, tangent et adjoint) dont il est reconnu qu'il s'agit habituellement d'un travail lourd et contraignant. Dans les paragraphes qui suivent nous rappelons tout d'abord les principes théo- 4

5 riques et le cadre mathématique général de l'assimilation variationnelle, puis nous introduisons le formalisme de graphe modulaire. L'outil YAO et ses fonctionalités ferons ensuite l'objet d'une présentation qui sera appuyée par la réalisation d'un TP sur le shallow-water. Enn, des évolutions futures de YAO seront envisagées. Ÿ 5

6 2 Principes Théoriques de l'assimilation Variationnelle 2.1 Introduction et notation Ce paragraphe présente l'ensemble des notions mathématiques nécessaires à la mise en oeuvre des techniques d'assimilation variationnelles. Traditionellement on classe les assimilations en diérents types selon le nombre dimension que l'on considère : 3D-Var signie que l'on considère un phénomène physique décrit dans l'espace à trois dimension et 4D-Var que l'on considère son évolution dans le temps. L'assimilation variationnelle demande la connaissance d'un modèle numérique ou modèle direct M qui décrit, dans le temps, l'évolution du phénomène physique que l'on étudie. Si l'on prend par exemple un problème géophysique, le modèle direct permet de relier les variables géophysiques que l'on étudie aux observations. En faisant varier certaines des variables géophysiques (les variables de contrôle) l'assimilation cherche à inférer les variables physiques qui ont engendré les valeurs d'observations. Ces variables physiques peuvent être par exemple des conditions initiales ou des paramètres mal connus du modèle M. Les variations considérées se font à partir d'un ensemble de valeurs initiales données aux variables de contrôle et ne s'autorisent souvent qu'à explorer un domaine limité en introduisant des valeurs d'ébauche desquelles il ne faut pas trop s'écarter. D'une manière générale, il s'agit de déterminer le minimum d'une fonction de coût J qui mesure l'écart entre les observations et la valeur calculée par le modèle M. Le minimum recherché est toujours obtenu à partir de la méthode du gradient. Selon les algorithmes que l'on considère il faut alors utiliser des modèles qui se déduisent de M : le tangent linéaire et l'adjoint. Si le modèle est continu et dérivable ces deux modèles se déduisent aisément des équations du modèle M. Le tangent linéaire revient à étudier pour une valeur donnée des variables de contrôle (ou point de référence) la sensibilité du modèle M à de petites perturbations de ces variables. Il se calcule en ce point de référence en linéarisant le modèle M, calcul qui correspond à la valeur de la matrice Jacobienne en ce point. Le modèle adjoint revient, lui, à étudier les variations des variables de contrôle en réponse à une perturbation des valeurs de sortie calculées par le modèle M. Il faut donc dérouler en sens inverse les calculs du tangent linéaire, ce qui correspond à utiliser la transposée de la matrice Jacobienne. Lorsque des observations sont disponibles ces modèles permettent de faire de l'assimilation variationnelle de données en minimisant la fonction J et de retrouver les variables de contrôle. Nous présentons maintenant de manière formelle les notations mathématiques et les algorithmes les plus classiques utilisés actuellement. Dans cette présentation nous avons adopté le formalisme et les notations présentés dans l'article [20]. nous notons : M : le modèle direct décrivant l'évolution (en général non linéaire) entre 2 pas de temps de discrétisation t i,t i+1. x(t 0 ) : le vecteur d'état initial en entrée du modèle et qui est à contrôler. M i (x(t 0 )) ou M(t i, t 0 ) correspond à l'état du modèle au temps t i à partir de t 0. On notera x(t i ) = M i (x(t 0 )) M(t i, t i+1 ) : le tangent linéaire qui correspond à la jacobienne du modèle M calculé en x(t i ). On dénit le tangent linéaire du modèle M i calculé en t 0 : 6

7 M i (x(t 0 )) = 0 j=i 1 M(t j+1, t j ) L'adjoint du modèle M i est la tranposé du tangent linéaire : i 1 M i (x(t 0 )) T = M(t j+1, t j ) T j=0 x b : un vecteur d'ébauche qui correspond à une estimation à priori du vecteur x(t 0 ). y o : l'ensemble des observations sur diérents pas de temps. Le vecteur y o i correspond donc aux observations au temps t i, ce vecteur peut être vide s'il n'y a pas d'observation au pas de temps t i. Le modèle M permet d'estimer des quantités qui sont le plus souvent observées à partir d'un opérateur dit d'observation (H ). Dans le domaine de la géophysique cet opérateur permet, par exemple, de comparer les sorties du modèle M qui calcule la température à la surface de la mer à des observations enregistrées par un radiomètre qui se trouve à bord d'un satellite. On comprend également, que les observations ne peuvent pas être obtenu en tout point de l'espace étudié, ni à tout instant. Il est nécessaire de connaitre l'opérateur qui permet de transformer les valeurs de sortie de M en valeurs observables. C'est l'opérateur H qui permet donc de comparer, là ou les observations sont disponibles, les valeurs observées et celles calculées par la composition HoM. La fonction de coût J va donc s'appliquer dans le domaine des observations, comme mentionné précédemment il sera nécessaire d'exprimer le tangent linéaire et l'adjoint de l'opérateur H. On note donc : H : l'opérateur d'observation qui permet de calculer les variables d'observation y i au temps t i à partir du vecteur d'état x(t i ). On suppose par la suite que : y o i = H(M i (x(t 0 ))) + ε i (ε i étant une variable aléatoire de moyenne nulle). H i : la matrice du modèle tangent linéaire de l'opérateur H calculé en x(t i ). Enn, l'assimilation des données cherche à résoudre des problèmes qui sont le plus souvent sous contraint. Il faut pour obtenir des solutions réalistes apporter le plus possible d'information pour maintenir la cohérence existant au niveau des diérentes variables de contrôle retrouvées et des quantités estimées par le modèle M. Les variables physiques et les observations sont connues avec certaines erreurs qui sont le plus souvent fortement corréllées. Dans les méthodes d'assimilation ceci est pris en compte en introduisant au niveau de la fonction de coût des matrices de variance-covariance. La matrice de variance-covariance sur les erreurs d'observations permet de maintenir la cohérance entre les diérentes valeurs retrouvées en sortie de l'opérateur d'observation, celle sur l'écart à l'ébauche maintient la cohérence spatiale des diérentes variables de contrôle entre elles. Dans la suite on note : R : l'estimation de la matrice de covariance sur les erreurs d'observation ε i. B : l'estimation de la matrice de covariance sur les erreurs de l'ébauche x b. Avec ces notations, la fonction de coût J se présente en général sous la forme suivante : J(x(t 0 )) = 1 (y i y i ) T R 1 (y i y i ) (x(t 0) x b ) T B 1 (x(t 0 ) x b ) (1) i 7

8 Avec y i = H(x(t i )) 2.2 Calcul de l'adjoint[27] D'une manière générale, soit un scalaire J mesurant la distance entre un modèle G et ses observations et dépendant de y. Pour minimiser J, on est amené à calculer le gradient de J par rapport à des variables x du modèle tel que y = G(x). La perturbation δj est donnée par : δj =< y J, δy > (2) <> désignant le produit scalaire. On a : δy = G(x)δx (3) G(x) est le jacobien de G (opérateur linéaire au point x), que l'on note également G x. On rappelle que : soit u Au un opérateur linéaire continu d'un espace de Hilbert L dans un espace de Hilbert F. Il existe un opérateur linéaire continu A de F dans L, et un seul, tel que l'égalité suivante entre produits scalaires soit vériée pour tout vecteur u de L et tout vecteur v de F < Au, v >=< u, A v > A est l'adjoint de A. Lorsque L et F sont de dimensions nies, les matrices qui représentent A et A dans des bases orthonormées sont transposées l'une de l'autre (ou transconjuguées dans le cas de composantes complexes). On en tire que : En portant (3) dans (2) on a : on en déduit : < v, Au >=< A T v, u > δj =< y J, G x δx >=< G T x y J, δx >=< x J, δx > x (J) = G T x y (J) ce qui permet le calcul de x connaissant y en prenant l'adjoint G T x qui est la transposée de G x. de G(x) L'assimilation de données variationnelle consiste à minimiser la fonction J par rapport à l'état initial x(t 0 ). Le gradient x0 J est égal à : x0 J = M T i (x(t 0 )H T i [R 1 (y i yi o )] + B 1 (x(t 0 ) x b ) (4) i=i..n la procédure de minimisation est réalisée en choisissant un algorithme d'optimisation parmi l'ensemble de ceux proposés par les techniques d'optimisation. Dans le domaine de la géophysique un des plus utilisé pour l'assimilation variationnelle est le minimiseur m1qn3[16, 17], développé par l'inria. On peut également, de manière à favoriser pour certains problèmes la convergence, utiliser une méthode approchée de descente de gradient, appelée algorithme incrémental [29, 11] qui est plus rapide. Procéder de la sorte revient à modier la fonction J. La présentation de cette variante fait l'objet du paragraphe suivant. 8

9 2.3 Méthode incrémentale. La minimisation de la fonction J par rapport à x(t 0 ) suppose que l'on positionne l'algorithme de minimisation à un état initial x g (t 0 ), ainsi on a x(t 0 ) = x g (t 0 ) + δx(t 0 ). On utilise l'approximation par le tangent linéaire : y i = H(M i (x(t 0 ))) H(M i (x g (t 0 ))) + H i (M i (x g (t 0 ))δx(t 0 ) (5) En posant en plus d i = y o i H(M i (x g (t 0 ))) on peut exprimer J par : J[δx(t 0 )] = 1 2 [δx(t 0) (x b (t 0 ) x g (t 0 ))]B 1 [δx(t 0 ) (x b (t 0 ) x g (t 0 ))] (6) n [H i M i (x g (t 0 ))δx(t 0 ) d i ] T R 1 [H i M i (x g (t 0 ))δx(t 0 ) d i ] i=1 Cette nouvelle formulation de J représente une expression quadratique en δx et correspond à une approximation de J(x(t 0 )) autour de x g (t 0 ). Le problème est de minimiser J(δx(t 0 )) par rapport à la seule variable δx(t 0 ), les autres termes étant constants. Cette phase de minimisation sera dite la boucle interne. Elle correspond à quelques itérations de la méthode du gradient. A chaque itération de la boucle interne, il faut donc calculer le gradient δx J : δx J = B 1 [ δx(t 0 ) (x b (t 0 ) x g (t 0 )) ] + n M T i H T i R 1 [H i M i (x g (t 0 ))δx(t 0 ) d i ] (7) Au cours des itérations de la boucle interne, l'approximation par la formule 5, risque de devenir trop grossière. Pour cette raison on fait un nombre limité d'itérations, puis on recalcule la vraie valeur de y i = H(M i (x(t 0 ))). La phase de préparation de la boucle interne est appelé boucle externe. La boucle interne est donc imbriquée dans la boucle externe. Nous pouvons résumer les calculs à chaque itération de chacune de ces bloucles de la façon suivante : boucle externe : - remplacer x g (t 0 ) par x g (t 0 )+δx. Il est à noter qu'à la toute première itération x g (t 0 ) doit être initialisée, (en général égale à l'ébauche). - calculer les y i = H(M i (x g (t 0 ))) et les d i pour la nouvelle expression de J[δx(t 0 )]. - initialiser δx(t 0 ) (généralement, on prend δx(t 0 ) = 0). - boucle interne : - calculer δx J et J[δx(t 0 )] selon les formules 4 et 5. - corriger δx(t 0 ) avec une méthode de minimisation adéquate. La gure 1 illustre l'algorithme incrémental en montrant comment progresse la minimisation par l'imbrication de ces deux boucles. i=1 9

10 Fig. 1 La courbe en trait plein correspond à la fonction de coût J(x(t 0 )). Chacune des paraboles en pointillé correspond à la fonction J[δx(t 0 )] initialisée à chaque itération k de la boucle externe. La boucle interne réalise une descente de gradient sur la parabole correspondant à l'approximation. La boucle externe, quand à elle, permet d'avancer en se repositionnant sur la fonction J(x(t 0 )) (courbe pleine) et de faire une nouvelle approximation correspondant à la parabole suivante dans la minimisation. 2.4 Quelques extensions Transformation du vecteur d'état en prenant v = B 1 x = U 1 x, l'expression 1 2 (x(t 0) x b ) T B 1 (x(t 0 ) x b ) de la fonction de coût devient (v(t 0 ) v b )(v(t 0 ) v b ). Dans cette formulation, le vecteur de contrôle admet la matrice unité comme matrice de variance-covariance. Cette formulation présente plusieurs avantages notamment en ce qui concerne la convergence de l'algorithme de minimisation de la boucle interne. Certaines méthodes [29] propose de dénir directement U 1, par exemple en dénissant U 1 = F 1 D 1 K 1 où : - K 1 produit un ensemble de variables 2 à 2 non corrélées par exemple en retirant toute relation dynamique physique. - D 1 correspond à une matrice de normalisation. - F 1 est l'inverse d'un opérateur de lissage spécial qui agit séparément sur chacune des variables (non corrélées). L'implication de cette formulation et la méthode incrémentale qui lui est associée suppose une estimation de x l à la n de la lième itération de la boucle externe par : x l = x l 1 + δx l avec δx l = Uδv l où U correspond au tangent linéaire de l'opérateur U. La boucle interne aura comme objectif l'optimistaion de la fonction coût par rapport à δv Prise en compte du bruit du modèle Le modèle n'étant pas une reproduction parfaite de la réalité il est donc entaché d'erreur. Ainsi, Si on note par x t le vecteur qui correspond à la situation réelle 10

11 et on note par x f le vecteur prévu par le modèle, en posant x t (t0) = x(t0) on a alors : et x f (t i ) = M(x t (t i 1 )) x t (t i ) = x f (t i ) + η i On suppose que le vecteur η i correspond au bruit du modèle au temps t i, et qu'il admet une matrice de variance covariance Q. On suppose en plus que pour tout i et j les variables η i et η j sont indépendants. Il s'agit alors d'estimer, en plus des variables de contrôle, les diérents vecteurs η i. Ainsi, la nouvelle fonction J s'écrit : J(x(t 0 ), η 1, η 2,..., η n ) = 1 2 (x(t 0) x b ) T B 1 (x(t 0 ) x b ) n (H(x(t i )) y i ) T R 1 (H(x(t i )) y i ) i=1 (8) n ηi T Q 1 η i i=1 Avec x(t i ) = M(x(t i 1 ) + η i 1 ) En procédant à des approximations successives de l'expression (8) et en dénissant les variables i 1 z i = H i M i 1...M 0 δx + H i M i 1...M k η k 1 + H i η i 1 k=1 Où M i est la matrice du tangent linéaire du modèle M calculé au vecteur x i = M(t i, t 0 ) (état du modèle au temps t i à partir de t 0 ). En posant d i = y 0 i H(x i ) (cette fois les lettes sont bonnes) et δx = x(t 0 ) x b, la fonction coût devient alors : J(δx 0, η, z) = 1 2 δxt 0 B 1 δx n (z i d i ) T R 1 (z i d i ) i=1 Il faut alors minimiser J sous la contrainte : n ηi T Q 1 η i i=1 i 1 z i = H i M i 1...M 0 δx 0 + H i M i 1...M k η k 1 + H i η i 1 k=1 L'introduction des coecients de Lagrange (m i ) permet de passer au problème dual qui se formule alors sous la forme d'une minimisation d'une fonction coût quadratique G(m) sans contrainte. Des formules de passage permettent alors le calcul de la solution du problème initial à partir de la solution du problème dual. 11

12 L'algorithme de gradient qui permet l'optimisation de la fonction duale G(m) introduit un calcul qui peut se faire par rétropogation à travers le graphe modulaire. L'algorithme dual n'est pas encore implémenté dans YAO, mais la conception de graphe modulaire, sous-jacent à YAO, permettrait de l'intégrer par la suite. 2.5 Fonctions de validation Lorsqu'on veut pratiquer des expériences d'assimilation variationnelles, il est important de pouvoir s'assurer de la validité des codes employés. Les diérents tests ci-dessous sont couramment employés à cette n. Test de la fonction objective : il consiste à vérier le développement de Taylor de la fonction de coût J: à l'ordre 1 : J(x(t 0 )+α.dx) J(x(t 0 )) < x(t0 ) J, α.dx> 1, α 0 où <,> désigne le produit scalaire à l'ordre 2 : ( 1 J(x(t0 )+α.dx) J(x(t 0 )) α 2 < x(t0 ) J, α.dx> 1 ) K, α 0 où α est un coecient, K est une constante proportionnelle au hessien. Test du tangent linéaire. De façon similaire, on vérie le développement de Taylor sur le modèle M lui-même : à l'ordre 1 : à l'ordre 2 : 1 α M(x(t 0 )+α.dx) M(x(t 0 )) M(x(t 0 )), α.dx 1, α 0 ( M(x(t0 )+α.dx) M(x(t 0 )) M(x(t 0 )), α.dx 1 ) K, α 0 où α est un coecient, K est une constante proportionnelle au hessien. Test de l'adjoint : il s'agit de vérier l'égalité du produit scalaire suivant : < M(x(t 0 )).dx, dy >=< dx, M T (x(t 0 )).dy > dx, dy avec une tolérance sur la précision machine à apprécier selon l'erreur relative ainsi calculée : <M(x(t 0 )).dx, dy> <dx, M T (x(t 0 )).dy> <M(x(t 0 )).dx, dy> Ce test n'apporte aucune indication sur la validité de la programation des dérivées, il indique simplement la cohérence entre le modèle tangent, et sa transposition (i.e. l'adjoint). Ÿ 12

13 3 Graphe Modulaire Concept de graphe modulaire Dénitions : module : Un module F est une entité de calcul, il reçoit un vecteur en entrée et calcule un vecteur en sortie. Un graphe Γ est formé de plusieurs modules, un module reçoit ses entrées d'autres modules ou du contexte extérieur au graphe et transmet ses données en sortie à d'autres modules ou au contexte extérieur. connexion de base : On schématise les transmissions des données entre modules par des connexions qui seront appelées par la suite les connexions de base. Une connexion de base qui lie la ième sortie d'un module F p à la jème entrée d'un module F q indique que la ième valeur calculée par F p sera transmise à la jème entrée de F q. Les transmissions des données vers l'extérieur (respectivement à l'intérieur) du graphe seront représentées par des connexions de base partant de sorties de certains modules (respectivement aboutissant à des entrées de certains modules). graphe modulaire : Un graphe modulaire est un ensemble de modules interconnectés. Les modules représentent les sommets du graphe et un arc (orienté) du module F p vers le module F q signie que F p transmet une partie de ses sorties à F q. Un modèle physique M peut être représenté par un graphe modulaire Γ. La gure 2-a ci-dessous représente un sous ensemble de modules d'un modèle. Ainsi, le module F p transmet sa sortie y p1 à l'entrée x q1 de F q et sa sortie y p2 à l'entrée x q2 de F q, cette même sortie y p2 sera aussi transmise à l'entrée x l1 de F l. La gure 2-a représente donc les connexions de base décrivant la transmission des données, elle montre qu'une seule connexion de base peut aboutir à une entrée donnée, mais que plusieurs connexions de bases peuvent être issues d'une même sortie. La gure 2-b montre deux arcs du graphe modulaire associé, en général un arc du graphe modulaire représente plusieurs connexions de bases. Figure 2: (a) connexions de base entre entrées et sorties de modules. (b) arcs du graphe entre modules. Le graphe modulaire décrit donc l'ordonnancement du calcul dans un modèle (voir gure 3). Un arc de F p vers F q indique que le module F q ne peut déclencher son calcul qu'après celui de F p. Par contre, les connexions de base seront utilisées an de transmettre les données. 13

14 Figure 3: graphe d'ordonnancement. Le graphe modulaire est un graphe sans circuit, il existe donc au moins un sommet d'entrée (sans prédécesseurs) et au moins un sommet de sortie (sans successeurs), on distingue donc trois types de modules : - Les modules d' entrée du graphe (sans prédécesseurs) reçoivent leurs données uniquement du contexte extérieur du graphe et transmettent leur sorties à d'autres modules ou au contexte extérieur. - Les modules de sortie du graphe (sans successeurs dans le graphe) transmettent leurs sorties uniquement au contexte extérieur du graphe et reçoivent des données d'autres modules ou du contexte extérieur. - Les modules internes du graphe recoivent nécessairement des entrées des modules prédécésseurs et éventuellement du contexte extérieur et transmettent les résultats aux modules successeurs et éventuellement au contexte extérieur. Le graphe modulaire étant sans circuit, il est alors possible de numéroter les modules suivant un ordre appelé ordre topologique. Ainsi, relativement à cet ordre, l'existence d'un arc de F p à F q (F p F q ) implique nécessairement que p < q. L'ensemble des entrées d'un module F p constitue un vecteur noté x p, l'ensemble de ses sorties constitue un vecteur noté y p (y p = F p (x p )). De ce qui précède, un module donné F q ne peut être activé que s'il dispose de son vecteur d'entrée x q, ce qui implique que tous ses modules prédécésseurs F p aient préalablement été activés. Les entrées correspondant à des connexions de base entrant de l'extérieur sont initialisées par le contexte extérieur. L'ordre topologique indique un enchaînement possible du calcul dans le modèle. La propagation du calcul dans le graphe modulaire se fait d'une manière naturelle, selon la procédure forward suivante : 14

15 Algorithm 1 forward 1) Parcourir les modules du graphe modulaire en passe avant, dans le sens de l'ordre croissant topologique. Pour chaque module rencontré : - S'il s'agit d'un module d' entrée, initialiser ses entrées par les données correspondantes du contexte extérieur. - Pour les autres cas ( module de sortie ou interne), si le module prend une partie de ses entrées du contexte extérieur alors initialiser ces entrées par les données correspondantes du contexte extérieur, initialiser les autres entrées par les sorties correspondantes des modules prédécesseurs. - Déclancher les calculs du module pour en obtenir le résultats sur ses valeurs de sortie (y p = F p (x p )). 2) Récupération du résultat sous la forme d'un vecteur y, constitué par les données transmises au contexte extérieur par les diérents modules. Globalement, un graphe modulaire reçoit une partie de ses données sur les entrées de ses modules d' entrée, il propage le calcul dans ce graphe en récupérant éventuellement d'autres données du contexte extérieur. L'ensemble des données qui seront transmises au contexte extérieur constitue un vecteur y, ce vecteur correspond aux résultats à restituer au contexte extérieur du graphe modulaire. Ainsi, un graphe modulaire peut être considéré lui-même comme un module F (y = M(x)). La représentation par graphe modulaire s'applique donc à diérents niveaux d'intégration, ce qui permet de former des modèles de plus en plus complexes. La suite du paragraphe montre comment, grâce à la notion de graphe modulaire, on calcule le tangent linéaire et l'adjoint d'un modèle. Les calculs nécessaires demandent d'obtenir le résultat de multiplication matricielles faisant intervenir les matrices jacobiennes de chaque module. Dans ce qui suit, pour faciliter la présentation et la compréhension, nous utilisons les notations matricielles, les résultats des calculs peuvent être obtenus sans exprimer explicitement les matrices jacobiennes (par exemple en utilisant des générateurs automatiques) Tangent linéaire d'un graphe modulaire. On suppose que dans le cadre d'un graphe modulaire Γ d'un modéle M on sait calculer le tangent linéaire de chaque module F q, celui-ci se calcule pour une perturbation dx q (en un point x q ). On note par F q la matrice correspondante au tangent linéaire, qui est égale à la matrice jacobienne de F q calculée en x q, la perturbation correspondante en sortie du module est égale à dy q = F q dx q. De la même façon que le vecteur d'entrée x q, le vecteur dx q provient des perturbations dy p en sorties des modules prédécesseurs de F q ou des perturbations transmises par le contexte extérieur. Le tangent linéaire du modèle global représenté par un graphe Γ peut se calculer par une propagation avant dans le graphe de façon similaire à la procédure forward (algorithme 2). Un exemple de ce calcul est donné gure 4. 15

16 Algorithm 2 lin_forward Cet algorithme s'applique après que toutes les entrées x q de tous les modules aient été calculées (pour cela, il aura sut d'appliquer une fois l'algorithme forward pour un vecteur d'entrée x déni dans le contexte extérieur du graphe Γ ). 1) Initialiser la perturbation dx du vecteur d'entrée x du graphe Γ (ceci correspond à toutes les connexions de bases recevant des données du contexte extérieur). 2) Parcourir les module dans le sens de l'ordre topologique. Calculer, d'une manière similaire à la procédure forward, leur tangent linéaire dy q = F q dx q au point x q. 3) Récupérer le résultat sous la forme d'un vecteur dy constitué des pérturbations transmises au contexte extérieur. Figure 4: calcul du linéaire tangent dans un graphe modulaire. soit un module F q pour lequel le vecteur x q (de composante x q,i ) a déjà été calculé, et une perturbation dx q (de composante dx q,i ). On calcule dy q = F q dx q ce qui correspond au calcul du tangent linéaire du module F q. Les composantes dy q,j peuvent à leur tour être utilisés par les modules successeurs pour former leur propres composantes dx q,i Adjoint d'un graphe modulaire. Comme pour le modèle tangent linéaire, on suppose qu'on sait calculer le modèle adjoint de chaque module. Ainsi, pour un module F p, ayant en entrée un vecteur x p, s'il reçoit un vecteur dy p de même dimension que son vecteur de sortie, son modèle adjoint calculé en x p est alors dx p = F T p dy p, qui a la même dimension que le vecteur d'entrée de F p. La matrice F T p est la transposée de la matrice jacobienne du module F p calculée au point x p. On démontre alors (voir annexe 7.1), qu'on peut calculer le modèle ajoint du modèle global M (représenté par son graphe Γ ) pour chaque vecteur dy ayant la même dimension que son vecteur de sortie (dx = Γ T dy). On a besoin pour faire ce calcul de parcourir le graphe dans 16

17 l'ordre topologique inverse, ce qui correspond à utiliser les arcs en sens opposé, il s'agit du parcours en passe arrière, ou rétropropagation, du graphe modulaire (backward). Le parcours en passe arrière présente une diculté par rapport au parcours en passe avant. En eet, la transmission des données se fait toujours par l'intermédiaire des connexions de base. Comme l'illustrait la gure 2-a, lors du parcours en passe avant, une et une seule donnée est transmise à une entrée particulière. Par contre, lors du parcours en passe arrière, plusieurs données peuvent être transmises à une sortie particulière d'un module F p (exemple de y p2 de la gure 2-a). Dans le cas de l'adjoint, un calcul intermédiaire s'impose, il consiste à préparer le vecteur dy p en sortie du module F p avant de faire le calcul dx p = F T p dy p. On démontre (voir annexe 7.1) que la jème composante de dy p doit être calculée en faisant la somme de toutes les données du type dx q,i qui lui seront transmises, par retropropagation le long de toutes les connexions de bases prenant leur entrée en y pj. Ainsi, dans le cas de la gure 2-a, on doit calculer dy p2 = dx q2 + dx l1. Les diérentes données dx p,i retropropagées sont, soit issues d'un calcul par un module successeur de F p du graphe modulaire, soit calculées (ou initialisées) par le contexte extérieur du graphe modulaire. Finalement, le résultat du calcul de l'adjoint dx du modèle global (dx = M T dy) est constitué par les composantes des vecteurs dx p qui correspondent à des entrées prenant leur valeur du contexte extérieur du graphe du modèle. Ces opérations sont résumées par algorithme 3. La gure 5 montre un exemple des calculs à eectuer. Algorithm 3 backward Cet algorithme s'applique après que toutes les entrées x p de tous les modules aient été calculées une fois avec l'algorithme forward pour un vecteur d'entrée x. 1) Initialiser le vecteur dy des sorties du graphe Γ du modèle M (ceci correspond à toutes les connexions de bases transmettant des données vers le contexte extérieur ). 2) Visiter les modules dans l'ordre inverse à l'ordre topologique (parcours en passe arrière du graphe). Pour chaque module F p rencontré, eectuer le calcul de dy p (comme indiqué dans ce paragraphe) et calculer l'adjoint dx p = F T p dy p, cet adjoint étant calculé au point x p (on suppose par hypothèse que ce calcul est possible). 3) Recupérer le résultat du calcul de l'adjoint dx. Ce vecteur est constitué par les composantes des vecteurs dx p qui correspondent à des connexions de bases prenant leurs entrées du contexte extérieur au modéle. 17

18 Figure 5: calcul du l'adjoint dans un graphe modulaire. Il s'agit du même graphe que celui de la gure 4. Les notations sont équivalentes à ceci près que l'indice en p remplace celui en q. Les èches en pointillé représentent le parcours en passe arrière pendant lequel le calcul adjoint est eectué. Pour ce calcul, on rappelle cependant que chaque compsante dy p,j d'un module est constitué de la sommes des dx q,i de ces modules successeurs. Cette opération est représentée par le symbole Σ sur le graphe. Remarque Les deux algorithmes (2, 3), supposent que l'on sait faire le calcul du tangent linéaire et de l'adjoint pour chaque module F p. Les modules peuvent avoir des complexités très diérentes. Dans un cas simple, où le module est une fonction analytique, on peut calculer explicitement la matrice jacobienne F p et faire le produit F p dx p et F T p dy p. Concernant les modules plus complexes, on peut faire appel à des programmes qui font ces calculs (par exemple programme obtenus après utilisation d'un générateur automatique, voire même, par un autre graphe modulaire). Ainsi le formalisme de graphe modulaire permet de combiner diérentes méthodes pour construire des modèles de calcul complexes. Les algorithmes (2, 3) permettent, grâce au parcours avant et arrière du graphe, de calculer directement les résultats du tangent linéaire et de l'adjoint pour des modèles complexes Représentation d'une application par graphe modulaire Réaliser une étude de sensibilité ou une assimilation de données variationnelle suppose que l'on est capable de prendre en compte des graphes de grande complexité et que l'on gére les échanges (entrées, sorties) avec l'extérieur du graphe. On peut repérer plusieurs partie du graphe présentant des comportements différents. On distingue en particuilier le graphe qui correspond au modèle M = M t (M t 1 (...M 0 )) et celui qui représente l'opérateur H qui apparaissent dans les formules présentées au chapître précédent. Nous noterons par Γ M, Γ M t,γ H les graphes de calcul correspondant. Le graphe représentant le problème physique 18

19 dans son entier sera noté ΓΨ. Il correspond à l'organisation globale de l'ensemble des opérations liant les diérents graphes Γ. Comme précédemment, le graphe ΓΨ est déni par des échanges avec l'extérieur qui prend en charge, par exemple, l'ensemble des problèmes liés à la fonction de coût (matrice de variance covariance, expression moindre carré...). Nous expliquons dans la suite du paragraphe cette organisation. Réaliser une simulation ou une assimiltion de données dans un modèle géophysique M = M t (M t 1 (...M 1 )) opérationnel suppose que l'on est capable de dénir le graphe modulaire représentant l'ensemble des calculs qui vont s'eectuer dans la fenêtre de travail. Cet ensemble de calculs présente la plupart du temps une certaine répétitivité due au fait qu'un même phénomène physique se répète lorsque l'on se déplace dans l'espace ou dans le temps. L'ensemble de ces opérations caractérise ce que l'on appelle en géophysique une maille, endroit ou physiquement les grandeurs géophysiques sont estimées. De la même manière, le graphe modulaire Γ M va prendre en compte cette notion de répétitivité et permettre les échanges spatio-temporels. Ainsi, le graphe modulaire de Γ M intègre 3 niveaux d'abstraction (voir gures 6 et 7) : 1) On détermine d'abord un sous graphe modulaire dit de base Γ g qui décrit l'ensemble des opérations intervenant à un point de grille (gure 6.a). 2) La dénition d'un modèle (1D-2D,3D) à un instant t donné est donc un graphe modulaire dont les noeuds sont les sous graphes modulaires Γ g, les arcs décrivant les échanges spatiaux entre points de grilles. Cela dénit le graphe (Γ M t ) entre mailles. On utilise comme auparavant, des connexions de bases entre modules de points de grille diérents pour décrire les calculs à eectuer (gure 6.b). Figure 6: deux niveaux d'abstraction de graphe: Au niveau le plus bas, on construit le graphe de maille Γ g (a). Au niveau spatiale (b) le même graphe Γ g est répliqué pour chaque maille formant ainsi le graphe de l'espace Γ M t (en 2D dans cet exemple). Les connexions spatiales entre graphe Γ g correspondent aux connexions de base entre modules. 3) La prise en compte du temps demande que l'on le déplie dans le temps le graphe Γ M t. On procède de la même manière pour avoir enn le modèle complet Γ M recherché. Γ M sera représenté par un graphe linéaire dont les noeuds 19

20 sont représentés par les graphes modulaires Γ M t, les arcs ou connexions de base décrivent les échanges d'un pas de temps à l'autre. Comme cela a été déni précédemment, on retrouve les mêmes notions d'entrée et de sortie pour chacun des graphes Γ g, Γ M t et Γ M. Les connexions de base entrantes venant de l'extérieur de Γ M peuvent provenir par exemple de l'initialisation, de conditions limites. Les connexions de base sortantes allant vers l'extérieur vont communiquer leurs valeurs pour calculer par exemple une fonction de coût. Bien entendu les graphes Γ M t et Γ M ne se construisent pas explicitement. Il n'est nécessaire que de décrire le graphe de base Γ g, sachant que ses connexions de bases entrantes et sortantes permettent d'établir automatiquement l'ordonnancement des deux autres graphes. L'exemple qui suit, montre sur un exemple 1D (illustré par la gure 7) le dépliment temporel qui permet de comprendre l'éboration de Γ M. On considère un modèle, dont l'évolution de l'espace des états entre deux temps consécutifs est régie par un modèle d'évolution numérique discrétisé M. Prenons, pour simplier, un modèle en colonne de coordonnée z. avec 4 variables d'état u, v, w et h. La discrétisation, numérique conduit à exprimer pour chaque variable sa dépendance fonctionnelle par rapport aux autres variables qui peuvent se situer sur des points de coordonnées quelconques. Supposons que la dicrétisation nous donne, par exemple, les équations suivantes (Il s'agit ici d'un cas entièrement ctif qui n'a aucun sens physique ou autre) : u z (t) = u z (t 1) + h z 1 (t) FO v z (t) = K (u z (t)) 2 F1 w z (t) = u z (t) + v z (t) F2 h z (t) = v z (t) + w z (t) F3 Ce système d'équations, lorsqu'il est appliqué, en chaque point de maille, pour passer d'un temps t 1 au temps t, correspond au modèle M. Si, par exemple, la variable u est celle que nous voulons contrôler, l'ensemble des composantes u z (0) correspondrait à ce que nous avions noté x(t 0 ) au chapitre 2, c'est le vecteur d'état initial en entrée du modèle et à contrôler. Nous associons respectivement à chacune des ces variables u, v, w et h, un module F0, F1, F2 et F3. Ces équations se traduisent donc par un enchaînement de modules qui correspond à un graphe modulaire simple. F0 calculera u z (t) en fonction de u z (t 1) et de h z 1 (t), c'est à dire avec la sortie de F0 au même point de maille, mais au temps précédent et celle de F3 au point de maille z 1, (etc pour F1, F2 et F3). Sur la gure 7 le graphe en une maille représente cette situation. En chaque maille, le module d' entrée du graphe modulaire correspond aux entrées de F0 et son module de sortie correspond aux sorties de F3 (F1 et F2 sont des modules interne). Dans ce type de schéma, on est évidemment confronté à la phase d'initialisation et à la gestion des conditions limites. Sur notre gure, la prise en charge de ces éléments est représentée par ce que nous avons appelé l'extérieur du graphe. Ce 1er graphe modulaire simple constitue notre graphe de base générique Γ g. A partir de ce 1er niveaux d'abstraction, la gure 7 illustre les niveaux d'abstraction suivants Γ M t et Γ M. 20

Formalisation et automatisation de YAO, générateur de code pour l assimilation variationnelle de données

Formalisation et automatisation de YAO, générateur de code pour l assimilation variationnelle de données Formalisation et automatisation de YAO, générateur de code pour l assimilation variationnelle de données Luigi NARDI sous la direction de Fouad BADRAN et Sylvie THIRIA LOCEAN : Laboratoire d Océanographie

Plus en détail

est diagonale si tous ses coefficients en dehors de la diagonale sont nuls.

est diagonale si tous ses coefficients en dehors de la diagonale sont nuls. Diagonalisation des matrices http://www.math-info.univ-paris5.fr/~ycart/mc2/node2.html Sous-sections Matrices diagonales Valeurs propres et vecteurs propres Polynôme caractéristique Exemples Illustration

Plus en détail

LE PROBLEME DU PLUS COURT CHEMIN

LE PROBLEME DU PLUS COURT CHEMIN LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs

Plus en détail

REPRÉSENTATION DES NOMBRES EN MACHINE

REPRÉSENTATION DES NOMBRES EN MACHINE Info 2 REPRÉSENTATION DES NOMBRES EN MACHINE Problématique Dans la mémoire d'un ordinateur, les données sont représentées sous forme de séquences de 0 et de 1. Par conséquent, toute information mémorisée

Plus en détail

Un peu d'organisation. Conception et Programmation par Objets HLIN406. Sommaire. Pourquoi vous parler de conception par objets? Notion de modélisation

Un peu d'organisation. Conception et Programmation par Objets HLIN406. Sommaire. Pourquoi vous parler de conception par objets? Notion de modélisation Un peu d'organisation Conception et Programmation par Objets HLIN406 Marianne Huchard, Clémentine Nebut LIRMM / Université de Montpellier 2 Premières semaines Contrôle des connaissances Supports 2015 Sommaire

Plus en détail

Compte-rendu de projet de Système de gestion de base de données

Compte-rendu de projet de Système de gestion de base de données Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison

Plus en détail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.

Plus en détail

Algorithmique et programmation. Cours d'algorithmique illustré par des exemples pour le picbasic

Algorithmique et programmation. Cours d'algorithmique illustré par des exemples pour le picbasic Algorithmique et programmation Cours d'algorithmique illustré par des exemples pour le picbasic Même s'il est possible d'écrire un programme petit à petit par touches successives, le résultat est souvent

Plus en détail

Applications linéaires

Applications linéaires Applications linéaires I) Applications linéaires - Généralités 1.1) Introduction L'idée d'application linéaire est intimement liée à celle d'espace vectoriel. Elle traduit la stabilité par combinaison

Plus en détail

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources Master Maths Finances 2010/2011 Data Mining janvier 2011 RapidMiner 1 Introduction 1.1 Présentation RapidMiner est un logiciel open source et gratuit dédié au data mining. Il contient de nombreux outils

Plus en détail

LE PROBLEME DU FLOT MAXIMAL

LE PROBLEME DU FLOT MAXIMAL LE PROBLEME DU FLOT MAXIMAL I Exemple d introduction Deux châteaux d'eau alimentent 3 villes à travers un réseau de canalisations au sein duquel se trouvent également des stations de pompage. Les châteaux

Plus en détail

3.1 Espace vectoriel. La multiplication par un scalaire. L'addition et la multiplication par un scalaire obeissent aux regles suivantes :

3.1 Espace vectoriel. La multiplication par un scalaire. L'addition et la multiplication par un scalaire obeissent aux regles suivantes : .1 Espace vectoriel Un espace vectoriel de dimension p sur le corps des reels IR est une construction mathematique dont les elements sont des vecteurs. Il est deni par deux operations : L'addition. Soient

Plus en détail

Sauf mention contraire, le contenu de cet ouvrage est publié sous la licence : Creative Commons BY-NC-SA 2.0 La copie de cet ouvrage est autorisée

Sauf mention contraire, le contenu de cet ouvrage est publié sous la licence : Creative Commons BY-NC-SA 2.0 La copie de cet ouvrage est autorisée Sauf mention contraire, le contenu de cet ouvrage est publié sous la licence : Creative Commons BY-NC-SA 2.0 La copie de cet ouvrage est autorisée sous réserve du respect des conditions de la licence Texte

Plus en détail

Positionnement de UP

Positionnement de UP UNIFIED PROCESS Positionnement de UP Unified Process Langage Méthode Outil logiciel UML UP RUP 6 BONNES PRATIQUES développement itératif gestion des exigences architecture basée sur des composants modélisation

Plus en détail

À propos des matrices échelonnées

À propos des matrices échelonnées À propos des matrices échelonnées Antoine Ducros appendice au cours de Géométrie affine et euclidienne dispensé à l Université Paris 6 Année universitaire 2011-2012 Introduction Soit k un corps, soit E

Plus en détail

Chapitre 1 : Introduction aux bases de données

Chapitre 1 : Introduction aux bases de données Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données

Plus en détail

Travaux dirigés. Résolution numérique des équations diérentielles ordinaires. Département MIDO année 2013/2014 Master MMDMA

Travaux dirigés. Résolution numérique des équations diérentielles ordinaires. Département MIDO année 2013/2014 Master MMDMA Université Paris-Dauphine Méthodes numériques Département MIDO année 03/04 Master MMDMA Travaux dirigés Résolution numérique des équations diérentielles ordinaires Exercice. Pour α > 0, on considère le

Plus en détail

NOTATIONS PRÉLIMINAIRES

NOTATIONS PRÉLIMINAIRES Pour le Jeudi 14 Octobre 2010 NOTATIONS Soit V un espace vectoriel réel ; l'espace vectoriel des endomorphismes de l'espace vectoriel V est désigné par L(V ). Soit f un endomorphisme de l'espace vectoriel

Plus en détail

Gestion d'un entrepôt

Gestion d'un entrepôt Gestion d'un entrepôt Épreuve pratique d'algorithmique et de programmation Concours commun des écoles normales supérieures Durée de l'épreuve: 3 heures 30 minutes Juin/Juillet 2010 ATTENTION! N oubliez

Plus en détail

Calcul rapide des puissances

Calcul rapide des puissances Calcul rapide des puissances Par Mathtous Il s'agit de puissances à exposant entier naturel (avec la convention a 0 = 1, et a 1 = a). Si on applique la dénition pour calculer a n, on calcule de proche

Plus en détail

1 Codes linéaires. G = [I k A]. Dans ce cas on constate que la matrice. H = [ t A I n k ] est une matrice de contrôle de C. Le syndrome de x F n q

1 Codes linéaires. G = [I k A]. Dans ce cas on constate que la matrice. H = [ t A I n k ] est une matrice de contrôle de C. Le syndrome de x F n q 1 Codes linéaires Un code de longueur n est une partie de F n q. Un code linéaire C de longueur n sur le corps ni F q est un sous-espace vectoriel de F n q. Par défaut, un code sera supposé linéaire. La

Plus en détail

Présentation du projet:

Présentation du projet: : Le but du projet est de réaliser le fonctionnement d'un jeu d échec valide. Plus spécifiquement, il consiste à implémenter l'organisation générale du jeu, et le suivi des règles du mouvement des pièces.

Plus en détail

1.5 0.5 -0.5 -1.5 0 20 40 60 80 100 120. (VM(t i ),Q(t i+j ),VM(t i+j ))

1.5 0.5 -0.5 -1.5 0 20 40 60 80 100 120. (VM(t i ),Q(t i+j ),VM(t i+j )) La logique oue dans les PME/PMI Application au dosage de l'eau dans les bétons P.Y. Glorennec INSA de Rennes/IRISA glorenne@irisa.fr C. Hérault Hydrostop christophe@hydrostop.fr V. Hulin Hydrostop vincent@hydrostop.fr

Plus en détail

Pourquoi l apprentissage?

Pourquoi l apprentissage? Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage

Plus en détail

0- Le langage C++ 1- Du langage C au langage C++ 2- Quelques éléments sur le langage. 3- Organisation du cours

0- Le langage C++ 1- Du langage C au langage C++ 2- Quelques éléments sur le langage. 3- Organisation du cours 0- Le langage C++ 1- Du langage C au langage C++ 2- Quelques éléments sur le langage 3- Organisation du cours Le présent cours constitue une introduction pour situer le langage C++, beaucoup des concepts

Plus en détail

Calculs approchés d un point fixe

Calculs approchés d un point fixe M11 ÉPREUVE COMMUNE DE TIPE 2013 - Partie D TITRE : Calculs approchés d un point fixe Temps de préparation :.. 2 h 15 minutes Temps de présentation devant les examinateurs :.10 minutes Dialogue avec les

Plus en détail

P R O G R A M M E E T I N S T R U C T I O N S O F F I C I E L L E S

P R O G R A M M E E T I N S T R U C T I O N S O F F I C I E L L E S P R O G R A M M E E T I N S T R U C T I O N S O F F I C I E L L E S POUR L ENSEIGNEMENT DE L INFORMATIQUE MPSI première année I. Objectifs de la formation II-1 Développement de compétences et d aptitudes

Plus en détail

- Mobiliser les résultats sur le second degré dans le cadre de la résolution d un problème.

- Mobiliser les résultats sur le second degré dans le cadre de la résolution d un problème. Mathématiques - classe de 1ère des séries STI2D et STL. 1. Analyse On dote les élèves d outils mathématiques permettant de traiter des problèmes relevant de la modélisation de phénomènes continus ou discrets.

Plus en détail

Préparation à réaliser avant le début du TP

Préparation à réaliser avant le début du TP Préparation à réaliser avant le début du TP Soit une suite de points p 0,p 1,... p n du plan (n>=3). On cherche à approximer l'ensemble de ces points par une droite. Écrivez le système d'équations (sur

Plus en détail

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples 45 Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples Les espaces vectoriels considérés sont réels, non réduits au vecteur nul et

Plus en détail

TP : Jouons au Poker

TP : Jouons au Poker Univ. Lille1 - Licence Informatique 2ème année 2014-15 Algorithmes et Programmation Impérative 2 TP : Jouons au Poker Objectifs : Programmation modulaire Manipulation de types somme Filtrage de motifs

Plus en détail

Encadré par : Mr Philippe Janssen

Encadré par : Mr Philippe Janssen ABADIE Martin BENMOUFFOK Yasmine HEIDMANN Paul UTZEL Sylvain Encadré par : Mr Philippe Janssen 2014-2015

Plus en détail

Les types somme. 1 Préparation du TP. 2 Interface du module Carte. Algorithmes et Programmation Impérative 2. 2.1 Les types de donnees

Les types somme. 1 Préparation du TP. 2 Interface du module Carte. Algorithmes et Programmation Impérative 2. 2.1 Les types de donnees Univ. Lille1 - Licence Informatique 2ème année 2014-15 Algorithmes et Programmation Impérative 2 Les types somme 1 Préparation du TP Dans le prochain TP, vous allez réaliser un programme de jeu de poker

Plus en détail

5.1.1 La procédure pour la description d'une situation-problème

5.1.1 La procédure pour la description d'une situation-problème 5 LE CHOIX DES PARTIES DE COURS : UNE PROGRESSION DES APPRENTISSAGES Éléments du cinquième chapitre 5.1 La description de la situation-problème finale 5.1.1 La procédure pour la description d'une situation-problème

Plus en détail

Séance de TP 4 Lentilles minces. Romain BEL 3 janvier 2002

Séance de TP 4 Lentilles minces. Romain BEL 3 janvier 2002 Séance de TP 4 Lentilles minces Romain BEL 3 janvier 2002 1 Table des matières 1 Lentilles minces, stigmatisme, relations de conjugaison 3 1.1 Lentilles minces............................. 3 1.2 L'approximation

Plus en détail

SIMULATION EN ELECTRONIQUE

SIMULATION EN ELECTRONIQUE 1 sur 8 SIMULATION EN ELECTRONIQUE PLAN: OBJECTIF - PUBLIC - MATERIEL - LOGICIEL - METHODE - AVANTAGES - DIFFICULTES - AUTEUR DU DOCUMENT INTRODUCTION MANIPULATION 1 : Prise en main A) Montage inverseur

Plus en détail

Espaces vectoriels et applications linéaires

Espaces vectoriels et applications linéaires Espaces vectoriels et applications linéaires Exercice 1 On considère l'ensemble E des matrices carrées d'ordre 3 défini par,,, 1) Montrer que est un sous-espace vectoriel de l'espace vectoriel des matrices

Plus en détail

TP : Le jeu de Bataille. 1 Le jeu de bataille. 2 Programmation du jeu. Algorithmes et Programmation Impérative 2

TP : Le jeu de Bataille. 1 Le jeu de bataille. 2 Programmation du jeu. Algorithmes et Programmation Impérative 2 Univ. Lille1 - Licence Informatique 2ème année 2012-2013 Algorithmes et Programmation Impérative 2 TP : Le jeu de Bataille Objectifs : Réaliser un programme utilisant les structures de piles et de les.

Plus en détail

Premier Exemple. Premier Exemple - Slack variables. Optimiser? Un peu de maths préliminaires La géométrie des PL

Premier Exemple. Premier Exemple - Slack variables. Optimiser? Un peu de maths préliminaires La géométrie des PL 1 Intro, Optimisation, Problème Linéaire 2 1 Intro, Optimisation, Problème Linéaire Optimiser? Problème Linéaire Un peu de maths préliminaires La géométrie des PL 2 Laure Gonnord (Lyon1 / ENS Lyon) Optimisation

Plus en détail

LA PROGRAMMATION LINEAIRE : UN OUTIL DE MODELISATION

LA PROGRAMMATION LINEAIRE : UN OUTIL DE MODELISATION LA PROGRAMMATION LINEAIRE : UN OUTIL DE MODELISATION Dans les leçons précédentes, nous avons modélisé des problèmes en utilisant des graphes. Nous abordons dans cette leçon un autre type de modélisation.

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

MEGA ITSM Accelerator. Guide de Démarrage

MEGA ITSM Accelerator. Guide de Démarrage MEGA ITSM Accelerator Guide de Démarrage MEGA 2009 SP4 1ère édition (juin 2010) Les informations contenues dans ce document pourront faire l objet de modifications sans préavis et ne sauraient en aucune

Plus en détail

Méthodes de développement. Analyse des exigences (spécification)

Méthodes de développement. Analyse des exigences (spécification) 1 / 16 Méthodes de développement Analyse des exigences (spécification) 1 -Objectifs de l'analyse des exigences... 2 2 - Approfondissement et formalisation du besoin... 2 2.1 Séparation des besoins, contraintes

Plus en détail

Chapitre III : Détection de contours

Chapitre III : Détection de contours Chapitre III : Détection de contours La détection de contour et la segmentation des images sont probablement les domaines qui ont reçu la plus grande attention de la part de la communauté de traitement

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme

Plus en détail

modélisation solide et dessin technique

modélisation solide et dessin technique CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir

Plus en détail

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes. Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis

Plus en détail

3 Approximation de solutions d équations

3 Approximation de solutions d équations 3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle

Plus en détail

CHAPITRE VIII : Les circuits avec résistances ohmiques

CHAPITRE VIII : Les circuits avec résistances ohmiques CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On

Plus en détail

Méthodes d optimisation pour un problème de co-voiturage couplé aux transports en commun

Méthodes d optimisation pour un problème de co-voiturage couplé aux transports en commun Méthodes d optimisation pour un problème de co-voiturage couplé aux transports en commun Aziz Amnay Encadrant : Nadia Brauner Responsable Ensimag : Florence MARANINCHI Grenoble, le 16 mai 2012 Table des

Plus en détail

Introduire un nouveau type de maille ou un nouvel élément de référence

Introduire un nouveau type de maille ou un nouvel élément de référence Titre : Introduire un nouveau type de maille ou un nouvel [...] Date : 05/10/2012 Page : 1/11 Introduire un nouveau type de maille ou un nouvel élément de référence Résumé : Ce document décrit ce qu il

Plus en détail

Contents. Systèmes d'équations non linéaires 2 1. Dichotomie 2 2. Point xe 3 3. Méthodes de Newton et et de la sécante 5

Contents. Systèmes d'équations non linéaires 2 1. Dichotomie 2 2. Point xe 3 3. Méthodes de Newton et et de la sécante 5 Contents Systèmes d'équations non linéaires 2 1. Dichotomie 2 2. Point xe 3 3. Méthodes de Newton et et de la sécante 5 1 Systèmes d'équations non linéaires On considère un intervalle I R (borné ou non)

Plus en détail

GOUTTE. Analyse Statistique des Données Cours 4. Master 2 EID. LUISS, Libera Università Internazionale degli Studi Sociali

GOUTTE. Analyse Statistique des Données Cours 4. Master 2 EID. LUISS, Libera Università Internazionale degli Studi Sociali LUISS, Libera Università Internazionale degli Studi Sociali Université Paris 13 Laboratoire Analyse, Géométrie et Applications UMR 7539 GOUTTE Analyse Statistique des Données Cours 4 Master 2 EID goutte@math.univ-paris13.fr

Plus en détail

Algorithme Algorigramme page 1/10 Algorithmique Algorigramme

Algorithme Algorigramme page 1/10 Algorithmique Algorigramme Algorithme Algorigramme page 1/10 Algorithmique Algorigramme Centre d'interêt : Analyser les constituants d'un système réel d'un point de vue structurel et comportemental Objectifs A la fin de la séquence,

Plus en détail

SECTION 4 : ELABORATION DU SYSTEME D'INFORMATION INTEGRE

SECTION 4 : ELABORATION DU SYSTEME D'INFORMATION INTEGRE Etudes du et du Projet d'electrification Rurale SECTION 4 : ELABORATION DU SYSTEME D'INFORMATION INTEGRE TABLE DES MATIERES PAGE 1. Introduction 1 2. Composition du Système d'information Intégré (SII)

Plus en détail

Analyse et modélisation de tâches

Analyse et modélisation de tâches Analyse et modélisation de tâches 1. Introduction La conception de logiciel interactif (ou conception d'interface homme-machine [IHM], ou conception d'interface) est l'activité qui vise à définir le fonctionnement

Plus en détail

Introduire une nouvelle option de calcul élémentaire

Introduire une nouvelle option de calcul élémentaire Titre : Introduire une nouvelle option de calcul élémentai[] Date : 01/07/2015 Page : 1/6 Introduire une nouvelle option de calcul élémentaire Résumé : Ce document décrit ce qu il faut faire pour introduire

Plus en détail

Machine de Turing. Informatique II Algorithmique 1

Machine de Turing. Informatique II Algorithmique 1 Machine de Turing Nous avons vu qu un programme peut être considéré comme la décomposition de la tâche à réaliser en une séquence d instructions élémentaires (manipulant des données élémentaires) compréhensibles

Plus en détail

CHAPITRE 2 CALCULS ALGEBRIQUES

CHAPITRE 2 CALCULS ALGEBRIQUES Classe de Troisième CHAPITRE CALCULS ALGEBRIQUES UTILISER DES LETTRES... 34 EXPRESSIONS EQUIVALENTES... 36 VOCABULAIRE DU CALCUL LITTERAL... 37 REDUCTIONS D'ECRITURES... 39 DEVELOPPER UN PRODUIT... 40

Plus en détail

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voie : Technologie et biologie (TB) Discipline : Informatique Première et seconde années Programme d informatique

Plus en détail

Chapitre 1 Régime transitoire dans les systèmes physiques

Chapitre 1 Régime transitoire dans les systèmes physiques Chapitre 1 Régime transitoire dans les systèmes physiques Savoir-faire théoriques (T) : Écrire l équation différentielle associée à un système physique ; Faire apparaître la constante de temps ; Tracer

Plus en détail

DÉTERMINANTS DANS LE PLAN ET DANS L'ESPACE. par. Benoît Kloeckner

DÉTERMINANTS DANS LE PLAN ET DANS L'ESPACE. par. Benoît Kloeckner DÉTERMINANTS DANS LE PLAN ET DANS L'ESPACE par Benoît Kloeckner L'objectif de ce cours est d'introduire le déterminant d'une famille de vecteurs dans R 2 et R 3, ainsi que le produit vectoriel. Les prérequis

Plus en détail

Espaces vectoriels euclidiens. Groupe orthogonal

Espaces vectoriels euclidiens. Groupe orthogonal 19 Espaces vectoriels euclidiens. Groupe orthogonal Dans un premier temps, E est un espace vectoriel réel de dimension n 1. 19.1 Espaces vectoriels euclidiens Dénition 19.1 On dit qu'une forme bilinéaire

Plus en détail

CHAPITRE I. Modélisation de processus et estimation des paramètres d un modèle

CHAPITRE I. Modélisation de processus et estimation des paramètres d un modèle CHAPITRE I Modélisation de processus et estimation des paramètres d un modèle I. INTRODUCTION. Dans la première partie de ce chapitre, nous rappelons les notions de processus et de modèle, ainsi que divers

Plus en détail

Environnement de programmation

Environnement de programmation Environnement de programmation 1.La programmation Les ordinateurs sont stupides! à un point dont on n'a pas idée. Ils ne réagissent ni ne répondent qu'à des situations ou à des données anticipées par le

Plus en détail

Placement de centres logistiques

Placement de centres logistiques Master 1 - Spécialité Androide Année 2014/2015 Module RP Résolution de Problèmes Projet Placement de centres logistiques On considère dans ce projet la résolution du problème de placement de centres logistiques

Plus en détail

La fonction exponentielle

La fonction exponentielle DERNIÈRE IMPRESSION LE 2 novembre 204 à :07 La fonction exponentielle Table des matières La fonction exponentielle 2. Définition et théorèmes.......................... 2.2 Approche graphique de la fonction

Plus en détail

Modélisation et résolution du problème de transport de gaz: application au réseau principal français

Modélisation et résolution du problème de transport de gaz: application au réseau principal français Modélisation et résolution du problème de transport de gaz: application au réseau principal français Présentation des travaux de thèse GDF SUEZ - INPT - ENSIACET - LGC EMN 24 mars 2011 Le gaz en Europe

Plus en détail

CODE DETECTEUR D'ERREUR (voir Schaum) Un des avantages des systèmes numériques (l'ordinateur, par exemple) réside dans leur grande précision. Cependant, bien que ces systèmes soient précis, des erreurs

Plus en détail

2. Formalisation ... Or les variables sont indépendantes. Donc si

2. Formalisation ... Or les variables sont indépendantes. Donc si L'estimation 1. Concrètement... Dernièrement un quotidien affichait en première page : en 30 ans les françaises ont grandi de... je ne sais plus exactement, disons 7,1 cm. C'est peut-être un peu moins

Plus en détail

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2 Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101 Danny Dubé Hiver 2014 Version : 11 avril Questions Travail pratique #2 Traduction orientée-syntaxe

Plus en détail

PLANIFICATION ET SUIVI D'UN PROJET

PLANIFICATION ET SUIVI D'UN PROJET Centre national de la recherche scientifique Direction des systèmes d'information REFERENTIEL QUALITE Guide méthodologique PLANIFICATION ET SUIVI D'UN PROJET Référence : CNRS/DSI/conduite-projet/developpement/gestion-projet/guide-planfi-suivi-projet

Plus en détail

Chapitre 2. Classes et objets

Chapitre 2. Classes et objets Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons

Plus en détail

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1 CHAPTER 1 Ordonnancement 1.1. Étude de cas Ordonnancement de tâches avec contraintes de précédences 1.1.1. Exemple : construction d'une maison. Exercice. On veut construire une maison, ce qui consiste

Plus en détail

Rapport d'analyse des besoins

Rapport d'analyse des besoins Projet ANR 2011 - BR4CP (Business Recommendation for Configurable products) Rapport d'analyse des besoins Janvier 2013 Rapport IRIT/RR--2013-17 FR Redacteur : 0. Lhomme Introduction...4 La configuration

Plus en détail

Table des matières. Listings. 1 Tests Algorithmique et Matlab. Travaux pratiques - E.D.O. Travail individuel et personnel. Sup'Galilée Année 2014-2015

Table des matières. Listings. 1 Tests Algorithmique et Matlab. Travaux pratiques - E.D.O. Travail individuel et personnel. Sup'Galilée Année 2014-2015 Energétique I Méthodes Numériques II Sup'Galilée Année -5 Travaux pratiques - E.D.O. Groupes B à B6 Travail individuel et personnel Table des matières Tests Algorithmique et Matlab Résolution numérique

Plus en détail

Rapport de stage. LARRIEU Robin Promotion X2011 7 ème compagnie Section Tennis

Rapport de stage. LARRIEU Robin Promotion X2011 7 ème compagnie Section Tennis Rapport de stage LARRIEU Robin Promotion X2011 7 ème compagnie Section Tennis Météo France Projet VORTEX La Météopole, Toulouse Du 15 juillet au 30 Août 2013 Remerciements Je tiens à remercier particulièrement

Plus en détail

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voie : Biologie, chimie, physique et sciences de la Terre (BCPST) Discipline : Informatique Première et seconde années

Plus en détail

TD 2 Exercice 1. Un bûcheron a 100 hectares de bois de feuillus. Couper un hectare de bois et laisser la zone se régénérer naturellement coûte 10 kf par hectares, et rapporte 50 kf. Alternativement, couper

Plus en détail

Support du cours de Probabilités IUT d Orléans, Département d informatique

Support du cours de Probabilités IUT d Orléans, Département d informatique Support du cours de Probabilités IUT d Orléans, Département d informatique Pierre Andreoletti IUT d Orléans Laboratoire MAPMO (Bât. de Mathématiques UFR Sciences) - Bureau 126 email: pierre.andreoletti@univ-orleans.fr

Plus en détail

CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS. THÈSE présentée par :

CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS. THÈSE présentée par : CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS École Doctorale EDITE ÉQUIPES de RECHERCHE : MMSA au LOCEAN et MSDMA au CEDRIC THÈSE présentée par : Luigi NARDI soutenue le : 8 mars 2011 pour obtenir le grade

Plus en détail

ÉPREUVE OPTIONNELLE D'INFORMATIQUE AU BACCALAURÉAT (juin 1988) - suite - POLYNÉSIE -

ÉPREUVE OPTIONNELLE D'INFORMATIQUE AU BACCALAURÉAT (juin 1988) - suite - POLYNÉSIE - 62 ÉPREUVE OPTIONNELLE D'INFORMATIQUE AU BACCALAURÉAT (juin 1988) - suite - POLYNÉSIE - PREMIÈRE PARTIE (sur 6 points) Le candidat choisira l'un des deux sujets proposés, qu'il traitera en 200 à 300 mots.

Plus en détail

Projet Système Distribué : Implémentation d'un serveur générateur de certicats. BEUQUE Eric, CORNEVAUX Sébastien, MOUTENET Cyril 13 janvier 2009

Projet Système Distribué : Implémentation d'un serveur générateur de certicats. BEUQUE Eric, CORNEVAUX Sébastien, MOUTENET Cyril 13 janvier 2009 Projet Système Distribué : Implémentation d'un serveur générateur de certicats BEUQUE Eric, CORNEVAUX Sébastien, MOUTENET Cyril 13 janvier 2009 1 Table des matières 1 Sujet 3 2 Analyse 4 3 Création clé

Plus en détail

Condensation dynamique de modèle par sousstructuration. Fascicule u2.07 : Méthodes pour réduire la taille de la modélisation

Condensation dynamique de modèle par sousstructuration. Fascicule u2.07 : Méthodes pour réduire la taille de la modélisation Titre : Condensation dynamique de modèle par sous- structu[...] Date : 24/07/2015 Page : 1/7 Condensation dynamique de modèle par sousstructuration statique Résumé : Ce document décrit un mode d utilisation

Plus en détail

Modélisation et optimisation participative des processus métier assistées par un jeu de rôles

Modélisation et optimisation participative des processus métier assistées par un jeu de rôles Modélisation et optimisation participative des processus métier assistées par un jeu de rôles Les organisations doivent aujourd hui s'adapter de plus en plus vite aux évolutions stratégiques, organisationnelles

Plus en détail

Support de cours pour AP1-algo et AP2-algo. Christine Solnon

Support de cours pour AP1-algo et AP2-algo. Christine Solnon Support de cours pour AP1-algo et AP2-algo Christine Solnon 2007-2008 2 Table des matières 1 Introduction 5 1.1 Notion d'algorithme....................................... 5 1.2 Introduction à la structure

Plus en détail

Baccalauréat ES Centres étrangers 12 juin 2014 - Corrigé

Baccalauréat ES Centres étrangers 12 juin 2014 - Corrigé Baccalauréat ES Centres étrangers 1 juin 14 - Corrigé A. P. M. E. P. Exercice 1 5 points Commun à tous les candidats 1. On prend un candidat au hasard et on note : l évènement «le candidat a un dossier

Plus en détail

Dimensionnement d'un vérin électrique

Dimensionnement d'un vérin électrique Dimensionnement d'un vérin électrique Problématique Pour restituer les mouvements (et les accélérations) d'un vol par exemple, une solution classique est l'architecture appelée plate-fome Stewart. Celle-ci

Plus en détail

Rapport de stage. Simulation d'algorithmes auto-stabilisants

Rapport de stage. Simulation d'algorithmes auto-stabilisants Université Joseph Fourier Département Licence Sciences & Technologies Rapport de stage Simulation d'algorithmes auto-stabilisants DIAKITE Moussa Laboratoire d'accueil : Verimag Directeur du laboratoire

Plus en détail

Les patrons de conception décrivent des solutions standards pour répondre à des problèmes d'architecture et de conception des logiciels.

Les patrons de conception décrivent des solutions standards pour répondre à des problèmes d'architecture et de conception des logiciels. Design Pattern En génie Logiciel, un patron de conception (design pattern en anglais) est un concept destiné à résoudre les problèmes récurrents suivant le paradigme objet. En français on utilise aussi

Plus en détail

1 Exercice 1 Question de cours (4 points)

1 Exercice 1 Question de cours (4 points) Info32B Systèmes d'exploitation année 2013-2014 Examen (1ère session) 16 décembre 2014 N. Sabouret L'épreuve dure 2h30. Tous les documents sont autorisés. Les exercices sont indépendants. 1 Exercice 1

Plus en détail

Structures de données non linéaires

Structures de données non linéaires Structures de données non linéaires I. Graphes Définition Un graphe (simple) orienté G est un couple (S, A), où : S est un ensemble dont les éléments sont appelés les sommets. A est un ensemble de couples

Plus en détail

Programme de l enseignement obligatoire commun de mathématiques Cycle terminal de la série sciences et technologies du management et de la gestion

Programme de l enseignement obligatoire commun de mathématiques Cycle terminal de la série sciences et technologies du management et de la gestion Programme de l enseignement obligatoire commun de mathématiques Cycle terminal de la série sciences et technologies du management et de la gestion L enseignement des mathématiques au collège et au lycée

Plus en détail

INTRODUCTION AUX PROBLEMES COMBINATOIRES "DIFFICILES" : LE PROBLEME DU VOYAGEUR DE COMMERCE ET LE PROBLEME DE COLORATION D'UN GRAPHE

INTRODUCTION AUX PROBLEMES COMBINATOIRES DIFFICILES : LE PROBLEME DU VOYAGEUR DE COMMERCE ET LE PROBLEME DE COLORATION D'UN GRAPHE Leçon 10 INTRODUCTION AUX PROBLEMES COMBINATOIRES "DIFFICILES" : LE PROBLEME DU VOYAGEUR DE COMMERCE ET LE PROBLEME DE COLORATION D'UN GRAPHE Dans cette leçon, nous présentons deux problèmes très célèbres,

Plus en détail

= 1 si n = m& où n et m sont souvent des indices entiers, par exemple, n, m = 0, 1, 2, 3, 4... En fait,! n m

= 1 si n = m& où n et m sont souvent des indices entiers, par exemple, n, m = 0, 1, 2, 3, 4... En fait,! n m 1 épartement de Physique, Université Laval, Québec Pierre Amiot, 1. La fonction delta et certaines de ses utilisations. Clientèle Ce texte est destiné aux physiciens, ingénieurs et autres scientifiques.

Plus en détail

Version default Titre : Opérateur RECU_PARA_YACS Date : 15/06/2011 Page : 1/5 Responsable : Nicolas GREFFET Clé : U7.06.

Version default Titre : Opérateur RECU_PARA_YACS Date : 15/06/2011 Page : 1/5 Responsable : Nicolas GREFFET Clé : U7.06. Titre : Opérateur RECU_PARA_YACS Date : 15/06/2011 Page : 1/5 Opérateur RECU_PARA_YACS 1 But L'objet de cette commande est de gérer certains échanges de paramètres pour le couplage IFS par des appels YACS.

Plus en détail

Processus de développement UP

Processus de développement UP Chapitre 1 Processus de développement UP I. Pourquoi UP? II. Définition III. Activités et phases IV. Modèles mis en place 1. Pourquoi UP? Les notions de base acquises dans le module ACOO1, notamment la

Plus en détail

MATHÉMATIQUES CYCLE TERMINAL DE LA SÉRIE ÉCONOMIQUE ET SOCIALE ET DE LA SÉRIE LITTERAIRE CLASSE DE PREMIÈRE

MATHÉMATIQUES CYCLE TERMINAL DE LA SÉRIE ÉCONOMIQUE ET SOCIALE ET DE LA SÉRIE LITTERAIRE CLASSE DE PREMIÈRE Annexe MATHÉMATIQUES CYCLE TERMINAL DE LA SÉRIE ÉCONOMIQUE ET SOCIALE ET DE LA SÉRIE LITTERAIRE CLASSE DE PREMIÈRE L enseignement des mathématiques au collège et au lycée a pour but de donner à chaque

Plus en détail

L Intelligence Artificielle

L Intelligence Artificielle L Intelligence Artificielle pour les développeurs Concepts et implémentations en C# Virginie MATHIVET Table des matières 1 Les exemples à télécharger sont disponibles à l'adresse suivante : http://www.editions-eni.fr

Plus en détail