Brevet FR3019285A1 — publié le 20151002

Procédé d'assistance au déplacement d'un agent dans un environnement intérieur DOMAINE TECHNIQUE DE L'INVENTION [0001] L'invention se rapporte à un procédé d'assistance au déplacement d'un agent dans un environnement intérieur. L'invention se rapporte également à un dispositif mettant en oeuvre ledit procédé ainsi qu'à un support sur lequel sont enregistrés des codes instructions correspondant à une mise en oeuvre dudit procédé. [0002] On entendra par agent dans le cadre de la présente demande toute personne ou tout dispositif susceptible de se déplacer dans une zone prédéterminée. Une zone prédéterminée est, par exemple, un entrepôt de marchandises, un centre de données ou « Datacenter » et plus généralement tout bâtiment ou zone de stockage de marchandises. Le système peut se décliner dans les domaines médicaux ainsi que dans le domaine du data mining [0003] Le domaine de l'invention est celui de l'assistance au déplacement dans des zones de stockage ou d'exploitation industrielle. De telles zones sont, par exemple, les centres de données, les magasins de type « conduire à l'intérieur », des entrepôts de marchandises. Un magasin de type « conduire à l'intérieur » est un magasin dans lequel un client n'entre pas mais soumet une commande, comportant une pluralité d'article stockés dans un entrepôt, et passe la prendre une fois qu'elle a été constituée pour lui. Ces magasins sont aussi appelés des « drive ». On parle aussi de « service à l'auto ». ETAT DE LA TECHNIQUE ANTERIEURE [0004] Dans l'état de la technique les magasins de type « conduire à l'intérieur » connaissent une croissance importante. Ils permettent en effet à leurs utilisateurs de ne pas avoir à parcourir des rayonnages d'articles pour remplir un caddy en fonction de leurs besoins. Ils permettent aussi à ces mêmes utilisateurs de ne pas avoir à faire la queue au moment du règlement de leur achat. De même, du point de vu d'un utilisateur un magasin de type « conduire à l'intérieur » limite le nombre de manutentions requis pour l'obtention des articles puisque ces articles n'ont pas à être présentés à un agent de caisse. Du point de vu de l'utilisateur tous les problèmes de manutention et de stockage / déstockage sont reporté sur le fournisseur. [0005] Du point de vue du fournisseur les avantages d'un magasin organisé en « conduire à l'intérieur » sont importants : - Pas de coût de présentation des articles - Surface de parking réduite, - Surface de caisse réduite, [0006] Par contre le fournisseur doit faire face à de nouveaux défis logistiques. Ces défis tournent tous autour de la gestion de l'espace de stockage et de l'orientation dans la zone correspondante. [0007] A l'heure actuelle on effectue une transposition de l'organisation standard vers l'organisation « service à l'auto ». C'est-à-dire qu'un agent remplace les utilisateurs standards en reproduisant leurs aptitudes à se déplacer aux milieux de rayonnages. L'expérience, et donc l'ancienneté de l'agent, ses facultés d'adaptation à un environnement évolutif, sont des facteurs clés de son efficacité. [0008] Des problèmes d'efficacité se posent avec l'introduction de nouveaux agents et avec l'évolution de la topologie de la zone de stockage. Ces problèmes se traduisent par l'augmentation du temps requis pour la constitution d'une commande. [0009] La constitution d'une commande est le fait de parcourir une zone de stockage pout y trouver les articles correspondant à la commande qui est une liste d'articles. Dans les cas les meilleurs, cette constitution est réalisée à l'aide d'un assistant informatique qui liste des articles en indiquant des coordonnées, sous forme d'un identifiant de rangé et éventuellement d'un identifiant de colonne. L'agent recherche alors dans l'entrepôt des identifiants pour trouver l'article, puis il passe au suivant. Dans le temps la difficulté est que ces identifiants sont attachés à des structures qui peuvent bouger, ou attachés à des éléments de structures qui, selon la position de l'agent, peuvent être invisibles. [0010] C'est pour cela que la plupart des agents ignorent les indications visuelles et se fient à leur expérience, ou à leur inexpérience, pour se déplacer dans l'entrepôt de manière aléatoirement efficace. La plus grande difficulté survient quand un article change d'emplacement de stockage. [0011] De même l'agent n'a aucune aide pour optimiser sa « tournée » de constitution d'une commande. [0012] II en résulte des congestions, surtout aux moments de fréquentation élevée, dans les zones de livraisons dont la surface doit être étendue sous peine d'avoir des véhicules stationnant sur des voies de circulation. [0013] Une solution serait d'utiliser une solution de guidage qui permettrait de guider l'agent lors de la constitution d'une commande. De telle solution semble exister, on pense par exemple aux systèmes GPS ou basé sur des bornes Wifi. [0014] Mais ces systèmes soit ne marche pas en intérieur, c'est le cas du GPS, soit sont inadaptés à des environnements évolutifs. Cette dernière limitation est propre à tous les systèmes existant : ils présupposent l'existence d'une carte sur laquelle appuyer le calcul d'un itinéraire et cette carte est statique. Si un obstacle bouge ou apparaît il faut effectuer une mise à jour du système, tout comme on effectue des mises à jours des systèmes GPS pour qu'ils prennent en compte les nouveaux axes routiers et la nouvelle signalisation routière. [0015] Aucun système existant n'est donc adapté aux cas envisagés. EXPOSE DE L'INVENTION [0016] L'invention vise à remédier à tout ou partie des inconvénients de l'état de la technique identifiés ci-dessus, et notamment à proposer des moyens pour permettre de déterminer un itinéraire dans un environnement intérieur à la topologie changeante. [0017] Dans ce dessein, un aspect de l'invention se rapporte à un procédé d'assistance au déplacement d'un agent entre un premier point et un deuxième point dans une zone (100) prédéterminée le premier point et le deuxième point étant repérés par des coordonnées relatives à la zone prédéterminée, le procédé d'assistance comportant une étape de calcul d'un itinéraire entre le premier point et le deuxième point, le calcul de l'itinéraire s'effectuant à partir d'un graphe enregistré dans des moyens de stockage d'un serveur de graphe, l'itinéraire étant affiché sur un dispositif d'assistance comportant des moyens de géolocalisation produisant des coordonnées relatives à la zone prédéterminée, le procédé étant caractérisé en ce qu'il comporte les caractéristiques suivantes : - Une étape préalable au calcul d'un itinéraire comportant les étapes suivantes : - Modélisation de la zone prédéterminée en volumes élémentaires et enregistrement de ces volumes élémentaires dans une base de données de zone, - Une étape, réalisée en continue, par le dispositif d'assistance comportant les étapes suivantes : - Détermination de la position du dispositif d'assistance, - Production et émission d'un message de position, comportant au moins la position déterminée, vers le serveur de graphe - Une étape, réalisée en continue, par le serveur de graphe comportant les étapes suivantes : - Réception d'un message de position - Mise à jour du graphe en fonction du message de position, la mise à jour étant l'association du message de position à un volume élémentaire dans la base de données de zone - Une étape de calcul d'un itinéraire telle que : - Le graphe à utiliser pour le calcul d'itinéraire est extrait de la modélisation et est tel qu'à chaque volume élémentaire correspond un sommet du graphe, deux sommets sont reliés par un arc si leurs volumes élémentaires correspondants sont adjacents et si leurs volumes élémentaires sont associés à au moins un message de position. - Pour le calcul de l'itinéraire le premier point est associé à un premier volume élémentaire, le deuxième point est associé (1420) à un deuxième volume élémentaire le calcul de l'itinéraire se faisant entre les sommets associés au premier volume élémentaire et au deuxième volume élémentaire [0018] Outre les caractéristiques principales qui viennent d'être mentionnées dans le paragraphe précédent, le procédé selon l'invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes, considérées individuellement ou selon les combinaisons techniquement possibles: - le volume élémentaire est un cube. - le cube a une arrête d'une longueur comprise dans l'intervalle de 40 à 60 cm. - lors du calcul d'un itinéraire à une première date, les messages de position étant daté, on ne considère que les messages de position dont l'âge, relativement à la première date, est inférieur à un premier seuil d'âge prédéterminée. - si on ne parvient pas à déterminer un itinéraire alors on recommence un calcul en ne considérant que les messages de position dont l'âge, relativement à la première date, est inférieur à un deuxième seuil d'âge prédéterminé, le deuxième seuil d'âge étant supérieur au premier seuil d'âge. - qu'un itinéraire calculé est recalculé en cours de parcours pour s'adapter aux variations topographiques de la zone prédéterminée. - des coordonnées sont un identifiant d'un volume élémentaire, chaque volume élémentaire de la zone prédéterminée étant associé à un identifiant unique [0019] L'invention se rapporte également à un dispositif de stockage numérique comportant un fichier correspondant à des codes instructions mettant en oeuvre le procédé selon une combinaison des précédentes caractéristiques. [0020] L'invention se rapporte également à un dispositif mettant en oeuvre le procédé selon une combinaison des caractéristiques précédentes [0021] L'invention se rapporte également à l'utilisation de la fréquence déplacement dans un cube élémentaire pour définir la possibilité d'utiliser ce cube comme chemin dans le cadre d'un calcul d'itinéraire. [0022] L'invention définit plusieurs zones de passages en fonctions des paramètres d'obsolescences et de fréquence de passage. On peut noter les zones de passages possibles, passages probables et passages impossibles. BREVE DESCRIPTION DES FIGURES [0023] D'autres caractéristiques et avantages de l'invention ressortiront à la lecture de la description qui suit, en référence aux figures annexées, qui illustrent : - la figure 1, une illustration de dispositif permettant la mise en oeuvre du procédé selon un mode de réalisation de l'invention ; - la figure 2, une illustration d'étape du procédé selon l'invention ; - la figure 3, une illustration d'une variante de géolocalisation utilisable par le procédé selon l'invention. [0024] Pour plus de clarté, les éléments identiques ou similaires sont repérés par des signes de référence identiques sur l'ensemble des figures. [0025] L'invention sera mieux comprise la lecture de la description qui suit et à l'examen des figures qui l'accompagnent. Celles-ci sont présentées à titre indicatif et nullement limitatif de l'invention. DESCRIPTION DETAILLEE D'UN MODE DE REALISATION [0026] Lorsque l'on prête une action à un dispositif celle-ci est en fait effectuée par un microprocesseur du dispositif commandé par des codes instructions enregistrés dans une mémoire du dispositif. Si l'on prête une action à une application, celle-ci est en fait effectuée par un microprocesseur du dispositif dans une mémoire duquel les codes instructions correspondant à l'application sont enregistrés. [0027] Parmi les dispositifs auquel on prête des actions il y a les ordinateurs et les serveurs. Il s'agit de dispositif fonctionnellement identique mais doté de caractéristique physique, par exemple en termes de tolérance aux pannes de composants, différentes. Dans cette description on emploi l'un ou l'autre des termes dans un but de clarification. Dans la pratique, doté d'application identique, un ordinateur et un serveur sont fonctionnellement équivalent donc interchangeables. [0028] Lorsque l'on parle d'une action réalisée en continue, cela signifie que l'action s'effectue indépendamment d'une intervention d'un être humain. Il s'agit, par exemple, d'une tâche planifiée, d'un service informatique ou démon informatique réagissant à un évènement. Un événement est par exemple la réception d'un message via un réseau. Dans un contexte « en continu » on parle aussi de fil de l'eau ou de processus « machine à machine ». [0029] La figure 1 montre une zone 100 prédéterminée, par exemple un entrepôt 100, équipé d'un système de géolocalisation. L'entrepôt 100 est, par exemple, un bâtiment ayant une assise carré, le coté du carré L faisant 100 mètres, ainsi que NBe, égale à 2, étages d'une hauteur He de 5 mètre chacun. [0030] Dans notre exemple on considère une modélisation de ce volume par un remplissage par un volume élémentaire cubique, un tel cube élémentaire ayant alors, par exemple, une arrête Cp de 0.5 mètre. [0031] Dans cet exemple, l'entrepôt 100 est donc modélisé par : (NBe * He * L * L) / Cp A 3 = 800 000 dans notre exemple. [0032] La figure 1 montre également un serveur 200 de graphe, comportant : - Un microprocesseur 210, - Une interface 220 de communication, par exemple une carte Ethernet ou une carte Wifi, - Des moyens 230 de stockage. [0033] Le microprocesseur 210 du serveur 200 de graphe, l'interface 220 de communication du serveur 200 de graphe et les moyens 230 de stockage du serveur 200 de graphe sont interconnectés par un bus 240. Les moyens de stockage sont locaux, c'est-à-dire directement connectés au bus 240, ou distant, c'est-à-dire connectés via l'interface de communication. [0034] La figure 1 montre que les moyens 230 de stockage du serveur 200 de graphe comporte une zone 230.1 base de données de zone permettant d'enregistrer la modélisation de la zone 100 prédéterminée. Dans notre exemple on considère une base de données relationnelle pour décrire des structures de données possibles utilisable pour la mise en oeuvre de l'invention. D'autre type de base de données sont utilisables parmi lesquels on cite de manière non limitative les bases de données dites « NoSQL ». [0035] La base de données de zone comporte une table 230.1.1 de volumes élémentaires, chaque ligne de la table correspond à un volume élémentaire, ici un cube. Chaque ligne de la table comporte au moins une colonne 230.1.11 identifiant unique de volume élémentaire, ainsi que d'autres colonnes comportant des caractéristiques du volume élémentaire. Par la suite on illustrera qu'une ligne de la table 230.1.1 de volumes élémentaires, c'est-à-dire un volume élémentaire, peut être associé à d'autres lignes dans d'autres tables. [0036] Dans une variante, la table 230.1.1 de volumes comporte huit colonnes supplémentaires, chaque colonne correspondant aux coordonnées des 8 sommets du cube dans un repère orthonormé lié à la zone 100 prédéterminée. Dans ce cas la table 230.1.1 de volumes permet de passer d'un identifiant de volume élémentaire à des coordonnées et vice et versa. D'autres variantes le permettent également. [0037] Dans une autre variante, la table 230.1.1 de volumes élémentaires comporte 2 colonnes supplémentaires, une première colonne pour stocker les coordonnées d'un sommet du cube dans un repère orthonormé lié à la zone 100 prédéterminée, une deuxième colonne pour stocker la longueur de l'arrête du cube. Dans une sous variante, dans la mesure où toute les arrêtes de tous les cubes on la même longueur connue, cette deuxième colonne est facultative. [0038] Dans encore une autre variante, la table 230.1.1 de volumes élémentaires ne comporte aucune colonne liée à la géométrie du volume, ces données se déduisant de l'identifiant du cube, cet identifiant étant attribué selon un ordre prédéterminé permettant, via des modulos, de calculer les coordonnées de ses sommets. [0039] La figure 2 montre une étape 1000 dans laquelle on initialise la table 230.1.1 de volumes élémentaires de la base de données de zone du serveur de graphe. Cette initialisation se fait, par exemple, par trois boucles imbriquées, chaque boucle correspondant à une dimension de la zone prédéterminée. [0040] La figure 1 montre également que la zone 100 prédéterminée est pré- équipée d'une pluralité de dispositifs 150i radio, par exemple des bornes Wifi, disposées, par exemple, dans les coins supérieurs des étages ainsi qu'au milieu des arrêtes supérieures des étages. Il s'agit d'une disposition arbitraire. Associé à cette disposition la figure 1 montre que la base de données de zone comporte une table 230.1.2 de dispositifs radio comportant une liste de la pluralité de dispositif radio. A chaque dispositif radio de la pluralité de dispositifs radio correspond une ligne dans la table 230.1.2, chaque ligne comportant au moins : - Un identifiant 230.1.21 de dispositif radio, par exemple un SSID, - Un jeu de coordonnées X 230.1.22, Y 230.1.23, Z 230.1.24 dans un repère orthonormé lié à la zone prédéterminée. [0041] Dans cette description il est évident que l'on ne considère qu'un repère orthonormé lié à la zone prédéterminé afin de garantir l'homogénéité des coordonnées cartésiennes utilisées. [0042] Dans des variantes les dispositifs radios peuvent être plus nombreux et répartis plus irrégulièrement en fonction des équipements ou parois présents dans la zone prédéterminée. [0043] La figure 1 montre aussi que le serveur 200 de graphe est connecté, via son interface de communication à un réseau 160, matérialisé par exemple par un switch, au moins un des dispositifs radio de la pluralité de dispositifs radio étant lui aussi connecté au dit réseau 160. Dans la mesure où les dispositifs radio sont connectés par radio, cela signifie que les dispositifs radio peuvent communiquer avec le serveur de graphe, cela signifie aussi que n'importe quel dispositif mobil connecté à un dispositif radio de la pluralité de dispositifs radio peut communiquer avec le serveur de graphe. [0044] La figure 1 montre un dispositif 300 mobile apte à être utilisé par un agent se déplaçant dans la zone prédéterminée. Le dispositif 300 mobile comporte - Un microprocesseur 310, - Une interface 320 de communication, une carte Wifi, - Des moyens 330 de stockage, - Des moyens 350 inertiels, par exemple un accéléromètre - Un altimètre 360, - Une boussole 370, - [0045] Le microprocesseur 310 du dispositif 300 mobile, l'interface 320 de communication du dispositif 300 mobile et les moyens 330 de stockage du dispositif 300 mobile, les moyens 350 inertiels du dispositif 300 mobile, l'altimètre 360 du dispositif 300 mobile et la boussole 370 du dispositif 300 mobile sont interconnectés par un bus 340. [0046] Via son interface de communication le dispositif 300 mobile peut : - Se connecter à n'importe quel dispositif radio de la pluralité de dispositifs radio, et donc communiquer avec le serveur de graphe, - Mesurer les puissances reçues de tous les dispositifs radio à sa portée. [0047] Le dispositif 300 mobile, est aussi connecté ou comporte des moyens d'acquisition et de restitution vidéo. Ces moyens sont, par exemple, un écran et une caméra du dispositif 300 mobile ou, dans un autre exemple, des lunettes de réalité augmentée connectées au dispositif 300 mobile. L'ensemble formé par le dispositif 300 mobile et les moyens d'acquisition et de restitution vidéo forme un dispositif d'assistance. [0048] La figure 1 montre que les moyens 330 de stockage du dispositif 300 mobile comporte une zone 330.1 adresse de serveur de graphe. Il s'agit d'un paramètre de configuration permettant au dispositif 300 mobile de communiquer avec le serveur de graphe. Dans une variante de l'invention dans laquelle le dispositif mobile obtient une adresse réseau dynamiquement, ce paramètre d'adresse est obtenu en même temps que l'adresse dynamique, ou il est décidé que ce paramètre est égal à l'adresse du serveur servant l'adresse dynamique. Dans ce cas le serveur de graphe joue aussi le rôle de serveur DHCP. [0049] La figure 2 montre une étape 1100 de détermination de position du dispositif 300 mobile. Le préalable à cette détermination est la mesure des puissances reçues par les dispositifs radio, de la pluralité de dispositif radio, à portée du dispositif mobile, en particulier des puissances des émissions correspondant à la norme Wifi. Chaque puissance est associée à un identifiant de dispositif radio. Il s'agit en fait d'un scan des réseaux Wifi disponibles. Ce scan est effectué en permanence. [0050] A partir de là il y a deux possibilité : soit le dispositif 300 mobile fait les calculs lui-même, soit il émet ses mesures pour qu'un autre dispositif fasse les 20 calculs à sa place et lui renvoie ses coordonnées en réponse. Les coordonnées sont le résultat des calculs. [0051] Dans le premier cas il faut que le dispositif mobile ait une copie de la table 230.1.2 de dispositifs radio. A partir de là, en fonction des puissances reçues il est capable de déterminer à quelle distance de chaque dispositif radio de la 25 pluralité de dispositifs radio il se trouve. La distance est une fonction de la puissance reçue connaissant la puissance émise. Cette puissance émise est, soit émise par le dispositif radio, soit enregistrée dans une colonne supplémentaire de la table 230.1.2 de dispositifs radio. [0052] Une fois les distances connues il suffit de calculer l'intersection des 30 sphères ayant pour centres les dispositifs radio. Le résultat donne les coordonnées du dispositif 300 mobile au moment où il a fait les mesures de puissance. Ces calculs sont connus sous le nom de triangulation. [0053] Une fois les coordonnées calculées le dispositif 300 mobile passe à une étape 1110 de production et d'émission d'un message de position. Un message de position comporte au moins et hors les champs propres au protocole de communication : - Un code prédéterminé permettant de déterminer la nature du message ; - Une date de calcul ; - Les coordonnées calculées. [0054] Une fois produit le message est émis vers le serveur de graphe dont l'adresse est connue via la zone adresse de serveur de graphe des moyens de stockage du dispositif 300 mobile. [0055] Dans un deuxième cas les mesures de puissance sont émises, par exemple vers le serveur de graphe. On note que n'importe quel appareil ayant une copie de la table 230.1.2 de dispositifs radio est capable de faire les calculs. [0056] Dans ce deuxième cas, de préférence, les puissances sont émises 15 accompagnées d'une date de mesure. [0057] Le dispositif qui reçoit ces mesures effectue les calculs de triangulation, produit un message de position comportant les résultats du calcul, et envoie le message de position produit au dispositif 300 mobile. [0058] Dans une variante par requête de l'invention l'étape 1000 de 20 modélisation est suivie d'une étape 1010 de calibrage. Dans l'étape de calibrage on associe à chaque volume élémentaire, via une table 230.1.3 de puissances attendues, les puissances que l'on devrait recevoir pour chaque dispositif radio de la pluralité de dispositifs radio. Un mode de calibrage est le suivant à la figure 3. [0059] La table 230.1.3 comporte : 25 - Une colonne 230.1.31 identifiant de volume élémentaire, - Une colonne 230.1.32 identifiant de dispositif radio, - Une colonne 230.1.33 puissance reçue. [0060] La colonne 230.1.33 peut être renseigné en faisant des mesures, ce qui risque d'être fastidieux ou par calculs comme décrit dans un exemple qui suit. 30 [0061] La figure 3 montre, en projection dans un plan horizontal un cube dont on considère le centre géométrique C. On parle du cube C. [0062] La figure 3 montre également trois dispositifs radio un premier dispositif radio E, un deuxième dispositif radio R1 et un deuxième dispositif radio R2. [0063] Dans la mesure où les coordonnées du cube C et des premier, deuxième et troisième dispositifs radio sont connues on peut calculer : - dec = distance entre le premier dispositif radio E et le cube C ; - der1 = distance entre le premier dispositif radio E et le deuxième dispositif radio R1 ; - der2 = distance entre le premier dispositif radio E et le troisième dispositif radio R2 ; [0064] Le deuxième dispositif radio R1 mesure 11, la puissance qu'il reçoit du premier dispositif radio E. Le troisième dispositif radio R2 mesure 12, la puissance qu'il reçoit du premier dispositif radio E. [0065] A partir de là il est possible de calculer des puissances projetées radialement c'est-à-dire : - une puissance Iprj1 reçu au point Prj1 d'intersection d'une sphère de rayon dec et de centre C et d'une droite passant par les premier et deuxième dispositifs radio. Iprj1 = dec * 11 / der1 - une puissance Iprj2 reçu au point Prj2 d'intersection d'une sphère de rayon dec et de centre C et d'une droite passant par les premier et troisième dispositifs radio. Iprj2 = dec * 12 / der2 [0066] Par des considérations géométriques il est également possible de calculer les distances - dp1c = distance entre Prj1 et C = ((Prj1.x - C.x)^2 + (Prj1.y - C.y)^2 + (Prj1.z - C.z)^2)^(1/2) - dp2c = distance entre Prj2 et C = ((Prj2.x - C.x)^2 + (Prj2.y - C.y)^2 + (Prj2.z - C.z)^2)^(1/2) - dp1p2 = distance entre Prj1 et Prj2 = ((Prj2.x - Prj1.x)^2 + (Prj2.y - Prj1.y)^2 + (Prj2.z - Prj1.z)^2)^(1/2) [0067] Alors la puissance Ice reçu en C depuis le premier dispositif radio est donnée par la formule : dp1p2 - dp1cdp1p2 . dp1p2 dp1p2 - dp2c . Ice = * Ipri1+ * Iprj2 [0068] Par cette méthode on est donc capable d'associé à chaque cube une puissance reçue calibrée pour chaque dispositif radio de la pluralité de dispositif radio. [0069] Le calibrage peut être relancé régulièrement pour tenir compte des modifications des conditions de propagation dans la zone prédéterminée. Ces modifications de condition de propagation correspondent, la plus part du temps, à une modification de la topographie de la zone prédéterminée. Par exemple on a ajouté ou déplacé des rayonnages. [0070] Dans la variante par requête la géolocalisation de l'étape 1100 de détermination d'une position se fait par l'émission d'un message de mesure comportant des puissances mesurées associées à des dispositifs radio. Ce message est émis vers le serveur de zone. Le serveur de zone effectue alors une requête dans la base de données 230.1 de zone, et en particulier dans la table 230.1.3 de puissances attendues pour y trouver l'identifiant de cube correspondant aux puissances mesurées. Le serveur de zone renvoie alors un message correspondant à la position du dispositif mobile qui a effectué les mesures de puissance. [0071] Un message de mesure comporte au moins, indépendamment des champs liés au protocole d'acheminement, les champs suivants : - Un champ code identifiant le message comme un message de mesures, - Une date à laquelle ont été faites les mesures - Une liste de mesures, chaque mesure comportant : - Un identifiant d'un dispositif radio de la pluralité de dispositifs radio, - Une valeur de puissance mesurée. [0072] Du point de vue du serveur de zone, un message de mesure et équivalent à un message de position dans la mesure où les deux messages indique la présence d'un dispositif mobile à des coordonnées dans la zone 30 prédéterminée. [0073] Quel que soit la variante les étapes 1100 de détermination de position et 1110 de production et d'émission d'un message de position sont effectuées en continue par le dispositif 300 mobile dans la zone prédéterminée. On aura compris que selon la variante l'étape 1110 est facultative, en particulier dans les variantes dans lesquelles le dispositif mobile ne fait que les mesures de puissance. [0074] Ces étapes sont, par exemple, effectuées à une fréquence prédéterminée. Cette fréquence peut évoluer dans le temps en fonction de mesures inertielles : la fréquence augmente en cas d'accélération du déplacement et diminue dans le cas contraire. Cette fréquence peut aussi être liée à une vitesse de déplacement moyenne estimée. Par exemple, pour une vitesse moyenne de 1 m/s, cette fréquence pourrait être d'au moins 4hz pour garantir au moins une mesure par volume élémentaire dans l'exemple choisi. [0075] La figure 2 montre une étape 1200 réalisée en continue par le serveur 200 de zone. Cette étape est une étape d'écoute du réseau pour y détecter des messages de position ou des messages équivalents tel que des messages de mesures. Si un tel message est détecté alors on passe à une étape 1210 d'aiguillage selon la nature du message. Si le message est un message de position on passe à une étape 1220 de mise à jour de graphe, sinon on passe à une étape 1215 de calcul d'une position c'est-à-dire à une géolocalisation en fonction d'une liste de puissances mesurées. De l'étape 1215 on passe à l'étape 1220 de mise à jour du graphe. [0076] L'étape 1215 de géolocalisation a déjà été décrite précédemment, il s'agit du cas où seules les mesures sont effectuées par le dispositif 300 mobiles, les calculs étant confié au serveur 200 de zone. [0077] Dans l'étape 1220 le serveur 200 de zone a reçu un message qui lui permet d'obtenir une date, et une géolocalisation dans la zone prédéterminée. [0078] A partir de la géolocalisation le serveur 200 interroge la table de volumes élémentaires de la base de données de zone pour obtenir un identifiant de volume élémentaire. [0079] Une fois l'identifiant de volume élémentaire obtenu, le serveur 200 de zone insère une ligne dans une table 230.1.4 de traçage. [0080] La table 230.1.4 de traçage comporte au moins : - Une colonne 230.1.41 identifiant de volume élémentaire - Une colonne 230.1.42 date. [0081] Dans la nouvelle ligne de la table de traçage le serveur 200 écrit : - l'identifiant de volume élémentaire obtenu dans la colonne identifiant de volume élémentaire, - la date du message, date de géolocalisation ou date de mesures, dans la colonne date. [0082] La nouvelle ligne ainsi obtenue indique qu'il y a eu un passage à une date donnée dans un volume élémentaire donné. La table de traçage permet d'effectuer un suivi des déplacements, de conserver une trace de passages possibles. Une ligne est ici équivalente à un message de position. C'est donc cette table de traçage qui comporte la topologie de la zone prédéterminée et qui la suit en temps réel, pour peu que des agents muni de dispositif mobile selon l'invention s'y déplace. [0083] La figure 2 montre une étape 1300 dans laquelle un utilisateur du dispositif 300 mobile demande un itinéraire entre deux coordonnées dans la zone prédéterminée. [0084] Une telle demande se traduit par la production d'un message de demande de calcul d'un itinéraire. Un message de demande de calcul d'un itinéraire comporte au moins, en plus des champs requis par le protocole d'acheminement, les champs suivants : - Un champ code identifiant le message comme une demande de calcul d'itinéraire, - Un champ début d'itinéraire, il s'agit soit de coordonnées cartésiennes, soit s'un identifiant de volume élémentaire, - Un champ fin d'itinéraire, il s'agit soit de coordonnées cartésiennes [0085] Dans une variante le message de demande de calcul d'un itinéraire comporte un champ affectation qui comporte un identifiant de dispositif mobile. Cette variante permet à un tiers d'envoyer un itinéraire à un dispositif mobile, car une fois que l'itinéraire aura été calculé, il sera envoyé vers le dispositif mobile identifié par le champ affectation. [0086] La valeur du champ début d'itinéraire prend, par exemple, la valeur de la position courante du dispositif 300 mobile. [0087] La valeur du champ fin d'itinéraire est, par exemple, obtenu grâce à une référence article qui est transformée en coordonnées via une requête émise vers une base de données d'article qui aura été préalablement initialisée pour associé à chaque référence d'article dans la zone prédéterminée des coordonnées. [0088] Dans une variante, le message de demande de calcul comporte au moins un champ étape intermédiaire comportant des coordonnées d'une étape intermédiaire. [0089] Le message une fois constitué est envoyé vers un dispositif de calcul d'itinéraire. Dans notre exemple il s'agit du serveur 200 de graphe. Dans la pratique il s'agit de n'importe quel dispositif disposant d'un graphe adapté. [0090] Une fois le message de demande d'itinéraire produit il est émis vers le 10 serveur 200 de zone. [0091] Dans une étape 1400 de réception d'un message de calcul d'itinéraire, si le message est identifié comme tel, alors il passe à une étape 1410 d'extraction d'un graphe. [0092] Dans l'étape 1410 le serveur 200 de zone utilise un premier paramètre 15 d'âge ayant une valeur prédéterminé, par exemple 2 jours. Ce premier paramètre d'âge est enregistré dans une zone 230.2 des moyens de stockage du serveur 200 de zone. [0093] A partir de ce premier paramètre d'âge le serveur 200 filtre les lignes de la table 230.1.4 de traçage de manière à ne conserver que celles dont l'âge est 20 inférieur au premier paramètre d'âge. L'âge d'une ligne est la différence entre la date courante et la date stockée dans la ligne. On obtient ainsi une première liste de lignes. [0094] Un premier graphe est alors tel qu'à chaque volume élémentaire correspond un sommet du premier graphe, deux sommets sont reliés par un arc si 25 leurs volumes élémentaires correspondants sont adjacents et si leurs volumes élémentaires sont associés à au moins une ligne dans la première liste. [0095] Dans une variante de l'invention, la valeur du premier paramètre d'âge est équivalente à l'infini, ce qui revient à considérer toutes les traces ou ligne de la table de traçage. 30 [0096] Dans une étape 1420 de suivant l'étape 1400, le serveur 200 de zone convertit, si besoin, les coordonnées contenues dans le message de calcul d'itinéraire en identifiant de volume élémentaire, c'est-à-dire en identifiant de sommet du premier graphe. On obtient ainsi une liste de sommet étape. [0097] Dans une étape 1430 de calcul d'un itinéraire suivant les étapes d'extraction du premier graphe et de conversion des coordonnées, le serveur 200 de zone est en connaissance d'un graphe et d'une liste de sommets étapes de ce graphe. Le serveur 200 de zone peut donc calculer un itinéraire, c'est-à-dire une séquence de sommets adjacents du graphe comportant la liste se sommets étapes en utilisant, par exemple, un algorithme de dijkstra qui est l'algorithme de traitement de graphe le plus efficace à la date de rédaction de cette description. [0098] Si aucun itinéraire n'est trouvé alors on recommence le calcul à partir d'un deuxième graphe extrait en filtrant les lignes de la table 230.1.4 de traçage de manière à ne conserver que celles dont l'âge est inférieur à un deuxième paramètre d'âge. Le deuxième paramètre d'âge est enregistré dans une zone 230.3 deuxième paramètre d'âge des moyens de stockage du serveur 200 de zone. On obtient ainsi une deuxième liste de lignes. La valeur du deuxième paramètre d'âge est strictement supérieure à la valeur du premier paramètre d'âge. [0099] Dans le cas du premier calcul, s'il aboutit, on obtient un itinéraire plus fiable car basé sur des données plus récentes. [00100] Une fois calculé, l'itinéraire est envoyé au dispositif qui en a fait la demande ou au dispositif désigné dans le message de calcul d'itinéraire via le champ affectation. [00101] Une étape non représentée, l'itinéraire est visualisée sur le dispositif 300 mobile via les moyens de restitution vidéo. [00102] L'utilisateur du dispositif 300 peut alors suivre l'itinéraire et sa progression sur les moyens de restitution vidéo. [00103] Dans une variante de l'invention, lorsque l'utilisateur suit un itinéraire calculé, le dispositif 300 mobile émet, à intervalle régulier, des demande de calcul d'itinéraire ayant comme origine/début la position courante du dispositif 300 mobile et comme arrivée/fin le point d'arrivé de l'itinéraire en cours d'exécution. En réponse le dispositif mobile reçoit un itinéraire qui peut être différent de l'itinéraire en cours d'exécution. Dans ce cas, c'est ce nouvel itinéraire qui est alors suivi. [00104] Cette variante permet à l'invention de s'adapter en temps réel aux modifications de topologie de la zone prédéterminée. [00105] Dans l'invention les coordonnées échangées sont soit des coordonnées cartésiennes, soit des identifiants de volume élémentaire, la table de volume élémentaire permettant de passer de l'une à l'autre. [00106] Dans une variante de l'invention, la base de données de zone comporte également une table permettant de stocker, pour chaque dispositif radio de la pluralité de dispositifs radio la puissance qu'il devrait recevoir de tous les autres dispositifs radio ainsi que la puissance qu'il reçoit effectivement. La puissance qu'il devrait recevoir est une donnée de calibrage fixé à une date donnée pour une durée longue de l'ordre de la semaine ou du mois. La puissance effectivement reçue est une donnée rafraîchie sur une période courte de l'ordre de la minute ou de l'heure. Dans cette variante on est donc capable de prendre en compte les modifications des conditions de propagation d'ondes dans la zone prédéterminée. [00107] Cette connaissance, notamment lorsque la puissance effective est différente de la puissance attendue, permet de pondérer l'influence des dispositifs radio concernés dans les étapes de géolocalisation. Notamment cette connaissance permet de corriger linéairement des mesures de puissance selon un coefficient égal au rapport de la puissance effective sur la puissance attendue. [00108] Une reformulation de l'invention est donc qu'elle permet de calculer un itinéraire sur un graphe dynamique. La graphe est dynamique car il est extrait de la table de traçage qui évolue en fonction des déplacements des agents dans la zone prédéterminée. Chaque agent participe donc à la réalisation de la cartographie de la zone prédéterminée. REVENDICATIONS1. Procédé d'assistance au déplacement d'un agent entre un premier point et un deuxième point dans une zone (100) prédéterminée le premier point et le deuxième point étant repérés par des coordonnées relatives à la zone prédéterminée, le procédé d'assistance comportant une étape de calcul d'un itinéraire entre le premier point et le deuxième point, le calcul de l'itinéraire s'effectuant à partir d'un graphe enregistré dans des moyens de stockage d'un serveur de graphe, l'itinéraire étant affiché sur un dispositif d'assistance comportant des moyens de géolocalisation produisant des coordonnées relatives à la zone prédéterminée, le procédé étant caractérisé en ce qu'il comporte les caractéristiques suivantes : - Une étape (1000) préalable au calcul d'un itinéraire comportant les étapes suivantes : - Modélisation (1000) de la zone prédéterminée en volumes élémentaires et enregistrement de ces volumes élémentaires dans une base de données de zone, - Une étape, réalisée en continue, par le dispositif d'assistance comportant les étapes suivantes : - Détermination (1100) de la position du dispositif d'assistance, - Production et émission (1110) d'un message de position, comportant au moins la position déterminée, vers le serveur de graphe - Une étape, réalisée en continue, par le serveur de graphe comportant les étapes suivantes : - Réception (1200) d'un message de position - Mise à jour (1220) du graphe en fonction du message de position, la mise à jour étant l'association du message de position à un volume élémentaire dans la base de données de zone - Une étape (1300) de calcul d'un itinéraire telle que :- Un graphe à utiliser pour le calcul d'itinéraire est extrait (1410) de la modélisation et est tel qu'à chaque volume élémentaire correspond un sommet du graphe, deux sommets sont reliés par un arc si leurs volumes élémentaires correspondants sont adjacents et si leurs volumes élémentaires sont associés à au moins un message de position. - Pour le calcul (1430) de l'itinéraire le premier point est associé (1420) à un premier volume élémentaire, le deuxième point est associé (1420) à un deuxième volume élémentaire le calcul de l'itinéraire se faisant entre les sommets associés au premier volume élémentaire et au deuxième volume élémentaire. 2. Procédé d'assistance au déplacement selon la revendication 1, caractérisé en ce que le volume élémentaire est un cube. 3. Procédé d'assistance au déplacement selon la revendication 2 caractérisé en ce que le cube a une arrête d'une longueur comprise dans l'intervalle de 40 à 60 cm. 4. Procédé d'assistance au déplacement selon l'une des revendications précédente lors du calcul d'un itinéraire à une première date, les messages de position étant daté, on ne considère que les messages de position dont l'âge, relativement à la première date, est inférieur à un premier seuil d'âge prédéterminée. 5. Procédé d'assistance au déplacement selon la revendication 4 caractérisé en ce que si on ne parvient pas à déterminer un itinéraire alors on recommence un calcul en ne considérant que les messages de position dont l'âge, relativement à la première date, est inférieur à un deuxième seuil d'âge prédéterminé, le deuxième seuil d'âge étant supérieur au premier seuil d'âge. 6. Procédé d'assistance au déplacement selon l'une des revendications précédentes caractérisée en ce qu'un itinéraire calculé est recalculé en cours de parcours pour s'adapter aux variations topographiques de la zone prédéterminée. 7. Procédé selon l'une des revendications précédentes, caractérisé en ce que des coordonnées sont un identifiant d'un volume élémentaire, chaque volume élémentaire de la zone prédéterminée étant associé à un identifiant unique. 8. Dispositif de stockage numérique comportant un fichier correspondant à des codes instructions mettant en oeuvre le procédé selon l'une des revendications précédentes. 9. Dispositif mettant en oeuvre le procédé selon l'une des revendications 1 à 7.10