Brevet FR2902907A1 — publié le 20071228

Procédé de recherche d'informations sur un réseau intranet, extranet, internet ou toute autre source de diffusion d'informations numériques et moteur de recherche pour la mise en oeuvre dudit procédé. La présente invention concerne le domaine des moteurs de recherche d'informations dans au moins une source de diffusion d'informations numériques, tel que sur un réseau informatique intranet, extranet ou internet, lesdites informations consistant en des informations contenues dans des pages web d'un ou plusieurs sites internet par exemple. Dans le domaine de l'informatique, on connaît bien des réseaux d'ordinateurs sous la forme de réseaux intranet, extranet et internet. Ces réseaux permettent aux ordinateurs de communiquer entre eux des informations au moyen de protocoles de communication tels que TCP/IP ou bien encore HTTP selon les acronymes anglo-saxon Transmission Control Protocol/internet Protocol et respectivement Hypertext Transfer Protocol Internet est incontestablement le plus grand réseau d'ordinateurs qui permet un accès à un très grand nombre d'informations. Ces informations se présentent soit sous la forme de bases de données soit sous la forme de documents connus sous la forme de pages web ou d'une pluralité de pages regroupées sous la forme d'un site internet . Lesdites pages web et lesdits sites internet se trouvent sur des serveurs distants sur lesquels un ordinateur personnel dit PC peut se connecter au moyen d'un protocole de communication au travers d'une ligne téléphonique, d'un réseau cablé ou similaire. La consultation des pages web s'effectue au moyen d'un programme d'ordinateur dit navigateur ou browser qui possède une interface utilisateur graphique. Ces pages web comportent généralement des liens dits hyperliens qui permettent de créer des liens vers d'autres pages web que les utilisateurs peuvent consulter par les utilisateurs par des commandes simples, par exemple par pointage et par un clic de souris sur le lien dans le navigateur. Par ailleurs, ces pages web peuvent être construites avec des syntaxes très diverses telles que le langage à balises à hypertexte HTML selon l'acronyme anglo-saxon Hypertext Markup Language ou le langage à balises extensible XML selon l'acronyme anglo-saxon eXtensible Markup Language , et peuvent comprendre des informations sous la forme d'un texte, d'une image, d'une vidéo ou de sons. Afin de trouver des informations parmi le grand nombre d'informations disponibles sur Internet, on à mis au point des outils de recherche dits moteurs de recherche qui sont des algorithmes étudiant électroniquement le contenu des pages web et créant un index et une base de données en fonction de cette étude. Ces moteurs de recherche se présentent communément sous la forme d'une page web dans laquelle un ou plusieurs champs de recherche peuvent être remplis par l'utilisateur. La recherche peut être de type booléenne ou par langage naturelle. On entend par algorithme une séquence d'opérations, sous la forme d'un programme d'ordinateur, pour l'exécution d'une tâche. De manière habituelle, les bases de données sont crées par recherche dans Internet et par une copie locale de chaque page ou l'aspect d'une page dans une mémoire ou par la collecte des soumissions des fournisseurs de pages web . Certains aspects seulement des pages web peuvent être copiés tels que l'adresse URL selon l'acronyme anglo-saxon Uniform Resource Locator , le titre ou le texte. Chaque page résultante est généralement indexée pour permettre une consultation ultérieure. De cette manière, lorsqu'une requête est formulée sur un moteur de recherche, ce dernier recherche dans son propre index et sa base de données et non pas dans l'ensemble des pages web d'internet en temps réel. Les résultats de la recherche sont généralement présentés sous la forme de copies des pages web ou d'une page web comportant des hyperliens vers les pages trouvées lors de la recherche. La plupart des moteurs de recherche connus utilisent une technologie de recherche automatique pour indexer les résultats des recherchent qui mettent en oeuvre des descriptions invisibles des sites appelées méta-étiquettes dont les auteurs sont les éditeurs du site internet. Compte tenu du fait que les éditeurs des sites internet sont peuvent choisir librement l'énoncé de ces méta-étiquettes, de nombreuses pages internet comportent des méta-étiquettes identiques. Ainsi, il est difficile pour les moteurs de recherche de fournir des résultats pertinents. Afin de remédier à cet inconvénient, les moteurs de recherche comportent des algorithmes pour classer par catégorie les pages web . Toutefois, certains éditeurs de sites internet incorporent dans les méta-étiquettes de leurs sites internet des termes de recherche populaires qui n'ont aucun lien avec le contenu des pages web de leur site de sorte que les moteurs de recherche fournissent des résultats comportant de nombreuses pages web indésirables dites pages spam . On noter que ces pages sont appelées spam lorsqu'elles comprennent un moyen quelconque apte à prendre en faute les moteurs de recherche ou les algorithmes d'indexation. Par ailleurs, on connaît également des moteurs de recherche qui transmettent, à partir d'un même serveur, une même requête à plusieurs sites internet prédéterminés en utilisant un logiciel tel que le logiciel Cold Fusion (marque déposée) de la société américaine ALLAIRE par exemple. Les informations correspondant à la requête sont transmises au serveur puis traitées pour supprimer les faux amis et/ou les doublons. Toutefois, certains sites internet sont construits avec des syntaxes particulières de sorte que les informations ne peuvent pas être collectées 25 par cette méthode. L'un des buts de l'invention est donc de remédier à ces inconvénients en proposant un procédé de recherche d'informations sur un réseau intranet, extranet, internet ou analogue et un moteur de recherche pour la mise en oeuvre dudit procédé permettant de procurer des résultats 30 pertinents et avantageusement classés en fonction de leur pertinence notamment. Conformément à l'invention, il est proposé un procédé de recherche d'informations dans au moins une source de diffusion d'informations numériques, remarquable en ce qu'il consiste au moins dans les étapes suivantes de : - sélection d'au moins une source d'informations, -transmission d'instructions de collecte des informations à au moins un module satellite autonome depuis un module central, - collecte des informations à partir du ou des modules satellites, - transmission des informations collectées par le ou les satellites au module central, et -traitement des informations collectées. Selon une caractéristique essentielle du procédé suivant l'invention, le module central transmet à chaque module des instructions distinctes de collecte des informations et les instructions de collecte transmises à un module satellite concernent tout ou partie d'une unique source d'information. Par ailleurs, les informations collectées par les modules satellites sont traitées par au moins un module de traitement autonome apte à recevoir les informations collectées transmises par le module central. De plus, tout ou partie des informations collectées par les modules satellites et transmises au module central sont enregistrées dans au moins une base de données dite locale. Lesdites informations enregistrées dans la base de données locale sont enregistrées dans un fichier comportant au moins un marqueur. Ce marqueur est une donnée informatique générée par un algorithme en fonction de l'adresse de la source d'informations et/ou des informations collectées et/ou du contexte, c'est-à-dire de l'utilisation finale prévue des informations après traitement, et/ou de la question posée. Selon une autre caractéristique essentielle du procédé suivant l'invention, le traitement des informations collectées consiste en un traitement dit contextuel dépendant de la destination des informations par au moins un module de traitement autonome piloté par le module central et comporte au moins les étapes suivantes de : - détection d'une ou plusieurs informations dites cibles dans les informations collectées par les modules satellites, - corrélation entre lesdites informations cibles, - classement desdites informations cibles, - enregistrement desdites informations traitées sous la forme d'un fichier informatique dans une base de données locale. L'étape de corrélation consiste au moins dans les étapes suivantes de : - attribution d'au moins un coefficient dit de proximité à chaque information cible en fonction du contexte, - attribution d'un coefficient dit de valorisation à chaque information cible en fonction de la fiabilité de la source d'informations et/ou du contexte et/ou de la pertinence de l'information cible au regard du contexte et/ou de l'occurrence de l'information lors de l'étape de collecte ou de traitement des informations. Un autre objet de l'invention concerne un moteur de recherche d'informations dans au moins une source de diffusion d'informations numériques, pour la mise en oeuvre du procédé suivant l'invention ; ledit moteur de recherche est remarquable en ce qu'il comporte au moins un algorithme constituant un module dit satellite, autonome, pour collecter des informations sur une source d'informations à partir d'instructions de collecte transmise par un module central, au moins un algorithme constituant un module de traitement des informations collectées, au moins une base de données locale dans laquelle les informations collectées et/ou traitées sont enregistrées. De manière avantageuse, chaque module satellite comporte un navigateur internet intégré afin de communiquer avec des serveurs distants et/ou le module central. Chaque module de traitement comporte au moins un algorithme de détection d'une ou plusieurs informations dites cibles dans les informations collectées par les modules satellites, au moins un algorithme de corrélation entre lesdites informations cibles, et un algorithme de classement desdites informations cibles. Par ailleurs, il comporte des moyens de présentation des informations collectées et/ou traitées à la suite d'une requête d'un utilisateur D'autres avantages et caractéristiques ressortiront mieux de la description qui va suivre du procédé de recherche d'informations dans une source de diffusion d'informations numériques conforme à l'invention, à partir des dessins annexés sur lesquels : - la figure 1 est un bloc diagramme des différentes étapes du procédé conforme à l'invention, - la figure 2 est un bloc diagramme des différentes étapes de traitement des informations collectées du procédé suivant l'invention, - la figure 3 est une représentation schématique des différents modules du moteur de recherche mettant en oeuvre le procédé suivant l'invention. En référence à la figure 1, le procédé de recherche d'informations suivant l'invention comporte une première étape 100 de sélection d'au moins une source d'informations. Ces sources d'information consistent en des sources d'information numériques sous forme de bases de données 110 cryptées ou non dans un format quelconque, tel que Oracle, MySQL, SQL Server, des pages internet dans un langage quelconque, tel qu'en langage html, java, XML, etc... Le procédé comporte ensuite une étape 200 de transmission d'instructions de collecte des informations numériques dans la ou les sources d'informations préalablement sélectionnées. Ces instructions de collecte sont transmises à au moins un module satellite autonome depuis un module central, lesdits modules satellites se connectant à la source d'informations qui lui est allouée puis générant des requêtes d'interrogation sur ladite source d'informations. Ces instructions de collecte dépendent notamment de la requête de recherche d'un utilisateur qui a remplit en langage naturel, ou qui a sélectionné des questions dans un menu déroulant, dans le champ d'un formulaire d'une interface graphique d'un site internet par exemple. Dans une étape 300, les informations correspondant aux requêtes sont collectées à partir du ou des modules satellites puis lesdites informations collectées sont transmises, dans une étape 400, par le ou les modules satellites au module central. Les informations collectées sont soit traitées, dans une étape 500, par au moins un module de traitement le module central soit enregistrées dans une première base de données pour une utilisation ultérieure. Tout ou partie des informations collectées par les modules satellites et transmises au module central sont alors enregistrées dans au moins une base de données dite locale. Les informations collectées sont enregistrées dans la base de données locale dans un fichier informatique comportant au moins un marqueur. Ledit marqueur est une donnée informatique générée par un algorithme en fonction de l'adresse de la source d'informations numériques et/ou des informations collectées et/ou du contexte, c'est-à-dire de l'utilisation finale prévue des informations traitées, et/ou de la question posée par l'utilisateur. On entend par algorithme une partie d'un programme d'ordinateur comportant un enchaînement d'actions nécessaires à l'accomplissement d'une tâche. Les informations traitées sont ensuite soit enregistrées dans une seconde base de donnée soit affichées sur un écran de visualisation, étape 600, tel qu'un écran d'ordinateur PC, un écran de téléphone mobile ou similaire. L'étape 500 de traitement des informations collectées, en référence à la figure 2, consiste en un traitement dit contextuel dépendant de la destination des informations par au moins un module de traitement autonome piloté par le module central et comporte une première étape 700 de détection d'une ou plusieurs informations dites cibles dans les informations collectées par le ou les modules satellites enregistrées ou non dans une base de données locale. L'étape de traitement des données comporte ensuite une étape 800 de corrélation entre lesdites informations cibles qui se décompose en une étape 810 d'attribution d'au moins un coefficient dit de proximité à chaque information cible en fonction du contexte et en une étape 820 d'attribution d'un coefficient dit de valorisation à chaque information cible en fonction de la fiabilité de la source d'informations et/ou du contexte et/ou de la pertinence de l'information cible au regard du contexte et/ou de l'occurrence de l'information lors de l'étape de collecte ou de traitement des informations. Lesdits coefficients de proximité et de valorisation sont enregistrées dans le fichier contenant chaque information cible, ce dernier étant enregistré soit dans une mémoire soit dans une base de donnée locale. Par ailleurs, on comprend bien que, entre deux requêtes de recherche d'informations, les coefficients de proximité et de valorisation d'une même information cible peuvent être modifiés en fonction notamment du contexte. L'étape de traitement 500 comporte ensuite une dernière étape 900 de classement des informations cibles à partir du coefficient de valorisation et/ou du coefficient de proximité attaché à chaque information cible. En référence à la figure 3, le moteur de recherche mettant en oeuvre le procédé suivant l'invention consiste en un programme d'ordinateur comportant plusieurs modules indépendants. Ce programme d'ordinateur pourra être rédigé dans n'importe quel langage informatique bien connu de l'Homme du Métier et être utilisé sur n'importe quel système d'exploitation d'un ordinateur portable, d'un téléphone mobile, d'un PDA ou similaire. Le moteur de recherche comporte au moins un premier algorithme constituant un module dit satellite 1, autonome, pour collecter des informations sur une source d'informations numériques 2 à partir d'instructions de collecte transmise par tout moyen de transmission approprié, tel que le réseau Internet, un réseau Extranet, Ethernet ou similaire , audit module satellite 1 par un second algorithme constituant un module central 3. De préférence, chaque module satellite 1 comporte un navigateur 30 interne intégré afin de communiquer avec des serveurs distants des sources d'informations numériques et/ou le module central 3. Lesdites informations numériques consistent en des données de texte, d'image, de vidéo, de son, etc... disponible sur un serveur sous la forme d'une base de données ou de pages internet. Par ailleurs, on entend par machine tout dispositif apte à exécuter un programme d'ordinateur tel qu'un ordinateur PC, un serveur, un PDA, un téléphone portable, un automate programmable, etc... L'algorithme constituant le module central est localisé sur une première machine, tel qu'un serveur, et le ou les algorithmes constituant le ou les modules satellites sont localisés respectivement sur des machines distinctes de la machine du module central, chaque module satellite ayant une identité propre et étant localisé sur une unique machine. Le module central 3 définit des instructions de collecte propres pour chaque module satellite 1, définit la distribution desdites instructions de collecte, puis transmet ces instructions à chacun desdits module satellites 1. Ces derniers communiquent continûment avec le module central 3 pour lui indiquer d'une part leurs identités respectives et d'autre part leurs disponibilités, c'est-à-dire leurs possibilité d'exécuter de nouvelles instructions de collecte. De plus, le module central 3 comprend un algorithme de gestion des disponibilités des modules satellites afin de définir de manière optimale la meilleure distribution des instructions de collecte aux modules satellites en fonction de leurs disponibilités. Lorsque les modules satellites 1 transmettent au module central 3 les informations collectées en exécution des instructions de collecte préalablement transmises par le module central 3, ledit module central 3 enregistre la fin de l'exécution des instructions de collecte par le module satellite identifié et attribue au module satellite identifié le statut de disponible. Une telle architecture du module central 3 et des modules satellites 1 permet notamment de réduire la durée de la recherche. Le moteur de recherche comporte, par ailleurs, au moins un algorithme constituant un module de traitement 4 des informations collectées, autonome et apte à communiquer avec ledit module central 3, et au moins une base de données locale 5 dans laquelle les informations collectées et/ou traitées sont enregistrées. Les informations collectées par les modules satellites 1 et les informations traitées antérieurement par les modules de traitement 4 peuvent être enregistrées par le module central 3 dans les bases de données locales 5 pour former des bases de connaissances Chaque module de traitement 4 comporte au moins un algorithme de détection d'une ou plusieurs informations dites cibles dans les informations collectées par les modules satellites 1 et/ou traitées antérieurement par les modules de traitement 4 et enregistrées dans les bases de données locales 5 en fonction des instructions envoyées par le module central, au moins un algorithme de corrélation entre lesdites informations cible et un algorithme de classement desdites informations cibles en regroupant avantageusement les informations traitées sous la forme d'ensemble et éventuellement de sous-ensemble. L'algorithme de corrélation comporte un algorithme secondaire d'attribution d'au moins un coefficient dit de proximité à chaque information cible en fonction du contexte et un deuxième algorithme secondaire d'attribution d'un coefficient dit de valorisation à chaque information cible en fonction de la fiabilité de la source d'informations et/ou du contexte et/ou de la pertinence de l'information cible au regard du contexte et/ou de l'occurrence de l'information lors de l'étape de collecte ou de traitement des informations. De plus, le module central comporte des moyens de génération d'une interface graphique 6 interactive, telle qu'une page html par exemple, apte à être consultée par un utilisateur sur un ordinateur PC, un téléphone mobile, etc..., comportant d'une part les informations traitées 7 classées en ensembles 8,8' et sous-ensemble 9 d'informations et d'autre part un formulaire de requête 10 permettant à l'utilisateur de saisir les critères de sa recherche. Le formulaire de requête peut, par exemple, consister dans des champs de formulaire d'interrogation en langage naturel et/ou dans des champs à menu déroulant. Cette interface graphique permet également à l'utilisateur de se connecter depuis un navigateur internet, communément appelé Browser, avec le module central 3, en mode ASP par exemple, pour paramétrer le moteur de recherche et plus particulièrement la sélection des sources d'informations numériques. Le moteur de recherche suivant l'invention pourra avantageusement être utilisé pour effectuer une veille ou une analyse économique dans le domaine de l'immobilier, de l'automobile, et plus particulièrement dans les domaines des annonces immobilières et automobiles. Toutefois, il est bien évident que le procédé et le moteur de recherche mettant en oeuvre le procédé suivant l'invention pourra être adapté à d'autres domaines d'application sans pour autant sortir du cadre de l'invention. REVENDICATIONS 1 û Procédé de recherche d'informations dans au moins une source de diffusion d'informations numériques, caractérisé en ce qu'il consiste au moins dans les étapes suivantes de : - sélection d'au moins une source d'informations, - transmission d'instructions de collecte des informations à au moins un module satellite autonome depuis un module central, -collecte des informations à partir du ou des modules satellites, -transmission des informations collectées par le ou les satellites au module central, et - traitement des informations collectées. 2 û Procédé suivant la revendication précédente caractérisé en ce que le module central transmet à chaque module des instructions distinctes de collecte des informations. 3 û Procédé suivant l'une quelconque des revendications 1 ou 2 caractérisé en ce que les instructions de collecte transmises à un module satellite concernent tout ou partie d'une unique source d'information. 4 û Procédé suivant l'une quelconque des revendications 1 à 3 caractérisé en ce que les informations collectées par les modules satellites sont traitées par au moins un module de traitement autonome apte à recevoir les informations collectées transmises par le module central. 5 û Procédé suivant l'une quelconque des revendications 1 à 4 caractérisé en ce que tout ou partie des informations collectées par les modules satellites et transmises au module central sont enregistrées dans au moins une base de données dite locale. 6 û Procédé suivant la revendication 5 caractérisé en ce que les informations enregistrées dans la base de données locale sont enregistrées dans un fichier comportant au moins un marqueur. 7 û Procédé suivant la revendication 6 caractérisé en ce que ledit marqueur est une donnée informatique générée par un algorithme en fonction de l'adresse de la source d'informations et/ou des informationscollectées et/ou du contexte, c'est-à-dire de l'utilisation finale prévue des informations après traitement, et/ou de la question posée. 8 û Procédé suivant l'une quelconque des revendications 1 à 7 caractérisé en ce que le traitement des informations collectées consiste en un traitement dit contextuel dépendant de la destination des informations par au moins un module de traitement autonome piloté par le module central et comporte au moins les étapes suivantes de : - détection d'une ou plusieurs informations dites cibles dans les informations collectées par les modules satellites, - corrélation entre lesdites informations cibles, - classement desdites informations cibles, -enregistrement desdites informations traitées sous la forme d'un fichier informatique dans une base de données locale. 9 û Procédé suivant la revendication 8 caractérisé en ce que l'étape de corrélation consiste au moins dans les étapes suivantes de : - attribution d'au moins un coefficient dit de proximité à chaque information cible en fonction du contexte, - attribution d'un coefficient dit de valorisation à chaque information cible en fonction de la fiabilité de la source d'informations et/ou du contexte et/ou de la pertinence de l'information cible au regard du contexte et/ou de l'occurrence de l'information lors de l'étape de collecte ou de traitement des informations. 10 û Moteur de recherche d'informations dans au moins une source de diffusion d'informations numériques, pour la mise en oeuvre du procédé suivant l'une quelconque des revendications 1 à 7, caractérisé en ce qu'il comporte au moins un algorithme constituant un module dit satellite (1), autonome, pour collecter des informations sur une source d'informations (2) à partir d'instructions de collecte transmise par un module central (3), au moins un algorithme constituant un module de traitement (5) des informations collectées, au moins une base de données locale (5) dans laquelle les informations collectées et/ou traitées sont enregistrées.11 ù Moteur de recherche suivant la revendication 10 caractérisé en ce que chaque module satellite (1) comporte un navigateur internet intégré afin de communiquer avec des serveurs distants et/ou le module central (3). 12 ù Moteur de recherche suivant l'une quelconque des revendications 10 ou 11 caractérisé en ce que chaque module de traitement (4) comporte au moins un algorithme de détection d'une ou plusieurs informations dites cibles dans les informations collectées par les modules satellites, au moins un algorithme de corrélation entre lesdites informations cibles, et un algorithme de classement desdites informations cibles. 13 ù Moteur de recherche suivant l'une quelconque des revendications 10 à 12 caractérisé en ce qu'il comporte des moyens de présentation (6) des informations collectées et/ou traitées à la suite d'une requête d'un utilisateur.