Sherlock II Sherlock II : Environnement de développement d’applications Sherlock II : Editeur d’ontologies Sherlock II : Aide à la découverte de connaissances Sherlock II : Résolveur de problèmes Sherlock II : Niveau « Méta »
Feb 22, 2016
Sherlock II
Sherlock II : Environnement de développement d’applications
Sherlock II : Editeur d’ontologies
Sherlock II : Aide à la découverte de connaissances
Sherlock II : Résolveur de problèmes
Sherlock II : Niveau « Méta »
Sherlock II
Sherlock II : Editeur d’ontologies
Sherlock II : Environnement de développement d’applications
Sherlock II : Aide à la découverte de connaissances
Sherlock II : Résolveur de problèmes
Sherlock II : Niveau « Méta »
Propriété& Attribut
Contrainte& Schéma Causal
Concept& Relation
^ Objet
ontologie
ontologie lourde
Sherlock II : Editeur d’Ontologies
Notions primitives minimales en représentation des Connaissances de Domaine
Propriétés, Attributs,Contraintes locales
Concept(Hiérarchie)
^ Objet
Propriétés, Attributs
Relation
Schémas causauxContraintes globales
Ontologies lourdes
Sherlock II : Editeur d’Ontologies
concept attribut (d’instance) propriété (de concept)
instance valeurs attribut d’instance
relation d’héritage
Sherlock II : Editeur d’OntologiesConcept
attribut avec facettes domaine, (ici numérique) valeur initiale, valeur par défaut, stratégie de recherche, démon d’évaluation, actions après modification, interface d’entrée/sortie
Sherlock II : Editeur d’OntologiesConcept
attribut domaines : numérique énuméré (liste de valeurs symboliques) booléen chaîne de caractères
Sherlock II : Editeur d’OntologiesConcept
Sherlock II : Editeur d’OntologiesConcept
Sherlock II : Editeur d’OntologiesConcept
relation
* relation descriptive dotée
d’attributs de propriétés
* héritage (sorte de)
* composition (partie de), et métonymie
(transmission d’attributs)
* appartenance (membre de)
association (lien entre instances)
Sherlock II : Editeur d’OntologiesRelation
Parti Politique
Organisation
cotisation : numérique...
Syndicat
Humainrevenu : num
adhère à
à jour de cotisation : booléen
Entreprise...
employé parsalaire
Relation descriptive& attributs de ses réalisations
employé par ( Polo, INSA) - employé par ( Polo, UCBL)employé par (Polo, INSA) § salaire = 100employé par (Polo, UCBL) § salaire = 50
Parti Politique
Organisation
cotisation : numérique...
Syndicat
Humainrevenu : num
adhère à
à jour de cotisation : booléen
Entreprise...
employé parsalaire
Relation descriptive& attributs de ses réalisations
employé par ( Polo, INSA) - employé par ( Polo, UCBL)employé par (Polo, INSA) § salaire = 100employé par (Polo, UCBL) § salaire = 50
Droite
parallèle
sécante
<< inverse( parallèle, sécante) >>
perpendiculaire<< symétrique >> <<irréflexive >>
Relation descriptive
& propriétés de relation prédéfinies et construites
<< perpendiculaire (X, Y) sécante (X, Y) >>
Droite
parallèle
sécante
perpendiculaire<< symétrique >> <<irréflexive >>
contrainte
Permet de dire :« La roue est crevée »Pour« La chambre à air (de la roue) est crevée »
Relation de composition
& métonymie (transmission d’attributs)
la couleur du vélo est celle de son cadre
& métonymie (transmission d’attributs)Relation de composition
Relation d’appartenance
Génération automatique de la relation
Relation d’appartenance
Génération automatique de type €T : ensemble de T
Ex : Si $s est un Syndicat, défini comme un ensemble de Humain, €$s est l’ensemble des instances de Humain qui sont membres de $s
Sherlock II
Sherlock II : Editeur d’ontologies
Sherlock II : Environnement de développement d’applicationsSherlock II : Aide à la découverte de connaissances
Sherlock II : Résolveur de problèmes
Sherlock II : Niveau « Méta »
AnalogiqueTactique
Réflexe
Modes de résolution de problèmes Sherlock II : Résolveur de Problèmes
Stratégique
Stratégique (Impératif) : Tâche
Tactique (Déductif) : Règle
Réflexe (EvéntAction) : Démon
Analogique: Schéma de cas
Sherlock II : Résolveur de ProblèmesModes de résolution de problèmes
Réflexes : (événementaction)
Démons « when changed »
Recalcule la catégorie du boxeur à chaque modification de la valeur de son poids
Sherlock II : Résolveur de ProblèmesDémons
Connaissances tactiques(Déductif) : Règle
Sherlock II : Résolveur de ProblèmesRègles
BdRnom
commentaire inhibé
sous-base de
Paramètre
Partie ConclusionPartie Condition
ActionCondition
Base principale
Sous-bases
Liste des règles de la (sous) base sélectionnée
Sherlock II : Résolveur de ProblèmesRèglenom
commentairemode de fonctionnement
Règles
Partie « Condition »
Déclarations
(ici 2 variables $X et $Y )
Partie « Conclusion »
Sherlock II : Résolveur de ProblèmesRègles
BdRnom
commentaire inhibé
sous-base de
Paramètre
Partie ConclusionPartie Condition
ActionCondition
Règlenom
commentairemode de fonctionnement
Action sur base de faits
Action derecherche
Action d’entrée/sortie
Action decontrôle
ajouter(fait) ; retirer(fait )blanchir(fait) ; initialiser(fait) ; par défaut(fait)calculer(fait) ; évaluer(formule)affirmer(relation) ; nier(relation) ; supprimer (relation)
trouver(fait) ; prouver(fait) justifier(fait) ; appliquer(pattern)
activer(tache) ; exécuter(programme) libérer(base) ; inhiber(base) ; restaurer(base)sortir ; arrêt
écrire( ) ; présenter( écran | rapport) ; message ( … ) ; déposer(fichier, fait | rapport) purger(fichier) ; consulter(fichier) ; lire(fichier, fait)saisir( ) ; saisirO( )
Règles Sherlock II : Résolveur de Problèmes
Mode : Marche Avantdynamique : propagation de faits connus
{Fait}0 … {Fait}k {Fait}k+1 …
Fait 1
Règle Rk,1 : Si Fait1 et Fait2 Alors Fait 4
Fait 2
Fait 4
Règle Rk,2 : Si Fait2 et Fait3 Alors Fait 4’
Fait 4’ Fait 3
Rk,1
Rk,2
Rk+1,i
Profondeur d’abordDéclenchement : Nouveau fait ; Libération d’une base de règlesActions Sherlock : Ajouter, Calculer, Affirmer, Nier, Par défaut, Saisir, Lire, Consulter, …
Sherlock II : Résolveur de problèmesMoteur d’inférences
Mode : Marche Arrièredynamique : recherche des conditions de preuve d’un fait inconnu
Rn-1,1
Rn-1,2
{Fait}n-1 + ? B
B
Fait n-1, 1
Fait n-1, 2
Règle Rn-1,1 : Si … et Faitn-1, 1 Alors B
Règle Rn-1,2 : Si … et Faitn-1, 2 Alors B
? B ? Fait n-1, 1 ? B ? Fait n-1, 2
Déclenchement : Nouveau but (Actions Sherlock : Trouver, Prouver)
Moteur d’inférences Sherlock II : Résolveur de Problèmes
Mode Hypothético-déductifdynamique : justification d’un fait avéré
F
Rn-1,1 Fait n-1, 1
Déclenchement : Actions Sherlock : Justifier
Règle Rn-1,1 : Si … et Faitn-1, 1 Alors F k
Fait k pourquoi Fait k ?
{Fait}n dont Fk
? Fait n-1, 1
Moteur d’inférences Sherlock II : Résolveur de Problèmes
Raisonnement Analogique :
Principe : compléter un ‘cas’ X en fonction d’une base de cas { cas j } connus
Sherlock II : Résolveur de ProblèmesAnalogie
Base de Cascas 1
cas Xà résoudre
cas ncas 2
1) définir les caractéristiques pertinentes d’un cas (attributs ai) et leur poids ‘distance’ d(cas X,cas j)
2) définir la fonction d’adaptationattribut par attribut
adaptation ‘horizontale’ (aiX = f(aij))
adaptation ‘verticale’ (via le cas le plus proche)
Sherlock II : Résolveur de ProblèmesAnalogie
définition des attributs conservés dans le schéma
Sherlock II : Résolveur de Problèmes
Schéma
Analogie
définition du poids des attributs ‘distance’ d(cas X,cas j)
Sherlock II : Résolveur de ProblèmesAnalogie
définition des modalités d’adaptation des attributs
Sherlock II : Résolveur de ProblèmesAnalogie
Usage par programmation :
Action Sherlock : Appliquer ( nom schéma, nom instance)
Sherlock II : Résolveur de Problèmes
Usage manuel
Analogie
Exemple
base de cas :
liste de pays avec une description de leur drapeau
Sherlock II : Résolveur de ProblèmesAnalogie
données
Adaptation horizontale : « pays le plus proche »
??
Sherlock II : Résolveur de ProblèmesAnalogie
Adaptation verticale : Majorité« couleur la plus fréquente »
Sherlock II : Résolveur de ProblèmesAnalogie
Connaissances impératives : Tâches
Sous-tâches Tâche principale
Contrôle de la Résolution Sherlock II : Résolveur de Problèmes
Contrôle de la Résolution au niveau Tâche
Tâche = Flux de Connaissances puis Méthode de Résolution
Sherlock II : Résolveur de ProblèmesContrôle de la RésolutionContrôle de la Résolution au niveau Tâche
Méthode = description de la séquence d’actionsà effectuer à l’appel de la tâche
Sherlock II : Résolveur de ProblèmesContrôle de la Résolution
Tâche = Flux de Connaissances puis Méthode de Résolution
Contrôle de la Résolution au niveau Tâche
Action
Tâchenomsous-tâche de
Action simple
Conditionnelle Itérative
Action sur base de faits
Action derecherche
Action d’entrée/sortie
Action decontrôle
Sherlock II : Résolveur de Problèmes
{ condition } action{ condition } action | action
[ condition ] action
Séquence
( action , action , … )
Tâche = Flux de Connaissances puis Méthode de Résolution
Contrôle de la RésolutionContrôle de la Résolution au niveau Tâche
activer (tâche)….
stratégie de recherche d’un attribut(booléen ou énuméré)
12
Sherlock II : Résolveur de ProblèmesContrôle de la Résolution au niveau Domaine Contrôle de la Résolution
Contrôle de la Résolution au niveau Domaine
stratégie de recherche d’un attribut(numérique ou chaîne)
123
Sherlock II : Résolveur de ProblèmesContrôle de la Résolution
Contrôle de la Résolution au niveau Règle
Les règles d’une base inhibée ne sont pas exploitées par le moteur d’inférences.
cf Actions : inhiber( ) et libérer ( )
Sherlock II : Résolveur de ProblèmesContrôle de la Résolution
Contrôle de la Résolution au Niveau Méta
Mode déclaratif : Méta-RèglesPartie « Déclarations » de la méta-règle‘ règle utilisée ’ ’
Sherlock II : Résolveur de ProblèmesContrôle de la Résolution
Sherlock II
Sherlock II : Editeur d’ontologies
Sherlock II : Environnement de développement d’applications
Sherlock II : Aide à la découverte de connaissances
Sherlock II : Résolveur de problèmes
Sherlock II : Niveau « Méta »
Les concepts du domaine (Individu, Entreprise, Droite, …)en tant qu’instances de la métaclasse²Concept, leurs relations en tantqu’instances de la métaclasse ²Relation, etc…
Les tâches participant à larésolution en tant qu’instancesde la métaclasse ²Tâche, les règles en tant qu’instances de la métaclasse ²Règle , etc…
Tous les éléments d’une base deconnaissances sont accessibles au niveau « méta » :
Sherlock II : Niveau Méta
Les notions du niveau méta sont rangées dans des métamodèles organisés en couches :Niveau 1 : Accès aux primitives de représentation des connaissances de Résolution.
Sherlock II : Niveau Méta
Les notions du niveau méta sont rangées dans des métamodèles organisés en couches :Niveau 1 : Accès aux primitives de représentation des connaissances de Résolution.
Sherlock II : Niveau Méta
Les notions du niveau méta sont rangées dans des métamodèles organisés en couches :Niveau 1 : Accès aux primitives de représentation des connaissances de Résolution.
Sherlock II : Niveau Méta
Les notions du niveau méta sont rangées dans des métamodèles organisés en couches :Niveau 1 : Accès aux primitives de représentation des connaissances de Résolution.
Sherlock II : Niveau Méta
Les notions du niveau méta sont rangées dans des métamodèles organisés en couches :Niveau 1 : Accès aux primitives de représentation des connaissances de Résolution.
Sherlock II : Niveau Méta
Les notions du niveau méta sont rangées dans des métamodèles organisés en couches :Niveau 1 : Accès aux primitives de représentation des connaissances de Résolution.et au Modèle
Sherlock II : Niveau Méta
Sherlock II : Niveau Méta
Niveau 2 : Niveau 1 + accès aux primitives de représentation des connaissances de Domaine.
Sherlock II : Niveau Méta
Sherlock II
Sherlock II : Editeur d’ontologies
Sherlock II : Environnement de développement d’applications
Sherlock II : Aide à la découverte de connaissances
Sherlock II : Résolveur de problèmes
Sherlock II : Niveau « Méta »
Sherlock II : Aide à la découverte de connaissances
Base de cas « Connaissances » induites
FOURNIR LES STATISTIQUES SUR LES CAS
(100% des cas) couleur = orange => Irlande(100% des cas) couleur = bleu ciel => Luxembourg(100% des cas) nb bandes = 9 => Grèce(100% des cas) type = doubles bandes croisées => GB(100% des cas) motif = couronne => Liechtenstein(100% des cas) motif = croissant => Turquie…
BUT : PROPOSER UN ENSEMBLE DES REGLES DE DECISION (M.Ar)
Valeur à couvrir : France :- type = bandes verticales et bleu parmi couleur
Valeur à couvrir : Allemagne :- noir parmi couleur et type = bandes horizontales
Valeur à couvrir : Belgique :- noir parmi couleur et type = bandes verticales
Valeur à couvrir : Luxembourg :- bleu ciel parmi couleur
…
BUT : PROPOSER L’ARBRE OPTIMAL DE DISCRIMINATION (M.Av)
Si bleu parmi couleur Alors Si type = bandes horizontales Alors Si avec motif = vrai Alors Si nb bandes = 3 Alors Si croix parmi motif Alors Slovaquie Sinon Croatie Sinon Si blanc parmi couleur Alors Grèce Sinon Liechtenstein Sinon Si blanc parmi couleur Alors Hollande Sinon Roumanie Sinon Si type = bandes croisées Alors …
Sherlock II
Sherlock II : Editeur d’ontologies
Sherlock II : Environnement de développement d’applications
Sherlock II : Aide à la découverte de connaissances
Sherlock II : Résolveur de problèmes
Sherlock II : Niveau « Méta »
Connaissances
Sherlock II : Environnement de développement d’applications
Choix du MétaModèle initial
Nouvelle Base
Connaissances
KB
DTD Feuillede Style
Représentation/Codage des connaissances
Sherlock II : Environnement de développement d’applications
KB
Modèle (.KB) ou MétaModèle (.MKB)
Export
Import
XML
Connaissances
Import/Export de modèleset métamodèles
Sherlock II : Environnement de développement d’applications
Exécution KB
Traces
faits
faitsmoteur
Objets ‘dynamiques’
Bases de règles ‘dynamiques’
Lancement de la résolution
Sherlock II : Environnement de développement d’applications
Paramètres d’exécution
Fichier des Instances créées au lancementde l’exécution
Fichiers des Bases de Règles chargéesavant l’exécution de la Tâche Principale
Sherlock II : Environnement de développement d’applications
Traitement des incohérences survenues à l’exécution
Sherlock II : Environnement de développement d’applications
Paramètres d’exécution
Actions à effectuer à la finde la Tâche Principale
Sherlock II : Environnement de développement d’applications
Paramètres d’exécution
Sherlock II : Environnement de développement d’applications
Paramètres d’exécution