25
Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier 2 Florence Le Ber CEVH (ENGEES - ULP) et Orpailleur (LORIA Nancy)

Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Embed Size (px)

Citation preview

Page 1: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Variations sur … Treillis de Galois pour

la classification de connaissances et la modélisation

par objets

Marianne Huchard,LIRMM, CNRS et Université Montpellier 2

Florence Le BerCEVH (ENGEES - ULP) et Orpailleur (LORIA

Nancy)

Page 2: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

2

Plan

Introduction Treillis de Galois (notions de base) Analyse relationnelle de concepts

Application à l’ingénierie des modèles Généralisation de relations spatiales

Application aux SIG Conclusion et perspectives

Page 3: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

3

Introduction (du besoin de classer dans les AOO)

Représentation de connaissances Classification courante

une façon naturelle d'organiser les connaissances des mécanismes bien établis dans les systèmes de

représentation (RCO et LD)

Problématiques manipuler les propriétés des objets / concepts pour le

raisonnement et la résolution de problème relier le domaine terminologique et le domaine concret

(concepts/données) analyser les données à partir du modèle du domaine construire des modèles d'un domaine à partir de données

Page 4: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

4

Introduction (du besoin de classer dans les AOO)

Génie Logiciel Classifications courantes

Frameworks, Packages Relation de spécialisation/généralisation

Problématiques Regroupement d’entités Calcul de vues abstraites sur le logiciel Calcul de nouvelles généralisations

Un modèle théorique utile FCA/treillis de Galois

Page 5: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

5

Treillis de Galois/treillis de concepts

Barbut/Monjardet 1970

f1 f2 f3 f4 f5

C1 x

C2 x x

C3 x x x

C4 x x x

Concept

({C3,C4},{f1,f3})

Spécialisation

({C3,C4},{f1,f3})

({C2,C3,C4},{f3})

Extraction d’abstractions à partir d’un ensemble d’entités décrites par des caractéristiques

Contexte binaire

Page 6: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

6

f1 f2 f3 f4 f5

C1 x

C2 x x

C3 x x x

C4 x x x

({C4},{f1,f3,f5})

({C2,C3,C4},{f3})({C1,C3,C4},{f1})

({C2},{f2,f3})

({C3},{f1,f3,f4})

({C1,C2,C3,C4},{})

({C3,C4},{f1,f3})

({},{f1,f2,f3,f4,f5})

Treillis de Galois/treillis de concepts

(notions de base)

Treillis associé au contexte

Page 7: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

7

Analyse relationnelle de concepts

(RCA)

Extension de FCA pour prendre en compte des entités décrites par des relations avec d’autres entités

Collaboration avec France Télécom R&D : M. Dao UDM : P. Valtchev, M. Rouane Hacène LIRMM/UDM : C. Roume LIRMM : C. Nebut, J.R. Fallery

Page 8: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

name ownedAttribute

type

BasicAccount (BA) ‘BasicAccount’

{bba,o}

TeenagerAccount (TA) ‘TeenagerAccount’

{bta,mw}

BasicAccountHolder (BAH)

‘BasicAccountHolder’

{bal}

TeenagerClient (TC) ‘TeenagerClient’

{tal}

balance from BA (bba) ‘balance’

balance from TA (bta) ‘balance’

overdraft (o) ‘overdraft’

maxWithdrawal (mw) ‘maxWithdrawal’

bAccountList (bal) ‘bAccountList’

{BA}

tAccountList (tal) ‘tAccountList’

{TA}

Analyse relationnelle de concepts

Un contexte d’application : modèles conceptuels (UML)

TeenagerAccountbalance

maxWithdrawal

BasicAccountbalance

overdraft

BasicAccountHolder

bAccountList : BasicAccount[1.*]

TeenagerClient

tAccountList : TeenagerAccount[1.*]

7

Classes UML Modélisation naïve en FCA

Page 9: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

name

‘BasicAccount’

.

.

.

name

‘balance’

.

.

.

name

‘tAccountList’

ownedAttribute (oa)

bba

oa

bta

oa

o

oa

mw

oa

bal

oa

tal

type

BA

type

TA

BA X X X

TA X X

BAH

X

TC X

bba X

bta X

o

mw

bal X

tal X X

Analyse relationnelle de concepts

(scaling contexte binaire un seul concept)

8

Page 10: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Analyse relationnelle de concepts

(Basic FCA : maigre moisson d’abstractions)

TeenagerAccountbalance

maxWithdrawal

BasicAccountbalance

overdraftBasicAccountHolder

bAccountList : BasicAccount[1.*]

TeenagerClient

tAccountList : TeenagerAccount[1.*]

balance

specializes

Une abstraction d’attribut …

9

Page 11: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Analyse relationnelle de concepts

(RCA : recueil de meilleures abstractions)

TeenagerAccount

maxWithdrawal

BasicAccount

overdraft

BasicAccountHolder

bAccountList : BasicAccount[1.*]

TeenagerClient

tAccountList : TeenagerAccount[1.*]

BankAccount

balance

BankClient

accountList:BankAccount

10

Page 12: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Analyse relationnelle de concepts

(Formalisation)

Relational Context Family (RCF)(K,R)

K ensemble de contextesK = {Kclass,Kproperty}

R ensemble de relations entre entités des contextes

R = {type,ownedAttribute}

OwnedAttribute

bba

bta

o mw

bal tal

BA X X

TA X X

BAH X

TC X

Kclass

name‘BasicAccount’

name‘TeenagerAccount’

name‘BasicAccou

ntHolder’

name‘TeenagerClient’

BA X

TA X

BAH X

TC X

KProperty

name‘balance’

… name‘tAccou

ntList’

bba X

bta X

o ..

mw ..

bal ..

tal X

type

BA TA

bba

bta

o

mw

bal X

tal X11

Page 13: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Analyse relationnelle de concepts

(Construction itérative de treillis)

Kclass

name‘BasicAccount’

name‘TeenagerAccount’

name‘BasicAccoun

tHolder’

name‘TeenagerClient’

BA X

TA X

BAH X

TC X

KProperty

name‘balance’

… name‘tAccount

List’

bba X

bta X

o ..

mw ..

bal ..

tal X

type C1 C2

bba

bta

o

mw

bal X

tal X

OwnedAttribute

Ca Cb Cc Cd Ce Cf

BA X X

TA X X

BAH X

TC X

Treillis des classes

Treillis des propriétés

12

Page 14: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Analyse relationnelle de concepts

KProperty

name‘balance’

… name‘tAccou

ntList’

bba X

bta X

o ..

mw ..

bal ..

tal X

type

BA TA

bba

bta

o

mw

bal X

tal X

bba,bta,o,mw,bal,tal

name=…., type=…

bba,btaname=‘balance’

ExtentIntent

oname=‘overdraft’

mwname=‘maxWithdrawal’

balname=‘bAccountList’type=BA

talname=‘tAccountList’type=TA

Cbbabta Co CmwCbal Ctal

13

Page 15: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

Analyse relationnelle de concepts

OwnedAttribute

Cbbabta

Co Cmw

Cbal Ctal

BA X X

TA X X

BAH X

TC X

Kclass

name‘BasicAccount’

name‘TeenagerAccount’

name‘BasicAccou

ntHolder’

name‘TeenagerClient’

BA X

TA X

BAH X

TC X

bba,bta,o,mw,bal,tal

name=…., type=…

bba,btaname=‘balance’

ExtentIntent

oname=‘overdraft’

mwname=‘maxWithdrawal’

balname=‘bAccountList’type=BA

talname=‘tAccountList’type=TA

Cbbabta Co CmwCbal Ctal

14

Scaling « relationnel »

(BA,bba) OwnedAttribute1

et bba Extent(Cbbabta)

(BA,Cbbabta) OwnedAttribute2

Page 16: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

OwnedAttribute

Cbbabta

Co Cmw

Cbal Ctal

BA X X

TA X X

BAH X

TC X

Kclass

name‘BasicAccount’

name‘TeenagerAccount’

name‘BasicAccou

ntHolder’

name‘TeenagerClient’

BA X

TA X

BAH X

TC X

BA,TA,BAH,TC

name=…., ownedAttribute=…

BAname=‘BasicAccount’

ownedAttribute=Cbbabta,Co

ExtentIntent

TAname=‘TeenagerAccount’

ownedAttribute=Cbbabta,Cmw

BAHname=‘BasicAcHolder’ownedAttribute=Cbal

TCname=‘TeenAccount’ownedAttribute=Ctal

CBA CTA CBAH CTC

BA,TAownedAttribute=Cbbabta

CBATA

15

Page 17: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

KProperty

name‘balance’

… name‘tAccou

ntList’

bba X

bta X

o ..

mw ..

bal ..

tal X

type

CBA CTA CBATA

bba

bta

o

mw

bal X X

tal X X

BA,TA,BAH,TC

name=…., ownedAttribute=…

BAname=‘BasicAccount’

ownedAttribute=Cbbabta,Co

ExtentIntent

TAname=‘TeenagerAccount’

ownedAttribute=Cbbabta,Cmw

BAHname=‘BasicAcHolder’ownedAttribute=Cbal

TCname=‘TeenAccount’ownedAttribute=Ctal

CBA CTA CBAH CTC

BA,TAownedAttribute=Cbbabta

CBATA

16

Page 18: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

bal,taltype= CBATA

KProperty

name‘balance’

… name‘tAccou

ntList’

bba X

bta X

o ..

mw ..

bal ..

tal X

type

CBA CTA CBATA

bba

bta

o

mw

bal X X

tal X X

bba,bta,o,mw,bal,tal

name=…., type=…

bba,btaname=‘balance’

ExtentIntent

oname=‘overdraft’

mwname=‘maxWithdrawal’

balname=‘bAccountList’type=CBA,CBATA

talname=‘tAccountList’

type=CBA,CBATA

Cbbabta Co Cmw Cbal Ctal

Cbaltal

17

Page 19: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

OwnedAttribute

Cbbabta

Co Cmw

Cbal Ctal Cbaltal

BA X X

TA X X

BAH X X

TC X X

Kclass

name‘BasicAccount’

name‘TeenagerAccount’

name‘BasicAccou

ntHolder’

name‘TeenagerClient’

BA X

TA X

BAH X

TC X

bba,bta,o,mw,bal,tal

name=…., type=…

bba,btaname=‘balance’

ExtentIntent

oname=‘overdraft’

mwname=‘maxWithdrawal’

balname=‘bAccountList’type=CBA,CBATA

talname=‘tAccountList’

type=CBA,CBATA

Cbbabta Co Cmw Cbal Ctal

bal,taltype=CBATA

Cbaltal

18

Page 20: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

OwnedAttribute

Cbbabta

Co Cmw

Cbal Ctal Cbaltal

BA X X

TA X X

BAH X X

TC X X

Kclass

name‘BasicAccount’

name‘TeenagerAccount’

name‘BasicAccou

ntHolder’

name‘TeenagerClient’

BA X

TA X

BAH X

TC X

BA,TA,BAH,TC

name=…., ownedAttribute=…

BAname=‘BasicAccount’

ownedAttribute=Cbbabta,Co

ExtentIntent

TAname=‘TeenagerAccount’

ownedAttribute=Cbbabta,Cmw

BAHname=‘BasicAcHolder’ownedAttribute=Cbal, Cbaltal TC

name=‘TeenAccount’ownedAttribute=Ctal, Cbaltal

CBA CTA CBAH

CTC

BA,TAownedAttribute=Cbbabta

CBATA

BAH,TCownedAttribute=Cbaltal

CBAHTC

19

Page 21: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

BA,TA,BAH,TC

BAname=‘BasicAccount’

ownedAttribute=Cbbabta,Co

ExtentIntent

TAname=‘TeenagerAccount’

ownedAttribute=Cbbabta,Cmw

BAHname=‘BasicAcHolder’ownedAttribute=Cbal, Cbaltal TC

name=‘TeenAccount’ownedAttribute=Ctal, Cbaltal

CBA CTA CBAH

CTC

BA,TAownedAttribute=Cbbabta

CBATA

BAH,TCownedAttribute=Cbaltal

CBAHTC

TeenagerAccount

maxWithdrawal

BasicAccount

overdraft

BasicAccountHolder

bAccountList : BasicAccount[1.*]

TeenagerClient

tAccountList : TeenagerAccount[1.*]

BankAccount

balanceBankClient

accountList:BankAccount

Page 22: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

bba,bta,o,mw,bal,tal

bba,btaname=‘balance’

ExtentIntent

oname=‘overdraft’

mwname=‘maxWithdrawal’

balname=‘bAccountList’type=CBA,CBATA

talname=‘tAccountList’

type=CBA,CBATA

Cbbabta Co Cmw Cbal Ctal

bal,taltype=CBATA

Cbaltal

TeenagerAccount

maxWithdrawal

BasicAccount

overdraft

BasicAccountHolder

bAccountList : BasicAccount[1.*]

TeenagerClient

tAccountList : TeenagerAccount[1.*]

BankAccount

balanceBankClient

accountList:BankAccount

Page 23: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

23

Analyse relationnelle de concepts

Méthode générique dans la plateforme Galicia http://www.iro.umontreal.ca/~galicia

Implémentation dans l’atelier Objecteering (pour UML)

Se généralise à toutes les entités UML (associations, opérations, etc.)

Page 24: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

24

Analyse relationnelle de concepts

Une expérience de généralisation sur des modèles France Télécom R&D Projet RNTL MACAO

http://www.lirmm.fr/~macao 3 modèles ~ 40 à 60 classes ~ millier d’éléments Obtention d’une forme « normale » Génération ~ un peu plus d’un millier d’éléments UML Analyse « artisanale » avec les concepteurs des modèles

d’origine Simplification des modèles Découvertes d’incohérences

Page 25: Variations sur … Treillis de Galois pour la classification de connaissances et la modélisation par objets Marianne Huchard, LIRMM, CNRS et Université Montpellier

RIA's 2006 20 & 21 mars 2006

25

Analyse relationnelle de concepts

Perspectives théoriques définition analytique, efficacité,

nombre d’itérations Perspectives applicatives

paramétrage, traçabilité, visualisation et manipulation des résultats

logique de description, autres langages de représentation …