Chronogrammes et contraintes. à la modélisation de systèmes dynamiques à événements

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

Download "Chronogrammes et contraintes. à la modélisation de systèmes dynamiques à événements"

Transcription

1 Actes FAC 2007 Chronogrammes et contraintes pour la modélisation de systèmes dynamiques à événements discrets Gérard Verfaillie Cédric Pralet Michel Lemaître ONERA/DCSD Toulouse 2 av. Édouard Belin, BP 4025, Toulouse Cédex 4 Résumé De nombreux cadres dédiés à la modélisation de systèmes dynamiques à événements discrets ont été proposés pour répondre à des tâches de programmation, de simulation, de validation, de suivi de situation ou de décision (automates, réseaux de Petri, chaînes de Markov, logique temporelle, calcul des situations, STRIPS...). Tous ces cadres présentent des similitudes importantes, mais aucun n offre la souplesse de cadres plus généraux tels que la logique ou les contraintes. Dans cet article, nous proposons un cadre générique de modélisation de systèmes dynamiques à événements discrets à base de chronogrammes, dont les composants essentiels sont un temps continu, des variables d état et d événement, des étapes d événement ou de changement d état, des variables de temps et d affectation et des contraintes sur ces dernières. Nous présentons la syntaxe et la sémantique des chronogrammes et des contraintes globales qu il est possible de définir sur eux, avant de montrer comment ces contraintes peuvent être vérifiées. Nous montrons enfin comment le cadre proposé englobe des cadres a priori différents tels que les automates, les réseaux de Petri ou les cadres classiques utilisés en planification et en ordonnancement et offre en plus la très grande souplesse d une modélisation à base de contraintes. 1 Introduction L objectif de cet article est de proposer un cadre générique à base de contraintes pour la modélisation de systèmes dynamiques à événements discrets, c està-dire de systèmes dont l état évolue avec le temps via des changements instantanés et sous l impact éventuel d événements eux aussi instantanés. De nombreux cadres existent pour la modélisation de tels systèmes. On peut citer les automates, les langages synchrones [10] qui permettent de les décrire, les réseaux de Petri, les chaînes de Markov, mais aussi la logique temporelle [16], le calcul de situations [13], le cadre STRIPS [6] utilisé en planification ou les modes de représentation classiques utilisés en ordonnancement. Bien que ces cadres présentent de grandes similitudes (représentation plus ou moins compacte des états et des transitions, représentation du temps sous forme d instants ordonnés, éventuellement mesurés), il est difficile de les comparer, à moins de passer par les cadres les plus basiques que sont les automates ou les chaînes de Markov. D un autre côté, bien que la modélisation à base de contraintes soit largement reconnue pour allier compacité et souplesse de modélisation avec efficacité de résolution, elle reste encore essentiellement utilisée pour traiter des problèmes statiques, à l exception notable des problèmes d ordonnancement et, dans une moindre mesure, des problèmes de planification ou de suivi de situation. Elle n est par exemple pratiquement pas utilisée pour traiter des problèmes de validation de systèmes dynamiques. Nous pensons qu une telle situation est due à l absence d un cadre générique à base de contraintes, dédié à la modélisation de systèmes dynamiques à événements discrets et utilisable indifféremment pour des tâches de simulation, de validation, de suivi de situation ou de décision. C est un tel cadre que nous proposons dans cet article. Il s appuie sur des variables d état et d événement

2 pour représenter états et événements, sur un temps continu, sur la notion de chronogramme pour représenter changements d état et événements, avec l hypothèse que les instants de changement d état ou d événement constituent un ensemble discret. Les chronogrammes peuvent être représentés par des variables de temps associés aux instants de changement d état ou d événement et par des variables d affectation associées aux valeurs des variables d état et d événement à ces instants. Les contraintes sur les chronogrammes peuvent alors être représentées par des contraintes sur ces variables de temps ou d affectation, avec toute la souplesse offerte par la modélisation à base de contraintes. En particulier, des contraintes globales peuvent être définies sur les chronogrammes pour exprimer les contraintes les plus courantes auxquelles on voudrait associer des algorithmes de propagation efficaces. Le cadre proposé dans cet article est, tout en étant différent, largement inspiré de travaux menés à la frontière des problèmes de planification et d ordonnancement, où le concept de timeline (traduit en français par le terme chronogramme) a été proposé pour représenter l évolution temporelle de l état et des ressources et pour raisonner sur le temps, l état et les ressources. Voir [8, 12, 14, 2, 11, 7]. Il n est pas non plus sans lien avec le cadre des automates temporisés [1] et pourrait être vu comme une façon d apporter aux automates temporisés la souplesse d une modélisation à base de contraintes. La section 2 introduit la modélisation du temps. La section 3 introduit la modélisation des états et changements d état et la section 4 celle des événements et occurrences d événement, tandis que la section 5 fait le lien entre changements d état et événements. La section 6 introduit les notions centrales de chronogramme et de variables de temps et d affectation, tandis que les sections 7 et 8 sont dédiées à des opérations et contraintes basiques sur les chronogrammes. Dans la section 9, nous montrons comment des cadres tels que les automates, les réseaux de Petri ou ceux classiquement utilisés en planification et en ordonnancement, peuvent être vus comme des sous-cadres du cadre proposé. La section 10 conclue avec le travail restant à faire et les possibilités d extension du cadre proposé. 2 Modéliser le temps Nous voulons raisonner sur des instants et sur l ordre entre ces instants. Nous voulons aussi parfois raisonner sur la valeur de ces instants, pour parler par exemple de distance temporelle absolue ou relative. Ces valeurs sont de plus supposées appartenir à un ensemble continu. C est pourquoi nous utilisons R, c est-à-dire R { } {+ }, avec l ordre naturel sur les réels, pour modéliser le temps. 3 Modéliser états et changements d état Modéliser les états Nous supposons que l état du système peut être modélisé via un ensemble fini de variables d état représentant les caractéristiques de l état auxquelles on s intéresse. À chacune de ces variables, est associé un domaine de valeurs qui peut être fini ou infini, continu ou discret, symbolique ou numérique. Dans ces conditions, l état du système à tout instant est modélisé par une affectation à chacune des variables d état d une valeur de son domaine. Précisons que les variables d état peuvent être utilisées pour représenter des caractéristiques passives de l état (comme, pour un engin, sa position ou son niveau d énergie disponible), mais aussi pour représenter des caractéristiques actives (comme, toujours pour un engin, le mode d un instrument d observation ou le fait que l engin soit en train d exécuter un certain mouvement). En d autres termes, les variables d état peuvent être utilisées pour représenter aussi bien ce qu on appelle couramment l état du système (position, niveau d énergie...) que ce qu on appelle couramment les actions, quand elles ne sont pas instantanées (une observation, un mouvement...). Modéliser les changements d état Nous supposons que l état du système peut changer grâce à des changements instantanés et uniquement de cette façon. Des changements continus ne sont donc pas modélisés en tant que tels, mais ils peuvent être approximés par une séquence finie de changements instantanés. Dans ces conditions, un changement de l état du système est modélisé par un changement instantané et simultané d affectation pour un sous-ensemble non vide des variables d état. De plus, nous adoptons la convention que, si l affectation d une variable d état v change à l instant t d une valeur val à une valeur val, v a la valeur val avant t, t exclu, et la valeur val après t, t inclus. Les changements d état peuvent survenir à tout instant, mais nous supposons que les instants auxquels ils surviennent constituent un sous-ensemble discret de R. En conséquence, l affectation d une variable d état reste constante depuis un instant t de changement jusqu au prochain instant t > t de changement, t exclu, c est-à-dire égale à la valeur qu elle a prise à t sur l intervalle semi-ouvert [t, t [. Voir la figure 1 pour une représentation de l évolution d une variable d état.

3 v val val val t Figure 1 Évolution d une variable d état. t v val val t t Figure 2 Évolution d une variable d événement. 4 Modéliser événements et occurrences d événement Modéliser les événements De la même façon que nous supposons que l état du système peut être modélisé via un ensemble fini de variables d état, nous supposons que les événements susceptibles de survenir peuvent être modélisés via un ensemble fini de variables d événement avec, pour chacune d elles, un domaine de valeurs fini ou infini, continu ou discret, symbolique ou numérique, auquel nous ajoutons une valeur rien ( ) pour représenter l absence de valeur. Dans ces conditions, à tout instant, l ensemble des événements présents est modélisé par une affectation à chacune des variables d événement d une valeur de son domaine, éventuellement égale à. Il est par exemple possible d associer une variable d événement à chaque type d événement (à chaque type de requête ou d information susceptible d arriver), sa valeur servant à préciser son contenu et la valeur servant à indiquer l absence d événement de ce type. Modéliser les occurrences d événement Nous supposons que les événements sont des phénomènes instantanés. Dans ces conditions, une occurrence d événement est modélisée par une affectation instantanée et simultanée d une valeur différente de à un sousensemble non vide des variables d événement. Les événements peuvent survenir à tout instant mais, comme pour les changements d état, nous supposons que les instants auxquels ils surviennent constituent un sous-ensemble discret de R. En conséquence, l affectation d une variable d événement reste égale à entre deux instants successifs d événement t et t > t, t et t exclus, c est-à-dire sur l intervalle ouvert ]t, t [. Voir la figure 2 pour une représentation de l évolution d une variable d événement. 5 Changements d état et occurrences d événement Nous pouvons résumer les hypothèses de base que nous adoptons en disant que les changements d état et les occurrences d événement sont des phénomènes instantanés et que les instants auxquels ils surviennent constituent un sous-ensemble discret de R, avec la différence entre variables d état et d événement que, entre deux instants successifs d événement ou de changement t et t > t, les premières gardent la valeur qu elles avaient à t sur l intervalle semi-ouvert [t, t [, alors que les secondes gardent la valeur sur l intervalle ouvert ]t, t [. Mais aucune hypothèse n est a priori faite sur une quelconque relation de corrélation ou de causalité entre changements d état et occurrences d événement. Changements d état et événements peuvent être simultanés. Des changements d état peuvent se produire sans événement et des événements sans changement d état. 6 Représentation à base de chronogramme Dans cette section, nous montrons comment, avec les hypothèses présentées dans la section précédente, les évolutions d un système peuvent être représentées de façon compacte via des structures appelées chronogrammes Ce qu est un chronogramme Un chronogramme T l (T l pour le terme anglais timeline) est défini par un triplet V, T, A où : 1. V est une séquence finie de variables d état et d événement ; 2. T est une séquence finie d instants ; 3. A est une séquence finie d affectations des variables. Soit nv le nombre de variables d état et d événement. V est une séquence de nv variables, partitionnée en deux sous-séquences : la séquence V S des variables d état et la séquence V E des variables d événement. Pour toute variable v V, soit Dom(v) son domaine 1. Selon Wikipédia, un chronogramme est une représentation graphique de l évolution temporelle d un signal électrique ou d un état.

4 de valeurs. Pour toute variable d événement v V E, soit Dom(v) sa valeur par défaut. Pour tout V V, soit Dom(V ) = v V Dom(v) le produit cartésien des domaines des variables de V. Soit ns le nombre d étapes du chronogramme. Soit I = [1..ns] la séquence d étapes, I + = [0..ns], I = [1..(ns 1)] (vide si ns = 1) et I = [2..(ns 1)] (vide si ns 2). T est une séquence de ns instants, un pour chaque étape de I : T = {t i / i I}, avec les contraintes suivantes : pour toute étape i I, t i R (les instants sont des réels) ; pour toute étape i I, t i t i+1 (les instants sont ordonnés). Soit H = [t 1, t ns ] = {t R / t 1 t t ns } l horizon temporel associé à T l. A est une séquence de ns + 1 affectations des variables, une pour chaque étape de I + : A = {a i / i I + }, avec les contraintes suivantes : pour toute étape i I +, a i Dom(V ) ; pour toute variable d événement v V E, a 0 v = 2 (dans la première affectation a 0, toutes les variables d événement ont la valeur ) ; pour toute étape i I, (t i = t i+1 ) (a i = a i+1 ) (si les instants sont identiques, les affectations sont identiques). Pour toute étape i I, soit ce i un booléen représentant le fait qu un changement ou un évènement survient à l étape i : ce i si et seulement si il existe v V S telle que a i v a (i 1) v ou v V E telle que a i v. Un chronogramme peut être vu comme une séquence de paires instant-affectation ({ t i, a i, i I}) de longueur ns, complétée par la première affectation a 0. Il peut aussi être vu comme un tableau de taille (nv + 1) (ns + 1) où chaque colonne représente une étape, où la première ligne représente le temps (à l exception de la première colonne de cette ligne qui est vide) et où les nv lignes suivantes représentent les affectations des variables d état et d événement. Il est important de souligner que les instants et les affectations qui apparaissent dans un chronogramme peuvent être soit des constantes, soit des variables : des variables au sens mathématique du terme, à ne pas confondre avec les variables d état ou d événement 3. On parlera de variables de temps pour désigner les variables (ou constantes) associées aux instants (une par étape) et de variables d affectation pour désigner celles qui sont associées aux affectations (une par étape et par variable d état ou d événement). On dira qu un chronogramme est complètement affecté si et seulement toutes ses variables d instant et d affectation sont des constantes. 2. Pour toute affectation a d un ensemble V de variables et toute variable v V, a v est la projection de a sur v ; plus généralement, pour tout sous-ensemble V V de variables, a V est la projection de a sur V. 3. Variables d état et d événement sont en fait abusivement appelés variables. Ce ne sont pas des variables au sens mathé- La figure 3 montre un exemple de chronogramme complètement affecté, représenté sous forme de tableau, impliquant une variable d état vs et une variable d événement ve. Dans cet exemple, nv = 2, ns = 3, V = {vs, ve}, T = {5, 12, 16}, A = {{b, }, {a, e}, {c, }, {c, d}} et H = [5, 16] t vs b a c c ve e d Figure 3 Représentation tabulaire d un chronogramme. 6.2 Ce qu un chronogramme représente Un chronogramme est une représentation compacte de l évolution d un système. Par exemple, le chronogramme de la figure 3 est une représentation compacte du scénario de la figure 4. Dans cette section, nous explicitons ce lien entre chronogramme et évolution d un système. vs c b a ve e d 5 5 H Figure 4 Exemple de scénario. Variables d état Pour chaque variable d état v V S et pour chaque étape i I, a i v représente l affectation de v sur l intervalle semi-ouvert [t i, t i+1 [. a 0 v représente son affectation juste avant t 1 et a ns v son affectation à t ns et juste après t ns. À chaque chronogramme T l et chaque variable d état v V S, on peut associer une fonction v N de H dans Dom(v) qui représente la valeur de v à chaque instant t H (N pour Now ). En absence d ambiguïté, nous utiliserons v à la place de v N pour désigner cette fonction, ne faisant aucune différence entre la variable d état et la fonction qui lui est associée. Cette matique du terme, mais des fonctions du temps.

5 fonction peut être définie de la façon suivante : pour tout t H, soit i = max{i I / t i t} (t i est le dernier instant dans le chronogramme avant t, t inclus) ; v(t) = a i v. À chaque chronogramme T l et chaque variable d état v V S, on peut associer une autre fonction v B de H dans Dom(v) qui représente la valeur de v juste avant chaque instant t H (B pour Before ). Elle est définie de la façon suivante : pour tout t H, soit i = min{i I / t t i } (t i est le premier instant dans le chronogramme après t, t inclus) ; v(t) = a (i 1) v. À chaque chronogramme T l et chaque variable d état v V S, on peut aussi associer une autre fonction v D de H H dans Dom(v) qui représente la valeur de v sur chaque intervalle semi-ouvert [t, t [, tel que t, t H et t < t (D pour During ). Elle est définie de la façon suivante : pour tout t, t H tels que t < t, si pour tout t H, (t t < t ) (v(t ) = v(t)), alors v D (t, t ) = v(t) ; sinon v D (t, t ) n est pas défini. Elle peut aussi être directement définie de la façon suivante : s il n existe pas i I tel que t < t i < t et a i v a (i 1) v (v ne change pas de valeur entre t et t, t et t exclus), alors v D (t, t ) = v(t) ; sinon v D (t, t ) n est pas défini. Ces fonctions peuvent être aisément étendues à des séquences de variables d état, pour donner, pour toute séquence V V S de variables d état, les fonctions V (pour V N ), V B et V D. Variables d événement Les choses sont un peu plus simples avec les variables d événement. Pour chaque variable d événement v V E et pour chaque étape i I, a i v représente l affectation de v à l instant t i. Juste avant t 1, juste après t ns et, pour chaque étape i I, sur chaque intervalle ouvert ]t i, t i+1 [, v est supposée égale à. À chaque chronogramme T l et chaque variable d événement v V E, on peut associer une fonction v N de H dans Dom(v) qui représente la valeur de v à chaque instant t H (N pour Now ). De même que pour les variables d état, en absence d ambiguïté, nous utiliserons v à la place de v N pour désigner cette fonction, ne faisant aucune différence entre la variable d événement et la fonction qui lui est associée. Cette fonction peut être définie de la façon suivante : pour tout t H, s il existe i I tel que t = t i, alors v(t) = a i v ; sinon v(t) =. À chaque chronogramme T l et chaque variable d événement v V E, on peut, par souci d homogénéité avec les variables d état, associer une fonction v B de H dans Dom(v) qui représente la valeur de v juste avant chaque instant t H (B pour Before ). Par défaut, pour tout t H, v B (t) = (pas d événement juste avant tout instant). Ces fonctions peuvent être aisément étendues à des séquences de variables d événement, pour donner, pour toute séquence V V E de variables d événement, les fonctions V (pour V N ) et V B. Variables d état et d événement Les fonctions V et V B étant définies pour des séquences de variables d état ou des séquences de variables d événement, elles peuvent être définies pour des séquences de variables quelconques, d état ou d événement. De plus, à chaque chronogramme T l et chaque séquence V V de variables quelconques, on peut associer une fonction booléenne V CE de H dans B qui représente le fait qu une variable d état de V change de valeur ou qu une variable d événement de V diffère de à l instant t H (CE pour Change or Event ). Elle est définie de la façon suivante : pour tout t H, V CE (t) si et seulement si il existe v V V S telle que v(t) v B (t) ou v V V E telle que v(t). Elle peut aussi être directement définie de la façon suivante : V CE (t) si et seulement si il existe i I tel que t = t i et il existe v V V S telle que a i v a (i 1) v ou v V V E telle que a i v. En résumé En résumé, un chronogramme peut être vu comme une représentation compacte des fonctions v(t) associées à chaque variable sur l horizon H = [t 1, t ns ] (auxquelles il faut ajouter v B (t 1 ) pour les variables d état) utilisant l hypothèse que, pour chaque instant t H n apparaissant pas dans le chronogramme, V CE (t) (il n y a ni changement, ni événement). Il peut donc être vu comme une représentation compacte de l évolution d un système sur l horizon H, ainsi que juste avant t 1 et juste après t ns. 7 Opérations sur des chronogrammes Différents types d opérations peuvent être définies sur des chronogrammes complètement affectés. 7.1 Minimisation d un chronogramme Si, dans un chronogramme, nous avons deux étapes successives avec des instants identiques et donc des affectations identiques, la seconde étape n apporte aucune information et peut être éliminée du chronogramme. De plus, si nous avons deux étapes successives avec des instants différents mais si, à la seconde étape, il n y a ni changement, ni événement, la seconde étape n apporte aucune information et peut être aussi éliminée du chronogramme. Nous disons qu un chronogramme est minimal si et seulement si deux conditions sont satisfaites : 1. i I, t i < t i+1 (les instants sont différents) ;

6 2. i I, ce i (il y a un changement ou un événement). Le chronogramme de la figure 3 est minimal. Pour tout chronogramme T l, nous notons T l = min(t l) le chronogramme résultant de la minimisation de T l. T l et T l sont équivalents en ce sens qu ils représentent la même évolution du système sur le même horizon H. 7.2 Projection d un chronogramme sur un soushorizon Un chronogramme représente l évolution d un système sur un horizon temporel. On peut être intéressé par son évolution sur un sous-horizon. C est à quoi répond l opération de projection sur un sous-horizon. Nous considérons deux versions de cette opération suivant la façon dont le sous-horizon est défini : par étapes ou par instants. Projection d un chronogramme sur un sous-horizon défini par étapes Soit un chronogramme T l = V, T, A. Soient i, i I deux étapes telles que i i. Soit T l = T l [i,i ] = V, T, A le chronogramme résultant de la projection de T l sur le sous-horizon défini par les étapes i et i. Soit I = [i..i ]. Nous avons : 1. V = V ; 2. T = {t i / i I } ; 3. A = {V B (t i )} {a i / i I }. Projection d un chronogramme sur un sous-horizon défini par instants Soit un chronogramme T l = V, T, A. Soient t, t H deux instants tels que t t. Soit T l = T l [t,t ] = V, T, A le chronogramme résultant de la projection de T l sur le sous-horizon défini par les instants t et t. Soient i = min{i I / t < t i }, i = max{i I / t i < t } et I = [i..i ] (vide si i < i). Nous avons : 1. V = V ; 2. T = {t} {t i / i I } {t } ; 3. A = {V B (t)} {V (t)} {a i / i I } {V (t )}. 7.3 Projection d un chronogramme sur une sousséquence de variables Un chronogramme représente l évolution d un système lui-même représenté par une séquence de variables. On peut être intéressé par l évolution d un sous-système représenté par une sous-séquence des variables. C est à quoi répond l opération de projection sur une sous-séquence de variables. Soit un chronogramme T l = V, T, A. Soit V V une sous-séquence de V. Soit T l = T l V = V, T, A le chronogramme résultant de la projection de T l sur V. Nous avons : 1. V = V ; 2. T = T ; 3. A = {a i V / i I + }. 7.4 Composition de chronogrammes Dans la direction opposée, on peut être intéressé par l évolution d un système composé de deux soussystèmes dont les évolutions sont chacune représentées par un chronogramme. C est à quoi répond l opération de composition de deux chronogrammes. Soit T l = V, T, A et T l = V, T, A deux chronogrammes tels que V V = et H = H (t 1 = t 1 et t ns = t ns ) : les deux chronogrammes sont définis sur des séquences de variables disjointes, mais sur le même horizon temporel. Soit T l = T l T l = V, T, A le chronogramme résultant de la composition de T l et T l. Nous avons : 1. V = V V ; 2. T = T T, où T est la séquence d instants ordonnés résultant de l union des séquences T et T, avec les instants identiques réunis ; 3. A = {V B (t 1 ) V B (t 1 )} {V (t i ) V (t i ) / i I }. 8 Contraintes sur des chronogrammes N importe quel type de contrainte peut être défini sur les variables de temps et d affectation associées à un chronogramme. Mais certains types de contrainte, parce qu ils sont a priori les plus courants, méritent d être particulièrement étudiés, de façon à définir des façons simples de les décrire et des algorithmes efficaces permettant de les propager. 8.1 Contraintes temporelles pures Les contraintes temporelles pures sont des contraintes pesant sur les instants de changement d état ou d événement, c est-à-dire des contraintes liant uniquement des variables de temps. En nous limitant à des contraintes temporelles simples [5], une contrainte temporelle pure c sur un chronogramme T l est définie par une paire S c, Bc où : 1. S c est la portée de c, c est à dire la séquence de variables de temps liées par c ; si c est unaire, S c est une étape i c I ; si c est binaire, S c est une paire d étapes i c, i c I I, telle que i c i c ; 2. B c est la paire de bornes lb c, ub c R R, telle que lb c ub c, qui définit c.

7 La sémantique d une telle contrainte est la suivante : 1. si c est unaire, T l satisfait c si et seulement si lb c t ic ub c ; 2. si c est binaire, T l satisfait c si et seulement si lb c (t i c t ic ) ub c. À ces contraintes s ajoutent les contraintes temporelles pures binaires implicites dans tout chronogramme : pour toute étape i I, t i t i Contraintes d état instantanées Les contraintes d état instantanées sont des contraintes pesant sur les affectations des variables d état au même instant. Elles sont utilisées pour représenter les états possibles, physiquement possibles ou acceptables par l utilisateur. Soit un chronogramme T l = V, T, A. Une contrainte d état instantanée c sur T l est définie par un quadruplet Q c, Hd c, S c, D c où : 1. Q c est le quantificateur temporel de c, égal à Aw (pour Always ) ou à St (pour Sometimes ) ; 2. Hd c est la définition de l horizon temporel H c sur lequel porte c ; Hd c est lui-même une paire Ht c, Hb c où : (a) Ht c est le type d horizon, égal à I (pour un horizon défini par étapes) ou à T (pour un horizon défini par instants) ; (b) Hb c est la paire de bornes qui définit H c : i. si Ht c = I, Hb c = i c, i c (avec i c, i c N et i c i c) ; soit i c = max(i c, 1) et i c = min(i c, ns) ; nous obtenons : H c = [t i, t c i ] ; c ii. si Ht c = T, Hb c = t c, t c (avec t c, t c R et t c t c) ; soit t c = max(t c, t 1 ) et t c = min(t c, t ns ) ; nous obtenons : H c = [t c, t c ] ; 3. S c V S est la portée de c, c est à dire la séquence de variables d affectation liées par c ; 4. D c Dom(S c ) est la définition de c 4. La sémantique d une telle contrainte est la suivante : 1. si Q c = Aw, T l satisfait c si et seulement si, pour tout t H c, S c (t) D c ; 2. sinon, T l satisfait c si et seulement si il existe t H c tel que S c (t) D c. Vérifier une telle contrainte, même sur un chronogramme complètement affecté, semble requérir une vérification à chaque instant t de l horizon H c, infini 4. Définition explicite ou implicite comme cela est usuel dans le cadre CSP [4]. Soit A une affectation des variables de S c. A satisfait c si et seulement si A D c. sauf si H c est réduit à un seul instant. Heureusement, il est facile de montrer que, grâce aux hypothèses de base faites sur les chronogrammes, il suffit de la vérifier à chaque étape de T l. Plus précisément, soit T l c = S c, T c, A c = min((t l Sc ) Hc ) le chronogramme résultant de la projection de T l sur S c, puis sur H c, suivie d une opération de minimisation. Il est facile de montrer que : 1. si Q c = Aw, T l satisfait c si et seulement si, pour toute étape i I c, (a c ) i D c ; 2. sinon, T l satisfait c si et seulement si il existe une étape i I c telle que (a c ) i D c. La raison en est que, pour tout i Ic et pour tout t [(t c ) i, (t c ) (i+1) ], c est-à-dire entre deux étapes successives de T l c, S c (t) = (a c ) i. En conséquence, la complexité de vérification d une contrainte d état instantanée par un chronogramme complètement affecté est une fonction linéaire de sa longueur ns. 8.3 Contraintes de transition instantanées Les contraintes de transition instantanées sont des contraintes pesant sur les affectations des variables d état ou d événement au même instant, avec la possibilité, pour une variable d état v, de se référer à sa valeur courante (v(t)) ou à sa valeur juste avant (v B (t)). Elles sont utilisées pour représenter les transitions instantanées possibles. Soit un chronogramme T l = V, T, A. Une contrainte de transition instantanée c sur T l est définie par un quadruplet Q c, Hd c, S c, D c où : 1. Q c est le quantificateur temporel de c, égal à Aw ou à St ; 2. Hd c est la définition de l horizon temporel H c sur lequel porte c, similaire à la définition donnée pour les contraintes d état instantanées ; 3. S c {N, B} V est la portée de c, c est-à-dire une séquence de paires référence-variable r, v, telle que (v V E ) (r = N) (pas de référence à la valeur juste avant pour une variable d événement) ; soit V c = {v / r, v S c } la séquence des variables impliquées ; 4. D c Dom(S c ) est la définition de c 5. Pour définir la sémantique d une telle contrainte, nous avons besoin d étendre à des séquences de paires référence-variable les fonctions V (t) qui ont été définies dans la section 6.2 sur des séquences de variables : pour tout t H, soit S c (t) = {v r (t) / r, v S c } (si r = N, v r (t) = v N (t) = v(t) ; sinon, v r (t) = v B (t)). La sémantique d une telle contrainte est alors la suivante : Q 5. Avec une définition étendue de Dom(S c) : Dom(S c) = r,v S c Dom(v).

8 1. si Q c = Aw, T l satisfait c si et seulement si, pour tout t H c, Vc CE (t) (S c (t) D c ) (pour tout instant t, si un changement ou un événement survient à t, la contrainte est satisfaite à t) ; 2. sinon, T l satisfait c si et seulement si il existe t H c tel que Vc CE (t) (S c (t) D c ) (il existe un instant t tel qu un changement ou un événement survient à t et la contrainte est satisfaite à t). Comme avec les contraintes d état instantanées, il est facile de montrer que, grâce aux hypothèses de base faites sur les chronogrammes, il suffit, pour vérifier une telle contrainte sur un chronogramme T l complètement affecté, de la vérifier à chaque étape de T l. Pour cela, nous avons besoin d étendre à des séquences de paires référence-variable les opérations de projection d affectation qui ont été définies sur des séquences de variables : pour tout i I, soit a i Sc = {a i r,v / r, v S c } avec a i N,v = a i v et a i B,v = a (i 1) v. Soit T l c = S c, T c, A c = min((t l Sc ) Hc ). Il est facile de montrer que : 1. si Q c = Aw, T l satisfait c si et seulement si, pour tout i I c, (ce c ) i (((a c ) i ) Sc D c ) ; 2. sinon, T l satisfait c si et seulement si il existe i I c tel que (ce c ) i (((a c ) i ) Sc D c ). La raison en est que, pour toute étape i Ic et pour tout t [(t c ) i, (t c ) (i+1) ], c est-à-dire entre deux étapes successives de T l c, Vc CE (t) (il n y a ni changement, ni événement). En conséquence, comme pour les contraintes d état instantanées, la complexité de vérification d une contrainte de transition instantanée par un chronogramme complètement affecté est une fonction linéaire de sa longueur ns. 8.4 Contraintes de transition non instantanées Les contraintes de transition non instantanées sont des contraintes pesant sur les affectations des variables d état ou d événement à deux instants différents t s et t e (s pour start et e pour end ) et entre ces instants, avec : 1. pour une variable d état v V S impliquée dans la contrainte, la possibilité de se référer à sa valeur à t s (v(t s )), juste avant t s (v B (t s )), à t e (v(t e )), juste avant t e (v B (t e )) ou sur l intervalle semiouvert [t s, t e [ (v D (t s, t e )), 2. pour une variable d événement v V E impliquée dans la contrainte, la possibilité de se référer à sa valeur à t s (v(t s )) ou à t e (v(t e ),) 3. et une contrainte temporelle pure binaire entre t s et t e. Elles sont utilisées pour représenter les transitions non instantanées possibles, par exemple les actions avec durée dans un contexte de planification. Soit un chronogramme T l = V, T, A. Une contrainte de transition non instantanée c sur T l est définie par un quintuplet Q c, Hd c, Du c, S c, D c où : 1. Q c est le quantificateur temporel de c, égal à Aw ou à St ; 2. Hd c est la définition de l horizon temporel H c sur lequel porte c, similaire à la définition donnée pour les contraintes d état ou de transition instantanées ; 3. Du c est la durée de la transition, définie par une paire de bornes lb c, ub c R R, telle que 0 lb c ub c ; 4. S c {N s, B s, N e, B e, D} V est la portée de c, c est-à-dire une séquence de paires référencevariable r, v, telle que (v V E ) (r {N s, N e }) (pas de référence à une valeur juste avant ou pendant pour une variable d événement) ; soit V c = {v / r, v S c } la séquence des variables impliquées ; 5. D c Dom(S c ) est la définition de c 5. Pour définir la sémantique d une telle contrainte, nous avons besoin d étendre à des paires d instants les fonctions S c (t) qui ont été définies sur des instants dans la section précédente : pour tout t, t H tels que t t, soit S c (t, t ) = {v r (t, t ) / r, v S c }, avec v Ns (t, t ) = v(t), v Bs (t, t ) = v B (t), v Ne (t, t ) = v(t ) et v Be (t, t ) = v B (t ). La sémantique d une telle contrainte est alors la suivante : 1. si Q c = Aw, T l satisfait c si et seulement si, pour tout t, t H c, ((lb c (t t) ub c ) Vc CE (t) Vc CE (t )) (S c (t, t ) D c ) (pour toute paire d instants t, t, si t et t satisfont la contrainte temporelle associée à c et si un changement ou un événement survient à t et un autre à t, la contrainte est satisfaite à t, à t et entre t et t ) ; 2. sinon, T l satisfait c si et seulement si il existe t, t H c tels que (lb c (t t) ub c ) Vc CE (t) Vc CE (t ) (S c (t, t ) D c ) (il existe une paire d instants t, t telle que t et t satisfont la contrainte temporelle associée à c, un changement ou un événement survient à t et un autre à t et la contrainte est satisfaite à t, à t et entre t et t ). Comme avec les contraintes d état et de transition instantanées, il est facile de montrer que, grâce aux hypothèses de base faites sur les chronogrammes, il suffit, pour vérifier une telle contrainte sur un chronogramme T l complètement affecté, de la vérifier pour chaque paire d étapes de T l. Pour cela, nous avons besoin d étendre à des paires d étapes les opérations de projection d affectation qui

9 ont été définies sur une étape dans la section précédente. Pour tout i, i I tels que i i, soit a i,i S c = {a i,i r,v / r, v S c }, avec a i,i N s,v = a i v, a i,i B s,v = a (i 1) v, a i,i N e,v = a i v, a i,i B e,v = a (i 1) v et, en ce qui concerne a i,i D,v, si, pour tout i I tel que i < i < i, a i v = a i v, alors a i,i D,v = a i v ; sinon a i,i D,v n est pas défini. Soit T l c = S c, T c, A c = min((t l Sc ) Hc ). Il est facile de montrer que : 1. si Q c = Aw, T l satisfait c si et seulement si, pour tout i, i I c / i i, ((lb c ((t c ) i (t c ) i ) ub c ) (ce c ) i (ce c ) i (((a c ) i,i ) Sc D c ) ; 2. sinon, T l satisfait c si et seulement si il existe i, i I c / i i tel que (lb c ((t c ) i (t c ) i ) ub c ) (ce c ) i (ce c ) i (((a c ) i,i ) Sc D c ). La justification est la même que pour les contraintes de transition instantanées (absence d événement ou de changement entre deux étapes successives). En conséquence, la complexité de vérification d une contrainte de transition non instantanée par un chronogramme complètement affecté est une fonction quadratique de sa longueur ns. À noter que les contraintes de transition instantanées peuvent être vues comme des cas particuliers de contraintes de transition non instantanées, avec lb c = ub c = 0 et seulement N s et B s utilisés pour les références associées aux variables. 8.5 En résumé En résumé, un chronogramme est une structure faite de variables de temps ou d affectation sur lesquelles n importe quel type de contrainte peut être défini. Dans cette section, nous avons présenté deux types de contrainte a priori très utiles : des contraintes temporelles portant uniquement sur les variables de temps et des contraintes d affectation portant uniquement sur les variables d affectation (variables d une même colonne de la représentation tabulaire pour les contraintes d état instantanées, de deux colonnes consécutives pour les contraintes de transition instantanées ou de plusieurs colonnes consécutives pour les contraintes de transition non instantanées, pour des chronogrammes minimaux). Les contraintes d affectation peuvent être vues comme des contraintes globales sur les variables d affectation. Contraintes temporelles et contraintes d affectation interagissent via les hypothèses de base selon lesquelles les instants sont ordonnés et des instants identiques impliquent des affectations identiques et via les contraintes temporelles présentes dans la définition des contraintes d affectation (horizon et durée). L avantage essentiel d une telle représentation à base de variables et de contraintes est qu elle laisse toute liberté dans la définition de nouvelles contraintes locales ou globales. Pour modéliser dans ce cadre des problèmes de suivi de situation, il suffit d ajouter aux contraintes décrivant la dynamique du système les contraintes représentant les observations. Le résultat est un problème de satisfaction de contraintes (CSP) dont une solution représente un scénario possible. Pour modéliser des problèmes de validation, il faut ajouter aux contraintes décrivant la dynamique du système des contraintes représentant la négation des propriétés que l on veut vérifier. Le résultat est aussi un CSP et les propriétés sont vérifiées si et seulement si ce CSP est incohérent. La modélisation de problèmes de décision est un peu plus complexe. Il est d abord nécessaire de distinguer les variables (d état ou d événement) contrôlables et incontrôlables : pour les premières, on peut décider de leur affectation ; pour les secondes, non. Il faut ensuite ajouter aux contraintes décrivant la dynamique du système des contraintes représentant les objectifs que l on veut voir atteints. En présence d incertitudes, il existe deux versions du problème de décision. Avec la version optimiste, le résultat est un CSP et la projection d une solution sur les variables contrôlables représente une séquence de décisions possible. Avec la version pessimiste, le résultat est un CSP quantifié (QCSP [3]) (alternance de quantifications existentielles sur les variables contrôlables et de quantifications universelles sur les variables incontrôlables) et la projection d une solution sur les variables contrôlables représente une politique possible. 9 Cadres couverts Dans cette section, nous montrons comment des cadres existants comme les automates, les réseaux de Petri ou le cadre STRIPS utilisé en planification, ainsi qu un des problèmes les plus classiques en ordonnancement, peuvent être représentés dans le cadre proposé. 9.1 Automates Un automate est classiquement défini par un quadruplet S, E, T, s 0 où : 1. S est un ensemble fini d états ; 2. E est un ensemble fini d étiquettes de transition ; 3. T S E S est un ensemble fini de transitions ; 4. s 0 S est l état initial. Un automate définit les transitions possibles : une transition e E est possible d un état s S à un état s S si et seulement si s, e, s T.

10 On peut montrer que toutes les évolutions finies d un système (évolutions en ns étapes, avec ns fini, mais non borné) qui sont représentées par un automate S, E, T, s 0 peuvent être représentées par un chronogramme V, T, A où : 1. V = V S V E, avec V S = {s} (une seule variable d état s), V E = {e} (une seule variable d événement e), Dom(s) = S et Dom(e) = E { } ; 2. T est une séquence de ns instants ordonnés, tous variables et distincts ; 3. A est une séquence de ns + 1 affectations, toutes variables à l exception de la première a 0 = {s 0, }. avec une seule contrainte de transition instantanée c définie par : 1. Q c = Aw ; 2. Hd c = I, 1, + ; 3. S c = { B, s, N, e, N, s } ; 4. D c = T. 9.2 Réseaux de Petri Un réseau de Petri est classiquement défini par un quadruplet P, T, I, O où : 1. P est un ensemble fini de places ; 2. T est un ensemble fini de transitions ; 3. I est une fonction d entrée de P T dans N, qui associe un nombre entier (éventuellement nul) à chaque place p P et chaque transition t T ; 4. O est une fonction similaire de sortie. Un marquage m (qui peut être vu comme un état) est défini comme une fonction de P dans N, qui associe un nombre entier à chaque place p P. Pour tout p P, soit v p,m N la valeur de p dans m. Pour être déclenchée à partir d un marquage m, une transition t T doit satisfaire la condition suivante : pour tout p P, v p,m I(p, t). Si une transition est déclenchée à partir d un marquage m, le résultat est un marquage m où, pour tout p P, v p,m = v p,m I(p, t)+o(p, t). Comme pour les automates, on peut montrer que toutes les évolutions finies d un système qui sont représentées par un réseau de Petri P, T, I, O peuvent être représentées par un chronogramme V, T, A où : 1. V = V S V E, avec V S = P (une variable entière v p associée à chaque place p P ), V E = {e} (une seule variable d événement e) et Dom(e) = T { } ; 2. T est une séquence de ns instants ordonnés, tous variables et distincts ; 3. A est une séquence de ns + 1 affectations, toutes variables aussi. avec une contrainte de transition instantanée c p,t associée à chaque place p P et chaque transition t T, exprimant la condition sur le déclenchement de la transition et définie par : 1. Q cp,t = Aw ; 2. Hd cp,t = I, 1, + ; 3. S cp,t = { N, e, B, v p } ; 4. D cp,t défini par la condition (e = t) (v B p I(p, t)). et une contrainte de transition instantanée e p,t associée à chaque place p P et chaque transition t T, exprimant l effet de la transition et définie par : 1. Q ep,t = Aw ; 2. Hd ep,t = I, 1, + ; 3. S ep,t = { N, e, N, v p, B, v p } ; 4. D ep,t défini par la condition (e = t) (v p = vp B I(p, t) + O(p, t)). 9.3 Cadres utilisés en planification Les problèmes de planification peuvent être de nature très différente (planification d actions, planification de mouvements, planification temporelle...) et, malgré de nombreux efforts, il n existe pas de cadre unique qui les couvre tous [9]. C est pourquoi nous nous limitons au cadre STRIPS [6] (le plus classique) où un problème de planification est défini par un quadruplet F, A, I, G où : 1. F est un ensemble fini de variables booléennes, appelées fluents ; 2. A est un ensemble fini d actions, où chaque action a A est définie par un triplet p a, e a, e + a, avec p a, e a, e + a F et e a e + a = ; 3. I F est un ensemble de fluents, définissant l état initial ; 4. G est un ensemble de conditions logiques sur F, appelées buts. Un état s est défini comme une fonction de F dans B, qui associe une valeur booléenne à chaque fluent f F. Pour tout f F, soit v f,s B la valeur de f dans s. Les conditions suivantes s imposent sur les états et les actions : 1. dans l état initial s 0, v f,s0 si et seulement si f I ; 2. une action a A peut être exécutée dans un état s si et seulement si, pour tout f p a, v f,s ; 3. si une action a A est exécutée dans un état s, le résultat est un état s où :

11 (a) pour tout f e a, v f,s ; (b) pour tout f e + a, v f,s ; (c) pour tout f F (e a e + a ), v f,s = v f,s. La requête classiquement associée à un problème de planification est de produire un plan valide, c est-àdire une séquence finie d actions dont l exécution permet au système d aller de l état initial à un état satisfaisant l ensemble des buts. On peut montrer que tous les plans valides de longueur ns associés à un problème de planification F, A, I, G peuvent être représentées par un chronogramme V, T, A où : 1. V = V S V E, avec V S = F (une variable booléenne v f associée à chaque fluent f F ), V E = {act} (une seule variable d événement act) et Dom(act) = A { } ; 2. T est une séquence de ns instants ordonnés, tous variables et distincts ; 3. A est une séquence de ns + 1 affectations, toutes variables à l exception de la première où a 0 act = et, pour tout f F, a 0 f si et seulement si f I. avec une contrainte de transition instantanée p a,f associée à chaque action a A et chaque fluent f p a, exprimant les préconditions de a et définie par : 1. Q pa,f = Aw ; 2. Hd pa,f = I, 1, + ; 3. S pa,f = { N, act, B, v f } ; 4. D pa,f défini par la condition (act = a) v B f. avec une contrainte de transition instantanée e a,f (respectivement e + a,f ) associée à chaque action a A et chaque fluent f e a (respectivement e + a ), exprimant les effets négatifs (respectivement positifs) de a et définie par : 1. Q e = Q a,f e + = Aw ; a,f 2. Hd e = Hd a,f e + I, 1, + ; a,f 3. S e = S a,f e + = { N, act, N, v f } ; a,f 4. D e a,f D e + a,f défini par la condition (act = a) v f et par la condition (act = a) v f. avec une contrainte de transition instantanée e a,f associée à chaque action a A et chaque fluent f F (e a e + a ), exprimant l absence d effet de a et définie par : 1. Q ea,f = Aw ; 2. Hd ea,f = I, 1, + ; 3. S ea,f = { N, act, N, v f, B, v f } ; 4. D ea,f par la condition (act = a) (v f = v B f ). et une contrainte d état instantanée c g associée à chaque but g G et définie par : 1. Q cg = St ; 2. Hd cg = I, ns, ns ; 3. S cg = S g, avec S g V S l ensemble des fluents liés par g ; 4. D cg Dom(S g ) défini par la condition g ellemême. 9.4 Problèmes d ordonnancement Il n existe en ordonnancement aucun cadre de référence équivalent au cadre STRIPS utilisé en planification. Seuls existent des problèmes de nature très diverse. Nous nous intéressons ici au problème dit de job-shop scheduling, le problème d ordonnancement le plus classique, défini par un ensemble T A de tâches avec, associées à chaque tâche ta T A, une durée du ta, une date de début au plus tôt es ta et une date de fin au plus tard lf ta. On suppose que toutes les tâches doivent être réalisées et qu elles requièrent toutes une ressource commune non partageable : deux tâches ne peuvent utiliser cette ressource au même instant. Soit nta = T A le nombre de tâches. Ce problème peut être modélisé par un chronogramme V, T, A où : 1. V = V S, avec V S = {ata} (une seule variable d état ata représentant la tâche active courante ; pas de variable d événement) et Dom(ata) = T A {0} (la valeur 0 représentant le fait qu aucune tâche n est active) ; 2. T est une séquence de 2 nta instants ordonnés, tous variables ; 3. A est une séquence de 2 nta + 1 affectations, toutes variables à l exception de la première a 0 = {0}. avec une contrainte de transition non instantanée c ta associée à chaque tâche ta T A, exprimant que ta doit être réalisée, définie par : 1. Q cta = St ; 2. Hd cta = T, es ta, lf ta ; 3. Du cta = du ta, du ta ; 4. S cta = { D, ata } ; 5. D cta définie par l égalité (ata D = ta). 10 Ce qu il reste à faire Il ne suffit pas de définir des contraintes globales et les moyens de les vérifier. Pour raisonner sur elles et sur leurs interactions avec d éventuelles autres contraintes, il est nécessaire de leur associer des algorithmes de

12 propagation efficaces capables de déduction. Ce travail reste à faire, même si on pourra s appuyer sur la panoplie de contraintes globales existantes et sur les algorithmes associés. Un langage d expression de ces contraintes, moins barbare que les notations utilisées dans cet article, ne serait pas inutile. La modélisation de problèmes très divers peut par ailleurs faire émerger le besoin d autres contraintes globales ou de variantes des contraintes proposées. Au delà, les contraintes présentées dans cet article sont uniquement des contraintes dures, satisfaites ou non. Ces contraintes permettent de représenter parfaitement ce qui est possible ou impossible concernant les variables contrôlables (faisabilités) et les variables incontrôlables (plausibilités dures), ainsi que ce qui est admissible ou inadmissible (utilités dures). Elles ne permettent cependant pas de représenter des degrés de plausibilité ou d utilité gradués. L extension du cadre proposé à des contraintes souples de plausibilité ou d utilité reste à faire. Elle pourrait s appuyer sur le cadre PFU (Plausibilité-Faisabilité-Utilité [17]) récemment proposé. Dans une autre direction, il serait intéressant de s affranchir de l hypothèse selon laquelle l affectation d une variable d état reste constante entre deux instants du chronogramme, pour considérer des évolutions linéaires ou autres [18, 15]. Références [1] R. Alur and D. Dill. A Theory of Timed Automata. Journal of Theoretical Computer Science, 126(2) : , [2] R. Barták. Dynamic Constraint Models for Complex Production Environments. In Proc. of the Joint ERCIM/Compulog-Net Workshop, Cyprus, [3] F. Börner, A. Bulatov, P. Jeavons, and A. Krokhin. Quantified Constraints : Agorithms and Complexity. In Proc. of the Computer Science Logic Conference, pages , Vienna, Austria, [4] R. Dechter. Constraint Processing. Morgan Kaufmann, [5] R. Dechter, I. Meiry, and J. Pearl. Temporal Constraint Networks. Artificial Intelligence, 49 :61 95, [6] R. Fikes and N. Nilsson. STRIPS : a New Approach to the Application of Theorem Proving. Artificial Intelligence, 2 : , [7] J. Frank and A. Jónsson. Constraint-Based Attribute and Interval Planning. Constraints, 8(4) : , [8] M. Ghallab and H. Laruelle. Representation and Control in IxTeT : a Temporal Planner. In Proc. of the 2nd International Conference on Artificial Intelligence Planning and Scheduling (AIPS-94), pages 61 67, Chicago, IL, USA, [9] M. Ghallab, D. Nau, and P. Traverso. Automated Planning : Theory and Practice. Morgan Kaufmann, [10] N. Halbwachs. Synchronous Programming of Reactive Systems. Kluwer, [11] A. Jónsson, P. Morris, N. Muscettola, K. Rajan, and B. Smith. Planning in Intrerplanetary Space : Theory and Practice. In Proc. of the 5th International Conference on Artificial Intelligence Planning and Scheduling (AIPS-00), Breckenridge, CO, USA, [12] P. Laborie and M. Ghallab. IxTeT : an Integrated Approach for Plan Generation and Scheduling. In Proc. of the 4th INRIA/IEEE Symposium on Emerging Technologies and Factory Automation (ETFA-95), pages , Paris, France, [13] H. Levesque, R. Reiter, Y. Lesperance, F. Lin, and R. Scherl. GOLOG : A Logic Programming Language for Dynamic Domains. Journal of Logic Programming, 31(1-3) :59 83, [14] N. Muscettola. HSTS : Integrating Planning and Scheduling. In M. Zweden and M. Fox, editors, Intelligent Scheduling, pages Morgan Kaufmann, [15] J. Penberthy and D. Weld. Temporal Planning with Continuous Change. In Proc. of the 12th National Conference on Artificial Intelligence (AAAI-94), pages , Seattle, WA, USA, [16] A. Pnueli. The Temporal Logic of Programs. In Proc. of the 18th IEEE Symposium on the Foundations of Computer Science (FOCS-77), pages 46 57, Providence, RI, USA, [17] C. Pralet, G. Verfaillie, and T. Schiex. Decision with Uncertainties, Feasibilities, and Utilities : Towards a Unified Algebraic Framework. In Proc. of the 17th European Conference on Artificial Intelligence (ECAI-06), pages , Riva del Garda, Italy, [18] R. Trinquart and M. Ghallab. An Extended Functional Representation in Temporal Plannning : Towards Continuous Change. In Proc. of the 6th European Conference on Planning (ECP-01), Toledo, Spain, 2001.

Le corps R des nombres réels

Le corps R des nombres réels Le corps R des nombres réels. Construction de R à l aide des suites de Cauchy de nombres rationnels On explique brièvement dans ce paragraphe comment construire le corps R des nombres réels à partir du

Plus en détail

Analyse abstraite de missions sous PILOT

Analyse abstraite de missions sous PILOT Analyse abstraite de missions sous PILOT Damien Massé EA 3883, Université de Bretagne Occidentale, Brest damien.masse@univ-brest.fr Résumé Nous étudions la possibilité de réaliser un analyseur par interprétation

Plus en détail

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée.

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée. A 2015 INFO. MP École des Ponts ParisTech, SUPAERO (ISAE), ENSTA ParisTech, Télécom ParisTech, Mines ParisTech, Mines de Saint-étienne, Mines Nancy, Télécom Bretagne, ENSAE ParisTech (filière MP), École

Plus en détail

Exercices théoriques

Exercices théoriques École normale supérieure 2008-2009 Département d informatique Algorithmique et Programmation TD n 9 : Programmation Linéaire Avec Solutions Exercices théoriques Rappel : Dual d un programme linéaire cf.

Plus en détail

UNIVERSITE D ORLEANS SL01MA11, Groupes 1 et 5 Département de Mathématiques 2009-2010. N. El Hage Hassan S EXPRIMER EN MATHÉMATIQUES

UNIVERSITE D ORLEANS SL01MA11, Groupes 1 et 5 Département de Mathématiques 2009-2010. N. El Hage Hassan S EXPRIMER EN MATHÉMATIQUES UNIVERSITE D ORLEANS SL01MA11, Groupes 1 et 5 Département de Mathématiques 2009-2010 N. El Hage Hassan S EXPRIMER EN MATHÉMATIQUES 1 Les énoncés La plupart des phrases que l on rencontre dans un livre

Plus en détail

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

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

Plus en détail

Planification et ordonnancement sous incertitudes Application à la gestion de projet

Planification et ordonnancement sous incertitudes Application à la gestion de projet Toulouse, 14 mai 2003 Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot Plan Séminaire au LAAS Planification de tâches et ordonnancement Domaine d application

Plus en détail

Algèbre relationnelle

Algèbre relationnelle Algèbre relationnelle 1. Introduction L algèbre relationnelle est le support mathématique cohérent sur lequel repose le modèle relationnel. L algèbre relationnelle propose un ensemble d opérations élémentaires

Plus en détail

Fonctions de plusieurs variables

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

Plus en détail

Les supports de cours suivants font référence au cours de Mr SOL et à son livre : "Accès à l'université" chez DUNOD

Les supports de cours suivants font référence au cours de Mr SOL et à son livre : Accès à l'université chez DUNOD Les supports de cours suivants font référence au cours de Mr SOL et à son livre : "Accès à l'université" chez DUNOD Les supports de cours ne sont pas complets, ils ne contiennent ni les démonstrations,

Plus en détail

Notes de cours. Cours introductif sur la théorie des domaines. Modèles des langages de programmation Master Parisien de Recherche en Informatique

Notes de cours. Cours introductif sur la théorie des domaines. Modèles des langages de programmation Master Parisien de Recherche en Informatique Notes de cours Cours introductif sur la théorie des domaines Paul-André Melliès Modèles des langages de programmation Master Parisien de Recherche en Informatique 1 Ensembles ordonnés Definition 1.1 (ensemble

Plus en détail

LA PROGRAMMATION LINEAIRE : UN OUTIL DE MODELISATION

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

Plus en détail

CHAPITRE 4 FORMES NORMALES SYSTEMES COMPLETS DE CONNECTEURS 1

CHAPITRE 4 FORMES NORMALES SYSTEMES COMPLETS DE CONNECTEURS 1 Université Paris 7 U3MI36 CHAPITRE 4 FORMES NORMALES SYSTEMES COMPLETS DE CONNECTEURS 1 4.1 Formes normales Définitions : 1) Une formule F est sous forme normale disjonctive si et seulement si il existe

Plus en détail

Intelligence Artificielle Planification

Intelligence Artificielle Planification Intelligence Artificielle Planification Bruno Bouzy http://web.mi.parisdescartes.fr/~bouzy bruno.bouzy@parisdescartes.fr Licence 3 Informatique UFR Mathématiques et Informatique Université Paris Descartes

Plus en détail

Points fixes de fonctions à domaine fini

Points fixes de fonctions à domaine fini ÉCOLE POLYTECHNIQUE ÉCOLE NORMALE SUPÉRIEURE DE CACHAN ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES CONCOURS D ADMISSION 2013 FILIÈRE MP HORS SPÉCIALITÉ INFO FILIÈRE PC COMPOSITION D INFORMATIQUE

Plus en détail

UPMC Master informatique 2 STL NI503 Conception de langages Notes I

UPMC Master informatique 2 STL NI503 Conception de langages Notes I UPMC Master informatique 2 STL NI503 Conception de langages Notes I 2012 1 Évaluer Un langage Le langage Logo est composé commandes permettant de diriger le déplacement d un point sur un plan cartésien

Plus en détail

Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications

Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications Université Paris-Dauphine DUMI2E 1ère année, 2009-2010 Applications 1 Introduction Une fonction f (plus précisément, une fonction réelle d une variable réelle) est une règle qui associe à tout réel x au

Plus en détail

Chapitre 2. Eléments pour comprendre un énoncé

Chapitre 2. Eléments pour comprendre un énoncé Chapitre 2 Eléments pour comprendre un énoncé Ce chapitre est consacré à la compréhension d un énoncé. Pour démontrer un énoncé donné, il faut se reporter au chapitre suivant. Les tables de vérité données

Plus en détail

Automatisation de la certification formelle de systèmes critiques par instrumentation d interpréteurs abstraits

Automatisation de la certification formelle de systèmes critiques par instrumentation d interpréteurs abstraits 1 d Automatisation de la certification formelle de systèmes critiques par instrumentation d sous la direction de Michaël Périn Soutenance de Thèse de Doctorat Université de Grenoble - Laboratoire Verimag

Plus en détail

StatEnAction 2009/10/30 11:26 page 111 #127 CHAPITRE 10. Machines à sous

StatEnAction 2009/10/30 11:26 page 111 #127 CHAPITRE 10. Machines à sous StatEnAction 2009/0/30 :26 page #27 CHAPITRE 0 Machines à sous Résumé. On étudie un problème lié aux jeux de hasard. Il concerne les machines à sous et est appelé problème de prédiction de bandits à deux

Plus en détail

Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi

Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi - 14 Juin 2005 - - Faculté des Sciences de Luminy - 1. Introduction

Plus en détail

Heuristique et métaheuristique. 8. Optimisation combinatoire et métaheuristiques. Optimisation combinatoire. Problème du voyageur de commerce

Heuristique et métaheuristique. 8. Optimisation combinatoire et métaheuristiques. Optimisation combinatoire. Problème du voyageur de commerce Heuristique et métaheuristique IFT1575 Modèles de recherche opérationnelle (RO) 8. Optimisation combinatoire et métaheuristiques Un algorithme heuristique permet d identifier au moins une solution réalisable

Plus en détail

2B La résolution de modèles linéaires par Excel 2010

2B La résolution de modèles linéaires par Excel 2010 2B La résolution de modèles linéaires par Excel 2010 Nous reprenons ici, de façon plus détaillée, la section où est indiqué comment utiliser le solveur d'excel 2010 pour résoudre un modèle linéaire (voir

Plus en détail

(3.22) Interchangeabilité mutuelle : p q r p q r

(3.22) Interchangeabilité mutuelle : p q r p q r Préséance (priorité) des opérateurs (1) [x := e] (substitution textuelle) (prioritéélevée) (2). (application de fonction) (3) + P (opérateurs unaires préfixes) (4) / mod pgcd (5) + (opérateurs binaires)

Plus en détail

Fondements de l informatique: Examen Durée: 3h

Fondements de l informatique: Examen Durée: 3h École polytechnique X2013 INF412 Fondements de l informatique Fondements de l informatique: Examen Durée: 3h Sujet proposé par Olivier Bournez Version 3 (corrigé) L énoncé comporte 4 parties (sections),

Plus en détail

Partiel - 12 mars 2014

Partiel - 12 mars 2014 Licence STS, semestre 4 013 14 Mathématiques pour l Informatique (Info 9) 1 mars 014 http://www.lri.fr/~paulin/mathinfo Partiel - 1 mars 014 L examen dure heures. L énoncé est composé de 5 pages. Toutes

Plus en détail

Licence de Sciences et Technologies. Fiche de cours 1 - Nombres réels.

Licence de Sciences et Technologies. Fiche de cours 1 - Nombres réels. Licence de Sciences et Technologies EM21 - Analyse Fiche de cours 1 - Nombres réels. On connaît les ensembles suivants, tous munis d une addition, d une multiplication, et d une relation d ordre compatibles

Plus en détail

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

Plus en détail

Leçon 1: les entiers

Leçon 1: les entiers Leçon 1: les entiers L ensemble N des entiers naturels Compter, dresser des listes, classer et comparer des objets interviennent dans de multiples activités humaines. Les nombres entiers naturels sont

Plus en détail

Représentation des fonctions booléennes

Représentation des fonctions booléennes Représentation des fonctions booléennes Épreuve pratique d algorithmique et de programmation Juillet 2003 Ce problème est consacré à l étude de deux représentations des fonctions booléennes de N variables

Plus en détail

1 Définition et premières propriétés des congruences

1 Définition et premières propriétés des congruences Université Paris 13, Institut Galilée Département de Mathématiques Licence 2ème année Informatique 2013-2014 Cours de Mathématiques pour l Informatique Des nombres aux structures Sylviane R. Schwer Leçon

Plus en détail

Démonstrations. Chapitre 4. 4.1 Introduction

Démonstrations. Chapitre 4. 4.1 Introduction Chapitre 4 Démonstrations L objectif de ce chapitre est de commencer à aborder la question fondamentale suivante : qu est-ce qu une démonstration? Pour cela, plus précisément, on va se focaliser dans ce

Plus en détail

Planification. Plan. Planification. Introduction à la planification. La langage STRIPS. Représentation des plans. Planification partiellement ordonnée

Planification. Plan. Planification. Introduction à la planification. La langage STRIPS. Représentation des plans. Planification partiellement ordonnée Planification 1 Plan Introduction à la planification La langage STRIPS Représentation des plans Planification partiellement ordonnée Graphes de panification 2 Planification Un agent planificateur construit

Plus en détail

Guillaume SOLDERA (B guillaume.soldera@serli.fr) SERLI Informatique Bull OW2 Consortium. Comparatif Choco/Drools dans le cadre du projet JASMINe

Guillaume SOLDERA (B guillaume.soldera@serli.fr) SERLI Informatique Bull OW2 Consortium. Comparatif Choco/Drools dans le cadre du projet JASMINe Guillaume SOLDERA (B guillaume.soldera@serli.fr) SERLI Informatique Bull OW2 Consortium dans le cadre du projet JASMINe Avril 2008 Table des matières 1 Introduction 3 1.1 Rappel sur JASMINe.......................................

Plus en détail

Une extension pour RDF/RDFS utilisant des relations procédurales

Une extension pour RDF/RDFS utilisant des relations procédurales Une extension pour RDF/RDFS utilisant des relations procédurales Jean-François Baget * * INRIA Sophia-Antipolis & LIRMM(CNRS - UM2) LIRMM, 161 rue Ada, 34392 Montpellier Cedex 5 baget@lirmm.fr RÉSUMÉ.

Plus en détail

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre Recherche opérationnelle Programmation linéaire et recherche opérationnelle Ioan Todinca Ioan.Todinca@univ-orleans.fr tél. 0 38 41 7 93 bureau : en bas à gauche Tentative de définition Ensemble de méthodes

Plus en détail

Cours de spécialité mathématiques en Terminale ES

Cours de spécialité mathématiques en Terminale ES Cours de spécialité mathématiques en Terminale ES O. Lader 2014/2015 Lycée Jean Vilar Spé math terminale ES 2014/2015 1 / 51 Systèmes linéaires Deux exemples de systèmes linéaires à deux équations et deux

Plus en détail

Chapitre 2 : Représentation des nombres en machine

Chapitre 2 : Représentation des nombres en machine Chapitre 2 : Représentation des nombres en machine Introduction La mémoire des ordinateurs est constituée d une multitude de petits circuits électroniques qui ne peuvent être que dans deux états : sous

Plus en détail

DUT Informatique - Module M-4102C Modélisation et construction des applications réparties

DUT Informatique - Module M-4102C Modélisation et construction des applications réparties DUT Informatique - Module M-4102C Modélisation et construction des applications réparties Applications réparties (distributed systems) J. Christian Attiogbé Février 2009, maj 2015 J. Christian Attiogbé

Plus en détail

Théorie des Langages

Théorie des Langages Théorie des Langages Automates Claude Moulin Université de Technologie de Compiègne Printemps 2013 Sommaire 1 Automate fini 2 Automate et langages réguliers 3 Automate à pile Automate fini déterministe

Plus en détail

Image d un intervalle par une fonction continue

Image d un intervalle par une fonction continue DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction

Plus en détail

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. A1 Trouvez l entier positif n qui satisfait l équation suivante: Solution 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. En additionnant les termes du côté gauche de l équation en les mettant sur le même dénominateur

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

Polytechnique. Épreuve d Informatique 1998

Polytechnique. Épreuve d Informatique 1998 Polytechnique Épreuve d Informatique 1998 Corrigé rédigé par Martine Lannaud, Lycée Chaptal, Paris Pour toute remarque ou correction martine.lannaud@prepas.org Motifs et automates Question 1. Quelques

Plus en détail

Supplément théorique Inférence dans les réseaux bayésiens. Rappel théorique. Les processus aléatoires. Les réseaux bayésiens

Supplément théorique Inférence dans les réseaux bayésiens. Rappel théorique. Les processus aléatoires. Les réseaux bayésiens DÉPARTEMENT DE GÉNIE LOGICIEL ET DES TI LOG770 - SYSTÈMES INTELLIGENTS ÉTÉ 2011 Supplément théorique Inférence dans les réseaux bayésiens Rappel théorique Les processus aléatoires La plupart des processus

Plus en détail

Résumé du chapitre 8 Ressources et interblocage

Résumé du chapitre 8 Ressources et interblocage Résumé du chapitre 8 Ressources et interblocage Jacques Mossière 12 août 2004 1 Introduction Ce chapitre est consacré à l étude d un problème classique dans les systèmes, l interblocage, c est à dire l

Plus en détail

Introduction à la programmation en variables entières Cours 3

Introduction à la programmation en variables entières Cours 3 Introduction à la programmation en variables entières Cours 3 F. Clautiaux francois.clautiaux@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 272 Sommaire Notion d heuristique Les algorithmes gloutons

Plus en détail

Module OMGL - UE ModDyn

Module OMGL - UE ModDyn Module OMGL - UE ModDyn Modélisation de la dynamique / Réseaux de Petri J. Christian Attiogbé Février 2009, maj 2012 J. Christian Attiogbé (Février 2009, maj 2012) Module OMGL - UE ModDyn 1 / 34 Plan de

Plus en détail

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

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

Plus en détail

Théorie des Langages Formels Chapitre 5 : Automates minimaux

Théorie des Langages Formels Chapitre 5 : Automates minimaux Théorie des Langages Formels Chapitre 5 : Automates minimaux Florence Levé Florence.Leve@u-picardie.fr Année 2015-2016 1/29 Introduction Les algorithmes vus précédemment peuvent mener à des automates relativement

Plus en détail

Vidéo partie 1. Logique Vidéo partie 2. Raisonnements Exercices Logique, ensembles, raisonnements

Vidéo partie 1. Logique Vidéo partie 2. Raisonnements Exercices Logique, ensembles, raisonnements Exo7 Logique et raisonnements Vidéo partie 1. Logique Vidéo partie 2. Raisonnements Exercices Logique, ensembles, raisonnements Quelques motivations Il est important d avoir un langage rigoureux. La langue

Plus en détail

5SINF200 : Développement de programmes (A. Slissenko) Examen

5SINF200 : Développement de programmes (A. Slissenko) Examen Licence Info Corrigé 5SINF200 : Développement de programmes (A. Slissenko) Examen Le 21 décembre 2006, 13h30 15h30 Utilisation des notes, des livres, des docs, etc. autorisée. Ce corrigé contient des réponses

Plus en détail

Algèbre de Boole. Chapitre. 2.1 Notions théoriques

Algèbre de Boole. Chapitre. 2.1 Notions théoriques Chapitre 2 Algèbre de Boole G oerge Boole (1815-1864), mathématicien autodidacte anglais, a développé une algèbre permettant de manipuler les propositions logiques au moyen d équations mathématiques où

Plus en détail

} 7 Variables (composantes)

} 7 Variables (composantes) Chapitre 4 Tableaux Jusqu ici, nous avons employé les variables pour stocker les valeurs individuelles de types primitifs : une variable de type int pour stocker un entier, une variable de type boolean

Plus en détail

Représentation des nombres entiers et réels. en binaire en mémoire

Représentation des nombres entiers et réels. en binaire en mémoire L3 Mag1 Phys. fond., cours C 15-16 Rep. des nbs. en binaire 25-09-05 23 :06 :02 page 1 1 Nombres entiers 1.1 Représentation binaire Représentation des nombres entiers et réels Tout entier positif n peut

Plus en détail

Chapitre 2 Le problème de l unicité des solutions

Chapitre 2 Le problème de l unicité des solutions Université Joseph Fourier UE MAT 127 Mathématiques année 2011-2012 Chapitre 2 Le problème de l unicité des solutions Ce que nous verrons dans ce chapitre : un exemple d équation différentielle y = f(y)

Plus en détail

Tableaux (introduction) et types de base

Tableaux (introduction) et types de base Tableaux (introduction) et types de base A. Motivation..................................................... 4 B. Les tableaux.................................................... 5 C. Construction des tableaux.......................................

Plus en détail

Feuille 1 Modèle Relationnel et Requêtes Conjonctives

Feuille 1 Modèle Relationnel et Requêtes Conjonctives Université de Bordeaux M2 d Informatique, 2015-2016 Cours de Bases de Données Avancées Feuille 1 Modèle Relationnel et Requêtes Conjonctives Le but de cette feuille est d introduire le modèle de bases

Plus en détail

et Automates de Büchi

et Automates de Büchi Cours 9: Propriétes ω-régulières et Automates de Büchi Francesco Belardinelli Laboratoire IBISC Remerciements à Alessio Lomuscio et Joost-Pieter Katoen 26 mars 2015 Cours 9 - Vue d Ensemble Motivation

Plus en détail

Enveloppes convexes dans le plan

Enveloppes convexes dans le plan ÉCOLE POLYTECHNIQUE ÉCOLES NORMALES SUPÉRIEURES ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES CONCOURS D ADMISSION FILIÈRE MP HORS SPÉCIALITÉ INFO FILIÈRE PC COMPOSITION D INFORMATIQUE B (XECLR)

Plus en détail

SOMMAIRE. II L organisation du projet. 15 II.1 La place du projet dans la structure de l entreprise. 15 II.2 Les acteurs. 18

SOMMAIRE. II L organisation du projet. 15 II.1 La place du projet dans la structure de l entreprise. 15 II.2 Les acteurs. 18 SOMMAIRE CHAPITRE 1 INTRODUCTION I Définition du projet et de la gestion de projets. 7 I.1 Définition du projet. 7 I.2 Définition de la gestion des projets. 10 I.3 Interaction formulation - résolution

Plus en détail

Model checking temporisé

Model checking temporisé Model checking temporisé Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS berard@lamsade.dauphine.fr ETR 07, 5 septembre 2007 1/44 Nécessité de vérifier des systèmes... 2/44 Nécessité de vérifier

Plus en détail

Adaptation sémantique de documents SMIL

Adaptation sémantique de documents SMIL Adaptation sémantique de documents SMIL Sébastien Laborie Jérôme Euzenat Nabil Layaïda INRIA Rhône-Alpes - 655 Avenue de l Europe - 38334 St Ismier Cedex {Sebastien.Laborie;Jerome.Euzenat;Nabil.Layaida}@inrialpes.fr

Plus en détail

Rapport Technique No. GIDE-01-2013. Soyons un peu logiques! par. Jean-Marc BERNARD GIDE GIDE

Rapport Technique No. GIDE-01-2013. Soyons un peu logiques! par. Jean-Marc BERNARD GIDE <jeanmarc@gide.net> GIDE Rapport Technique No. -01-2013 Soyons un peu logiques! par Jean-Marc BERNARD 17 rue La Noue Bras de Fer 44200 Nantes, France 28 février 2014 Soyons un peu logiques! Jean-Marc BERNARD

Plus en détail

Conventions communes aux profils UML

Conventions communes aux profils UML Conventions communes aux profils UML Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)* Référence : Livrable 2.1 Date : Juin 2002 * : Les partenaires du

Plus en détail

Programmation Linéaire Cours 1 : programmes linéaires, modélisation et résolution graphique

Programmation Linéaire Cours 1 : programmes linéaires, modélisation et résolution graphique Programmation Linéaire Cours 1 : programmes linéaires, modélisation et résolution graphique F. Clautiaux francois.clautiaux@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 Motivation et objectif du cours

Plus en détail

Correction de programmes : Logique de Hoare

Correction de programmes : Logique de Hoare 16 juillet 2009 Logique et informatique Vis-à-vis de l informatique la logique a au moins 2 rôles : 1 Externe et théorique (fondements de l informatique - Électif en S4) : Logique comme méta-informatique

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

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

Partie 6 : Ordonnancement de processus

Partie 6 : Ordonnancement de processus INF3600+INF2610 Automne 2006 Partie 6 : Ordonnancement de processus Exercice 1 : Considérez un système d exploitation qui ordonnance les processus selon l algorithme du tourniquet. La file des processus

Plus en détail

Cours de terminale S Suites numériques

Cours de terminale S Suites numériques Cours de terminale S Suites numériques V. B. et S. B. Lycée des EK 13 septembre 2014 Introduction Principe de récurrence Exemple En Mathématiques, un certain nombre de propriétés dépendent d un entier

Plus en détail

Bases de données cours 2 Éléments d algèbre relationnelle. Catalin Dima

Bases de données cours 2 Éléments d algèbre relationnelle. Catalin Dima Bases de données cours 2 Éléments d algèbre relationnelle Catalin Dima Qu est-ce qu une algèbre? Algèbre : ensemble de domaines et d opérations. Exemple : les nombres (naturels, réels, complexes). Leurs

Plus en détail

Le MRP. 1. DéfinitionsD. 2. Architecture d un d. 3. La Planification des besoins en composant. 4. Le Plan Directeur. 5. Processus d actualisationd

Le MRP. 1. DéfinitionsD. 2. Architecture d un d. 3. La Planification des besoins en composant. 4. Le Plan Directeur. 5. Processus d actualisationd 1. DéfinitionsD Le MRP 2. Architecture d un d système MRP 2 3. La Planification des besoins en composant 4. Le Plan Directeur 5. Processus d actualisationd 6. La prise en compte des contraintes de capacité

Plus en détail

LOGICIEL DE SIMULATION NUMERIQUE DES SYSTEMES PHYSIQUES

LOGICIEL DE SIMULATION NUMERIQUE DES SYSTEMES PHYSIQUES LOGICIEL DE SIMULATION NUMERIQUE DES SYSTEMES PHYSIQUES PRESENTATION SIMULATION NUMÉRIQUE DES SYSTÈMES PHYSIQUES Développé par la société Atemi, SiNuSPhy est un logiciel de simulation numérique destiné

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

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

Limites finies en un point

Limites finies en un point 8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,

Plus en détail

Problème de contrôle optimal pour une chaîne de Markov

Problème de contrôle optimal pour une chaîne de Markov Problème de contrôle optimal pour une chaîne de Markov cours ENSTA MA206 Il s agit de résoudre un problème d arrêt optimal pour une chaîne de Markov à temps discret. Soit X n une chaîne de Markov à valeurs

Plus en détail

À propos des matrices échelonnées

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

Plus en détail

M2-OSIL Mémoire Thématique-Présoutenance le 02.12.2009. Ayse Sena Eruguz

M2-OSIL Mémoire Thématique-Présoutenance le 02.12.2009. Ayse Sena Eruguz M2-OSIL Mémoire Thématique-Présoutenance le 02.12.2009 Ayse Sena Eruguz 1 Plan Introduction Présentation de la Problématique Facteurs de Modélisation Modèles de Localisation-Allocation Applications Méthodes

Plus en détail

NFP121 Programmation Avancée. Relations entre classes

NFP121 Programmation Avancée. Relations entre classes NFP121 Programmation Avancée Relations entre classes Xavier Crégut ENSEEIHT Télécommunications & Réseaux Xavier Crégut (N7) NFP121 Programmation Avancée Relations entre classes

Plus en détail

Les graphes d intervalles

Les graphes d intervalles Les graphes d intervalles Complément au chapitre 3 «Vol aux archives cantonales» Considérons un ensemble de tâches ayant chacune une heure de début et une heure de fin bien précises. Supposons qu on demande

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

Applications linéaires

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

Plus en détail

Logique informatique 2013-2014. Examen

Logique informatique 2013-2014. Examen Logique informatique 2013-2014. Examen 30 mai 2013. Durée 3h. Tous les documents sont autorisés. Seuls les résultats du cours peuvent être utilisés sans démonstration. Le barême et la longueur des solutions

Plus en détail

Programmation par contraintes. Laurent Beaudou

Programmation par contraintes. Laurent Beaudou Programmation par contraintes Laurent Beaudou On se trouve où? Un problème, une solution : la solution est-elle une solution du problème? simulation, vérification 2 On se trouve où? Un problème, une solution

Plus en détail

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail

Conception multi-agent d un système d aide à la décision collective

Conception multi-agent d un système d aide à la décision collective Conception multi-agent d un système d aide à la décision collective Justification automatique pour la confrontation des opinions Maxime Morge Philippe Beaune Équipe SMA / Centre SIMMO École Nationale Supérieure

Plus en détail

Primitives Cours maths Terminale S

Primitives Cours maths Terminale S Primitives Cours maths Terminale S Dans ce module est introduite la notion de primitive d une fonction sur un intervalle. On définit cette notion puis on montre qu une fonction admet une infinité de primitives

Plus en détail

BASES DU RAISONNEMENT

BASES DU RAISONNEMENT BASES DU RAISONNEMENT P. Pansu 10 septembre 2006 Rappel du programme officiel Logique, différents types de raisonnement. Ensembles, éléments. Fonctions et applications. Produit, puissances. Union, intersection,

Plus en détail

Mathématiques Pour l Informatique I : Théorie des Ensembles et Relations. Serge Iovleff

Mathématiques Pour l Informatique I : Théorie des Ensembles et Relations. Serge Iovleff Mathématiques Pour l Informatique I : Théorie des Ensembles et Relations Serge Iovleff 13 septembre 2004 Quelques références Ma Page http ://www.iut-info.univ-lille1.fr/ iovleff Un Cours réalisé par des

Plus en détail

La mesure de Lebesgue sur la droite réelle

La mesure de Lebesgue sur la droite réelle Chapitre 1 La mesure de Lebesgue sur la droite réelle 1.1 Ensemble mesurable au sens de Lebesgue 1.1.1 Mesure extérieure Définition 1.1.1. Un intervalle est une partie convexe de R. L ensemble vide et

Plus en détail

Machines de Turing. Chapitre 14 14.1. DÉFINITION ET FONCTIONNEMENT

Machines de Turing. Chapitre 14 14.1. DÉFINITION ET FONCTIONNEMENT Chapitre 4 Machines de Turing Dans ce chapitre on présente un modèle de calcul introduit dans les années 3 par Turing, les machines de Turing. Ces machines formalisent la notion de calculabilité. La thèse

Plus en détail

L outil Cup. Licence info et GMI documentation COMPIL 2007-2008. Pour toutes remarques, questions, suggestions : mirabelle.nebut@lifl.

L outil Cup. Licence info et GMI documentation COMPIL 2007-2008. Pour toutes remarques, questions, suggestions : mirabelle.nebut@lifl. UFR IEEA Licence info et GMI documentation COMPIL 2007-2008 FIL Pour toutes remarques, questions, suggestions : mirabelle.nebut@lifl.fr 1 raccourci pour Java-Based Constructor of Useful Parsers est un

Plus en détail

La notion de dualité

La notion de dualité La notion de dualité Dual d un PL sous forme standard Un programme linéaire est caractérisé par le tableau simplexe [ ] A b. c Par définition, le problème dual est obtenu en transposant ce tableau. [ A

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 11 : Arbre couvrant Prétraitement Benjamin Wack 2015-2016 1 / 32 La dernière fois Rappels sur les graphes Problèmes classiques Algorithmes d optimisation

Plus en détail

2012/2013 Le codage en informatique

2012/2013 Le codage en informatique 2012/2013 Le codage en informatique Stéphane Fossé/ Marc Gyr Lycée Felix Faure Beauvais 2012/2013 INTRODUCTION Les appareils numériques que nous utilisons tous les jours ont tous un point commun : 2 chiffres

Plus en détail

Résolution générique à la volée de systèmes d équations booléennes et applications

Résolution générique à la volée de systèmes d équations booléennes et applications Résolution générique à la volée de systèmes d équations booléennes et applications Radu Mateescu INRIA Rhône-Alpes / VASY Plan Introduction Systèmes d équations booléennes d alternance 1 Algorithmes de

Plus en détail