WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Localisation par empreinte radio. application sur les reseaux mobiles 2G-3G

( Télécharger le fichier original )
par Harimanana Elisa TAFENO
Ecole Supérieure Polytechnique d'Antananarivo - Master 2015
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

CHAPITRE 3

LOCALISATION A BASE D'EMPREINTE RADIO

3.1 Introduction

La technique de fingerprinting ou de pattern matching a déjà été explorée dans le cadre de la localisation par réseau GSM. Depuis quelques années, on peut utiliser des outils de prédiction de couverture radio permettant d'optimiser les réseaux lors de leur mise en place. Ces outils prédisent le niveau de champ radioélectrique en tenant compte des différents phénomènes de propagation auxquels sont soumises les ondes radio. Ils déterminent le niveau de champ à chaque position de la zone de couverture.

L'opération de localisation consiste à rechercher dans la base de données, constituée à l'aide des outils de prédiction de couverture radio, le n-uplet de puissance le plus proche du n-uplet des puissances mesurées par le terminal mobile. Une fois ce n-uplet de la base de données identifiée, la position du mobile correspond à celle de la mesure référencée dans la base de données. [17]

Ainsi, la localisation à base d'empreinte radio exploite les réseaux existantes (réseau cellulaire, le WLAN...) tout en utilisant les mesures génériques qui sont disponibles à partir des interfaces radios. Elle permet une localisation plus précise que Cell-ID. La méthode ne demande pas une grande consommation d'énergie.

3.2 Description d'un système de LFP

Le système de LFP est divisé en deux phases :

? La phase d'apprentissage (training phase)

? La phase de localisation (localization phase)

3.2.1 Phase d'apprentissage

Une « phase d'apprentissage » ou « training phase », ou une « phase hors ligne », est constituée par la création d'une base de données avec les caractéristiques mesurées par chaque récepteur du réseau à un ensemble d'emplacements représentatifs pour les positions possibles de l'objet mobile. Un maillage de la zone d'intérêt est réalisé. Pour chaque noeud, les caractéristiques mesurées par chaque récepteur du réseau sont enregistrées.

46

3.2.2 Phase de localisation

Une fois que la base de données est construite, les mobiles peuvent entrer dans la « phase de

localisation » ou « localization phase » ou « phase en ligne ».

Le mobile effectue des mesures de test, et sera localisé en associant ces mesures aux éléments qui

sont déjà enregistrés dans la base.

Plus précisément, la phase consiste à trouver, à partir des caractéristiques mesurées de l'objet

mobile, un correspondant dans la base de données à l'aide d'un algorithme de positionnement.

Ces algorithmes sont classés en deux catégories qui sont :

? Déterministes

? Probabilistes

3.2.2.1 Déterministes :

a. VPP

Le VPP ou Voisin le Plus Proche dans la base de données des puissances (ou plus rarement la TOA) du signal est enregistré durant la phase hors ligne.

La méthode évalue la distance euclidienne entre les caractéristiques mesurées dans la phase en ligne et celles stockées dans la base des données. Le point pour lequel la distance euclidienne est minimale est considéré comme représentant la position de l'objet mobile.

b. Moyenne des k voisins les plus proches dans l'espace puissance du signal reçu

Cette méthode constitue une extension de la précédente méthode en permettant d'améliorer les résultats.

Les coordonnées spatiales des k voisins les plus proches en termes de puissance du signal reçu sont moyennées pour donner une estimation de la position de l'objet d'intérêt. [15]

c. Plus petit polygone

Cette méthode consiste à choisir un nombre de voisins rapprochés et à construire des polygones à partir de leurs coordonnées spatiales connues. La position de l'objet mobile est donnée par le centre du polygone d'aire minimale dans l'ensemble de polygones. [15]

3.2.2.2 Probabilistes:

Ces techniques emploient les distributions de la puissance du signal reçu au niveau de chaque récepteur du réseau.

Elles essayent d'améliorer les performances des méthodes déterministes affectées par les problèmes de stationnarité de l'environnement de mesures. [15]

La figure 3.01 présente une vue d'ensemble schématique d'un système LFP avec les méthodes associées.

Phase de localisation

(Classification ,

prédiction)

Mesure effectué par le mobile.

Phase d'apprentissage
(Construction de la BD,
étude supervisé/non
supervisé

Position estimée

Estimation

Position estimée

Classification

Traitement

Traitement (compression de

la BD par PCA, KCCA, etc)

BD initiale

Méthode de

régression

(SVM, ANN)

Méthode de

classification

(KNN, SVM, ANN)

47

Figure 3.01 : Architecture d'un système LFP

48

3.3 Terminologie et modélisations mathématiques

Dans cette section, nous allons essayer d'expliquer les terminologies et les modélisations utilisées dans la méthode LFP, particulièrement aux systèmes LFP basés sur les mesures RSS.

3.3.1 Base de données radio et enregistrement

Une "base de données radio" est un ensemble "d'enregistrements". Dans ce contexte, chaque enregistrement est constitué de deux parties: la partie de position (location part), et la partie radio (radio part). La partie de position décrit la position d'un point spécifique et la partie radio montre la mesure radio exécutée à cette position spécifique.

3.3.2 Mesure radio

La mesure radio comprend de nombreux types de paramètres, disponibles à partir des interfaces radios (par exemple RSS, Timing Advance ou TA, etc...).

Elle est représentée par un vecteur s E R???? comprenant ???? éléments réels.

La partie position est également représentée par un vecteur x E R????.

De ce fait, un enregistrement est donné par r = (x, s) E R??, et on a :

?? = ???? + ???? (3.01)
3.3.3 Modèle de propagation radio

Un modèle de propagation radio est nécessaire pour modéliser les mesures RSS. Le modèle OSLN ou One Slop Log-Normal model est un modèle classique, qui décrit la perte radio (pathloss) comme suit:

??????(d) = -k + 10 oc?? log(d) + ????h (3.02)

avec :

? Pla : perte moyenne (en dB),

? k : constant,

? d : distance,

? oc?? : paramètre de propagation exponentielle (propagation exponent)

? ????h : variable aléatoire log-Normal qui représente l'effet de shadowing.

Pour l'effet de shadowing, ce modèle ne considère aucune corrélation géographique.

49

3.4 Méthodes de compression de base de données radio

L'enrichissement de la base de données n'entraine pas toujours l'amélioration de la qualité de la localisation. La taille de la base est un facteur important (surtout dans les approches mobile-based) parce qu'elle influence la charge de calcule, la charge de transmission ainsi que l'autonomie énergétique du terminal.

Il y a plusieurs méthodes qui visent à compresser la base de données radio. La plupart d'entre eux tente de réduire la dimension de la base, en utilisant des contraintes de covariance.

Nous allons présenter les 03 méthodes les plus reconnues :

· La technique de clustering,

· Le PCA ou Principal Component Analysis,

· Le KCCA ou Kernel Canonical Correlation Analysis.

3.4.1 Technique de clustering

Clustering ou regroupement permet de faire une collection d'objets :

· Similaires au sein d'un même groupe ou,

· Dissimilaires quand ils appartiennent à des groupes différents.

Ainsi, la technique de clustering réduit le nombre des enregistrements. Chaque enregistrement est représenté par : ?? = (??, ??) ? R??

Les positions inclues dans la base sont données par l'ensemble X tels que : ?? = {??1, ... , ????, ... , ????}

La base radio est données par : ?? = {????}??=1...??

La base de données finale R pourrait être obtenue en traitant les éléments d'une base de données

« initiale » notée ????; qui est une base radio constituée selon les mesures terrains brutes.

Un enregistrement de ???? est donné par : ??0 = (??0, ??0)

Les techniques clustering sont très efficaces pour compresser la base de données initiale ??0 =

{????0}??=1...?? afin d'obtenir une base de données plus compacte ?? = {????}??=1...??(??<??).

3.4.1.1 Algorithme de clustering

Supposons une base comprenant ?? data-points ??0 = {????0}dans une espace de

??=1...??

dimension ?? (????0 ? R??). Une technique de clustering tente de diviser ??0 en ??(?? < ??) sous-ensemble ou clusters, telle que les points dans chaque cluster soient similaires dans certain sens.

Pour un système LFP, on considère deux types de méthode pour réaliser l'étape de clustering :

· L'algorithme de k-means

· La technique hiérarchique agglomérative

a. Algorithme de k-means

Cet algorithme est basé sur le critère de minimum de la variance intra-cluster (minimum intra-cluster variance). Dans cette technique, l'algorithme de clustering essaie de chercher une partition des données qui minimise la somme des variances intra-cluster. Pour l'ensemble de R° donné, une partition pourrait être représentée par une matrice ?? x ??, U = [umn], qui satisfait les critères suivants [16] :

umn ? {0,1}, (3.03)

??

? umn = 1; pour 1 < ??< ??, m=1

(3.04)

 

??

? umn

> 0; pour 1 < ?? < ??,

(3.05)

 

n=1

Etant donnée la définition ci-dessus, l'algorithme de k-means essaie de minimiser la fonction d'objective suivante :

?? ??

j2(U, R) = ? ?umn????(??) 2(rn°

(3.06)

, rm)

50

n=1

m=1

 

avec :

R = {rm}m=1...?? : Ensemble de M vecteur représentant les centroides des clusters.

????(??) : Distance Euclidien pondérée, qui a été adopté pour calculer les variances. b. Technique hiérarchique agglomérative

Cette technique consiste à minimiser la même fonction d'objective que celle de k-means. Mais, l'optimisation se fait hiérarchiquement. En supposant que chaque vecteur dans R°constitue un cluster, on fusionne les deux clusters qui minimise la variation dans j2 à chaque étape de la procédure.

51

3.4.1.2 Méthode BWC

La méthode de Bloc-based Weighted Clustering ou BWC consiste en un algorithme pondéré, adapté à la structure de la base de données radio. Avant de développer cette méthode, on formalise le concept de feature type.

a. Principe

Supposons une base de données ?? = {????}??=1...??. On remarque que tous les éléments dans un

enregistrement ???? n'appartiennent pas à la même nature. On définit un feature type comme l'ensemble de tous les paramètres qui appartiennent à la même nature. Dans le cas le plus simple, il faut au moins deux feature types dans la base : le feature type « position », et le feature type « RSS ». On peut envisager des cas plus compliqués, où il existe des feature types variés (RSS 2G et 3G, TA, etc.). Un enregistrement peut être représenté aussi comme suit :

?? = ??1, ... , ??h, ...,?????? (3.07)

avec :

???? : Le nombre total des features types

??h : Le sous-vecteur correspondant à l'hème feature type.

3.4.2 PCA

Un PCA (analyse en composantes principale) permet :

· De représenter des individus

· De représenter des variables

· De compresser des données et d'éliminer du bruit

Elle peut être appliquée à la compression d'image. Ainsi, elle est parmi les méthodes permettant de compresser la base de données radio.

Pour faire une PCA, il faut :

· Réduire et centrer les données

· Calculer la matrice des corrélations

· En extraire les valeurs et les vecteurs propres

· Reconstruire les nouvelles variables

· Choisir k le nombre de facteurs significatifs

3.4.2.1 Valeurs propres :

Soit M une matrice carrée symétrique définie positive (M = XTX) de dimension p. Il existe :

· p réels positifs Al, i = 1, p et

· p vecteurs de RP, vl, i = 1, p tels que :

Mvl = illvl (3.08)

b. Propriétés des valeurs et des vecteurs propres

· Par convention, on ordonne les valeurs propres Al <_ .1l_1,i = 2, p

· Par convention, les vecteurs propres sont normés vlT vl = 1

· Les vecteurs propres sont orthogonaux entre eux : vlT v' = 0, i * j

· La matrice des vecteurs propres V forme une base de RP

· La décomposition spectrale : M = Ep1 yllvlvi

· Le programme([V, D] = eig(M)) permet de calculer les valeurs et les vecteurs propres.

3.4.2.2 Reconstruction de la matrice

La meilleure représentation linéaire du nuage de points est donnée par le couple de vecteurs u E Rn et v E RP permettant au mieux de reconstruire la matrice X. Le couple de vecteur résout le problème de minimisation suivant :

minJ(u, v) (3.09)

u,v

avec :

n P

J(u, v) = I I(xl' - ulv')2

(3.10)

52

l '

3.4.2.3 Meilleure approximation

Soit X une matrice :

La meilleure approximation de rang k de X, la matrice Ak minimisant le critère suivant :

minIIX - Ak IIF avec rang(Ak) = k (3.11)

Ak

53

ceci s'obtient à l'aide des ?? vecteurs propres ????, ?? = 1, ?? associées aux ?? plus grandes valeurs propres de la matrice XTX de la manière suivante :

??k = UkVkT (3.12)
où Vk est la matrice des vecteurs propres ????; ?? = 1, ??

et Ukest la matrice des vecteurs ???? = X????, ?? = 1, ?? et donc :

??k = XUkVkT (3.13)
L'erreur d'approximation est donnée par la somme des valeurs propres restantes :

??

?X - ??k???2 = ? ????

??=k+1

(3.14)

??k = ?X - UkVkT??? 2 (3.15)

avec : ?? = 1,?? 3.4.3 KCCA

La KCCA présente deux caractéristiques avantageuses. C'est une analyse qui permet l'intégration de différents types de données et de faire un apprentissage par rapport à un jeu de données standard pour lequel les relations entre objets sont connues. De plus, elle agrée l'inférence de liens entre tous les objets utilisés.

La KCCA est basée sur l'analyse de corrélation canonique ou CCA.

Soient deux groupes de variables Y1 et Y2 décrivant un même objet x. L'analyse de corrélation canonique consiste à trouver des repères qui se correspondent pour représenter l'objet dans chacun de ces repères. Ces derniers sont obtenus en recherchant des combinaisons linéaires des variables (canoniques) de chaque groupe. [18]

(??))

Le but de la KCCA est de détecter des corrélations entre deux jeux de données x1 = (x1 (1), ... , x1

et x2 = (x2(1), ... ,x2(??)) où ?? est le nombre d'objets et chaque jeu de données appartient à X1/X2 pour ?? = 1, ... , ??. [18]

3.5 Méthode de classification

3.5.1 KNN

Pendant la phase de localisation, le mobile fait une mesure s' à la position x'. Afin de localiser le terminal, on utilise la méthode de classification de KNN ou K Nearest Neighbours.

54

Deux types de métrique sont considérés pour implémenter la classification KNN : la distance Euclidien, et le coefficient de corrélation. [16]

Une fois que le mobile est localisé, l'erreur de la localisation est donnée par :

E(x') = 11x' - x^11 (3.16)

où ^?? est la position estimée pour le terminal. 3.5.1.2 Classification supervisée

En quelques mots, la classification supervisée, dite aussi discrimination est la tâche qui consiste à spécifier des données, de façon supervisée (avec l'aide préalable d'un expert), un ensemble d'objets ou plus largement de données, de telle manière que les objets d'un même groupe (appelé classes) sont plus proches (au sens d'un critère de similarité choisi) les unes aux autres que celles des autres groupes.

Généralement, on passe par une première étape dite d'apprentissage où il s'agit d'apprendre une règle de classification à partir de données annotées (étiquetées) par l'expert et pour lesquelles les classes sont connues, pour prédire les classes de nouvelles données, pour lesquelles les données sont inconnues.

La prédiction est une tâche principale utilisée dans de nombreux domaines, y compris l'apprentissage automatique, la reconnaissance de formes, le traitement de signal et d'images, la recherche d'information, etc. [19]

3.5.1.3 Données

Les données traitées en classification peuvent être des images, signaux, textes, autres types de mesures, etc.

3.5.1.4 Classes

Une classe (ou groupe) est un ensemble de données formée par des données homogènes qui se ressemblent au sens d'un critère de similarité (distance, densité de probabilité, etc). Le nombre de groupes (noté K) en prédiction est supposé fixe.

3.5.1.5 Algorithme des K-ppv

C'est une approche très simple et directe. Elle ne nécessite pas d'apprentissage mais simplement le stockage des données d'apprentissage. En principe, une donnée de classe inconnue est comparée à

55

toutes les données stockées. On choisit pour la nouvelle donnée la classe majoritaire parmi ses K plus proches voisins (Elle peut donc être lourde pour des grandes bases de données) au sens d'une distance choisie. [19]

Afin de trouver les K plus proches d'une donnée à classer, on peut choisir la distance euclidienne. Soient deux données représentées par deux vecteurs x?? et x??, la distance entre ces deux données est donnée par la formule suivante :

??(x??,x??) =

v?? ?(x??k - x??k)2 k=1

(3.17)

3.5.2 SVM

Les SVM ou Support Vector Machines souvent traduit par l'appellation de Séparateur à Vaste Marge ou SVM sont une classe d'algorithmes d'apprentissage initialement définis pour la discrimination c'est-à-dire la prévision d'une variable qualitative binaire. Ils ont été ensuite généralisés à la prévision d'une variable quantitative. Ils sont basés sur la recherche de l'hyperplan de marge optimale qui, lorsque c'est possible, classe ou sépare correctement les données tout en étant le plus éloigné possible de toutes les observations.

Le principe de base des SVM consiste de ramener le problème de la discrimination à celui, linéaire, de la recherche d'un hyperplan optimal.

3.5.2.1 Remarque

Il est parfois utile d'associer des probabilités aux SVM. Ces derniers peuvent également être mis en oeuvre en situation de régression.

3.5.3 ANN

3.5.3.1 Définition

Artificial Neural Networks ou Réseaux de Neurones Artificiels ou RNA sont des réseaux fortement connectés de processeurs élémentaires fonctionnant en parallèle. Chaque processeur élémentaire calcule une sortie unique sur la base des informations qu'il reçoit. Toute structure hiérarchique de réseaux est évidemment un réseau. [20]

56

Les réseaux de neurones artificiels ont été développés avec pour objectifs principaux d'une part la modélisation et compréhension du fonctionnement du cerveau et d'autre part pour réaliser des architectures ou des algorithmes d'intelligence artificielle. [21]

3.5.3.2 Principe de fonctionnement

Le principe de fonctionnement d'un neurone artificiel est montré par le schéma suivant :

Xn

W1

Wi

1

W0

X1

Figure 3.02 : Schéma d'un neurone artificiel

Wn

Un neurone artificiel est une unité de traitement qui dispose de ?? entrées {X??}??=1,..,?? qui sont directement les entrées du système ou peuvent provenir des autres neurones.

Pour le biais, l'entrée est toujours à 1, ce qui permet d'ajouter de la flexibilité au réseau en permettant de varier le seuil de déclenchement du neurone par l'ajustement du poids du biais lors de l'apprentissage.

La sortie y correspond à la transformation par une fonction d'une somme pondérée des entrées : y= f(??) avec ??= w0 + ? w??????

?? (3.18)
??=1

Les quantités {w??}??=0,...,?? sont les poids du neurone. Ce sont des facteurs multiplicateurs qui affectent l'influence de chaque entrée sur la sortie du neurone.

La fonction f est appelée fonction d'activation ou fonction de transfert du neurone. Les fonctions les plus communément utilisées sont la fonction échelon unité ou Heaviside, la fonction signe, la fonction linéaire ou semi-linéaire, la fonction tangente hyperbolique, ou la fonction sigmoïde. [21] La fonction sigmoïde est définie par :

f(??) =

1

(3.19)

1 + e-??

 

La figure ci-dessous nous présente l'allure d'une fonction sigmoïde :

57

Figure 3.03 : Sigmoïde

b. Remarque

Dans un neurone artificiel, on appelle « noyau » tous ce qui intègre toutes les entrées et le biais et calcule la sortie du neurone selon une fonction d'activation qui est souvent non-linéaire pour donner une plus grande flexibilité d'apprentissage.

3.5.3.3 Classification à l'aide d'un neurone

Considérons des événements caractérisés par un ensemble de ?? mesures (nombres et types de particules, impulsions, énergies, etc.) que nous notons {??1}1=1,..,??. Nous souhaitons classer ces événements entre deux classes.

Supposons que nous avons un échantillon d'apprentissage de n événements dont nous connaissons la classe d'appartenance ainsi que les mesures. Pour chaque événement d'apprentissage nous notons x l'ensemble de ses mesures et c sa classe (0 ou 1).

Le principe de l'apprentissage peut être décrit par l'algorithme suivant :

1. Choix aléatoire des poids

2. Présentation d'un événement d'apprentissage en entrée et calcul de la sortie y(x)

3.

(3.20)

Modification des poids :

w'1 = w1 + [c - ??(x)]x1 w'0 = w0 + [c - ??(x)]

4. Retour à l'étape 2

58

3.6 Traitement des données manquantes dans les systèmes LFP

Dans les systèmes LFP, la problématique des données manquantes est très importante.

Pour le cas des systèmes basés sur les mesures de RSS; ces mesures sont normalement obtenues par

une procédure nommée scanning process qui est indispensable dans les réseaux radios mobiles, où

chaque terminal mesure le niveau de RSS des cellules en voisinage.

Cependant, certaines stations de base ne peuvent pas être détectées au cours de cette procédure, à

cause de différentes raisons :

? Le signal reçu pourrait être plus faible que le seuil de la sensibilité du terminal,

? Le signal reçu pourrait être perdu dans la forte interférence,

? Le nombre des stations de base mesurable pourrait être limité au niveau du terminal,

? Certaines stations de base pourraient être éteintes.

Tous les signaux non mesurés sont considéré comme des données manquantes.

Les méthodes statistiques pour le traitement des données manquantes ont considérablement évolué

depuis les dernières années. [16]

Prenons comme exemple les mesures RSS effectuées par le terminal mobile, sur une région A où se

trouve B la station de base.

Une mesure complète à la position ?? peut être représentée par le vecteur s = (s1, ..., s??, ..., s?? ) ?

R??.

La modélisation du mécanisme d'effacement s'effectue à l'aide de deux paramètres : l'un, X qui représente le seuil de sensibilité du terminal, et l'autre notée B?????? qui est le nombre maximum des stations de base mesurable au niveau du terminal (B?????? = B). Ensuite, pour formaliser le concept d'effacement, on définit le vecteur indicateur j ?? {0,1}??correspondant à chaque mesure s, comme suit :

Supposons que a = ( a(1), a(2), ..., a(B)) est une permutation d'indices des stations de base, tel

que s??(1) = s??(2) = ? = s??(??) ; le vecteur j correspondant à s est alors défini comme :

???, 1 = ?? = B, j?? = {1 sj ?? ? {a(1), a(2), ..., a(B??????)}, et s?? = A, (3.21)

0 ??utre??ent

On définit l'ensemble ø comme l'ensemble de tous les paramètres qui modélisent le mécanisme d'effacement (ø = {A, B??????}).

Finalement, pour une position donnée ??, B (??) = {??: j?? = 1} représente l'ensemble des stations de base observées à la position ??.

59

Dans les systèmes de LFP, les données manquantes pourront arriver pendant les deux phases d'apprentissage et localisation.

Dans ce travail, nous traitons le problème en deux étapes :

· Etape 1 :

On suppose que le mécanisme d'effacement est présent exclusivement pendant la phase de localisation ; autrement dit, on suppose que l'on a une base de données complète, mais les mesures du terminal incomplètes. [16]

· Etape 2 :

Pendant la deuxième étape, on enlève l'hypothèse d'une base de données complète ; le mécanisme d'effacement est censé être présent pendant les deux phases d'apprentissage et localisation. [16]

3.6.2 Algorithme de localisation basé sur le maximum de vraisemblance

Les algorithmes de localisation basés sur le maximum de vraisemblance (Maximum Likelihood ou ML) sont déjà proposés dans le contexte des systèmes de LFP. La méthode de ML que nous proposons dans ce travail est différente dans le sens qu'elle prend en compte l'effet d'effacement et les données manquantes. [16]

La mesure du terminal durant la phase de localisation ??' peut être décomposée en une partie observée ??'(??????) et une partie manquante ??'(??????), ayant pour résultat un vecteur indicateur d'effacement ??'. [16]

Notre algorithme de ML estime la position du terminal comme suit :

??^ = ????^, ??^ = ?????????????? ?? (??'(??????), ??'|??, ????, ??) (3.22)

avec :

??^ : La position estimée du terminal

???? : Ensemble qui modélise la distribution des mesures RSS complètes sur les clusters Etant donné le mécanisme d'effacement, on obtient :

??(??'(??????), ??'|??, ????, ??) = ? ??(??'(??????), ??'(??????) |??, ????)????'(??????)

??

(3.23)

où ?? est un évènement définit par :

?? = {??': ??? ? ?? (??'), ??'?? = ??'(??')} (3.24)

avec:

(3.25)

??'(??')} = { ?? ????|??(??')| < ??????????????{??'(??????)} ????|??(??')| = ????????

60

Supposant une distribution Gaussienne pour les mesures autours des centroids. On peut écrire:

p(S'|m, 8L)"'N(Sm, rm) (3.26)

avec :

8L = [(Sm, rm)}??=1,...,?? (3.27)

Sm et r,.,,, : ce sont respectivement le centroid et la covariance matrice du m-ème cluster.

En prenant une hypothèse d'indépendance parmi les signaux des différentes stations de base, on obtient:

p(S'(obs),iF|m,8L,ip) = pb(S'b |m,8L) Fb(

Y'bEB(x') beB(x')

(3.28)

??'(??')|??, 8L)

Fb (. |m, 8L) représente le CDF ou Cumulative Distribution Functions de la distribution Gaussien, correspondant au b-ème composant radio.

3.6.3 Algorithme de Multiple Imputation

Ce niveau du problème suppose la présence du mécanisme d'effacement pendant toutes les deux phases d'apprentissage et localisation. Afin de traiter les données manquantes au niveau de la phase d'apprentissage, on propose une méthode de "Multiple Imputation" ou MI, qui essaie de remplir les valeurs manquantes dans la base. Une fois que la base radio est complémentée, le traitement des données manquantes pendant la phase de localisation revient à la même problématique étudiée dans l'étape précédente. [16]

La figure 3.04 ci-dessous illustre la méthodologie proposée.

Phase d'apprentissage Phase de localisation

Imputation

Clustering

Base de

données

initiale

Base de données

complémentées

Classification

Mesure effectué par le

mobile.

Figure 3.04 : Architecture proposée comprenant l'étape d'imputation

3.6.3.2 Le modèle des données complètes

Le modèle des données complètes, à cette étape, modélise la base de données radio complète ??0. Prenant un modèle classique log-Normal, chaque mesures de RSS pourrait être modélisée comme suivant :

??(???? 0|????)~??([????,1, ... , ????,??], ?) (3.29)
oÙ ???? inclut les paramètres du modèle log-Normal, qui permettent de calculer ????,1, ... , ????,?? et ?. Prenant une hypothèse d'indépendance parmi les différentes stations de base, on obtiendra:

??

??(???? 0|????) = ? ????(

???? 0|????)

(3.30)

61

??=1

oÙ ????(.|????) est la densité marginale du b ème composant, pour 1 = ?? = ??.

3.7 Positionnement utilisant la méthode de fingerprinting basé sur OTD

OTD ou Observed Time Differences est un procédé de positionnement couramment utilisé parce qu'il a la capacité de recueillir l'héritage des terminaux. Cette méthode est spécifique aux réseaux UMTS et nécessite la réception au niveau de l'objet mobile des signaux provenant d'au moins trois stations de base. La position de l'objet mobile est donnée par l'intersection d'au moins deux hyperboles résultant de la différence des retards des signaux, encodés dans les trames UMTS, provenant des stations de base prises par deux. [15]

La méthode des différences de temps d'arrivées observées ou OTDOA est basée sur les mesures des différences des temps d'arrivée des signaux de liaison descendante reçus par le mobile. Dans cette méthode, c'est le mobile qui s'engage à prendre les mesures nécessaires. L'équipement utilisateur calcule les temps d'arrivée des signaux reçus simultanément des Node Bs voisins. Le signal mesuré est le CPICH ou Common Pilot Channel. Le terminal calcule le temps de propagation du signal à partir de la corrélation entre le signal reçu et le signal pilot du Node B considéré. Le pic résultant de la corrélation représente le temps de propagation du signal observé.

L'estimation des différences des temps d'arrivée peut s'effectuer soit sur les signaux de la liaison montante soit sur ceux de la liaison descendante. [22]

On peut calculer les TDOAs par deux méthodes différentes :

? Soit directement par l'inter-corrélation des signaux reçus de deux BTSs

62

? Soit indirectement par la soustraction des temps d'arrivées de deux BTSs, ce qui requiert le calcul des TOAs.

3.7.1 Estimation des TDOAs pour un réseau 3G

L'estimation des TDOAs est obtenue à partir de plusieurs estimations robustes du profile du canal de transmission. Le canal CPICH est composé d'une séquence prédéfinie de bits dits pilotes, qui sont transmis en permanence sur la cellule. Il peut être considéré comme un canal balise dont les terminaux mobiles se servent pour faire des mesures de puissance et pour estimer la réponse impulsionnelle du canal de propagation. [22]

Considérons le cas où un mobile reçoit trois canaux CPICH issus de trois Node B (station de base) différents, à partir de la sortie du corrélateur on peut accéder facilement aux TDOAS comme suit :

1. On réalise des corrélations avec les CPICH de chaque Node B sur une fenêtre de durée maximale égale au temps nécessaire de transit du signal à partir du Node B le plus éloigné.

2. On localise le premier pic de chaque CPICH qui correspond, soit au trajet direct Node B mobile, soit au plus court trajet indirect, c'est-à-dire celui produisant le moins d'erreurs.

3. Les TDOAs sont égales à la différence temporelle entre les premiers pics relatifs aux différents Node Bs comme nous montre la figure 3.05.

A l'émission:

NodeB_1

NodeB_2

NodeB_3

CPICH

CPICH

CPICH

CPICH

CPICH

CPICH

A la réception:

T3 - T1

T2 - T1

ô2 ô3

T3 -T2

CPICH

CPICH

CPICH

CPICH

CPICH

Sortie du corrélateur

CPICH

Figure 3.05 : Calcul des TDOAs

3.7.2 Structure de l'algorithme

Quand un utilisateur passe en mode active, il doit rester connecter et les rapports de mesures par l'UE vers le réseau doit être effectué sans interruption. De ce fait, le réseau doit aider l'UE.

Les rapports de mesures contiennent les informations concernant la cellule active et la cellule serveuse avec les spécifications données ci-dessous. [23] [24]

3.7.2.1 Chargement à l'entrée

Les informations concernant le Node B et le MRMs ou Mesurement Report Messages (figure 3.06) sont des données d'entrée nécessaires pour calculer, dans une marge d'erreur tolérable, l'estimation de la position physique de l'UE. On distingue :

a. Données de MRMs

Les données de MRMs sont :

· Rapport d'évènement réalisé

· Cell IDs de l'Active Set

· Primary Scrambling Codes ou PSCs de l'Active and Monitored sets Pour chaque liaison radio :

· Ec/N0 en dB

· RSCP en dBm

· Paramètres de synchronisation frame offset (OFF) et chip offset (Tm)

OFF [1] Tm [1] PSC [1] Ec/No [1] RSCP [1]

OFF [3] Tm [3] PSC [3] Ec/No [3] RSCP [3]

OFF [4] Tm [4] PSC [4] Ec/No [4] RSCP [4]

OFF [2] Tm [2] PSC [2] Ec/No [2] RSCP [2]

63

Figure 3.06 : Données MRMs sur chaque liaison radio

???? = 10

P?? - 69.55 - 26.16 log10 f + 13.82 log10 hB + ??????

(3.32)

 
 
 

64

b. Données du Node B

Les données du Node B sont :

· Nom de la cellule

· Cell IDs

· PSCs

· Primary CPICH power measurements

· Coordonnées géographique

· Hauteur de l'antenne

3.7.2.2 Calcul initial

a. Identification de la cellule

Pour la cellule de la station mobile, l'identification à l'aide d'un PSC n'est pas suffisante. Ainsi, la valeur de l'Ec/N0 de la cellule active est utilisée comme référence.

b. Elimination de mesures redondantes et identification du site

Les mesures des cellules localisées dans un même site génèrent une redondance de données. Les valeurs du RSCP est un critère de décision.

c. Première estimation de la position

L'algorithme de position utilisé a besoin d'une estimation initiale, l'exactitude est important pour la convergence. La méthode consiste à utiliser les trois meilleures cellules :

Calcul de la pathloss

La perte radio est donnée par la formule suivante où Tx est la puissance de transmission et RSCP le niveau de la puissance reçue:

P??[??B] = ????[??B??] - ??????P[??B??] (3.31)

Calcul de la distance ????

La distance ???? entre une cellule i et un UE est obtenue par :

65

f est fréquence de transmission, hB est la hauteur de l'antenne et CLc est un paramètre du modèle spécifique pour une zone urbaine.

A l'aide des coordonnées des 03 meilleures cellules (x, Y)A,B,c et les distances calculées dA,B,C, les coordonnées de la première estimation de la position du mobile (x, Y)UE est obtenue en utilisant la trilatération géométrique suivante :

{

(xUE - xA)2 + (YUE - YA)2 - d = 0 (3.33)
(xUE - xB)2 + (YUE - YB)2 - dB2 = 0 (xUE - xC)2 + (YUE - YC)2 - dC = 0 Les coordonnées sont obtenues après avoir résolu ce système d'équation en appliquant la méthode

de Cramer.

d. Calcul de l'OTD

L'OTD sur le k-ième MRM, entre l'UE et la cellule i est donnée par :

OTDK(i) = 38400 X OFF(i) + Tm(i) (3.34)
(Calculé pour chaque liaison radio non redondante)

avec :

OFF(i) : Frame offset Tm(i) : Chip offset Remarque :

Le paramètre OFF peut prendre une valeur de 0 à 255 tandis que celle du Tm varie de 0 à 38399. 3.7.2.3 Cycle de positionnement

a. Estimation du retard de propagation :

Sur le k-ième MRM, le retard de propagation T entre l'UE et la cellule i est donnée par :

Tk(i) =

1 2 (3.35)

C X (xc(i) - xue)2 + (Yc(i) - Yue)

avec :

C : Vitesse de la lumière

(x, Y)UE : Position du mobile

(X, y)?? : coordonnées du cell i

b. Calcul de la RTD ou Relative Time Differences Le modèle de RTD entre 02 cells/sites i et j peut être obtenu par:

????(??, ??) (3.36)

????????(??, ??) = (????????(??, ??) - 0.26 × 10-6)??????(256 × 38400)

L'échantillon calculé est sauvegardé dans une matrice tridimensionnelle, de position (i,j,end). La valeur utilisée est une valeur absurde de la médiane atténuée du tableau (i,j) de la matrice, RTD'(i,j).

c. Méthode RLS ou Recursive Least Squares non linéaire

Il s'agit d'une multilatération utilisant la méthode de moindre carrée récursive non linéaire. Le système d'équation est généré par :

f??(X,y) =

[

f??,1,2(X, y)
f??,1,3(X, y)
?
f??,1,??(X, y)

(3.37)

A chaque itération, une correction de la valeur est appliquée, afin de réduire la somme des résidus au carré :

min

??,??

IIf (X, y)II2 2 = min

??,??

(f1(X,y)2 + f2 (X,y)2 + ? + f??(X,y)2) (3.38)

66

Chaque équation utilise des mesures provenant de k MRM d'une paire de cell/site (i,j) :

f??,??,?? (X, y) = ????,??,?? - ????,??,?? (X, y) (3.39)

????,??,?? = C × 78 × (??????(??) - ??????(??) - ??????'??(??, ??))

et

????,??,??(X,y) = (X??(??) - X????)2 + (y??(?) - y????)2 - (X??(??) - X????)2 + (y??(??) - y????)2

3.7.2.4 Critère de validité

L'estimation de la position n'est pas valide si :

? Le nombre du cycle d'itération k est atteint.

? La méthode a échoué : flag de sortie RLS négative.

·

67

Un ou plusieurs échantillons est excessivement dévié de la valeur absurde de la médiane atténuée.

· Les valeurs des MRMs peuvent être contaminées d'erreur.

La vérification de la validité finale est déterminée par le nombre de k-ième échantillon de MRM RTD divergent des valeurs de RTD'.

La différence 8RTD est donnée par :

8RTD = |RTDk(i, j) - RTD'k(i, j)| (3.40)

La position d'UE donnée par cette MRM est considérée invalide si l'inégalité suivante est vraie, pour la valeur tolérée d'erreur maximum prédéfini ORTD tel que :

8RTD ~ ORTD (3.41)

3.7.2.5 Génération de sortie

La génération de sortie est la phase finale de l'algorithme. Les sorties générées sont :

· Le text logs de chaque opération effectuée,

· Les données brutes des MRMs, contenant toutes les valeurs et structures utilisées pour l'estimation de positions,

· Un fichier tableur CSV ou Comma Separated Values dans lequel chaque ligne correspond à une mesure et contient les coordonnées (latitude et longitude) de la position de l'UE, la taille de l'Active Set, et les mesures RSCP et Ec/N0.

· 02 Fichiers Google Earth KML ou Keyhole Markup Language (taille de l'active Set et valeurs de l'Ec/N0), pour visualiser les données contenant tous les points obtenus par l'algorithme.

3.8 Positionnement utilisant le paramètre TA

Le paramètre Timing Advance ou TA représente le temps de propagation aller et retour des ondes radioélectriques entre le mobile et la station de base avec laquelle il est en communication. Ce paramètre est codé sur six bits et prend des valeurs entières allant de 0 à 63. Une unité de TA correspond à la durée d'un bit, soit 3,7 us. Les valeurs de TA correspondent donc à des valeurs de temps de propagation comprises entre 0 et 233 us. [25]

68

Un TA de valeur 1 correspond à une distance aller/retour de deux fois 550 m. Le TA est transmis dans les messages de signalisation du protocole GSM associé au canal dédié. Sa valeur est rafraîchie toutes les 480 ms. Le paramètre TA évolue si le mobile s'éloigne ou se rapproche de la cellule courante ou si en cours de communication, il y a un changement de station de base. [25]

On peut calculer les coordonnées du mobile à partir du paramètre TA, comme nous montre la figure 3.07 ci-après où il s'agit d'un exemple de calcul des points d'intersection de deux cercles :

Figure 3.07 : Intersection de deux cercles

D'après la figure ci-dessus :

· XZ, YZ et X2, Y2 sont respectivement les coordonnées géographiques connues des stations de base BTSZ et BTS2.

· Latdecl et Londecl représentent respectivement la latitude et la longitude en valeurs décimales de ces stations de base (i =1,2)

· rZ et r2 sont les rayons des cercles centrés sur les stations BTSZ et BTS2.

69

? ??12 est l'angle que fait l'axe horizontal du repère trigonométrique avec les stations ??????1 et ??????2.

? âest l'angle que fait un des points communs des deux cercles avec les stations ??????1 et ??????2. ? P1 et P2 sont les points d'intersections recherchés de coordonnées respectives ????1, Y??1 et ????2, Y??2

Il convient de convertir au préalable les valeurs de longitude et de latitude en valeurs métriques, ce qui donne les relations suivantes:

??1 = 60 X 1180 X ??????d????1 ??2 = 60 X 1180 X ??????d????2 (3.42)

Y1 = 60 X 1852 X ??????d????1 Y2 = 60 X 1852 X ??????d????2 (3.43)

La valeur de ?????? reçue de la station i (i=1,2) est convertie en distance r; correspondant au rayon du cercle qui s'exprime alors sous la forme :

???? = (3,69 X ?????? X 300)/2 (3.44)
L'angle â est donné par la relation suivante :

??22 - ??12 - d2 (3.45)

/3 = arccos (-2??1d )

L'angle ??12 est calculé en prenant en compte les quatre cas de figures rencontrés correspondant aux 4 cadrans du repère trigonométrique.

Enfin, les coordonnées des points d'intersection sont données par les relations :

????1 = ??1 + ??1 cos(??12 + /3)

????2

= ??1 + ??1 cos(??12 -

/3)

(3.46)

Y??1 = Y1 + ??1sin( ??12 + /3)

Y??2

= Y1 + ??1 sin( ??12 -

/3)

(3.47)

3.9 Conclusion

Le développement de la localisation à base d'empreinte radio nous a permis de présenter des modèles mathématiques et des algorithmes associés. Ainsi, il existe plusieurs méthodes de compression de base de données radio et de classification. Et, afin de réaliser notre application de traitement de traces et localisation d'abonnés, nous avons étudié la méthode basée sur l'OTD pour le 3G et, le TA pour le 2G, qui sont des procédés dérivés du système LFP.

70

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"L'ignorant affirme, le savant doute, le sage réfléchit"   Aristote