Table des matières

CbO : Déroulement sur un exemple

Introduction

Les deux principes majeurs de CbO sont :

Donc, on commence par fermer l'extension par rapport à l'intention d'un objet (le plus petit). Si cela n'ajoute pas d'éléments déjà traités, on a un nouveau concept, qu'on rajoute au treillis. S'il reste des objets lexicographiquement plus fort dans le complémentaire de l'extension, on prend le premier et tente de l'ajouter à l'extension : intersection des intentions, puis fermeture de l'extension, et là on vérifie de nouveau qu'on a un nouveau concept par l'absence d'objet lexico. inférieur. En cas de succès (nouveau concept) on poursuit l'élargissement de l'extension dans cette branche, et ainsi de suite. Quand une branche est terminée, on passe à la suivante en prenant le prochain objet lexicographiquement plus fort dans le complémentaire de l'extension, jusqu'à épuisement.

Pour voir comment ça marche, nous allons le dérouler sur un petit exemple bien connu : les entiers de 1 à 10, et cinq propriétés :

Contexte

Objet “c”
(composite)
“e”
(paire)
“o”
(impaire)
“p”
(premier)
“s”
(carré)
1 1 1
2 1 0
3 1 1
4 1 1 1
5 1 1
6 1 1
7 1 1
8 1 1
9 1 1 1
10 1 1

Pour avoir un ordre “lexicographique”, le tableau d'entrées est ensuite trié (comme si le bloc des attributs était un nombre binaire dans le sens usuel).

Contexte trié par ordre lexicographique

Objet “c”
(composite)
“e”
(paire)
“o”
(impaire)
“p”
(premier)
“s”
(carré)
1 1 1
3 1 1
5 1 1
7 1 1
2 1 1
9 1 1 1
6 1 1
8 1 1
10 1 1
4 1 1 1

Déroulement de CbO sur ce contexte

On déroulera successivement les appels suivants, qui lanceront des parties de la construction de l'arborescence des sous-ensembles avec un nombre croissant d'éléments à partir de chacun de ces noyaux (graines) :

  1. Traiter {1}, [ o, s]
  2. Traiter {3}, [ o, p]
  3. Traiter {5}, [ o, p]
  4. Traiter {7}, [ o, p]
  5. Traiter {2}, [ e, p]
  6. Traiter {9}, [ c, o, s]
  7. Traiter {8}, [ C, e]
  8. Traiter {6}, [ c, e]
  9. Traiter {10}, [ c, e]
  10. Traiter {4}, [ c, e, s]

Chaque fois qu'on retrouvera des éléments lexicographiquement inférieur lorsqu'on ferme, on saura que le concept a déjà été engendré à partir de cette graine lexicographiquement inférieur et on arretera le développement de cette branche.

Traiter {1}, [ o, s]

Traiter {3}, [ o, p]

Traiter {5}, [ o, p]

Branche morte : déjà engendrée par la fermeture de {3}, se qui se repère par la présence de {3} dans la fermeture.

Traiter {7}, [ o, p]

Branche morte : déjà engendrée par la fermeture de {3}, se qui se repère par la présence de {3} dans la fermeture.

Traiter {2}, [ e, p]

Traiter {9}, [ c, o, s]

Traiter {6}, [ c, e]

Traiter {8}, [ c, e]

Traiter {10}, [ c, e]

Traiter {4}, [ c, e, s]

Fin

Résumé de concepts rajoutés au treillis

  1. ( {1, 9}, [ o, s])
  2. ( {1, 9, 3, 5, 7 },[ O ] )
  3. ( {1, 9, 4}, [ s ] )
  4. ( {3, 5, 7}, [o, p] )
  5. ( {3, 5, 7, 2}, [ p ])
  6. ( {2 }, [ e, p])
  7. ( {2, 6, 8, 10, 4},[ e ] )
  8. ( {9 }, [ c, o, s] )
  9. ( {9, 6, 8, 10, 4 }, [ c ] )
  10. ( {9, 4 }, [ c, s ] )
  11. ( {6, 8, 10, 4}, [ c, e ] )
  12. ( {4 }, [ c, e, s] )

Illustration de Wikipedia

This is a file from the Wikimedia Commons.