EP2593909A1 - Processeur d'analyse situationnelle - Google Patents

Processeur d'analyse situationnelle

Info

Publication number
EP2593909A1
EP2593909A1 EP20110730694 EP11730694A EP2593909A1 EP 2593909 A1 EP2593909 A1 EP 2593909A1 EP 20110730694 EP20110730694 EP 20110730694 EP 11730694 A EP11730694 A EP 11730694A EP 2593909 A1 EP2593909 A1 EP 2593909A1
Authority
EP
Grant status
Application
Patent type
Prior art keywords
data
memory
characterized
situations
inference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP20110730694
Other languages
German (de)
English (en)
Inventor
Jean-Pierre Malle
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
M8
Malle Jean-Pierre
Original Assignee
M8
Jean-Pierre Malle
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computer systems utilising knowledge based models
    • G06N5/04Inference methods or devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30286Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
    • G06F17/30587Details of specialised database models
    • G06F17/30592Multi-dimensional databases and data warehouses, e.g. MOLAP, ROLAP
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computer systems utilising knowledge based models
    • G06N5/02Knowledge representation
    • G06N5/022Knowledge engineering, knowledge acquisition

Abstract

La présente invention concerne un dispositif de traitement de données caractérisé en ce qu'il comprend en combinaison: une mémoire (10) organisée d'une part en deux espaces, l'un contenant des attributs décrivant les données stockées, et l'autre contenant des liens de connexité entre les données stockées, et d'autre part suivant une ou plusieurs dimensions associées chacune à des attributs et divisées en un ou plusieurs segments hiérarchisés, les données étant renseignées en créant, supprimant ou modifiant des valeurs d'attributs caractérisant ces segments; des moyens (11) d'intégration d'un ou plusieurs flux entrants d'information qui analysent ces flux pour déterminer les données qui les composent et pour structurer ces données et leurs attributs conformément à l'organisation de ladite mémoire (10); un moteur (14) d'inférence mettant en œuvre en parallèle ou en série des règles (141) d'inférences regroupées dans des bibliothèques (15), lesdites règles (141) étant programmées pour régénérer une séquence comprenant au moins un segment de la mémoire, en créant, supprimant ou modifiant lors de leur mise en œuvre dans au moins un espace de la mémoire au moins une donnée et/ou au moins une valeur d'attribut et/ou au moins un lien de connexité, des moyens (13) d'allocation de ressources activant ou désactivant les règles (141) d'inférence en fonction d'une règle de priorité, des moyens (12) d'extraction de données, identifiées par programmation et/ou par au moins une valeur d'attribut choisie et/ou au moins un lien de connexité choisi; et/ou localisées dans un ou plusieurs segments choisi de la mémoire (10), vers un ou plusieurs flux sortants d'information. La présente invention concerne également un système de traitement d'informations et un produit programme d'ordinateur à ce sujet.

Description

Titre : Processeur d'analyse situationnelle

DOMAINE TECHNIQUE GENERAL La présente invention concerne un dispositif de traitement de données conçu pour la programmation de systèmes experts ou de systèmes d'intelligence artificielle simulant le raisonnement humain en pouvant mettre en œuvre des raisonnements par induction.

Plus précisément elle concerne un dispositif de traitement de données dédié notamment aux traitements statistiques, au forage de données ("datamining" dans la terminologie anglo-saxonne), à la conception d'outils d'aide à la décision, aux diagnostics, à la prévision ou à l'approximation, à la conception de simulateurs, de systèmes d'apprentissage automatique ou d'aide à l'apprentissage et d'une manière générale la conception de systèmes d'analyse de situations ou analyse situationnelle.

ETAT DE L'ART Les processeurs informatiques permettent depuis plus de 50 ans d'effectuer en des temps toujours plus courts des millions de calculs. Par leur puissance, ils sont de plus en plus utilisés comme outils d'analyse et de prédiction.

Cependant, l'architecture de traitement des données mise en œuvre par les processeurs présente des limitations et des contraintes. Un processeur prend en entrée des séquences de bits, les transforme à travers des séries de portes logiques, et en déduit une autre séquence de bits en sortie. C'est la série de portes logiques qui détermine le calcul qu'effectue le processeur. Cette série, prédéterminée dans le programme, dépend d'un modèle impiémenté par l'utilisateur selon les règles de la logique formelle, et basé sur des situations connues. Ces modèles peuvent prendre des formes extrêmement variées, depuis les modèles quantitatifs pour la finance de marché jusqu'aux modèles mécaniques pour l'ingénierie. Le principe z, généra! consiste à analyser des phénomènes réels pour prévoir des résultats à partir de l'application d'un ou plusieurs modèles à un niveau d'approximation donné.

A l'intérieur du modèle un processeur s'avère très performant, mais reste d'une part incapable de sortir des limites dudit modèle et demeure également nécessairement contraint par les limites inhérentes aux règles de la logique algorithmique. De plus, si le modèle présente des imperfections dès l'origine, celles-ci affecteront la qualité des résultats, voire la pertinence du modèle lui-même.

Une autre approche connue a consisté à développer des dispositifs de traitement de données à l'architecture inspirée de la structure physique du cerveau humain sous la forme de réseau de neurones artificiels. Ce type d'architecture, dont la fonction est déterminée par la structure du réseau, met en œuvre un processus d'apprentissage qui permet d'acquérir, de stocker et d'utiliser des connaissances en utilisant notamment le principe d'induction par inférence.

Différents types de réseau de neurones ont été développés qui se sont avérés pour certains plus efficaces que les architecture à processeur classique notamment dans le traitement des signaux et des informations (télécommunications, finances, météorologie), les traitements de nature statistique (marketing), le classement et la reconnaissance de forme

(imagerie, reconnaissance de caractères).

Ces architectures produisent cependant des résultats qui restent très dépendants d'une part de la structure du réseau (les types de réseaux différent selon leur topologie, les fonctions d'agrégation et/ou de seuillage utilisées) et d'autre part du modèle d'apprentissage choisi qui rend nécessaire une phase d'ajustement du réseau.

La présente invention propose un dispositif de traitement de données alternatif qui, à travers l'observation de situations, permet d'analyser des données, et de prédire d'autres situations, sans être dépendant d'un modèle ou d'une structure d'implémentation physique ou logique.

On entend ici par "situation" une information plus ou moins complexe et plus ou moins floue décrivant une action ou un état particulier. La situation est issue d'une observation par un être humain ou une machine et peut être autant réelle qu'imaginaire,

PRESENTATION DE L'INVENTION

La présente invention propose un dispositif de traitement de données, son architecture pouvant être physique ou logique et formant un processeur d'analyse situationneile.

Pour cela est proposé un dispositif de traitement de données caractérisé en ce qu'il comprend en combinaison :

- une mémoire organisée

d'une part en deux espaces, l'un contenant des attributs décrivant les données stockées, et l'autre contenant des liens de connexité entre les données stockées,

et d'autre part suivant une ou plusieurs dimensions associées chacune à des attributs et divisées en un ou plusieurs segments hiérarchisés, les données étant renseignées en créant, supprimant ou modifiant des valeurs d'attributs caractérisant ces segments ;

- des moyens d'intégration d'un ou plusieurs flux entrants d'information qui analysent ces flux pour déterminer les données qui les composent et pour structurer ces données et leurs attributs conformément à l'organisation de ladite mémoire ;

- un moteur d'inférence mettant en œuvre en parallèle ou en série des règles d'inférences regroupées dans des bibliothèques, lesdites règles étant programmées pour régénérer une séquence comprenant au moins un segment de la mémoire, en créant, supprimant ou modifiant lors de leur mise en œuvre dans au moins un espace de la mémoire au moins une donnée et/ou au moins une valeur d'attribut et/ou au moins un lien de connexité,

- des moyens d'allocation de ressources activant ou désactivant les règles d'inférence en fonction d'une règle de priorité,

- des moyens d'extraction de données, identifiées par programmation et/ou par au moins une valeur d'attribut choisie et/ou au moins un lien de connexité choisi ; et/ou localisées dans un ou plusieurs segments choisi de la mémoire, vers un ou plusieurs flux sortants d'information.

Selon d'autres caractéristiques avantageuses et non limitatives de l'invention :

- la mémoire est organisée en au moins trois dimensions, dont au moins une dimension temporelle associant aux données un ou plusieurs attributs permettant de dater la mémorisation des données, une dimension idiosyncratique associant aux données un ou plusieurs attributs permettant de déterminer la spécificité relative des données, une dimension conceptuelle associant aux données un ou plusieurs attributs permettant de hiérarchiser les données selon des niveaux d'abstraction ;

- le premier espace de la mémoire contenant des attributs des données est constitué par des niveaux pairs identifiés comme des niveaux de situations, et le second espace de la mémoire contenant des relations entre données est constitué par des niveaux impairs identifiés comme des niveaux de connexités ;

- au moins une règle d'inférence mise en œuvre par le moteur d'inférence induit un niveau d'abstraction 2k+1 de connexité à partir d'un niveau d'abstraction 2k de situation et/ou un niveau d'abstraction 2k+2 d'hypersituation à partir d'un niveau d'abstraction 2k+1 de connexité ;

- la règle de priorité mise en œuvre par les moyens d'allocation de ressource est fonction de la hiérarchie des segments de mémoire à régénérer, de paramètres prédéfinis des règles d'inférence et d'intervalle séparant les occurrences d'activation des règles d'inférence ;

- la mémoire est connectée à un espace de stockage de masse dans lequel des segments peuvent être sauvegardés ;

- les moyens d'extraction de données choisissent des situations singulières, des situations ayant varié, et des situations prévisionnelles plausibles.

Ce dispositif innovant ouvre de grandes perspectives dans de nombreux domaines économiques utilisant des outils d'analyse, de prédiction et de simulation. Il est capable de façon autonome de recevoir en entrée un ou plusieurs flux situationnels, d'en extraire des situations, de distinguer les éléments importants et de lui appliquer en continu des traitements, de détecter des phénomènes et de prévoir des évolutions de solutions, notamment par induction.

Les avantages sont multiples : ce dispositif n'est pas contraint par un modèle ou une architecture d'impiémentation, et s'adapte donc en permanence. Il est capable, à l'instar du cerveau humain, de se concentrer sur l'essentiel en gérant ses ressources. Enfin, ses possibilités apparaissent bien plus universelles que celles de n'importe quel système expert actuel, cloisonné dans un domaine particulier.

Le dispositif selon l'invention est asynchrone, non déterministe, et s'avère ni connexionniste ni computationniste puisque sa puissance est à la fois dans sa structure et sa logique. Il accepte un fonctionnement séquentiel comme parallèle.

La présente invention propose selon un deuxième aspect une implémentation physique de processeur d'analyse situationnelie, à savoir un système de traitement d'informations comprenant au moins une unité de traitement, au moins une unité de mémoire, une première interface avec au moins un flux d'information d'entrant et une deuxième interface avec au moins un flux d'informations sortant, caractérisée en ce qu'elle met en œuvre l'architecture du dispositif de traitement selon le premier aspect de l'invention.

Selon d'autres caractéristiques avantageuses et non limitatives de l'invention :

- ladite unité de traitement comprend au moins un processeur muiti-cœur ;

- ladite unité de traitement impiémente une structure de réseau neuronal.

La présente invention propose selon un troisième aspect un produit programme d'ordinateur comprenant des instructions de code de programme qui lorsqu'elles sont exécutées, mettent en œuvre l'architecture du dispositif selon le premier aspect de l'invention. BREVE DESCRIPTION DES FIGURES

D'autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description qui va suivre d'un mode de réalisation préférentiel. Cette description sera donnée en référence aux dessins annexés dans lesquels :

- la figure 1 est un schéma d'un mode de réalisation d'un dispositif selon l'invention;

- la figure 2 est un schéma d'un mode de réalisation avantageux d'une mémoire situationnelle utilisée par l'invention.

- La figure 3 est un schéma montrant comment le dispositif selon l'invention peut s'intégrer dans un environnement informatique. DESCRIPTION DETAILLEE D'UN MODE DE REALISATION PREFERE

Comme indiqué plus haut, l'unité élémentaire en analyse situationnelle est la situation. Celle-ci peut être plus ou moins vraie (pour les situations « passées »), plus ou moins plausible (pour les situations « futures »).

Les situations sont composées d'objets informatifs qui ont été nommés ici « situatrons ». Chaque situatron est une donnée manipulabie et peut être présent dans une ou plusieurs situations. Il est décrit par un ensemble d'attributs, les « indices », qui peuvent être plus ou moins précis ou cohérents. Ces attributs peuvent évoluer au cours du temps.

Ainsi, « Matthieu rédige une demande de brevet » est une situation. On peut décrire cette situation selon plusieurs points de vue et selon différents niveaux de détail. Ainsi « La souris noire de l'ordinateur de Matthieu » compose également une situation nous informant sur la situation générale. Dans cette situation, la souris noire, l'ordinateur, la demande de brevet et Matthieu sont des situatrons.

A un niveau de détail encore plus fin, le fait que la souris soit connectée à l'ordinateur et le fait que Matthieu possède cet ordinateur composent deux situations particulières à partir de ces mêmes situatrons. Les informations contenues dans ces situations peuvent être codées de la manière suivante : OBJ(sourisOOI ) ; situatron SOURIS

IDCicouleur, sourisOOl , noire) ; attribut COULEUR noire

OBJ(ordinateurOOI ) ; situatron ORDINATEUR

SIT(connecté, sourisOOl , ordinateurOOl ) ; situation SOURIS connectée à i'ORDINATEUR

HUM(userOOI ) ; situatron UTILISATEUR

IDG(prenom, userOOl , Matthieu) ; attribut PRENOM Matthieu

SIT(utiliser, ordinateurOOl , userOOl ) ; situation l'UTILISATEUR Matthieu utilise I'ORDINATEUR Dans cet exemple il a été choisi de manière arbitraire que les codes

OBJ (Objet) et HUM (Humain) identifient des situatrons, en permettant la distinction entre objets et personnes. Le code IDC (Indice) permet d'associer un attribut à un situatron et le code SIT (Situation) de décrire une situation composée à partir des situatrons précédemment définis. L'invention n'est toutefois pas limitée à cette syntaxe en particulier, et l'homme du métier saura l'adapter, notamment en introduisant d'autres codes, par exemple SPA (espace) qui désignerait un lieu.

Les situations peuvent ainsi ne pas être codées en langage naturel pour échapper aux ambiguïtés inhérentes aux vocabulaires courants. La syntaxe utilisée pour décrire les situations est arbitraire mais doit être adaptée aux outils informatiques. Avantageusement, le langage choisi est un métaiangage, en particulier le langage XML (langage extensible de balisage ou Extensible Markup Language dans la terminologie anglo- saxonne).

Le dispositif 1 de traitement selon l'invention est capable de travailler sur les situations et les situatrons décrits sous cette forme.

Ce qui va suivre est une description avantageuse d'un mode de réalisation de ce dispositif 1 , en référence au schéma représenté figure 1 . Il comprend une mémoire organisée 10, des moyens 1 1 d'intégration d'un flux entrant d'information, un moteur d'inférence 14, des moyens 13 d'allocation de ressources, des moyens 12 d'extraction de données vers un flux sortant d'information,

Mémoire

La mémoire 10 est une mémoire situationnelle, structurée pour conserver les données nécessaires à l'analyse situationnelle. Cette mémoire 10 s'organise en deux espaces. Le premier espace contient les attributs des données stockées, c'est-à-dire directement des situations, des situatrons, ou des groupes de situations ou situatrons. Le second espace contient des liens de connexité entre les données stockées, c'est-à-dire les relations de connexité entre les situations et situatrons du premier espace.

Les liens de connexités seront établis dès lors que des situatrons seront présents dans des situations communes, ou partagent des indices communs. Ainsi, dans l'exemple précédent, le fait d'être connecté à un ordinateur créé un lien de connexité entre différentes souris.

Ce deuxième espace est un espace dual du premier, en effet c'est un espace de fonctions induit.

Les situatrons, les attributs d'un situatron et les liens de connexités sont donc induits de l'observation et créés ainsi au fur et à mesure que l'on acquiert de l'information ou que l'on induit des situations non observées, ils peuvent être supprimés quand ils deviennent obsolètes, et ils peuvent être modifiés s'ils évoluent ou s'ils s'avèrent inexacts. Leurs types ne sont pas prédéfinis, et peuvent s'adapter à toute circonstance.

La mémoire 10 possède une organisation spécifique, dont un exemple est représenté sur la figure 2. Cette organisation suit une ou plusieurs dimensions, associées chacune à des attributs, et divisées en un ou plusieurs segments hiérarchisés. Chaque segment est caractérisé par une ou plusieurs valeurs d'attribut ou plages de valeurs d'attributs particulières. Les données sont renseignées en créant, supprimant ou modifiant les valeurs d'attributs caractérisant ces segments, ce qui leur définit une place dans la mémoire 10.

En particulier, ces dimensions sont au nombre de trois dans le mode de réalisation préféré. Cela entraîne une organisation sous forme d'un assemblage de cubes 101 , chaque cube étant caractérisé par une combinaison unique d'un segment par dimension.

- la première dimension est une dimension temporelle, et permet de dater la mémorisation des données. La date de la mémorisation de la donnée (date d'observation) reste distincte de la date des faits portés par la situation, cette dernière pouvant faire l'objet d'un ou plusieurs attributs distincts, mais sans lien avec ceux de la dimension temporelle. Les segments de la dimension temporelle correspondent à des périodes. Elle s'étend sur l'axe X dans la figure 2.

Ainsi par exemple, les informations concernant la bataille de Marignan pourront être stockées dans la mémoire de la manière suivant :

OBS(30 avril 2010) ; date de l'observation

S ÎT(rem porter une victoire, roi001 , evenementOOl , Iieu001 ) ; situation de combat

HUM(roi001 ) ; situatron acteur

!DC(nom, roiOO « François 1 er ») ; indice associé au situatron

EVT(evenementOOI ) ; situatron événement

IDCititre, evenementOOl , « bataille de Marignan ») ; indice associé au situatron

IDCidate, evenementOOl , 1515) ; indice associé au situatron

SPA(iieu001 ) ; situatron de lieu

IDC(pays, Iieu001 , « Italie ») ; indice associé au situatron

Dans cet exemple on peut établir une segmentation temporelle de la mémoire en définissant les périodes suivante :

Segment 1 - Futur = tout ce qui est à venir

Segment 2 - Présent - dernières 24h Segment 3 - Passé proche = 3 jours précédents

Segment 4 - Passé intermédiaire = dans le mois

Segment 5 - Passé lointain = reste Alors, à la date du 7 mai 2010, la scène situationnelle sur la bataille de Marignan, observée le 30 avril 2010, se retrouvera dans le segment 4.

Si le même jour (7 mai 2010) des informations sur Marignan sont introduites qui précisent que les Suisses ont été vaincus lors de cette bataille le 13 septembre, elles pourront elles-mêmes être stockées de la manière suivante :

OBS(7 mai 2010) ;

SITYperdre une bataille, armeeOQI , evenementOOl ) ;

GRP(armeeOOI ) ;

IDC(nom, armeeOOl , « Suisses ») ;

IDC(date, evenementOOl , 13 septembre 1515) ; modification de l'indice

Ces nouvelles informations se logent dans le segment 2 et font remonter intégralement le situatron evenementOOl dans le segment 2.

Le découpage de la mémoire en segments temporels permet ainsi de conserver une image « historique » de chaque situation qui peut se représenter, dans notre exemple de Marignan, de la manière suivante :

Segment 2 :

SIT(perdre une bataille, armeeOOl , evenementOOl )

GRP(armeeûÛI )

IDC(nom, armeeOOl , « Suisses »)

EVT(evenement0Q1 )

IDC(titre, evenementOOl , « bataille de Marignan »)

IDC(date, evenementOOl , 13 septembre 1515)

Segment 4 :

SIT(remporter une victoire, roi001 , evenementOOl , Iieu001 ) HUM(roi001 )

!DC(nom, roiQO « François I er »)

SPA(iieuOOI )

IDCipays, Iieu001 , « Italie »)

- la seconde dimension est une dimension idiosyncratique. Par « idiosyncratique », on signifie « qui constitue la spécificité, la singularité de quelqu'un ou quelque chose ». Cette dimension est en effet liée au niveau d'incidence, qui englobe de façon générale tout critère rendant une donnée remarquable, et en particulier la singularité ou la spécificité relative des données. Pour revenir à notre exemple des souris, une « souris orange » sera un situatron avec une forte singularité dans un univers où l'on observe généralement des souris blanches. Cette dimension s'étend sur l'axe Y dans la figure 2.

- la troisième dimension est une dimension conceptuelle. Elle associe aux données un ou plusieurs attributs permettant de hiérarchiser les données selon des niveaux d'abstraction. Chaque niveau d'abstraction définit un segment de la dimension conceptuelle, qu'on appelle un plan d'abstraction 100. Ces plans 100 s'étendent sur l'axe Z et représentent des formes de plus en plus évoluées de connaissance situationnelle au fur et à mesure que l'on gagne les couches supérieures. Avantageusement, la dualité de la mémoire est implémentée sous la forme d'une alternance de pians de situations 100a et de pians de connexité 100b : l'ensemble des niveaux pairs 100a est une partition de l'espace de situations, et l'ensemble des niveaux impairs 100b est une partition de l'espace de connexité,

* Le niveau 0 contient des situations, des situatrons et des groupes de situations et de situatrons. Exemple : 2 souris noires souris001 et souris002 ; 2 ordinateurs ordi001 et ordi002 ; 2 utilisateurs user001 et user002 ; 2 situations « connecté » ; 2 situations « utiliser » ;

* Le niveau 1 contient des relations de connexité entre les situations et les situatrons du premier niveau. En continuant l'exemple précédent il s'agira, pour la première série de situations et de situatrons, des liens de connexité entre : SourisOOl et ordiOOl ; OrdiOOl et userOOl ; UserOOl et sourisOOl (ce dernier lien étant induit) ;

* Le niveau 2 contient des hypersituations, des hypersituatrons et des groupes d'hypersituations et hypersituatrons induits par une analyse des connexités du second niveau. A partir du lien de connexité du niveau inférieur, on peut induire un hypersituatron SOURIS ou ORDINATEUR ou

UTILISATEUR, ainsi que des hypersituations CONNECTE et UTILISER, Au niveau des hypersituatrons on peut donc, par exemple, CONNECTER la SOURIS à ^ORDINATEUR et UTILISER l'ORDINATEUR par l'UTILISATEUR. ;

* Le niveau 3 l'hyperconnexité qui correspond aux liens de connexités établis entre les hypersituatrons et les hypersituations du niveau 2 ;

* Et ainsi de suite ...

Avantageusement, la mémoire 10 est connectée à un espace de stockage de masse 16 dans lequel tout ou partie de cette mémoire peut être sauvegardés. Par exemple, dans le mode de réalisation préférée dans lequel la mémoire est organisée selon trois dimensions sous forme d'un assemblage de cube, ce sont des cubes mémoire qui seront sauvegardés. Cette interaction avec un espace de stockage de masse est avantageusement mise en oeuvre sous forme d'une permutation (« swapping » en terminologie anglo-saxonne) par l'homme du métier. Elle permet de travailler à la fois sur plusieurs contextes en passant de l'un à l'autre, ou encore de travailler avec des mémoires situationnelles de taille plus importante que celle de la capacité d'adressage du processeur.

Intégrateur

Le dispositif 1 comprend des moyens 1 1 d'intégration d'un ou plusieurs flux entrants d'information. Ces moyens 1 1 d'intégration (ou intégrateur situationnel) reconnaissent dans le ou les flux d'information des situations se rapprochant des situations déjà présentes dans la mémoire 10. De nouvelles situations et nouveaux situations sont produits à partir des données des flux. Ces données sont structurées et leurs attributs définis conformément à l'organisation de la mémoire 10.

Pour prendre un exemple, l'intégrateur situationnel pourrait être un module qui lit des listes de ventes de souris d'ordinateurs présentées sous forme de flux XML sur les ports d'entrée. Il interprète les flux et sépare les informations pour :

* Placer les situations et les situatrons dans la mémoire 10 ; * Placer les instructions dans le concentrateur de traitement 13.

Dans le cas d'un mode de réalisation dans lequel la mémoire est divisée en plusieurs dimensions et segments, l'intégrateur charge avantageusement les situations et les situatrons dans :

* Le segment de temporalité contenant la date courante (« Présent ») ;

* Le segment idiosyncratique de niveau d'incidence le plus fort ;

* Le segment d'abstraction déterminé selon le paramétrage de l'intégrateur ; Moteur d'inférence

Grâce aux moyens 1 1 d'intégration, la mémoire 10 contient des données. Un moteur 14 d'inférence met en œuvre des traitements qui vont s'appliquer à tout ou partie de la mémoire 10. Ces traitements sont chargés depuis une bibliothèque 15 et sont appelés règles 141 d'inférence. A chaque lancement de règles, une séquence comprenant au moins un segment de mémoire va être balayée, et la mémoire associée régénérée. Par régénérer, on entend ici créer, supprimer ou modifier au moins une donnée et/ou au moins une valeur d'attribut et/ou au moins un lien de connexité dans au moins un espace de la mémoire. En particulier, dans le mode de réalisation préféré décrit ici, un traitement effectuable par le moteur 14 d'inférence sur un niveau d'abstraction 100 peut s'appliquer aux niveaux de même parité.

Toutefois tout système informatique dispose d'une capacité finie, et l'application récursive des traitements prendrait rapidement un temps exponentiel. C'est pourquoi chaque traitement ne concerne en général qu'une partie de la mémoire 10. Des segments sont traités en priorité, puis d'autres suivant la séquence décrite précédemment, avant qu'un autre traitement ne devienne plus prioritaire (voir « concentrateur » plus bas). Les traitements peuvent d'ailleurs être exécutés en série comme en parallèle.

Les règles 141 d'inférence englobent tous les traitements qu'il peut être intéressant d'appliquer. Le choix de ces règles 141 dépend des effets recherchés, et est à l'appréciation de l'homme du métier en fonction du domaine d'application pour lequel l'architecture est mise en œuvre.

Les exemples suivants de règles 141 possibles peuvent être cités : - L'« unification » consiste à reconnaître dans un situatron récent un situatron plus ancien ou dans une situation une situation déjà connue et effectuer la substitution et le cas échéant le complément d'information par fusion des éléments.

- La « temporalisation » consiste à glisser les situations et les situatrons concernés d'un segment temporel vers un autre.

- La « réduction » consiste à supprimer des indices de situatrons au fur et a mesure qu'ils glissent dans des segments de passé. Cette opération repose sur l'usage constaté des indices.

- La « banalisation » consiste à glisser des situatrons et des situations entre les niveaux d'importance. Le glissement peut être des deux sens selon que la chose devient banale ou que son importance se renforce compte tenu des évolutions des autres situations.

- L' « agrégation » consiste à rassembler plusieurs situatrons ne nécessitant plus d'être discernés en un agrégat unique héritant des propriétés principales des situatrons et de les remplacer par l'agrégat chaque fois que cela est possible. - La « prédiction » consiste à appliquer des phénomènes situationnels sur des situations constatées afin de prévoir les situations à venir.

- La « réalisation » consiste à trouver dans le présent des situations répondant aux prévisions effectuées et de les rapprocher.

- La « plausabiiisation » consiste à préférer dans les situations prévues celles connexes à des situations passées ayant été réalisées.

En particulier, dans le cas d'un mode de réalisation avec des couches d'abstraction alternées, on utilise une règle permettant d'induire un niveau d'abstraction 2k+1 de connexité à partir d'un niveau d'abstraction 2k de situation et une règle permettant d'induire un niveau d'abstraction 2k+2 d'hypersituation à partir d'un niveau d'abstraction 2k+1 de connexité, c'est- à-dire de générer un niveau supérieur à partir du précédent.

Pour la première de ces deux règles, de nombreuses possibilités existent notamment : les nouveaux liens de connexité peuvent être déduits selon des règles de connexité déclarées dans la bibliothèque, induits de l'observation et de la généralisation de connexités du passé, statistiques selon les connexités distribuées dans la mémoire situationnelle, probabilistes sur des sous ensembles bayesiens, génétiques par mutation des cercles de connexité antérieurs, etc.

La seconde de ces deux règles consiste plus simplement en une généralisation d'un groupe de situations et situatrons à partir d'un nombre de cas de connexités plus ou moins grand en fonction du niveau d'importance.

Concentrateur

Des moyens 13 d'allocation de ressources (ou concentrateur) gèrent la répartition des temps de traitement entre les différents traitements. Pour cela, ils disposent d'une loi de priorité selon laquelle ils activent ou désactivent les règles 141 d'inférence. Il ne doit jamais y avoir trop de règles actives à la fois, sous peine de dépasser la capacité du système. La loi de priorité permet à la fois une hiérarchie spatiale des cubes mémoire 101 à traiter, et une hiérarchie temporelle des règles 141 à lancer.

Dans un cas comme dans l'autre, de nombreux paramètres sont pris en compte. Avantageusement, cette répartition s'effectue selon un critère dit « d'essentialité ». A tout instant, on calcule le critère d'essentiaiité pour une règle et on lance la ou les règles pour lesquelles il est maximal si elles ne sont pas encore activées. En cas de lancement d'une règle, on calcule alors le critère d'essentialité sur les cubes mémoire 101 (à traiter par ladite règle), on génère la séquence en triant les segments selon une essentialité décroissante, et on traite les cubes selon cette séquence, celle-ci s'interrompant en cas de désactivation de la règle.

Tout d'abord, l'essentialité des cubes mémoire dépend de paramètres prédéfinis inhérents à la règle en cours. Par exemple les plus grands groupes de situations seront préférés pour des règles visant à établir des liens de connexité. En outre, avantageusement, les cubes de mémoire les plus abstraits, les plus récents, et les plus singuliers auront l'essentialité maximale, également par analogie avec la réflexion humaine.

Ensuite, l'essentialité des règles dépend également de paramètres prédéfinis hiérarchisant les règles, à contexte égal. Mais surtout l'essentialité d'une règle 141 d'inférence dépend de l'intervalle séparant ses occurrences d'activation. Plus la règle est inactive depuis longtemps, plus son essentialité augmente. Cela permet d'effectuer régulièrement toutes les sortes de traitement.

Dans un mode de réalisation préférentiel on peut concevoir le concentrateur comme une pile de traitements dans laquelle les traitements les plus essentiels se situent en haut de la pile, les moins essentiels en bas. Le dernier traitement arrivé se place en fin de pile avec l'essentialité du segment « présent ».

Dans ce mode, le concentrateur balaye selon une fréquence fixe toute la pile et recalcule à chaque cycle le niveau d'essentialité des traitements en fonction de différents paramètres. Les paramètres suivants peuvent par exemple être retenus : - D : leur délai d'attente. A chaque passage du concentrateur, D est incrémenté d'une quantité fixe, par exemple 0,25 ;

- T : la temporalité du cube de mémoire associé. T prend une valeur représentant l'ordre du segment de temporalité (de 1 à N, 1 caractérisant le segment le plus ancien)

- I : l'incidence du cube de mémoire associé. I prend une valeur représentant l'ordre du segment d'incidence (de 1 à N, 1 caractérisant le segment de moindre incidence) ;

- A : le niveau d'abstraction du cube de mémoire associé. A prend une valeur représentant l'ordre du niveau d'abstraction (de 1 à N, 1 caractérisant le niveau le plus bas).

L'essentiaiité E peut alors avantageusement être représentée par la formule suivante : E = D + I + T + A. ou par toute autre formule du type E- f(D, I, T, A), notamment E = d*D + i*l + t*T + a*A avec (d, i, t, a) des coefficients adaptés.

L'invention n'est toutefois limitée ni à un mode de calcul spécifique de l'essentiaiité, ni à une liste prédéfinie de paramètres. En outre, dans le mode de réalisation décrit, les traitements peuvent être caractérisés afin de contrôler leur mode d'exécution par le concentrateur. Ainsi, chaque traitement peut par exemple être défini comme unique ou comme permanent : un traitement unique sortira de la pile lorsqu'il sera réalisé alors qu'un traitement permanent réalisé se replace en queue de pile et sera reconduit. Il peut également être défini comme actif ou comme différé : un traitement actif est pris en charge par le concentrateur alors qu'un traitement différé patiente dans la pile en attendant son heure, le concentrateur ignorant les traitements différés qui ne sont pas arrivés à terme. Un traitement différé permanent peut également être défini comme devant être lancé à date fixe ou selon une fréquence fixe.

Révélateur Des moyens 12 d'extraction de données (ou révélateur) permettent de délivrer un flux informatif grâce auquel l'on pourra collecter les résultats des nombreux cycles de traitement effectués par le moteur 14 d'inférence sur la mémoire 10, Les moyens 12 identifient des données à l'intérieur de la mémoire 10 selon différents principes non exclusifs les uns des autres. Ainsi les données ciblées peuvent être définies selon des valeurs d'attribut, ou leur appartenance à un groupe connexe. D'un autre coté, c'est leur place dans la mémoire qui peut être importante, dans ce cas les moyens 12 d'extraction écoutent un plusieurs cubes mémoire. Les critères d'extraction peuvent également être prédéfinis arbitrairement par programmation.

Avantageusement, le flux informatif composé par les moyens 12 d'extraction de données est composé:

- d'une part d'alertes : dans ce cas les moyens d'extraction sont aptes à sélectionner des situations singulières (nouvelles, anormales) ou des situations ayant varié (phénomènes situationnels) ;

- et d'autre part de mises en situations : Ces dernières correspondent à des situations prévisionnelles prédites et présentes dans les cubes mémoire des segments à venir et plausibles.

Processeur physique d'analyse situationnelle

L'invention propose selon un second aspect un système de traitement de l'information. Il s'agit d'une implémentation physique de l'architecture du dispositif 1 de traitement selon le premier aspect de l'invention. Ce système de traitement de l'information est par exemple sous la forme d'un co-processeur.

Le système de traitement comprend une unité de traitement, dédiée à l'exécution des règles 141 d'inférence. Avantageusement c'est un co- processeur muiticoeur. En effet, comme on a vu l'analyse situationnelle permet le traitement parallèle des données, avec la possibilité d'activer simultanément plusieurs règles. Alternativement, cette unité de traitement peut implémenter un réseau neuronal autour de plusieurs « cellules » élémentaires de traitement. Un tel réseau est particulièrement adapté à l'apprentissage.

Le système de traitement comprend également une unité de mémoire, par exemple une mémoire vive de type RAM, C'est là que sera hébergée la mémoire 10 de l'architecture situationnelle, Optionnellement, le système comprend également une mémoire de masse 16, tel un disque dur, pour pouvoir effectuer la permutation de données décrite précédemment.

Deux interfaces sont aussi nécessaire, l'une pour le ou les flux entrants d'information à destination des moyens 1 1 d'intégration, et l'autre pour le ou les flux sortants d'information fournis par les moyens 12 d'extraction de données.

Outre cette implémentation physique, un co-processeur d'analyse situationnelle peut être purement logique, et être émulé en tant que programme d'un poste de travail. Dans ce dernier cas, l'invention concerne un produit programme d'ordinateur comprenant des instructions de code de programme qui lorsqu'elles sont exécutées, mettent en œuvre l'architecture de processeur d'analyse situationnel précédemment décrit.

Environnement du processeur d'analyse situationnel

Qu'elle soit physique ou logique, l'architecture du dispositif 1 de traitement de données par analyse situationnelle s'intègre facilement à d'autres architectures pour réaliser des outils performants, comme le montre la figure 3, Les moyens 1 1 d'intégration d'information peuvent s'adapter tout particulièrement à internet à travers lequel les données à récupérer sont abondantes. Par exemple, les données peuvent être générées par le parcours d'un ou plusieurs clients dans un magasin. Il peut être intéressant de comprendre les situations dans lesquels ils se placent lors d'un achat, ou justement d'un non-achat.

Les résultats de l'analyse situationnels, obtenus via les moyens 12 d'extraction de données peuvent être transmis au client lui- même, par exemple pour l'aider à faire son choix : s'il cherche une souris d'ordinateur, l'analyse des situations des précédents acheteurs peut lui permettre de déterminer un produit qui iui conviendra. Les données peuvent aussi bien entendu être transmises et exploitées par des experts, en particulier les alertes sur des situations anormales.

Les applications de l'analyse situationnelles s'avèrent toutefois extrêmement vastes, notamment dans le monde de l'internet.

Claims

REVENDICATIONS
1. Dispositif (1 ) de traitement de données caractérisé en ce qu'il comprend en combinaison :
- une mémoire (10) organisée
d'une part en deux espaces, l'un contenant des attributs décrivant les données stockées, et l'autre contenant des liens de connexité entre les données stockées,
et d'autre part suivant une ou plusieurs dimensions associées chacune à des attributs et divisées en un ou plusieurs segments hiérarchisés, les données étant renseignées en créant, supprimant ou modifiant des valeurs d'attributs caractérisant ces segments ;
- des moyens (1 1 ) d'intégration d'un ou plusieurs flux entrants d'information qui analysent ces flux pour déterminer les données qui les composent et pour structurer ces données et leurs attributs conformément à l'organisation de ladite mémoire (10) ;
- un moteur (14) d'inférence mettant en œuvre en parallèle ou en série des règles (141 ) d'inférences regroupées dans des bibliothèques (15), lesdites règles (141 ) étant programmées pour régénérer une séquence comprenant au moins un segment de la mémoire, en créant, supprimant ou modifiant lors de leur mise en uvre dans au moins un espace de la mémoire au moins une donnée et/ou au moins une valeur d'attribut et/ou au moins un lien de connexité,
- des moyens (13) d'allocation de ressources activant ou désactivant les règles (141 ) d'inférence en fonction d'une règle de priorité,
- des moyens (12) d'extraction de données, identifiées par programmation et/ou par au moins une valeur d'attribut choisie et/ou au moins un lien de connexité choisi ; et/ou localisées dans un ou plusieurs segments choisi de la mémoire (10), vers un ou plusieurs flux sortants d'information.
2. Dispositif selon la revendication précédente, caractérisé en ce que la mémoire (10) est organisée en au moins trois dimensions, dont au moins une dimension temporelle associant aux données un ou plusieurs attributs permettant de dater la mémorisation des données, une dimension idiosyncratique associant aux données un ou plusieurs attributs permettant de déterminer la spécificité relative des données, une dimension conceptuelle associant aux données un ou plusieurs attributs permettant de hiérarchiser les données selon des niveaux d'abstraction (100).
3. Dispositif selon la revendication précédente, caractérisé en ce le premier espace de la mémoire contenant des attnbuts des données est constitué par des niveaux pairs (100a) identifiés comme des niveaux de situations, et le second espace de la mémoire contenant des relations entre données est constitué par des niveaux impairs (100b) identifiés comme des niveaux de connexités.
4. Dispositif selon la revendication précédente, caractérisée en ce qu'au moins une règle d'inférence mise en œuvre par le moteur d'inférence induit un niveau d'abstraction 2k+1 de connexité à partir d'un niveau d'abstraction 2k de situation et/ou un niveau d'abstraction 2k+2 d'hypersituation à partir d'un niveau d'abstraction 2k+1 de connexité.
5. Dispositif selon l'une des revendications précédentes, caractérisé en ce que la règle de priorité mise en œuvre par les moyens (13) d'allocation de ressource est fonction de la hiérarchie des segments de mémoire à régénérer, de paramètres prédéfinis des règles (141 ) d'inférence et d'intervalle séparant les occurrences d'activation des règles (141 ) d'inférence.
6. Dispositif selon l'une des revendications précédentes, caractérisé en ce que la mémoire est connectée à un espace de stockage de masse dans lequel des segments peuvent être sauvegardés.
7. Dispositif selon l'une des revendications précédentes, caractérisé en ce que les moyens (12) d'extraction de données choisissent des situations singulières, des situations ayant varié, et des situations prévisionnelles plausibles,
8. Système de traitement d'informations comprenant au moins une unité de traitement, au moins une unité de mémoire, une première interface avec au moins un flux d'information d'entrant et une deuxième interface avec au moins un flux d'informations sortant, caractérisée en ce qu'elle met en œuvre l'architecture du dispositif de traitement selon l'une des revendications précédentes.
9. Système selon la revendication précédente, caractérisée en ce que ladite unité de traitement comprend au moins un processeur multi- cœur.
10. Système selon l'une des revendications 8 ou 9, caractérisée en ce que ladite unité de traitement implémente une structure de réseau neuronal.
11. Produit programme d'ordinateur comprenant des instructions de code de programme qui lorsqu'elles sont exécutées, mettent en œuvre l'architecture du dispositif selon l'une des revendications 1 à 7.
EP20110730694 2010-07-13 2011-07-13 Processeur d'analyse situationnelle Pending EP2593909A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1055703A FR2962823B1 (fr) 2010-07-13 2010-07-13 Processeur d'analyse situationnelle
PCT/EP2011/061910 WO2012007489A1 (fr) 2010-07-13 2011-07-13 Processeur d'analyse situationnelle

Publications (1)

Publication Number Publication Date
EP2593909A1 true true EP2593909A1 (fr) 2013-05-22

Family

ID=43532608

Family Applications (1)

Application Number Title Priority Date Filing Date
EP20110730694 Pending EP2593909A1 (fr) 2010-07-13 2011-07-13 Processeur d'analyse situationnelle

Country Status (5)

Country Link
US (1) US9349097B2 (fr)
EP (1) EP2593909A1 (fr)
CN (1) CN103262103B (fr)
FR (1) FR2962823B1 (fr)
WO (1) WO2012007489A1 (fr)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2994297B1 (fr) 2012-08-01 2015-06-19 Netwave Procede de traitement de donnees de connexion d'une plateforme d'un site internet
FR2994358B1 (fr) * 2012-08-01 2015-06-19 Netwave Systeme de traitement de donnees de connexion a une plateforme d'un site internet
JP6105903B2 (ja) * 2012-11-09 2017-03-29 キヤノン株式会社 画像処理装置、画像処理方法、放射線撮影システム及びプログラム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040243529A1 (en) * 1996-03-25 2004-12-02 Stoneman Martin L. Machine computational-processing systems for simulated-humanoid autonomous decision systems
US5963653A (en) * 1997-06-19 1999-10-05 Raytheon Company Hierarchical information fusion object recognition system and method
US7630986B1 (en) * 1999-10-27 2009-12-08 Pinpoint, Incorporated Secure data interchange
US7016877B1 (en) * 2000-08-04 2006-03-21 Enfotrust Networks, Inc. Consumer-controlled limited and constrained access to a centrally stored information account
FR2850512B1 (fr) * 2003-01-28 2005-03-11 Medialive Procede et systeme automatiques et adaptatifs d'analyse et d'embrouillage pour des flux video numeriques
JP4038501B2 (ja) * 2003-09-02 2008-01-30 株式会社東芝 逆モデル計算装置及び逆モデル計算方法
US7668824B2 (en) * 2004-03-01 2010-02-23 Denso Corporation Interface device, inferring system, and visual expression method
US7290238B2 (en) * 2004-05-12 2007-10-30 International Business Machines Corporation Method, system and program product for building an automated datapath system generating tool
CA2564746A1 (fr) * 2005-10-21 2007-04-21 James J. Kinard Methode et appareil pour enseigner une pensee mathematique rigoureuse
US20070192267A1 (en) * 2006-02-10 2007-08-16 Numenta, Inc. Architecture of a hierarchical temporal memory based system
US8126685B2 (en) * 2006-04-12 2012-02-28 Edsa Micro Corporation Automatic real-time optimization and intelligent control of electrical power distribution and transmission systems
US8452663B2 (en) * 2006-05-04 2013-05-28 Sap Ag Systems and methods for processing auto-ID data
FI20070159A0 (fi) * 2007-02-23 2007-02-23 Teknillinen Korkeakoulu Menetelmä informaation integrointiin, valintaan ja esityksen oppimiseen
WO2009006231A1 (fr) * 2007-06-29 2009-01-08 Numenta, Inc. Système de mémoire temporelle hiérarchique avec capacité d'inférence améliorée
US20090150907A1 (en) * 2007-12-07 2009-06-11 Microsoft Corporation Mapping between disparate data models via anonymous functions
US8655817B2 (en) * 2008-02-20 2014-02-18 Digital Medical Experts Inc. Expert system for determining patient treatment response
US8539359B2 (en) * 2009-02-11 2013-09-17 Jeffrey A. Rapaport Social network driven indexing system for instantly clustering people with concurrent focus on same topic into on-topic chat rooms and/or for generating on-topic search results tailored to user preferences regarding topic
US20100235803A1 (en) * 2009-03-16 2010-09-16 Lara Gramark Method and Apparatus for Automatically Connecting Component Interfaces in a Model Description
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2012007489A1 *

Also Published As

Publication number Publication date Type
WO2012007489A1 (fr) 2012-01-19 application
US20130179389A1 (en) 2013-07-11 application
CN103262103B (zh) 2016-05-04 grant
US9349097B2 (en) 2016-05-24 grant
FR2962823B1 (fr) 2012-08-17 grant
CN103262103A (zh) 2013-08-21 application
FR2962823A1 (fr) 2012-01-20 application

Similar Documents

Publication Publication Date Title
Mierswa et al. Yale: Rapid prototyping for complex data mining tasks
Shalizi et al. Computational mechanics: Pattern and prediction, structure and simplicity
Azvine et al. Real time business intelligence for the adaptive enterprise
Thrun Explanation-based neural network learning: A lifelong learning approach
Boutilier Toward a Logic for Qualitative Decision Theory.
Sharkey Combining artificial neural nets: ensemble and modular multi-net systems
Laird The Soar cognitive architecture
US7249117B2 (en) Knowledge discovery agent system and method
US7493294B2 (en) Mutually adaptive systems
Neville et al. Collective classification with relational dependency networks
Freitas A survey of evolutionary algorithms for data mining and knowledge discovery
Krawiec Genetic programming-based construction of features for machine learning and knowledge discovery tasks
US7539652B2 (en) Adaptive self-modifying and recombinant systems
US7606772B2 (en) Adaptive social computing methods
Utgoff et al. Many-layered learning
US6473851B1 (en) System for combining plurality of input control policies to provide a compositional output control policy
Glover et al. Iterated local search
Kuncheva Classifier ensembles for changing environments
Kuokka et al. Matchmaking for information agents
Črepinšek et al. Exploration and exploitation in evolutionary algorithms: A survey
González Muñoz et al. Multi-stage genetic fuzzy systems based on the iterative rule learning approach
US20040030741A1 (en) Method and apparatus for search, visual navigation, analysis and retrieval of information from networks with remote notification and content delivery
Urbanowicz et al. Learning classifier systems: a complete introduction, review, and roadmap
Giordana et al. Search-intensive concept induction
US20050177593A1 (en) Dynamic adaptive distributed computer system

Legal Events

Date Code Title Description
17P Request for examination filed

Effective date: 20130213

AK Designated contracting states:

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAX Request for extension of the european patent (to any country) deleted
17Q First examination report

Effective date: 20180122