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

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

Intégration d'un langage de modélisation algébrique (LMA) dans AROM Michel Page - présentation équipe Arom 7 juin 1999.

Présentations similaires


Présentation au sujet: "Intégration d'un langage de modélisation algébrique (LMA) dans AROM Michel Page - présentation équipe Arom 7 juin 1999."— Transcription de la présentation:

1 Intégration d'un langage de modélisation algébrique (LMA) dans AROM Michel Page - présentation équipe Arom 7 juin 1999

2 2 Objectifs de l'exposé vExpliquer ce qu'est un LMA vMontrer comment un LMA peut être introduit dans un contexte objet

3 3 Plan de l'exposé vIntroduction: Qu'est-ce qu'un LMA ? vModélisation dans un LMA: l'exemple d'AMIA vProposition d'un LMA pour Arom

4 4 Introduction: qu'est-ce qu'un LMA ? vPrincipe de base: l exploiter les notations algébriques utilisées en maths

5 5 Notations algébriques vlangage mathématique d'écriture de systèmes d'équations et/ou de contraintes vvariables et expressions indicées vvariables et expressions ensemblistes vopérateurs itérés: et, …

6 6 Utilisation des LMA vintroduits en RO pour la prog. linéaire et non- linéaire (AMPL, GAMS, SML, …) l ex AMPL: {i in I}: X[i] = sum {j in I diff {i}} X[i,j]*Y[j] v utilisés en simulation: AMIA vrécemment utilisés dans les langages de prog. par contraintes (Newton, OPL) similarité avec les langages prédicatifs à variables domaine utilisés dans les SGBD relationnels

7 7 Intérêts des LMA vpermettent de représenter le numérique aussi bien que le symbolique l les variables et les expressions ne sont pas indicées numériquement, mais symboliquement vdéclaratif: l chaque équation et/ou contrainte forme un corpus de connaissances indépendant vexpressif: l pouvoir d'expression comparable à la logique des prédicats mais avec des variables quantifiées sur des domaines finis

8 8 Plan de l'exposé vIntroduction: Qu'est-ce qu'un LMA ? vModélisation avec un LMA: l'exemple d'AMIA vProposition d'un LMA pour Arom

9 9 Un exemple vsur un marché existent un certain nombre de produits P1, P2, …, Pn de deux types: T1 et T2 vpour les années qui suivent, il est prévu: l une croissance annuelle de 10 % de la demande de chaque produit de type T1 l produits de type T2: 20 % de la demande globale parts de marché identiques

10 10 LMA dans AMIA vRappels: l AMIA est un environnement pour la simulation à base de connaissances l AMIA n'est pas OO v5 niveaux de représentation de connaissances dans AMIA: l atomes l domaines l variables l équations l contraintes

11 11 Atome vobjet distinguable du monde réel l représenté par un symbole ex: P1, P2, P3…, …

12 12 Domaine v ens. fini d'atomes ayant une significations, des propriétés et un comportement commun l exemples: TYPES = {T1,T2} PRODUITS = {P1,P2,P3,...} T = l note: le temps est un domaine l 2 rôles: indicer les variables co-domaine: ens. dans lequel une variable peut prendre ses valeurs

13 13 Variable fonction discrète (partielle ou totale) sur un ens. de domaines D i : v:D 1 D 2... D n D* (x 1, x 2,..., x n ) v(x 1, x 2,..., x n ) D* est un domaine (variable mono-valuée) ou l'ens des parties d'un domaine (variable multi-valuée) l un indice: propriété partagée par les atomes d'un domaine exemple: TYPE(PRODUITS) TYPES l plusieurs indices: relation entre les atomes de plusieurs domaines exemple: DEMANDE(PRODUITS,T) REEL

14 14 Equation vElles sont de la forme: x 1 1 (D 1 ) x 2 2 (D 2 )... x n n (D n ): v(x 1, x 2,..., x n ) = expr où: i (D i ) : sous-ensemble du domaine D i x i : variables muettes appelées index expr : expr. de calcul bâtie à partir de: constantes (numériques ou atomes) et variables fonctions et op. num., logiques, atomiques, ensemblistes opérateurs itérés: somme, produit, moyenne,... expressions conditionnelles

15 15 Equations (suite) Forme (rappel) : x 1 1 (D 1 ) x 2 2 (D 2 )... x n n (D n ): v(x 1, x 2,..., x n ) = expr vExemples: variable DEMANDE_TOT(T) REEL t dans T: DEMANDE_TOT(t) = somme(p dans PRODUITS: DEMANDE(p,t)) variable DEMANDE(PRODUITS,T) REEL p dans PRODUITS: = 2000 p dans PRODUITS, t dans T- DEMANDE(p,t) = si TYPE (p) = T1 alors 1.1 * DEMANDE(p,t-1) sinon 0.2*DEMANDE_TOT(t) / / card( {p' dans PRODUITS: TYPE (p')=T2} ) Similitude avec des clauses de Horn

16 16 Equations (fin) vForment des systèmes d'équations simultanées aux différences vSémantique d'AMIA: l recherche des points fixes de

17 17 Contraintes vRelation entre les variables du modèles v exemple: p dans PRODUITS, t dans T: DEMANDE_TOT(t) >= DEMANDE(p,t) vpas utilisées de manière active dans AMIA

18 18 Résumé: caractéristiques du LMA dans AMIA vvariables à valeur symbolique et ensembliste vvariables indicées symboliquement véquations symboliques + numériques vvariables et opérateurs itérés

19 19 Plan de l'exposé vIntroduction: Qu'est-ce qu'un LMA ? vModélisation dans un LMA: l'exemple d'AMIA vProposition d'un LMA pour Arom

20 20 Conclusion vNombreuses applications traitées dont certaines de taille très importante l mise en évidence de l'intérêt du formalisme de représentation choisi et des algo associés mais: l nécessité de structurer les domaines l nécessité de structurer les hypothèses

21 21 Analogies entre AMIA et Arom

22 22 Exemple On suppose: pour un permanent: salaire = indice * 20 pour un vacataire: salaire = somme des montants par les quantités de vacations effectuées

23 23 Description en AMIA VACATAIRES = {V1, V2,V3} PERMANENTS = {P1,P2,P3} VACATIONS = {VA1,VA2, VA3} SALAIRE(PERMANENTS) REEL p dans PERMANENTS: SALAIRE(p) = indice(v) * 20 QUANTITE(VACATAIRES,VACATIONS) ENTIER MONTANT(VACATIONS) REEL SALAIRE(VACATAIRES) REEL v dans VACATAIRES: SALAIRE(v) = somme(vac dans VACATIONS: QUANTITE(v,vac) * MONTANT(vac))

24 24 Rôles du LMA en Arom vlangage d'écriture des équations définissant les variables de classes et de relation vlangage de requête vlangage de contraintes

25 25 Définition de variables en Arom class: Vacation variables: variable: montant type: float class: Employé variables: variable: salaire type: float class: Permanent super-class: Employé variables: variable: index type: integer variable: salaire class: Vacataire super-class: Employé variables: variable: salaire definition: sum(e in Effectue:e.quantité * e.vacation.montant) relation: Effectue roles: role: vacataire type:Vacataire role: vacation type: Vacation variables: variable: quantité type: integer

26 26 en AMIA: notation fonctionnelle VAR(x,y) ven Arom ? dans la plupart des systèmes 00, notation pointée obj.var La notation pointée convient pour un seul indice Pb 1: le temps salaire(Employe,T). Comment noter le salaire de l'employé e à l'instant t ? e.salaire[t] ou salaire[e,t] Pb 2: les variables de relation: Problème de la notation des variables relation: A … role: c1 type: C1 role: c2 type: C2... variable: x definition: c1.a1 + c2.a2 ou c1 dans C1, c2 dans C2: x[c1,c2] =...

27 27 Langage de requête vrequête: similaire à une variable mais l sa valeur n'est pas conservée l son type est quelconque vfiltres de classes et de relations: définissent en compréhension un sous ens. d'éléments

28 28 Exemples de requête class: Employé variables: variable: salaire type: float queries: query: pauvre definition: salaire < 2000 filters: filter: toto set-base: Employé definition: member(self, {toto,lulu,bibi}) filter: riches set-base: Employé definition: salaire > 10000

29 29 Langage de contraintes v2 types de contraintes: l contraintes de variable: prédicat unire sur une variable l contrainte sur une classe ou une relation

30 30 Exemples de contraintes class: Employé variables: variable: statut type: string variable: salaire type: float constraint: salaire >= 0

31 31 Problèmes en suspens vle temps vclassifier pour calculer les variables et calculer les variables pour classifier vextensibles, les types. Quid du LMA ?


Télécharger ppt "Intégration d'un langage de modélisation algébrique (LMA) dans AROM Michel Page - présentation équipe Arom 7 juin 1999."

Présentations similaires


Annonces Google