Optimisation de performance pour des systèmes temps réel stricts à priorité fixe

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

Download "Optimisation de performance pour des systèmes temps réel stricts à priorité fixe"

Transcription

1 RECHERCHE Optimisation de performance pour des systèmes temps réel stricts à priorité fixe Joël Goossens * Pascal Richard ** * Université Libre de Bruxelles CP , avenue Franklin D. Roosevelt B-1050 Bruxelles Joel.Goossens@ulb.ac.be ** LISI / ENSMA Téléport 2-1, avenue Clément Ader BP F Futuroscope Chasseneuil cedex Pascal.Richard@ensma.fr RÉSUMÉ. De nombreux systèmes temps réel doivent conjointement satisfaire des contraintes temps réel et assurer une qualité de service. Dans cette optique, nous présentons une méthode par séparation et d évaluation dédiée aux systèmes temps réel stricts à priorité fixe. Notre méthode est basée sur un algorithme générique qui utilise des fonctions communes indépendamment du critère de performance utilisé. Seules quelques fonctions devront être spécialisées pour le critère de performance considéré. Nous présentons ensuite, une telle spécialisation de l algorithme afin de minimiser le temps de réponse moyen pondéré de tâches. ABSTRACT. Many real-time systems must simultaneously handle hard real-time constraints and Quality of Service constraints. Thus, a performance criterion must be optimized for some tasks while meeting all deadlines for hard real-time tasks. For that purpose, we present a generic Branch & Bound method dedicated to hard real-time fixed-priority schedulers. Our approach is based on a generic algorithm that defines common functions to any performance criteria. Only few functions need to be specialized to deal with a specific criterion. We then present such a specialization for minimizing the weighted average response time of tasks. MOTS-CLÉS : ordonnancement, priorités fixes, optimisation de performance. KEYWORDS: scheduling, fixed-priority, performance optimization. RSTI - TSI 24/2005. Ordonnancement temps réel, pages 991 à 1011

2 992 RSTI - TSI 24/2005. Ordonnancement temps réel 1. Introduction L utilisation d ordinateurs pour le contrôle de systèmes critiques et temps réel connaît un essor important ces dernières années. En conséquence de quoi, les systèmes temps réel (systèmes informatiques dont la correction dépend des résultats des calculs et des instants auxquels ces résultats sont produits) sont devenus l objet de nombreuses études. Puisque le concept de temps est si important dans les applications temps réel, et puisque ces systèmes impliquent le partage d une ou plusieurs ressources parmi différents processus concurrents, la question de l ordonnancement des tâches fait intégralement partie de la conception et de l analyse de ces systèmes. La théorie de l ordonnancement, qui consiste à assigner les ressources disponibles aux tâches, est un domaine de recherche bien établi. Cependant, les tâches dans les environnements temps réel sont classiquement de nature récurrente. De tels systèmes sont typiquement modélisés par une ensemble fini de tâches répétitives, chaque tâche générant des instances de manière prédictible. Pour chaque instance, nous disposons d une borne supérieure pour son pire temps d exécution et d une échéance associée. Dans cet article, nous considérons le cas de tâches périodiques qui réalisent des instances à intervalles périodiques réguliers. Dans notre modèle de calcul, chaque tâche τ i périodique est caractérisée par le tuple (C i, D i, T i, w i ), avec 0 < C i D i, C i T i et w i 0 (cette dernière hypothèse est importante pour améliorer les performances de notre méthode), c est-à-dire, par une période T i, une échéance relative stricte D i, un pire temps d exécution C i pour chaque instance, et un poids w i, indiquant l importance vis-à-vis d un critère de qualité de service ou de performance à optimiser. Les instances de τ i sont séparées par T i unités de temps et apparaissent aux instants (k 1)T i (k = 1, 2,... ). L exécution de la k e instance de la tâche τ i, qui débute après l instant (k 1)T i, doit terminer son travail avant ou à l instant (k 1)T i + D i ; le non respect d une échéance est fatal pour le système : les échéances sont supposées strictes. Tous les paramètres temporels dans notre modèle de calcul sont supposés être des nombres naturels (cependant, les grandeurs w i pourront être des nombres réels). Des cas particuliers intéressants sont les systèmes à échéance sur requête, où l échéance de chaque tâche coïncide avec la période (c est-à-dire, D i = T i i, chaque instance doit se terminer avant l occurrence de l instance suivante pour la même tâche), les systèmes à échéances contraintes, où l échéance n est pas supérieure à la période (c est-à-dire, D i T i i) et les systèmes à échéances arbitraires, s il n y a pas de contraintes entre l échéance et la période. Remarquons que si l échéance est supérieure à la période, il est parfaitement possible d avoir plusieurs instances actives 1 simultanément pour une même tâche et un système ordonnançable. La théorie de l ordonnancement pour les systèmes temps réel se focalise généralement sur les solutions algorithmiques pour (i) l analyse de faisabilité (déterminer s il existe au moins un ordonnancement pour lequel chaque instance respecte son échéance) et pour 1. Par définition, une instance est dite active entre son instant d activation et son instant de terminaison.

3 Optimisation de performance 993 (ii) l ordonnancement en-ligne (ordonnancer l exécution des instances pendant la vie du système). Dans certaines applications temps réel, les tâches doivent respecter leurs échéances et optimiser un critère de performance. Typiquement, de telles applications considèrent une notion de qualité de service, par exemple en se basant sur les temps de réponse, les gigues, etc. Dans un tel environnement temps réel, l objectif est donc d optimiser un indice de performance tout en respectant les échéances des instances. Le paramètre w i traduit l importance que joue la tâche τ i dans le critère de performance. Si par exemple la tâche τ i ne doit pas être considérée dans le critère nous choisirons w i = 0, dans ce cas. Dans la littérature, on distingue en général, deux types d algorithme d ordonnancement : les algorithmes à priorité fixe (aussi appelés à priorité statique) et ceux à priorité dynamique. Les algorithmes à priorité fixe, assignent des priorités aux tâches lors de la conception du système ; de plus, pendant l exécution du système, chaque instance hérite de la priorité de sa tâche. Un exemple d algorithme à priorité fixe populaire, pour des tâches périodiques, est RM (Rate Monotonic (Liu et al., 1973)). Les algorithmes à priorité dynamique, assignent pendant l exécution du système, des priorités aux instances. EDF (Earliest Deadline First (Liu et al., 1973)) est un tel algorithme. Cette recherche. Dans cet article, nous nous intéressons à l ordonnancement de tâches périodiques utilisant une assignation de priorité statique de manière à respecter toutes les échéances (si c est possible) et optimiser (minimiser ou maximiser) un critère de performance. Notons que la majorité des systèmes temps réel mis en œuvre repose sur une affectation de priorités statiques aux tâches. Notre contribution est triple : (i) nous proposons une procédure par séparation et d évaluation (Branch and Bound) qui est générique dans la mesure où elle n est pas dédiée à un critère de performance particulier, ni à un sous-modèle de tâches particulier (échéance sur requête, échéance contrainte, etc.), ce problème est NP-difficile au sens fort (Richard, 2002), (ii) nous résolvons un problème spécifique : la minimisation du temps de réponse moyen pour des tâches périodiques à échéances contraintes. Ce critère de performance permet de minimiser le travail en cours du système (Pan, 2003). En particulier, nous proposons une borne inférieure basée sur les travaux de Redell (Redell et al., 2002), (iii) nous avons également complété le processus itératif, considéré dans (Redell et al., 2002), afin de calculer le meilleur temps de réponse. Organisation du document. La suite du document est organisée de la manière suivante. Dans le paragraphe 2, nous présentons notre procédure générique par séparation et d évaluation. Dans le paragraphe 3, nous appliquons notre algorithme dans un cas spécifique : la minimisation du temps de réponse moyen pour des tâches périodiques à échéances contraintes. Nous présentons également une évaluation expérimentale de notre technique dans le paragraphe 3.5 avant de conclure paragraphe 4.

4 994 RSTI - TSI 24/2005. Ordonnancement temps réel 2. Méthode générique par séparation et d évaluation Les procédures par séparation et d évaluation sont très utilisées pour résoudre des problèmes combinatoires. Ces algorithmes sont basés sur l idée d énumérer «intelligemment» les solutions réalisables (Brucker, 2001). De tels algorithmes sont aussi utilisés pour ordonnancer des tâches sujettes à des contraintes temps réel strictes. Dans (Jonsson et al., 1997) une procédure par séparation et d évaluation paramétrable ordonnance des tâches soumises à des contraintes de précédence sur une plate-forme multiprocesseur afin de minimiser la plus grande latence des tâches. Récemment, Pan (Pan, 2003), propose une procédure par séparation et d évaluation qui ordonnance des tâches non récurrentes et non préemptives afin de minimiser la somme totale pondérée des temps d exécution des tâches. Dans ce travail, nous nous concentrons sur l affectation de priorités statiques (aussi appelées priorités fixes). Une solution partielle est une assignation partielle de priorités (c est-à-dire, qu il existe des tâches ayant reçues une priorité et des tâches sans priorité). Le principe de l énumération est basée sur l exploration d un arbre de recherche. Le nombre de façons différentes d affecter des priorités fixes à n tâches est n!. Chaque sommet de l arbre de recherche correspond à une assignation de priorité. Les sommets sont des assignations partielles (à l exception des feuilles) et sont stockées dans l arbre de recherche. La racine de l arbre de recherche est un sommet fictif qui précède tous les autres sommets de l arbre. Chaque sommet, autre que la racine, est associé à une tâche. Le niveau du sommet dans l arbre de recherche correspond au niveau de priorité de la tâche correspondante. Ainsi, la tâche associée à un sommet de niveau k est affectée au niveau de priorité k. Le niveau 1 dans l arbre de recherche correspond au niveau de priorité 1, qui est le plus élevé. Une feuille de l arbre est au niveau n de l arbre de recherche et correspond au niveau de priorité le plus faible. Avec cette représentation de l assignation des priorités, l arbre de recherche énumère toutes les façons d affecter les priorités aux tâches. Chaque branche de la racine à une feuille correspond à une solution du problème d assignation des priorités aux tâches. Puisque le problème d optimisation est NP-difficile, la seule manière de trouver une solution en un temps acceptable est de détecter au plus tôt qu un sommet ne peut pas mener à une amélioration par rapport à la meilleure solution déjà connue pour le critère de performance considéré. Sans nuire à la généralité, nous pouvons nous restreindre à la minimisation d un critère de performance (puisque maximiser une fonction objectif f est équivalent à minimiser f). Une étape préliminaire à l invocation de la procédure par séparation et d évaluation consiste à estimer (par une heuristique) une borne supérieure de notre fonction objectif. La mise en œuvre des procédures par séparation et d évaluation se base généralement sur un ensemble de sommets non visités, nous l appellerons l ensemble actif. A chaque étape de la boucle principale de la procédure par séparation et d évaluation, le sommet exploré est séparé, autrement dit, ses sommets fils sont définis en assignant le niveau de priorité suivant à chacune des tâches correspondantes. Pour

5 Optimisation de performance 995 Algorithme 1. Méthode générique par séparation et d évaluation Calculer la borne supérieure ; Initialiser l ensemble actif A avec les sommets 1... n (le premier niveau de l arbre) ; while A do Choisir un sommet de A avec la règle de sélection des sommets ; if c est une feuille et le critère est amélioré (utilisant borne inférieure) then mettre à jour la meilleure solution ; end else if ce n est pas une feuille then Générer l ensemble B des fils du sommet en utilisant la stratégie de parcours; Calculer la borne inférieure pour chaque sommet de B (utilisant borne inférieure) ; Eliminer les sommets de B en utilisant la règle d élimination ; Trier les sommets de B de manière non décroissante par rapport à la règle de sélection des sommets ; Déplacer les sommets restants de B vers A ; end Supprimer le sommet sélectionné de A ; end chaque fils, une borne inférieure du critère est calculée. Ces sommets sont supprimés si la borne inférieure du critère n est pas plus petite que la meilleure solution connue (la borne dite supérieure) ou si les contraintes du problème ne sont pas satisfaites. L algorithme 1 présente le pseudo-code de la méthode générique par séparation et d évaluation. La procédure par séparation et d évaluation est basée sur les caractéristiques suivantes : règle de sélection des sommets : cette règle choisit le prochain sommet candidat dans l ensemble actif ; ce sommet est alors séparé, c est-à-dire que ses sommets fils sont construits et évalués ; stratégie de parcours : il s agit de la stratégie de parcours dans l arbre de recherche ; borne supérieure : il s agit d une borne supérieure de la fonction objectif, calculée de manière préliminaire, afin d obtenir une valeur atteignable pour le critère tout en respectant les contraintes du problème. La borne supérieure est ensuite mise à jour durant la recherche lorsqu une feuille mène à une amélioration de la meilleure solution connue ;

6 996 RSTI - TSI 24/2005. Ordonnancement temps réel borne inférieure : cette borne est utilisée pour évaluer une solution partielle. Chaque fois que la borne inférieure de la fonction objectif n est pas plus petite que la meilleure solution connue (borne supérieure), le sommet candidat est supprimé (par exemple ses fils ne sont pas crées dans l arbre de recherche). Lorsqu une feuille est atteinte, la fonction objectif est calculée exactement, par exemple, en construisant l ordonnancement en utilisant un simulateur d algorithme à priorité fixe ; règle d élimination : cette règle vérifie que les sommets fils générés mènent à une solution réalisable (c est-à-dire, que les contraintes d échéances strictes sont satisfaites). De plus, la règle vérifie que la borne inférieure n est pas plus petite que la meilleure solution connue (borne supérieure). Chaque fois que ce n est pas le cas, ces sommets et leurs fils ne seront pas considérés dans la recherche (ils sont supprimés de l arbre de recherche). Notons que l optimalité de la méthode sera garantie si deux conditions sont respectées : la borne inférieure de la fonction objectif est non-décroissante, les règles d élimination n éliminent que des solutions pour lesquelles des échéances strictes ne sont pas respectées. Nous allons à présent détailler les caractéristiques des fonctions génériques. Avant cela nous définissons les principales notations utilisées dans la suite de l article : τ : n : τ j : T j : D j : C j : w j : : R j : R j (l) : R jk : R jk (l) : R j : R(l) : A : configuration de tâches nombre de tâches dans la configuration τ tâche d indice j période de la tâche τ j échéance relative de la tâche τ j pire durée d exécution de la tâche τ j nombre réel mesurant l importance de τ j indice de la tâche affectée au niveau de priorité numéro i pire temps de réponse de la tâche j borne inférieure du pire temps de réponse de la tâche j pour le sommet l de l arbre de recherche temps de réponse de la k e instance de τ j borne inférieure du pire temps de réponse de la k e instance de τ j pour le sommet l de l arbre de recherche temps de réponse moyen de la tâche j en considérant toutes ses instances borne inférieure du temps de réponse moyen pondéré pour le sommet l de l arbre de recherche ensemble des sommets de l arbre de recherche restant à explorer

7 Optimisation de performance Règle de sélection des sommets La règle de sélection des sommets définit le prochain sommet à séparer à partir de l ensemble actif. Des règles classiques sont FIFO (First-In First-Out), LIFO (Last-In First-Out) et LLB (Least Lower Bound) Stratégie de parcours La stratégie de parcours définit l ordre dans lequel les sommets de l ensemble actif seront traités. Différentes techniques mènent à différents parcours de l arbre. Les parcours en profondeur ou en largeur sont des exemples classiques. D un point de vue algorithmique, un parcours en profondeur revient à considérer l ensemble actif comme une pile, alors qu un parcours en largeur revient à considérer l ensemble actif comme une file. Pour plus de commodité pour présenter la méthode, nous considérons dans la suite disposer d un arbre de recherche plutôt que d une liste de sommets non explorés avec les assignations de priorités partielles correspondantes à chaque sommet. Etant donné notre problème d assignation de priorité, un sommet est caractérisé par un numéro de tâche. Le niveau d un sommet dans l arbre correspond à son niveau de priorité. Le premier niveau de l arbre correspond aux tâches les plus prioritaires, et de la même manière, les feuilles de l arbre correspondent aux tâches les moins prioritaires. Le nombre de sommets de l arbre de recherche est clairement exponentiel dans la taille du problème. Puisque le nombre de sommets au niveau k est le nombre de permutations de k éléments parmi n, le nombre de sommets au niveau k vaut n! (n k)!. Dès lors, le nombre total de sommets de l arbre de recherche vaut n 1 i=0 i k=0 (n k). La stratégie de parcours a un impact important sur la taille maximale que peut atteindre l ensemble actif. La plus couramment utilisée est la stratégie en profondeur. L intérêt principal de cette dernière est que la taille de l ensemble actif est borné de manière polynomiale en fonction de la taille du problème. (Remarquons que ce n est pas le cas des autres stratégies, en particulier pour le parcours en largeur). De cette manière, le nombre maximum de sommets stockés simultanément dans l ensemble actif est n(n + 1)/2. Cette valeur est toujours atteinte durant la recherche de la première feuille dans l arbre de recherche. La complexité en espace de notre méthode est donc Θ(n 2 ). Afin de mettre en œuvre le parcours en profondeur, nous considérons que la règle de sélection est LIFO La borne supérieure La première étape de la procédure par séparation et d évaluation, consiste à appliquer une méthode heuristique pour déterminer une première assignation de priorité conduisant à un ordonnancement faisable. La valeur correspondante du critère de performance définira une borne supérieure.

8 998 RSTI - TSI 24/2005. Ordonnancement temps réel Les performances de l algorithme dépendent de manière évidente de la précision de la borne supérieure, cette dernière doit être la plus serrée possible. Sinon, la quasi totalité des sommets seront explorés. Pour cette raison, le choix de la borne supérieure, et par conséquent l efficacité de l algorithme, est dépendante de la fonction objectif La borne inférieure Une fonction objectif spécifique sera détaillée pour le temps de réponse moyen pondéré dans le paragraphe 3. La qualité de la borne inférieure a des conséquences très importantes sur l efficacité de l algorithme pour prouver l optimalité de la meilleure solution connue. Par conséquent, sa définition dépend étroitement de la fonction objectif. Lorsqu une feuille est atteinte, afin de calculer la valeur correspondante de la fonction objectif, un ordonnancement est construit sur l intervalle [0, ppcm i=1...n T i ), puisque nous savons que l ordonnancement est périodique, de période ppcm{t i i = 1,...,n} (consultez par exemple (Goossens, 1999), Corollaire 2.49, p. 47 pour une preuve). La complexité de ce calcul est exponentielle La règle d élimination La règle d élimination est capitale pour réduire significativement l espace de recherche et éliminer des sommets dans l arbre. Nous allons détailler dans la suite trois conditions génériques afin d éliminer un sommet. la sélection immédiate ; la vérification des échéances ; la borne inférieure est plus grande que la meilleure solution connue (la borne supérieure) La sélection immédiate La règle de sélection immédiate identifie les fils qui ne conduisent pas à une solution ordonnançable, le résultat suivant définit une telle règle : Théorème 1 (Richard, 2002) Pour toutes paires τ i, τ j de tâches, si : Ti C j + C i > D i [1] T j alors la condition : la priorité de τ i est plus grande que celle de τ j, est une condition nécessaire pour l ordonnançabilité du système. Etant donné ce résultat, nous pouvons définir un ensemble de contraintes qui doivent être satisfaites durant chaque étape de sélection. Par exemple, si l on identifie

9 Optimisation de performance 999 que τ i doit avoir une priorité plus grande que τ j suivant le théorème 1, alors la tâche τ i doit être générée avant τ j dans l arbre de recherche. De plus, τ j peut recevoir une priorité, si et seulement si, τ i a déjà reçu une priorité. En pratique, une matrice est définie avant l exécution de la procédure par séparation et d évaluation proprement dit, qui représente les contraintes de précédence définies par le théorème 1. Ces contraintes de précédence vont guider la génération des sommets lors du parcours de l arbre de recherche. Il est facile de voir que ces contraintes peuvent être calculées avant le début de la phase d optimisation et que la vérification du respect des contraintes de précédence à la séparation d un sommet peuvent se faire en temps polynomial La vérification des échéances Nous détaillons à présent la manière dont nous allons vérifier les échéances pour le sommet courant. La stratégie de parcours génère les sommets fils à partir du sommet courant tout en respectant la règle de sélection immédiate. Si le sommet de niveau i 1 est séparé, alors tous ses fils seront associés au niveau de priorité i. La première étape est de vérifier que les tâches une fois assignées à ce niveau de priorité respectent leurs échéances. Puisque le sommet vient d être séparé, nous savons que les tâches des niveaux de priorités 1... i 1 sont ordonnançables. Les autres tâches n interfèrent pas avec l exécution de τ. Nous pouvons vérifier la faisabilité de τ par le calcul du pire temps de réponse de chaque tâche. Le pire temps de réponse d une tâche peut être calculé en un temps pseudo-polynomial en utilisant la méthode présentée dans (Joseph et al., 1986) pour des systèmes à échéances contraintes. Dans la partie générique de ce travail, nous considérons des systèmes à échéances arbitraires. Une extension a été proposée pour calculer les pire temps de réponse pour ce type de tâche dans (Lehoczky, 1990; Tindell, 1994). Cette méthode prend également un temps pseudo-polynomial puisqu il dépend de la longueur de la période d activité du processeur de niveau i (c est-à-dire, un intervalle durant lequel le processeur est occupé seulement par des tâches de priorité supérieure ou égale à i). Notons que, à notre connaissance, la faisabilité pour une assignation de priorité donnée ne peut pas être vérifiée en un temps polynomial (c est-à-dire, la complexité en temps de ce problème est ouvert). Le pire temps de réponse de la tâche τ dépend de la charge de travail induite par les tâches plus prioritaires. La demande des tâches ayant une priorité plus grande que i à l instant t dans une période d activité contenant q instances de τ est W(t) : i 1 t W(t) = (q + 1)C + j=1 T [j] C [j] [2] Le pire temps de réponse de τ est obtenu en considérant q = 1, 2... et pour chaque valeur de q l équation récurrente t = W(t) est résolue en recherchant de façon itérative le plus petit point fixe de cette équation, plus formellement :

10 1000 RSTI - TSI 24/2005. Ordonnancement temps réel { R (0) R (k) = C = W(R (k 1) ) [3] R = R (k) = R (k 1) [4] Les calculs s arrêtent lorsque l inégalité suivante est satisfaite : R (q +1)T. Pour résumer, nous utilisons la règle suivante : Si R > D pour un sommet, alors il est supprimé, ainsi ses descendants dans l arbre de recherche ne seront pas construits et évalués. Nous devons à présent considérer le cas des tâches qui n ont pas reçu une priorité. Quelle que soit l assignation de priorité des tâches qui ont déjà une priorité, l interférence de ces dernières est toujours identique pour les tâches «sans priorité». Nous évaluons leur pire temps de réponse en les assignant au premier niveau de priorité disponible (c est-à-dire, le suivant puisque nous assignons les priorités de la plus grande à la plus petite) La borne inférieure La dernière manière d éliminer un sommet est de vérifier si la meilleure solution connue (c est-à-dire la borne supérieure) est plus petite que la borne inférieure du sommet courant (pour un problème de minimisation). Puisque la génération de ses fils ne pourra qu accroître la borne inférieure, alors continuer la recherche dans cette branche ne permettra pas d améliorer la meilleure solution connue. Pour conclure, nous pouvons remarquer que tous ces tests peuvent être réalisés en temps pseudo-polynomial. Cette complexité est due au calcul du pire temps de réponse. 3. Le cas spécifique de la minimisation du temps de réponse moyen Dans ce paragraphe, nous allons appliquer notre technique pour le cas suivant : nous considérons l ordonnancement de tâches périodiques à échéances contraintes et nous souhaitons minimiser le temps de réponse moyen, pondéré par le coefficient w i mesurant l importance de la tâche vis-à-vis du critère. A notre connaissance, ce critère pondéré n a jamais été étudié dans la littérature. Dans un article précédent, nous avons étudié le problème de minimisation de la somme des pire temps de réponses des tâches (Richard, 2002). Ce critère capture seulement les performances moyennes des pires temps de réponse. Dans la suite, nous calculons exactement le temps de réponse moyen des tâches (c est-à-dire, que nous considérons toutes les instances de tâches). Comme précisé dans l introduction, ce critère de performance permet de minimiser le travail en cours dans le système (Pan, 2003). Minimiser le temps de réponse

11 Optimisation de performance 1001 moyen des instances est équivalent à minimiser la somme pondérée des dates d achèvement des tâches, puisque ces deux critères ne différent que d un terme additif : la somme des instants d arrivé des instances. De plus, minimiser le temps de réponse moyen a pour effet de minimiser le nombre moyen d instances non achevées dans le système ainsi que le délai moyen d attente avant qu une instance débute son exécution (Baker, 1974). En d autres termes, l optimisation de ce critère permet d avoir un système le plus réactif possible. Ce critère est notamment utilisé dans le contexte des bases de données temps réel. Les exécutions des transactions sont assujetties à des échéances strictes. Une transaction peut être exécutée par des utilisateurs ou de façon automatique afin de mémoriser des valeurs acquises automatiquement via des capteurs. Outre le respect des échéances, le critère utilisé pour évaluer la qualité de service d un système exploitant une base de données temps réel est le temps de réponse moyen. Ce critère minimise la quantité de mémoire centrale simultanément utilisée par les exécutions concurrentes des transactions (Aldarmi et al., 1998). Lorsque les instances ne sont pas sujettes à des échéances strictes, minimiser le temps de réponse des instances pour un système mono-processeur est obtenu en appliquant la stratégies SRPT : Shortest Remaining Processing Time (Baker, 1974). Notons que de manière évidente, cette règle est loin d être optimale si nous devons respecter des échéances. Enfin, notons aussi qu il n y aucun intérêt à ajouter des temps creux dans l ordonnancement si nous souhaitons minimiser le temps de réponse moyen (Baker, 1974). Dans le paragraphe 3.1 nous présentons notre indice de performance, dans le paragraphe 3.2, l assignation de priorités, dans le paragraphe 3.3, la borne supérieure, dans le paragraphe 3.4 la borne inférieure afin d éliminer des sommets, et nous présentons dans le paragraphe 3.5 nos résultats expérimentaux Le critère d optimisation Dans la suite, R i,k dénote le temps de réponse de la k e instance de τ i, R i désigne le temps de réponse moyen des instances de la tâche τ i. Dans ce paragraphe, nous allons appliquer notre technique afin de minimiser le temps de réponse moyen pondéré avec la définition suivante : R def 1 = lim f f n i=1 j=1 f w i R i,j [5] Premièrement, nous simplifions l équation 5. Puisque les tâches sont périodiques, nous savons que l ordonnancement lui-même est périodique, sa période vaut H def = ppcm{t i i = 1,...,n}. De plus, puisque nous considérons un système à départ simultané, le comportement périodiques de l ordonnancement débute à l instant 0. Par conséquent, pour R i (le temps de réponse moyen des instances de τ i ), nous obtenons :

12 1002 RSTI - TSI 24/2005. Ordonnancement temps réel R i = lim k k H/T T i i k H j=1 Dès lors, notre critère d optimisation est : R = n w i T i H i=1 R i,j = T H/T i i H H/T i j=1 R i,j j=1 R i,j [6] [7] 3.2. L assignation de priorités Notre algorithme, assigne les priorités du plus prioritaire au moins prioritaire. Un sommet dans l arbre de recherche correspond à une tâche, son niveau correspond à sa priorité. Pour chaque sommet (exception faite des feuilles) nous évaluons une borne inférieure du critère (avec un algorithme pseudo-polynomial). Pour les feuilles, nous calculons exactement la valeur du critère (c est-à-dire, nous réalisons un calcul exact du temps de réponse de chaque instance en construisant l ordonnancement par simulation) La borne supérieure Nous considérons des tâches à départ simultané et échéances contraintes pour lesquelles DM (deadline monotonic algorithm) est une assignation de priorités optimale pour le respect des échéances. Mais cette assignation de priorités n est évidemment pas optimale pour optimiser le temps de réponse moyen. Cependant, cette assignation de priorités mène à un ordonnancement faisable (s il en existe un), et peut être utilisée pour calculer la borne supérieure. Une meilleure approche, est l utilisation de l algorithme défini dans (Audsley, 1991). Nous allons proposer un algorithme qui fournira toujours une solution meilleure que l ordonnancement DM, vis-à-vis du critère optimisé. Nous assignons les priorités dans l ordre inverse, se basant sur la propriété suivante : Lemme 1 (Audsley, 1991) Si une tâche τ i est ordonnançable au niveau de priorité le plus faible (c est-à-dire que si l on donne la plus basse priorité à τ i, et une priorité plus élevée aux autres tâches dans une ordre quelconque, toutes les instances de τ i respectent leur échéance) alors il existe une assignation faisable de priorité pour τ ssi il existe une assignation faisable de priorité pour τ \ {τ i }. L heuristique assigne les priorités aux tâches de la moins prioritaire jusqu à la plus prioritaire et choisit à chaque étape, une tâche qui augmente le moins possible

13 Optimisation de performance 1003 le critère de performance parmi les tâches ordonnançables à ce niveau de priorité. A une étape donnée, l algorithme choisit la tâche ayant le plus petit poids (et n ayant pas encore reçu de priorité) parmi les tâches ordonnançables à ce niveau de priorité. Une conséquence directe du Lemme 1 est que l heuristique trouvera toujours une assignation faisable (s il en existe une conduisant à un ordonnancement faisable). Dans l algorithme 2, nous donnons le pseudo-code de l heuristique, déterminant une borne supérieure du critère. Le calcul des tâches ordonnançables à un niveau de priorité est pseudo-polynomial puisque les temps de réponses des tâches doivent être calculés. Algorithme 2. Calcul de la borne supérieure Soit X l ensemble des tâches et n le nombre de tâches ; while X do Soit X les tâches ordonnançables au niveau de priorité n parmi celles de l ensemble X ; Soit a la tâche avec le plus petit poids de l ensemble X ; Assigner la priorité n à a ; n = n 1; X = X \ {a} ; end Calculer la fonction objectif pour l assignation de priorité obtenue ; 3.4. La borne inférieure Dans ce paragraphe, nous allons caractériser la borne inférieure (et un processus itératif pour son évaluation) de notre critère. Nous allons distinguer le cas des tâches qui ont déjà reçu une priorité (tâches avec priorités) et celles qui n ont pas encore reçu une priorité (tâches sans priorités) Tâches avec priorités Nous considérons la tâche τ et supposons que cette tâche a déjà reçu une priorité (le niveau i par définition). Définissons, dans l intervalle [0, H) : R max le plus grand temps de réponse parmi les instances de τ i ; R min le plus petit temps de réponse parmi les instances de τ i. Théorème 2 Le temps de réponse moyen d une tâche affectée au niveau de priorité i (c est-à-dire, τ ) vérifie l inéquation suivante : R T ( ( H ) 1) R min + R max H T De plus, cette borne est serrée.

14 1004 RSTI - TSI 24/2005. Ordonnancement temps réel Démonstration : nous considérons le cas optimiste où ( H T 1) instances de τ ont un temps de réponse égal à R min et une seule instance a un temps de réponse égal à R max. Puisque les tâches sont à départ simultané et à échéance contrainte, la première instance de τ est activée à un instant critique conduisant exactement au temps de réponse R max. Toutes les autres exécutions ne peuvent pas avoir un temps de réponse plus petit que R min. En conséquence, l inégalité est vérifiée sur une hyperpériode et donc de façon équivalente sur toute la durée de l ordonnancement. Nous montrons maintenant que la borne proposée est serrée, c est-à-dire que l inégalité devient alors une égalité. Pour cela il suffit de considérer un exemple avec deux tâches à échéance sur requête et à départs simultanés τ [1] et τ [2] avec les caractéristiques suivantes : C [1] = C [2] = 1 T [1] = 2T [2] La longueur de l hyperpériode est H = T [1]. Dans l ordonnancement, la première instance de τ [2] obtient la valeur R[2] max = 2, puisqu elle est réveillée en même tant que τ [1] qui est plus prioritaire, tandis que la seconde instance de τ [2] s exécute sans interférence avec τ [1], et en conséquence obtient un temps de réponse R[2] min = C [2] = 1. Nous avons donc : La borne est donc serrée. R [2] = T [2] H ( ( H ) 1) R[2] min + R[2] max T [2] Notons que puisque nous connaissons les tâches plus prioritaires que τ, R max est la plus petite solution positive de l équation (consulter (Joseph et al., 1986) pour une preuve) : i 1 R max = C + C [j] [8] T [j] R max j=1 Le calcul de R max est un calcul exact puisque les tâches sont à départ simultané et à échéance contrainte. Cela ne sera pas le cas pour évaluer R min, comme nous le montrons maintenant. Le calcul de R min est plus complexe, à partir de (Redell et al., 2002) nous définissons une borne inférieure pour le meilleur temps de réponse (une borne plus précise que de considérer C ), nous désignons par R lb cette borne inférieure, qui est la plus grande solution positive de l équation i 1 max{r min T [j], 0} = C + C [j] [9] T [j] R min j=1

15 Optimisation de performance 1005 Un processus itératif peut être défini pour calculer le plus petit point fixe : R min,(0) = init i 1 = C + R min,(k) j=1 max{r min,(k 1) T [j], 0} T [j] C [j] Dans les travaux de Redell (Redell et al., 2002), aucune valeur n est donnée pour init, nous complétons à présent le résultat. La suite définit ci-dessus doit impérativement être initialisée par une borne supérieure du meilleure temps de réponse afin d assurer la convergence vers une borne inférieure du meilleur temps de réponse (Redell et al., 2002). Nous obtenons une telle borne de la façon suivante : i 1 = C + j=1 i 1 C + R min,(k) i 1 C + T [j], 0} T [j] C [j] T [j], 0} C [j] max{r min,(k 1) max{rmin,(k 1) T j=1 [j] j=1 C 1 i 1 C [j] j=1 T [j] Rmin,(k 1) T [j] C [j] Par conséquent, nous proposons le processus itératif complet : R min,(0) = R min,(k) C 1 i 1 C [j] j=1 T [j] i 1 = C i + j=1 max{r min,(k 1) T [j], 0} T [j] C [j] Afin, de garantir que le calcul de cette borne inférieure respecte bien les conditions d optimalité de la méthode, nous vérifions que :

16 1006 RSTI - TSI 24/2005. Ordonnancement temps réel Lemme 2 Pour tout couple de sommets a et b de l arbre de recherche tels que a b, nous vérifions pour toute tâche assignée au niveau de priorité : R min (a) R min (b) La preuve résulte de la définition de l équation 9 et du principe itératif de la recherche du plus petit point fixe de cette équation Tâches sans priorité Nous considérons à présent le cas où τ i n a pas encore reçu une priorité pour un sommet de l arbre de recherche. Soit l ce sommet où p tâches possèdent une priorité. Alors les temps de réponses des tâches sans priorités sont évalués en supposant qu elles sont affectées au niveau de priorité p + 1. Nous vérifions donc : Lemme 3 Pour tout couple de sommet a et b de l arbre de recherche tel que a b et pour toute tâche τ i sans priorité pour le sommet a nous avons : R min (a) R min (b) R max (a) R max (b) (Remarquons que la tâche τ i peut avoir une priorité pour le sommet b ou non). La preuve résulte du calcul itératif du temps de réponse dans les équations 8 et 9. La borne inférieure évaluée pour chaque sommet l non feuille de l arbre de recherche (c est-à-dire, toutes les tâches ne sont pas assignées à des niveaux des priorités) est calculée par l équation suivante : R(l) = n i=1 w i T i H ( ( H 1) Ri min (l) + R max T i i ) (l) [10] Le calcul de la borne inférieure du pire temps de réponse, lorsque les tâches ne sont pas toutes assignées à des niveaux de priorité, est pseudo-polynomial. Cette complexité résulte du calcul du plus petit point fixe pour déterminer R max et R min. Nous montrons maintenant que la condition d optimalité de méthode sur le critère de performance optimisé est respectée : Théorème 3 Soient a et b deux sommets de l arbre de recherche tels que a b, alors l évaluation de la borne inférieure du temps de réponse moyen pondéré vérifie la propriété suivante : a < b R i (a) R i (b) Démonstration : ce résultat découle directement des lemmes 2 et 3.

17 Optimisation de performance Evaluation des feuilles Pour terminer, le principe d évaluation des feuilles de l arbre ne repose pas sur des calculs de bornes inférieures du meilleur et du pire temps de réponse. Alors R i, i, 1 i n, est obtenu en construisant l ordonnancement par simulation de l ordonnanceur à priorité fixe de l exécutif temps réel. Ce calcul est donc exact, mais le volume des calculs est exponentiel puisqu il est proportionnel au ppcm des périodes des tâches. L évaluation de chaque feuille de l arbre de recherche permet de mettre à jour la borne supérieure du critère (c est-à-dire, la valeur de la meilleure solution connue). A chaque séparation d un sommet, les bornes inférieures du temps de réponse moyen sont calculés et comparés à la valeur courante de la borne supérieure Résultats expérimentaux Nous avons évalué notre technique sur des ensembles de tâches périodiques à échéance sur requête générés de manière (pseudo-)aléatoire. Pour un nombre de tâches donné, nous avons évalué 25 instances du problème. Les problèmes comportent entre 7 et 29 tâches. Nous avons constaté expérimentalement que lorsque la charge processeur est forte alors il existe peu d ordonnancements faisables et l algorithme détermine rapidement l absence de solution ; lorsque la charge processeur est faible alors les contraintes temporelles sont faibles et les techniques de coupes sur ces critères ne sont pas sollicitées. Ceci nous a amené à fixer le facteur d utilisation du processeur à environ 50 % pour toutes les instances de problèmes générés aléatoirement. Nous avons utilisé une loi uniforme pour notre générateur pseudo-aléatoire et les paramètres de génération des instances sont C i [1, 10], D i = T i sont calculés de manière à avoir une utilisation proche d un demi, et w i [0, 20]. L expérimentation a été réalisée sur un Pentium IV/3,2 GHz. Nous avons fixé un temps limite d une heure pour la résolution de chaque instance. La figure 1 illustre le temps moyen de résolution pour chaque taille du problème pour les instances résolues et pour toutes les instances (pour les instances résolues ou non). Pour les instances résolues le temps moyen de résolution est très court puisqu il n excède pas 600 secondes. Par contre, pour des instances composées de 25 tâches, le temps limite a été atteint pour chaque instance, sans jamais prouver l optimalité de la solution atteinte. La figure 2 illustre le pourcentage d instances résolues contre le pourcentage d instances non résolues. Nous pouvons remarquer que toutes les instances de moins de 15 tâches ont été résolues à l optimum, mais par contre, aucune de plus de 25 tâches n a pu être résolue de manière optimale dans la limite de temps imposée. On constate de plus que le nombre d instances non résolues dans l intervalle augmente très rapidement puisqu au delà de 20 tâches moins de 20 % des instances sont résolues à l optimum.

18 1008 RSTI - TSI 24/2005. Ordonnancement temps réel Temps moyens de résolution pour les instances résolues et pour toutes les instances secondes résolues temps moyen nombre de tâches Figure 1. Temps de résolution pour 25 instances (temps limite de 3600 secondes par instance. La première série de données donne les résultats pour les instances résolues tandis que la seconde indique le temps moyen de résolution en considérant toutes les instances de problème d une taille donnée) La figure 3 indique le nombre moyen de sommets explorés pour les instances résolues et non résolues pour un problème de taille donnée (c est-à-dire, pour un nombre de tâches fixé). Lorsque le nombre de tâches augmente, le nombre de sommets explorés dans la limite de temps d une heure de résolution par instance diminue fortement : la méthode passe plus de temps à évaluer chaque sommet séparé puisque les calculs des bornes inférieures sont pseudo-polynomiaux et que l évaluation de chaque feuille de l arbre de recherche nécessite un temps exponentiel dans la taille du problème. Constatons tout de même que le nombre de sommets explorés est très important puisqu il s approche de près de 800 millions pour les problèmes à 15 tâches. Le tableau 1 donne le nombre moyen de sommets explorés lorsque le nombre de tâches est {7, 9, 11}. La méthode explore donc moins de 6 % de l arbre de recherche pour résoudre à l optimum ces problèmes. Lorsque le nombre de tâches augmente, l algorithme explore une partie infime de l arbre de recherche (c est-à-dire, moins de 0,1 %) car le nombre de sommets dans l arbre de recherche explose. tâches nombre de sommets explorés nombre total de sommets 7 81, , , Tableau 1. Nombre moyen de sommets explorés par l algorithme par rapport à la taille de l arbre de recherche

19 Optimisation de performance 1009 Pourcentage de problèmes résolus à l'optimum pourcentage nombre de tâches non optimale optimale Figure 2. Pourcentage moyen d instances résolues et non résolues nombre de sommets explorés pour les instances résolues et non résolues nombre de sommets nombrede tâches résolues non résolues Figure 3. Nombre moyen de sommets explorés pour les instances résolues et les instances non résolues Bien sûr, la méthode proposée peut être utilisée comme une heuristique en stoppant la recherche de la solution optimale et en conservant la meilleure solution trouvée.

20 1010 RSTI - TSI 24/2005. Ordonnancement temps réel 4. Conclusion De nombreux systèmes temps réel doivent conjointement respecter des contraintes temporelles et assurer une certaine qualité de service. Dès lors, un critère de performance doit être optimisé et les échéances doivent être respectées. Dans cette optique, nous avons présenté une méthode par séparation et d évaluation dédiée pour les systèmes temps réel stricts à priorité fixe. Notre approche est basée sur un algorithme générique qui utilise des fonctions communes quel que soit le critère de performance visé. Nous avons présenté une spécialisation de la méthode, afin de minimiser le temps de réponse moyen pondéré des tâches périodiques à activations simultanées et à échéances contraintes. Dans des travaux futurs, nous souhaitons : mettre en œuvre deux modules : une boîte à outils, permettant aux développeurs d ajouter des fonctions spécifiques pour ses indices de performance; une interface graphique afin qu un utilisateur puisse, spécifier son problème, intégrer ses fonctions spécifiques, définir des expérimentations numériques, et ceci de manière indépendante du critère d optimisation considéré ; étendre la méthode pour tenir compte des ressources partagées, des contraintes de précédence... Remerciements Les auteurs tiennent à remercier les lecteurs anonymes pour leurs remarques constructives et leurs encouragements. 5. Bibliographie Aldarmi S. A., Burns A., Real-Time Database Systems : Concepts and Design, Technical Report n YCS 303, Department of Computer Science, University of York, Audsley N., Optimal priority assignment and feasibility of static priority assignment with arbitrary start times, Technical Report n YCS 164, Department of Computer Science, University of York, Baker K., Introduction to sequencing and scheduling, John Wiley and Sons, Brucker P., Scheduling algorithms, Springer Verlag, Goossens J., Scheduling of Hard Real-Time Periodic Systems with Various Kinds of Deadline and Offset Constraints, PhD thesis, Université Libre de Bruxelles, Belgique, Jonsson J., Shin K., «A parametrized Branch and Bound strategy for scheduling precedenceconstrained tasks on a multiprocessor system», proc. Int. Conf. on Parallel Processing, p , Joseph M., Pandya P., «Finding Response Times in a Real-Time System», The Computer Journal, vol. 29, n 5, p , October, 1986.

21 Optimisation de performance 1011 Lehoczky J. P., «Fixed Priority Scheduling of Periodic Task Sets with Arbitrary Deadlines», IEEE Real-Time System Symposium, Liu C., Layland J., «Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment», Journal of the ACM, vol. 20, n 1, p , Pan Y., «An improved branch and bound algorithm for single machine scheduling with deadlines to minimize total weighted completion time», Operations Reseach Letters, vol. 31, p , Redell O., Sanfridson M., «Exact best-case response time analysis of fixed-priority scheduled tasks», Euromicro Real-Time Systems, Richard P., «Controlling response time in real-time systems», Computer Performance Evaluation : Modelling Techniques and Tools, LNCS 2324, Springer Verlag, p , Tindell K., Fixed-Priority Scheduling of Hard Real-Time Systems, PhD thesis, University of York, UK, Article reçu le 16 juin 2004 Version révisée le 12 avril 2005 Joël Goossens est chargé d enseignement à l Université Libre de Bruxelles. Il enseigne l algorithmique, la programmation, les bases de données, les compilateurs et la gestion des processus dans les systèmes d exploitation. Ses travaux de recherche concernent la théorie de l ordonnancement pour les systèmes temps réel et les performances des grilles de calcul. Pascal Richard est maître de conférences à l IUT de Poitiers. Ses travaux de recherche s effectuent au sein de l équipe Analyse et Modélisation des Systèmes Temps Réel du Laboratoire d Informatique Scientifique et Industrielle (LISI) de Poitiers et portent sur l ordonnancement des tâches dans les systèmes temps réel.

Ordonnancement temps réel

Ordonnancement temps réel Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches

Plus en détail

Analyse du temps de réponse des systèmes temps réel

Analyse du temps de réponse des systèmes temps réel Analyse du temps de réponse des systèmes temps réel Pascal Richard Laboratoire d Informatique Scientifique et Industrielle, ENSMA BP 40198 Téléport 2 F-86960 Futuroscope pascal.richard@ensma.fr RÉSUMÉ.

Plus en détail

Annexe 6. Notions d ordonnancement.

Annexe 6. Notions d ordonnancement. Annexe 6. Notions d ordonnancement. APP3 Optimisation Combinatoire: problèmes sur-contraints et ordonnancement. Mines-Nantes, option GIPAD, 2011-2012. Sophie.Demassey@mines-nantes.fr Résumé Ce document

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

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement Master 2 pro Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement Isabelle PUAUT / Rémi COZOT Université de Rennes I 1 Applications temps-réel embarquées Systèmes en interaction avec l

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

Principe de symétrisation pour la construction d un test adaptatif

Principe de symétrisation pour la construction d un test adaptatif Principe de symétrisation pour la construction d un test adaptatif Cécile Durot 1 & Yves Rozenholc 2 1 UFR SEGMI, Université Paris Ouest Nanterre La Défense, France, cecile.durot@gmail.com 2 Université

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services 69 Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services M. Bakhouya, J. Gaber et A. Koukam Laboratoire Systèmes et Transports SeT Université de Technologie de Belfort-Montbéliard

Plus en détail

INFO-F-425 Modèles mathématiques et algorithmes pour l ordonnancement. Bernard Fortz

INFO-F-425 Modèles mathématiques et algorithmes pour l ordonnancement. Bernard Fortz INFO-F-425 Modèles mathématiques et algorithmes pour l ordonnancement Bernard Fortz 2008-2009 Table des matières 1 Définition et classification des problèmes d ordonnancement 2 1.1 Introduction....................................

Plus en détail

Corps des nombres complexes, J Paul Tsasa

Corps des nombres complexes, J Paul Tsasa Corps des nombres complexes, J Paul Tsasa One Pager Février 2013 Vol. 5 Num. 011 Copyright Laréq 2013 http://www.lareq.com Corps des Nombres Complexes Définitions, Règles de Calcul et Théorèmes «Les idiots

Plus en détail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Resolution limit in community detection

Resolution limit in community detection Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.

Plus en détail

Les systèmes de base de données temps réels. Pokrovskaya Natalia, Kabbali Nadia

Les systèmes de base de données temps réels. Pokrovskaya Natalia, Kabbali Nadia Les systèmes de base de données temps réels Pokrovskaya Natalia, Kabbali Nadia Année académique 2008-2009 Table des matières 1 Introduction 2 2 Système de gestion de bases de données classiques 3 3 Systèmes

Plus en détail

Etude d un cas industriel : Optimisation de la modélisation de paramètre de production

Etude d un cas industriel : Optimisation de la modélisation de paramètre de production Revue des Sciences et de la Technologie RST- Volume 4 N 1 /janvier 2013 Etude d un cas industriel : Optimisation de la modélisation de paramètre de production A.F. Bernate Lara 1, F. Entzmann 2, F. Yalaoui

Plus en détail

Une méthode d apprentissage pour la composition de services web

Une méthode d apprentissage pour la composition de services web Une méthode d apprentissage pour la composition de services web Soufiene Lajmi * Chirine Ghedira ** Khaled Ghedira * * Laboratoire SOIE (ENSI) University of Manouba, Manouba 2010, Tunisia Soufiene.lajmi@ensi.rnu.tn,

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction

Plus en détail

Contrainte de flot pour RCPSP avec temps de transfert

Contrainte de flot pour RCPSP avec temps de transfert Contrainte de flot et x-rcpsc T 1 Contrainte de flot pour RCPSP avec temps de transfert PS temp, s ij Cmax BENOIST Thierry BOUYGUES/e-Lab DIAMANTINI Maurice ENSTA/LMA Contrainte de flot et x-rcpsc T Présentation

Plus en détail

OPTIMISATION À UNE VARIABLE

OPTIMISATION À UNE VARIABLE OPTIMISATION À UNE VARIABLE Sommaire 1. Optimum locaux d'une fonction... 1 1.1. Maximum local... 1 1.2. Minimum local... 1 1.3. Points stationnaires et points critiques... 2 1.4. Recherche d'un optimum

Plus en détail

Stratégie de recherche adaptative en programmation par contrainte

Stratégie de recherche adaptative en programmation par contrainte Université Paul Sabatier École Nationale de l Aviation Civile Master 2 Recherche Informatique et Télécommunication parcours Intelligence Artificielle Simon Marchal Stratégie de recherche adaptative en

Plus en détail

Corrigé des TD 1 à 5

Corrigé des TD 1 à 5 Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un

Plus en détail

Théorèmes de Point Fixe et Applications 1

Théorèmes de Point Fixe et Applications 1 Théorèmes de Point Fixe et Applications 1 Victor Ginsburgh Université Libre de Bruxelles et CORE, Louvain-la-Neuve Janvier 1999 Published in C. Jessua, C. Labrousse et D. Vitry, eds., Dictionnaire des

Plus en détail

Techniques d interaction dans la visualisation de l information Séminaire DIVA

Techniques d interaction dans la visualisation de l information Séminaire DIVA Techniques d interaction dans la visualisation de l information Séminaire DIVA Zingg Luca, luca.zingg@unifr.ch 13 février 2007 Résumé Le but de cet article est d avoir une vision globale des techniques

Plus en détail

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie 1 Présenté par: Yacine KESSACI Encadrement : N. MELAB E-G. TALBI 31/05/2011 Plan 2 Motivation

Plus en détail

REALISATION d'un. ORDONNANCEUR à ECHEANCES

REALISATION d'un. ORDONNANCEUR à ECHEANCES REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6

Plus en détail

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1 Exemples de problèmes et d applications INF6953 Exemples de problèmes Sommaire Quelques domaines d application Quelques problèmes réels Allocation de fréquences dans les réseaux radio-mobiles Affectation

Plus en détail

Chapitre 5 : Flot maximal dans un graphe

Chapitre 5 : Flot maximal dans un graphe Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d

Plus en détail

High Performance by Exploiting Information Locality through Reverse Computing. Mouad Bahi

High Performance by Exploiting Information Locality through Reverse Computing. Mouad Bahi Thèse High Performance by Exploiting Information Locality through Reverse Computing Présentée et soutenue publiquement le 21 décembre 2011 par Mouad Bahi pour l obtention du Doctorat de l université Paris-Sud

Plus en détail

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA 75. Un plombier connaît la disposition de trois tuyaux sous des dalles ( voir figure ci dessous ) et il lui suffit de découvrir une partie de chacun d eux pour pouvoir y poser les robinets. Il cherche

Plus en détail

Programmation linéaire

Programmation linéaire Programmation linéaire DIDIER MAQUIN Ecole Nationale Supérieure d Electricité et de Mécanique Institut National Polytechnique de Lorraine Mathématiques discrètes cours de 2ème année Programmation linéaire

Plus en détail

IFT3245. Simulation et modèles

IFT3245. Simulation et modèles IFT 3245 Simulation et modèles DIRO Université de Montréal Automne 2012 Tests statistiques L étude des propriétés théoriques d un générateur ne suffit; il estindispensable de recourir à des tests statistiques

Plus en détail

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires Julien Jorge, Xavier Gandibleux Laboratoire d Informatique de Nantes Atlantique

Plus en détail

Modélisation et Simulation

Modélisation et Simulation Cours de modélisation et simulation p. 1/64 Modélisation et Simulation G. Bontempi Département d Informatique Boulevard de Triomphe - CP 212 http://www.ulb.ac.be/di Cours de modélisation et simulation

Plus en détail

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011 Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr Université de Provence 9 février 2011 Arnaud Labourel (Université de Provence) Exclusion Mutuelle 9 février 2011 1 / 53 Contexte Epistémologique

Plus en détail

Un propagateur basé sur les positions pour le problème d Open-Shop.

Un propagateur basé sur les positions pour le problème d Open-Shop. Actes JFPC 2007 Un propagateur basé sur les positions pour le problème d Open-Shop. Jean-Noël Monette Yves Deville Pierre Dupont Département d Ingénierie Informatique Université catholique de Louvain {jmonette,yde,pdupont}@info.ucl.ac.be

Plus en détail

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair Raja Chiky, Bruno Defude, Georges Hébrail GET-ENST Paris Laboratoire LTCI - UMR 5141 CNRS Département Informatique et Réseaux

Plus en détail

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Sub CalculAnnuite() Const TITRE As String = Calcul d'annuité de remboursement d'un emprunt TD1 : traduction en Visual BASIC des exemples du cours sur les structures de contrôle de l'exécution page 1 'TRADUCTION EN VBA DES EXEMPLES ALGORITHMIQUES SUR LES STRUCTURES 'DE CONTROLE DE L'EXECUTION

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

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R

Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R Yves Aragon, David Haziza & Anne Ruiz-Gazen GREMAQ, UMR CNRS 5604, Université des Sciences

Plus en détail

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes

Plus en détail

Impact de choix d implantation sur les performances d une application de Contrôle-Commande

Impact de choix d implantation sur les performances d une application de Contrôle-Commande Recherche Impact de choix d implantation sur les performances d une application de Contrôle-Commande Fabrice Jumel Nicolas Navet Françoise Simonot-Lion CITI - INSA 20, Avenue Albert Einstein, F6962 Villeurbanne

Plus en détail

Revue d article : Dynamic Replica Placement for Scalable Content Delivery

Revue d article : Dynamic Replica Placement for Scalable Content Delivery Revue d article : Dynamic Replica Placement for Scalable Content Delivery Marc Riner - INSA Lyon - DEA DISIC Introduction Cet article [1] présente une technique innovante de placement de réplicats et de

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

Plus en détail

aux différences est appelé équation aux différences d ordre n en forme normale.

aux différences est appelé équation aux différences d ordre n en forme normale. MODÉLISATION ET SIMULATION EQUATIONS AUX DIFFÉRENCES (I/II) 1. Rappels théoriques : résolution d équations aux différences 1.1. Équations aux différences. Définition. Soit x k = x(k) X l état scalaire

Plus en détail

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) Surveillance et maintenance prédictive : évaluation de la latence de fautes Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) SURVEILLANCE Analyser une situation et fournir des indicateurs! Détection de symptômes!

Plus en détail

Modélisation géostatistique des débits le long des cours d eau.

Modélisation géostatistique des débits le long des cours d eau. Modélisation géostatistique des débits le long des cours d eau. C. Bernard-Michel (actuellement à ) & C. de Fouquet MISTIS, INRIA Rhône-Alpes. 655 avenue de l Europe, 38334 SAINT ISMIER Cedex. Ecole des

Plus en détail

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante

Plus en détail

Algorithmes de recherche d itinéraires en transport multimodal

Algorithmes de recherche d itinéraires en transport multimodal de recherche d itinéraires en transport multimodal Fallou GUEYE 14 Décembre 2010 Direction : Christian Artigues LAAS-CNRS Co-direction : Marie José Huguet LAAS-CNRS Encadrant industriel : Frédéric Schettini

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Utilisation du backtrack intelligent dans un branch-and-bound Application au problème d Open-Shop

Utilisation du backtrack intelligent dans un branch-and-bound Application au problème d Open-Shop Utilisation du backtrack intelligent dans un branch-and-bound Application au problème d Open-Shop Narendra Jussien et Christelle Guéret École des Mines de Nantes 4 rue Alfred Kastler BP 20722 F-44300 Nantes

Plus en détail

Programmation Linéaire - Cours 1

Programmation Linéaire - Cours 1 Programmation Linéaire - Cours 1 P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 265 Ouvrages de référence V. Chvátal - Linear Programming, W.H.Freeman, New York, 1983.

Plus en détail

FIMA, 7 juillet 2005

FIMA, 7 juillet 2005 F. Corset 1 S. 2 1 LabSAD Université Pierre Mendes France 2 Département de Mathématiques Université de Franche-Comté FIMA, 7 juillet 2005 Plan de l exposé plus court chemin Origine du problème Modélisation

Plus en détail

INSERTION TECHNIQUES FOR JOB SHOP SCHEDULING

INSERTION TECHNIQUES FOR JOB SHOP SCHEDULING INSERTION TECHNIQUES FOR JOB SHOP SCHEDULING ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE POUR L'OBTENTION DU GRADE DE DOCTEUR ES SCIENCES PAR Tamas KIS Informaticien mathématicien diplômé de l'université

Plus en détail

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge julien.jorge@univ-nantes.fr Laboratoire d Informatique de Nantes Atlantique,

Plus en détail

Une application des algorithmes génétiques à l ordonnancement d atelier

Une application des algorithmes génétiques à l ordonnancement d atelier Une application des algorithmes génétiques à l ordonnancement d atelier VACHER Jean-Philippe - GALINHO Thierry - MAMMERI Zoubir Laboratoire d Informatique du Havre Université du Havre 25, Rue Philippe

Plus en détail

Simulation de variables aléatoires

Simulation de variables aléatoires Chapter 1 Simulation de variables aléatoires Références: [F] Fishman, A first course in Monte Carlo, chap 3. [B] Bouleau, Probabilités de l ingénieur, chap 4. [R] Rubinstein, Simulation and Monte Carlo

Plus en détail

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) PLANIFICATION DE TÂCHES DANS MS PROJECT IFT702 Planification en intelligence artificielle Présenté à M. Froduald KABANZA

Plus en détail

Modèle de troncature gauche : Comparaison par simulation sur données indépendantes et dépendantes

Modèle de troncature gauche : Comparaison par simulation sur données indépendantes et dépendantes de troncature gauche : Comparaison par simulation sur données indépendantes et dépendantes Zohra Guessoum 1 & Farida Hamrani 2 1 Lab. MSTD, Faculté de mathématique, USTHB, BP n 32, El Alia, Alger, Algérie,zguessoum@usthb.dz

Plus en détail

Practice Direction. Class Proceedings

Practice Direction. Class Proceedings Effective Date: 2010/07/01 Number: PD - 5 Title: Practice Direction Class Proceedings Summary: This Practice Direction describes the procedure for requesting the assignment of a judge in a proceeding under

Plus en détail

Résolution d équations non linéaires

Résolution d équations non linéaires Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique

Plus en détail

Génie Logiciel avec Ada. 4 février 2013

Génie Logiciel avec Ada. 4 février 2013 Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre

Plus en détail

Cours d algorithmique pour la classe de 2nde

Cours d algorithmique pour la classe de 2nde Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage

Plus en détail

Les indices à surplus constant

Les indices à surplus constant Les indices à surplus constant Une tentative de généralisation des indices à utilité constante On cherche ici en s inspirant des indices à utilité constante à définir un indice de prix de référence adapté

Plus en détail

Ordonnancement robuste et décision dans l'incertain

Ordonnancement robuste et décision dans l'incertain Ordonnancement robuste et décision dans l'incertain 4 ème Conférence Annuelle d Ingénierie Système «Efficacité des entreprises et satisfaction des clients» Centre de Congrès Pierre Baudis,TOULOUSE, 2-4

Plus en détail

Gestion mémoire et Représentation intermédiaire

Gestion mémoire et Représentation intermédiaire Gestion mémoire et Représentation intermédiaire Pablo de Oliveira March 23, 2015 I Gestion Memoire Variables locales Les variables locales sont stockées: Soit dans un registre,

Plus en détail

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Suites numériques 3. 1 Convergence et limite d une suite

Suites numériques 3. 1 Convergence et limite d une suite Suites numériques 3 1 Convergence et limite d une suite Nous savons que les termes de certaines suites s approchent de plus en plus d une certaine valeur quand n augmente : par exemple, les nombres u n

Plus en détail

Examen Médian - 1 heure 30

Examen Médian - 1 heure 30 NF01 - Automne 2014 Examen Médian - 1 heure 30 Polycopié papier autorisé, autres documents interdits Calculatrices, téléphones, traducteurs et ordinateurs interdits! Utilisez trois copies séparées, une

Plus en détail

Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes.

Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes. Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes. Meriem Meddeber 1 et Belabbas Yagoubi 2 1 Université de Mascara, Faculté des sciences, Département des

Plus en détail

Mlle Yasmin A. RÍOS SOLÍS

Mlle Yasmin A. RÍOS SOLÍS Thèse de DOCTORAT de l UNIVERSITÉ PARIS VI - PIERRE ET MARIE CURIE Spécialité : INFORMATIQUE présentée par : Mlle Yasmin A. RÍOS SOLÍS pour obtenir le grade de DOCTEUR de l UNIVERSITÉ PARIS VI Sujet de

Plus en détail

MEAD : temps réel et tolérance aux pannes pour CORBA

MEAD : temps réel et tolérance aux pannes pour CORBA MEAD : un intergiciel temps-réel et tolérant aux pannes pour CORBA Master 2 Informatique Recherche Université de Marne-la-Vallée Vendredi 3 mars 2006 Plan 1 Introduction 2 Solutions existantes 3 Concilier

Plus en détail

Programmation C++ (débutant)/instructions for, while et do...while

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

DG-ADAJ: Une plateforme Desktop Grid

DG-ADAJ: Une plateforme Desktop Grid DG-ADAJ: Une plateforme pour Desktop Grid Olejnik Richard, Bernard Toursel Université des Sciences et Technologies de Lille Laboratoire d Informatique Fondamentale de Lille (LIFL UMR CNRS 8022) Bât M3

Plus en détail

Bourses d excellence pour les masters orientés vers la recherche

Bourses d excellence pour les masters orientés vers la recherche Masters de Mathématiques à l'université Lille 1 Mathématiques Ingénierie Mathématique Mathématiques et Finances Bourses d excellence pour les masters orientés vers la recherche Mathématiques appliquées

Plus en détail

Ordonnancement en temps réel d un jobshop par métaheuristique hybride : étude comparative

Ordonnancement en temps réel d un jobshop par métaheuristique hybride : étude comparative Ordonnancement en temps réel d un jobshop par métaheuristique hybride : étude comparative Y. Houbad, M. Souier, A. Hassam, Z.Sari Laboratoire d automatique Tlemcen Faculté de technologie, Université Abou

Plus en détail

Minimisation de la somme des retards dans un jobshop flexible

Minimisation de la somme des retards dans un jobshop flexible Minimisation de la somme des retards dans un jobshop flexible Nozha ZRIBI, Imed KACEM, Abdelkader EL KAMEL, Pierre BORNE LAGIS Ecole Centrale de Lille, BP 48, 5965 Villeneuve d Ascq Cedex, France ISTIT

Plus en détail

Moments des variables aléatoires réelles

Moments des variables aléatoires réelles Chapter 6 Moments des variables aléatoires réelles Sommaire 6.1 Espérance des variables aléatoires réelles................................ 46 6.1.1 Définition et calcul........................................

Plus en détail

Contrôle par commande prédictive d un procédé de cuisson sous infrarouge de peintures en poudre.

Contrôle par commande prédictive d un procédé de cuisson sous infrarouge de peintures en poudre. Contrôle par commande prédictive d un procédé de cuisson sous infrarouge de peintures en poudre. Isabelle Bombard, Bruno da Silva, Pascal Dufour *, Pierre Laurent, Joseph Lieto. Laboratoire d Automatique

Plus en détail

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Modèles à Événements Discrets. Réseaux de Petri Stochastiques Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés

Plus en détail

Chapitre 4 : Exclusion mutuelle

Chapitre 4 : Exclusion mutuelle Chapitre 4 : Exclusion mutuelle Pierre Gançarski Juillet 2004 Ce support de cours comporte un certain nombre d erreurs : je décline toute responsabilité quant à leurs conséquences sur le déroulement des

Plus en détail

ASSURER LA QUALITE DES RESULTATS D ESSAI ET D ETALONNAGE Assuring the quality of test and calibration results

ASSURER LA QUALITE DES RESULTATS D ESSAI ET D ETALONNAGE Assuring the quality of test and calibration results ASSURER LA QUALITE DES RESULTATS D ESSAI ET D ETALONNAGE Assuring the quality of test and calibration results Soraya Amarouche Armelle Picau Olivier Pierson Raphaël Deal Laboratoire National de Métrologie

Plus en détail

Ordonnancement temps réel et minimisation de la consommation d énergie

Ordonnancement temps réel et minimisation de la consommation d énergie Chapitre 4 Ordonnancement temps réel et minimisation de la consommation d énergie 4.1. Introduction La consommation en énergie est devenue un problème crucial dans la conception des équipements électroniques

Plus en détail

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options Université de Lorraine Modélisation Stochastique Master 2 IMOI 2014-2015 TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options 1 Les options Le but de ce

Plus en détail

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris 12 20 Mars 2003

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris 12 20 Mars 2003 Problèmes d ordonnancement dans les systèmes de production Michel Gourgand Université Blaise Pascal Clermont Ferrand LIMOS CNRS UMR 6158 1 Le LIMOS Laboratoire d Informatique, de Modélisation et d Optimisation

Plus en détail

ALGORITHME GENETIQUE ET MODELE DE SIMULATION POUR L'ORDONNANCEMENT D'UN ATELIER DISCONTINU DE CHIMIE

ALGORITHME GENETIQUE ET MODELE DE SIMULATION POUR L'ORDONNANCEMENT D'UN ATELIER DISCONTINU DE CHIMIE ALGORITHME GENETIQUE ET MODELE DE SIMULATION POUR L'ORDONNANCEMENT D'UN ATELIER DISCONTINU DE CHIMIE P. Baudet, C. Azzaro-Pantel, S. Domenech et L. Pibouleau Laboratoire de Génie Chimique - URA 192 du

Plus en détail

Jean-Philippe Préaux http://www.i2m.univ-amu.fr/~preaux

Jean-Philippe Préaux http://www.i2m.univ-amu.fr/~preaux Colonies de fourmis Comment procèdent les colonies de fourmi pour déterminer un chemin presque géodésique de la fourmilière à un stock de nourriture? Les premières fourmis se déplacent au hasard. Les fourmis

Plus en détail

Algorithmique et programmation : les bases (VBA) Corrigé

Algorithmique et programmation : les bases (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi

Plus en détail

Classification Automatique de messages : une approche hybride

Classification Automatique de messages : une approche hybride RECIAL 2002, Nancy, 24-27 juin 2002 Classification Automatique de messages : une approche hybride O. Nouali (1) Laboratoire des Logiciels de base, CE.R.I.S., Rue des 3 frères Aïssiou, Ben Aknoun, Alger,

Plus en détail

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples, Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très

Plus en détail

Introduction aux systèmes temps réel. Iulian Ober IRIT ober@iut-blagnac.fr

Introduction aux systèmes temps réel. Iulian Ober IRIT ober@iut-blagnac.fr Introduction aux systèmes temps réel Iulian Ober IRIT ober@iut-blagnac.fr Définition Systèmes dont la correction ne dépend pas seulement des valeurs des résultats produits mais également des délais dans

Plus en détail

Avertissement sur les Risques Associés aux CFDs

Avertissement sur les Risques Associés aux CFDs CMC MARKETS UK PLC Avertissement sur les Risques Associés aux CFDs January 2015 RCS Paris: 525 225 918 Société immatriculée en Angleterre sous le numéro 02448409 Agréée et réglementée par la Financial

Plus en détail

PRIME D UNE OPTION D ACHAT OU DE VENTE

PRIME D UNE OPTION D ACHAT OU DE VENTE Université Paris VII - Agrégation de Mathématiques François Delarue) PRIME D UNE OPTION D ACHAT OU DE VENTE Ce texte vise à modéliser de façon simple l évolution d un actif financier à risque, et à introduire,

Plus en détail

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN

Plus en détail

Projet Active Object

Projet Active Object Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques

Plus en détail

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur

Plus en détail

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France. La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of

Plus en détail