Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Maximilien Gadouleau - Codes Algébriques pour le Codage Réseau Linéaire Aléatoire

Fef83ca87fd2a7994d087631868acf8f?s=47 SCEE Team
December 17, 2009

Maximilien Gadouleau - Codes Algébriques pour le Codage Réseau Linéaire Aléatoire

Fef83ca87fd2a7994d087631868acf8f?s=128

SCEE Team

December 17, 2009
Tweet

Transcript

  1. Introduction Résultats Conclusion et Perspectives Codes Algébriques pour le Codage

    Réseau Linéaire Aléatoire Maximilien Gadouleau CReSTIC Université de Reims Champagne-Ardenne 17 Décembre 2009
  2. Introduction Résultats Conclusion et Perspectives Organisation Introduction Codage Réseau Linéaire

    Aléatoire Codes Correcteurs d’Erreurs pour RLNC Résultats Présentation des Résultats Probabilité d’Erreur du Décodeur en Métrique Rang Conclusion et Perspectives
  3. Introduction Résultats Conclusion et Perspectives Organisation Introduction Codage Réseau Linéaire

    Aléatoire Codes Correcteurs d’Erreurs pour RLNC Résultats Présentation des Résultats Probabilité d’Erreur du Décodeur en Métrique Rang Conclusion et Perspectives
  4. Introduction Résultats Conclusion et Perspectives Codage réseau • Routage traditionnel:

    “store and forward” N’atteind pas le débit maximal pour le multicast • Codage réseau permet aux nœuds intermédiaires de combiner les paquets • Uniquement des combinaisons linéaires de paquets ⇒ Codage réseau linéaire • Résultat: plus haut débit pour multicast, meilleures adaptabilité et robustesse aux pertes de paquets
  5. Introduction Résultats Conclusion et Perspectives Exemple de codage réseau

  6. Introduction Résultats Conclusion et Perspectives Codage réseau linéaire aléatoire (RLNC)

    • Fixer les combinaisons linéaires nécessite la connaissance du réseau et est trop rigide • Solution: choisir les combinaisons linéaires aléatoirement • Dans l’exemple, 1 chance sur 3 de succès Mais, probabilité de succès tend vers 1 avec la taille du corps (Kötter et Médard) • En-tête pour enregistrer combinaisons linéaires ⇒ (Ir|M), où M = a b • Décodage facile: on reçoit (L|LM), on calcule L−1(LM)
  7. Introduction Résultats Conclusion et Perspectives Contrôle d’erreurs pour RLNC •

    RLNC très sensible aux erreurs pour deux raisons • Différents types d’erreurs • Liens défectueux • Taille du corps insuffisante • Nœuds défaillants ou malveillants • Adversaire sur le réseau • Propagation des erreurs: un paquet erroné peut corrompre tous les paquets après combinaison linéaire • Codes en métrique de Hamming inadaptés
  8. Introduction Résultats Conclusion et Perspectives Erreur dans notre exemple

  9. Introduction Résultats Conclusion et Perspectives Canal opérateur [KK08] • RLNC

    préserve l’espace des lignes de la matrice envoyée ⇒ Modèle de transmission d’un sous-espace linéaire • Deux façons de modifier un sous-espace - Effacement: suppression d’une dimension - Erreur: addition d’une dimension • Canal opérateur: envoie U, reçoit V = H(U) ⊕ E H représente les effacements, E sont des erreurs • Contrôle d’erreurs pour RLNC est un problème de codage, où les mots de code sont des sous-espaces
  10. Introduction Résultats Conclusion et Perspectives Espace projectif et codes de

    sous-espaces • Code de sous-espaces: ensemble de sous-espaces de GF(q)n ⇒ Sous-ensemble de l’espace projectif • Métriques: - distance de sous-espace dS pour erreurs inhérentes au réseau - distance d’injection dI pour canaux avec adversaire • V obtenu de U après effacements et ρ erreurs dS(U, V) = + ρ = dim(U + V) − dim(U ∩ V) dI(U, V) = max{ , ρ} = max{dim(U), dim(V)} − dim(U ∩ V)
  11. Introduction Résultats Conclusion et Perspectives Grassmannien et CDCs • Code

    de dimension constante (CDC): ensemble de sous-espaces de GF(q)n avec dimension r ⇒ Sous-ensemble du Grassmannien • dS(U⊥, V⊥) = dS(U, V) ⇒ assume r ≤ n 2 • Avantages: - dS (C) = 2dI (C) pour un CDC ⇒ Utilisable dans les deux scénarios, et dS maximum - Procédure de décodage simplifiée • Relation avec les codes en métrique rang par le ‘lifting’ [SKK08]
  12. Introduction Résultats Conclusion et Perspectives Codes en métrique rang [Del78],

    [Gab85], [Rot91] • Code en métrique rang: ensemble de matrices dans GF(q)m×n • Applications au stockage des données, à la cryptographie, au codage espace-temps etc • Distance rang: dR(M, N) = rk(M − N) dR(MT, NT) = dR(M, N) ⇒ m ≥ n • Borne de Singleton: |C| ≤ qm(n−dR+1) • Codes optimaux (atteignent la borne de Singleton): codes MRD
  13. Introduction Résultats Conclusion et Perspectives Codes de Gabidulin • Codes

    de Gabidulin: codes MRD similaires aux codes de Reed-Solomon Évaluation de polynômes linéarisés • Matrice génératrice G =       gq0 0 gq0 1 · · · gq0 n−1 gq1 0 gq1 1 · · · gq1 n−1 . . . . . . ... . . . gqk−1 0 gqk−1 1 · · · gqk−1 n       • Algorithmes de décodage: EEA, BMA, Welch-Berlekamp, etc
  14. Introduction Résultats Conclusion et Perspectives Liftings de codes en métrique

    rang • Lifting: M ∈ GF(q)m×n, I(M) est l’espace des lignes de (Im|M) • dI(I(M), I(N)) = dR(M, N) • C code en métrique rang ⇒ I(C) CDC, et dS(I(C)) = 2dI(I(C)) = 2dR(C) • Contrôle d’erreurs pour RLNC avec liftings est un problème en métrique rang • Code KK: lifting d’un code de Gabidulin (transposé). Presque optimal • Décodeur en métrique rang généralisé pour codes KK
  15. Introduction Résultats Conclusion et Perspectives Organisation Introduction Codage Réseau Linéaire

    Aléatoire Codes Correcteurs d’Erreurs pour RLNC Résultats Présentation des Résultats Probabilité d’Erreur du Décodeur en Métrique Rang Conclusion et Perspectives
  16. Introduction Résultats Conclusion et Perspectives Résumé des résultats • Codes

    en métrique rang - Propriétés de recouvrement (IT 08 + CL 09) - Identité de MacWilliams (EURASIP 08) - Probabilité d’erreur du décodeur (IT 08 + soumis à IT) - Codes de rang constant (soumis à IT) - Implémentation du décodeur pour codes KK (en préparation) • Codes de dimension constante - Construction et propriétés de recouvrement (soumis à IT) - Probabilité d’erreur du décodeur (soumis à IT) • Codes de sous-espaces - Propriétés d’empilement et de recouvrement (soumis à IT)
  17. Introduction Résultats Conclusion et Perspectives Codes en métrique rang •

    Identité de MacWilliams - Essentielle relation sur les distributions des distances entre un code et son dual - En métrique rang, Delsarte détermine une forme combinatoriale - Forme polynomiale, jusqu’alors inconnue - Moments binomiaux et de puissance de la distribution des rangs • Propriétés de recouvrement - Propriétés géométriques - Bornes et constructions explicites asymptotiquement optimales, voire optimales à un facteur près - Rayon de recouvrement de codes connus (Gabidulin et autres) • Implémentation du décodeur SKK - Simplification de l’algo et évaluation du nombre d’opérations - Codes KK peuvent être utilisés en applications
  18. Introduction Résultats Conclusion et Perspectives CDCs et codes de Sous-espaces

    • Construction de CDCs avec décodeur amélioré Nouveau code contient code KK, décode plus d’erreurs que BDD • Probabilité d’erreur du décodeur Exactes valeurs et bornes pour tous les codes Liftings de codes MRD ont la plus haute DEP • Codes de sous-espaces Construction et bornes asymptotiquement optimales pour les deux problèmes: empilement et recouvrement, pour les deux métriques: sous-espace et injection
  19. Introduction Résultats Conclusion et Perspectives DEP sur un canal rang

    symétrique • Scénario: - Transmission de paquets avec RLNC - Adversaire injecte paquets afin de corrompre la transmission • Contrôle d’erreurs: lifting d’un code en métrique rang dans GF(q)m×n (m ≥ n) de distance min d • Canal rang symétrique: adversaire choisit les paquets uniformément aléatoirement ⇒ Erreur additive, toutes erreurs avec le même rang equiprobables
  20. Introduction Résultats Conclusion et Perspectives Probabilité d’Erreur du Décodeur (DEP)

    • Décodeur à distance bornée Trouve l’unique mot de code à distance ≤ t = d−1 2 de la matrice reçue • Trois sorties possibles: - Succès ssi matrice reçue à distance u ≤ t - Echec si d = 2t + 2 et distance u = t + 1 - Erreur ou échec si u ≥ d − t • Erreur plus grave qu’un échec ⇒ Etudie la probabilité d’erreur • DEP dépend du mot de code C et du rang u de l’erreur: P(C, u)
  21. Introduction Résultats Conclusion et Perspectives Notations pour la métrique rang

    • Nombre de matrices de rang u dans GF(q)m×n: N(u) = n u α(m, u), α(m, u) = u−1 i=0 (qm − qi), n u = α(n,u) α(u,u) • Intersection de deux sphères de rayons u et s avec centres à distance d: J(u, s, d) [GY09] • Distribution des distances des codes MRD: M(d, r) mots de code de rang r ≥ d [Del78], [Gab85]
  22. Introduction Résultats Conclusion et Perspectives DEP sur un canal rang

    symétrique • Distribution des distances Aw(C) = |{D ∈ C : dR(D, C) = w}| • Valeur exacte de P(C, u): P(C, u) = 1 N(u) n w=d Aw(C) t s=0 J(u, s, w) • Preuve géométrique:
  23. Introduction Résultats Conclusion et Perspectives Codes de Rang Constant [GY08]

    • Motivation: Autre relation entre les CDCs et les codes de métrique rang • CRCs optimaux de taille suffisante donnent des CDCs optimaux ⇒ Problème de trouver des CDCs optimaux devient un problème en métrique rang • Etude des CRCs aussi intéressante pour DEP AR(q, m, n, d, r): cardinalité maximale d’un CRC dans GF(q)m×n avec rang r et distance min d
  24. Introduction Résultats Conclusion et Perspectives Bornes sur AR (q, m,

    n, d, r) • Borne de Johnson: AR(q, m, n, d, r) ≤ qn − 1 qn−r − 1 AR(q, m, n − 1, d, r) Idée: poinçonner le code par colonnes, étudier les codes obtenus • Borne de Singleton: AR(q, m, r, d, r) ≤ AR(q, m, r − 1, d − 1, r − 1) Idée: poinçonner la dernière colonne, le rang diminue de 1 et la distance d’au plus 1 • Combinaison des deux bornes: AR(q, m, n, d, r) ≤ n r α(m, r − d + 1)
  25. Introduction Résultats Conclusion et Perspectives DEP sur un canal rang

    symétrique • Bornes sur les distributions des distances (CRCs) ⇒ Borne sup pour tous codes: P(C, u) ≤ 1 N(u) n w=d n w α(m, w − d + 1) t s=0 J(u, s, w) • Borne sup universelle pour tous codes et erreurs: P(C, u) < K−2 q q−t(m−n+t), où 1 < K−1 q < 4 pour q ≥ 2 ⇒ Décroît exponentiellement avec t2
  26. Introduction Résultats Conclusion et Perspectives DEP sur un canal rang

    symétrique • Totale probabilité d’erreur P(C) = n u=d−t P(dR(M, C) = u)P(C, u) En pratique, P(dR(M, C) = u) décroît rapidement avec u ⇒ Somme dominée par le premier terme • Pour u = d − t, dépend uniquement de Ad(C): P(C, d − t) ∼ q−(d−t)(m+n−2t)Ad(C)
  27. Introduction Résultats Conclusion et Perspectives DEP des codes MRD •

    MRD ont la plus haute DEP à un facteur près: AR(d, r) < HqM(d, r) ⇒ P(C, u) < HqPMRD (u), où 1 < Hq ≤ 3.5 pour q ≥ 2 • Compromis entre rendement et DEP • Exactitude de la borne sup universelle: when d = 2t + 1, PMRD (d − t) > Kqq−t(m−n+t) ⇒ Exacte à un facteur près
  28. Introduction Résultats Conclusion et Perspectives DEP sur un canal généralisé

    • Si l’adversaire a connaissance du code utilisé, il peut choisir les paquets à injecter de manière intelligente ⇒ Après combinaisons linéaires, toutes erreurs avec même espace des lignes équiprobables • Généralisation du cas précédent • On retrouve les bornes dérivées plus haut • Autre vue: erreurs dans un appareil bidimenensionnel de stockage des données
  29. Introduction Résultats Conclusion et Perspectives Organisation Introduction Codage Réseau Linéaire

    Aléatoire Codes Correcteurs d’Erreurs pour RLNC Résultats Présentation des Résultats Probabilité d’Erreur du Décodeur en Métrique Rang Conclusion et Perspectives
  30. Introduction Résultats Conclusion et Perspectives Conclusion et perspectives • Résumé

    des résultats • Perspectives sur RLNC et son contrôle d’erreurs: - RLNC: implémentation et problèmes liés - Constructions de CDCs et de codes de sous-espaces - Connection entre codes de sous-espaces et codes en métrique rang - Constructions et décodage des codes correcteurs d’erreurs pour RLNC • Autre direction: codes sur des sous-ensembles pour le routage. Relation avec codes binaires
  31. Introduction Résultats Conclusion et Perspectives Bibliographie [Del78] P. Delsarte, “Bilinear

    forms over a finite field, with applications to coding theory,” J. Comb. Theory A, 1978 [Gab85] E. Gabidulin, “Theory of codes with maximum rank distance,” Probl. Inf. Transm., 1985 [GY08] M. Gadouleau and Z. Yan, “Constant-rank codes and their relations to constant-dimension codes,” IEEE WiNC, 2008 [GY09] M. Gadouleau and Z. Yan, “Bounds on covering codes with the rank metric,” IEEE Comm. Letters, 2009 [KK08] R. Kötter and F. Kschischang, “Coding for errors and erasures in random network coding,” IEEE Trans. IT, 2008 [Rot91] R. Roth, “Maximum-rank array codes and their application to crisscross error correction,” IEEE Trans. IT, 1991 [SKK08] D. Silva, F. Kschischang, and R. Kötter, “A rank-metric approach to error control in random network coding,” IEEE Trans. IT, 2008