Optimisation de performance pour des systèmes temps réel stricts à priorité fixe
|
|
- Rachel Boutin
- il y a 6 ans
- Total affichages :
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 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étailAnalyse 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étailAnnexe 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étailPROBLEMES 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étailProgrammation 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étailProgrammation 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étailPrincipe 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étailSouad 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étailVers 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étailINFO-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étailCorps 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étailCours 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étailResolution 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étailLes 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étailEtude 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étailUne 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étailRé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étailCommunications 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étailContrainte 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étailOPTIMISATION À 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étailStraté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étailCorrigé 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étailThé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étailTechniques 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étailOptimisation 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étailREALISATION 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étailExemples 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étailChapitre 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étailHigh 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étailExercices 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étailProgrammation 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étailIFT3245. 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étailNouvelles 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étailModé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étailExclusion 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étailUn 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étailDé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étailSub 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étailOrdonnancement. 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étailObjectifs 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étailLes 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étail1 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étailImpact 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étailRevue 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étailRecherche 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étailInitiation à 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étailaux 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étailSurveillance 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étailModé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étailOptimisation 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étailAlgorithmes 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étailExercices 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étailExercices 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étailUtilisation 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étailProgrammation 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étailFIMA, 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étailINSERTION 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étailNouvelles 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étailUne 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étailSimulation 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étailFrancis 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étailModè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étailPractice 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étailRé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étailGé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étailCours 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étailLes 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étailOrdonnancement 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étailGestion 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étail1/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étailSuites 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étailExamen 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étailEquilibrage 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étailMlle 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étailMEAD : 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étailProgrammation 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étailDG-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étailBourses 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étailOrdonnancement 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étailMinimisation 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étailMoments 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étailContrô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étailModè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étailChapitre 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étailASSURER 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étailOrdonnancement 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étailTP1 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étailProblè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étailALGORITHME 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étailJean-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étailAlgorithmique 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étailClassification 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étailContexte. 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étailIntroduction 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étailAvertissement 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étailPRIME 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étailINTRODUCTION 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étailProjet 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étailProbabilité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étailLa 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