Intégration d'un langage de modélisation algébrique (LMA) dans AROM

Slides:



Advertisements
Présentations similaires
Sintaks : Tentative de guide de mise en œuvre Michel Hassenforder.
Advertisements

Aires et périmètres.
1. Résumé 2 Présentation du créateur 3 Présentation du projet 4.
CARACTERISTIQUES D’UN ENSEMBLE DE FORCES
« Systèmes électroniques »
Mon carnet De comportement
Classe : …………… Nom : …………………………………… Date : ………………..
1 Jean-Paul Stromboni, mars 2005, Révision des cinq premières séances S.S.I. Jean-Paul Stromboni, mars 2005, ESSI1 Elève : ______________________ groupe.
1 Jean-Paul Stromboni, mars 2005, Révision des cinq premières séances S.S.I. Jean-Paul Stromboni, mars 2005, ESSI1 Elève : ______________________ groupe.
Programme de seconde 2009 Géométrie
Raisonnement et logique
Les Prepositions.
Le Modèle Logique de Données
1. Les caractéristiques de dispersion. 11. Utilité.
Algèbre relationnelle
1 Intégration numérique garantie de systèmes décrits par des équations différentielles non-linéaires Application à l'estimation garantie d'état et de paramètres.
Systèmes Experts implémentation en Prolog
Ecriture simplifiée d'une somme de relatifs
Programme Introduction aux BD et aux SGBD Le modèle relationnel
JOME, un Composant Logiciel pour le Télé-Enseignement des Mathématiques via le WEB, Compatible OpenMath et MathML Laurent DIRAT OVE / I3S-UNSA.
Ordonnancement des mouvements de deux robots
Cours Systèmes logiques
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Guy Gauthier, ing., Ph.D. Session été 2013.
Interagir avec un objet mixte Propriétés physiques et numériques Céline Coutrix, Laurence Nigay Équipe Ingénierie de lInteraction Homme-Machine (IIHM)
Eléments d ’algèbre relationnelle
LUNDI – MARDI – MERCREDI – JEUDI – VENDREDI – SAMEDI – DIMANCHE
Les verbes auxiliaires Avoir ou être ?? Choisissez! Cest un verbe Dr Mrs Vandertrampp? Cest un verbe réfléchi?
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 1 : La notion de système.
B.Shishedjiev - Modèle relationnel
Introduction à la conception de Bases de Données Relationnelles
LUNDI – MARDI – MERCREDI – JEUDI – VENDREDI – SAMEDI – DIMANCHE
1.2 COMPOSANTES DES VECTEURS
Titre : Implémentation des éléments finis sous Matlab
1 Les pointeurs et quelques rappels sur certains éléments du langage C.
Complément Le diagramme des classes
Outils pour la Biologie
La Saint-Valentin Par Matt Maxwell.
GPA789 Analyse et conception orientées objet 1 Professeur: Tony Wong, Ph.D., ing. Chapitre 6 Correspondance UML et C++
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
1.1 LES VECTEURS GÉOMÉTRIQUES
Notre calendrier français MARS 2014
Relations et fonctions
Chapitre 3 Syntaxe et sémantique.
Hybridation sp3 du carbone
C'est pour bientôt.....
Veuillez trouver ci-joint
Introduction à l’algèbre
Sous-espaces vectoriels engendrés
Découverte de correspondances entre ontologies distribuées
ASI 3 Méthodes numériques pour l’ingénieur
Présentation de la méthode des Eléments Finis
Structures des données
LUNDI – MARDI – MERCREDI – JEUDI – VENDREDI – SAMEDI – DIMANCHE
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
Bases de données   J-L Hainaut Partie 1 - Comprendre les bases de données Partie 2 - Utiliser les bases de données Partie 3 - Développer une base.
Equation différentielle
CALENDRIER-PLAYBOY 2020.
1. Présentation générale du système
Quel est l’intérêt d’utiliser le diagramme de Gantt dans la démarche de projet A partir d’un exemple concret, nous allons pouvoir exploiter plusieurs parties.
Master 1 – Sciences du Langage –
Rappels de statistiques descriptives
1 A llier R elations et O bjets pour M odéliser Projet Sherpa INRIA Rhône-Alpes Visite Schneider 15/09/99.
Mathématique Expression algébrique Variable Coefficient
Transcription de la présentation:

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

Objectifs de l'exposé Expliquer ce qu'est un LMA Montrer comment un LMA peut être introduit dans un contexte objet

Plan de l'exposé Introduction: Qu'est-ce qu'un LMA ? Modélisation dans un LMA: l'exemple d'AMIA Proposition d'un LMA pour Arom

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

Notations algébriques langage mathématique d'écriture de systèmes d'équations et/ou de contraintes variables et expressions indicées variables et expressions ensemblistes opérateurs itérés:  et , …

Utilisation des LMA introduits en RO pour la prog. linéaire et non-linéaire (AMPL, GAMS, SML, …) ex AMPL: {i in I}: X[i] = sum {j in I diff {i}} X[i,j]*Y[j] utilisés en simulation: AMIA ré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

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

Plan de l'exposé Introduction: Qu'est-ce qu'un LMA ? Modélisation avec un LMA: l'exemple d'AMIA Proposition d'un LMA pour Arom

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

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

Atome objet distinguable du monde réel représenté par un symbole ex: P1, P2, P3…, T1, T2, @1999, @2000, …

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

Variable fonction discrète (partielle ou totale) sur un ens. de domaines Di : v: D1  D2  ...  Dn  D* (x1, x2, ..., xn)  v(x1, x2, ..., xn) D* est un domaine (variable mono-valuée) ou l'ens des parties d'un domaine (variable multi-valuée) un indice: propriété partagée par les atomes d'un domaine exemple: TYPE(PRODUITS)  TYPES plusieurs indices: relation entre les atomes de plusieurs domaines exemple: DEMANDE(PRODUITS,T)  REEL

Equation Elles sont de la forme: où: x11(D1) x22(D2) ... xnn(Dn): v(x1, x2,..., xn) = expr où: i(Di) : sous-ensemble du domaine Di xi : 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

Equations (suite) Exemples: Similitude avec des clauses de Horn Forme (rappel): x11(D1) x22(D2) ... xnn(Dn): v(x1, x2,..., xn) = expr Exemples: 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: DEMANDE(p, @1999) = 2000 p dans PRODUITS, t dans T- {@1999}: 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

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

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

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

Plan de l'exposé Introduction: Qu'est-ce qu'un LMA ? Modélisation dans un LMA: l'exemple d'AMIA Proposition d'un LMA pour Arom

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

Analogies entre AMIA et Arom

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

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))

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

Définition de variables en Arom class: Vacation variables: variable: montant type: float class: Employé variable: salaire class: Permanent super-class: Employé variable: index type: integer 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 variable: quantité type: integer

Problème de la notation des variables en AMIA: notation fonctionnelle VAR(x,y) en 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: 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] = ...

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

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

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

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

Problèmes en suspens le temps classifier pour calculer les variables et calculer les variables pour classifier extensibles, les types. Quid du LMA ?