IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

[matrice spéciale] comment coder ce genre de matrices?!


Sujet :

Algorithmes et structures de données

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2005
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 8
    Points : 2
    Points
    2
    Par défaut [matrice spéciale] comment coder ce genre de matrices?!
    Bonjour
    comment génère-t-on ce type de matrices qui remplissent ces conditions ( est-ce qu'ils existent des fonctions prédéfinies ?? ) :

    -ce sont des matrices binaires de type m x n
    -les premières lignes sont des groupes de 1 shiftés
    -les dernières lignes ( une fois le shift a atteint la fin de la matrice du haut) sont les permutations des lignes des lignes du haut
    - les nombres de 1 par colonne doit etre de 2.

    11 00 00 00
    00 11 00 00
    00 00 11 00
    00 00 00 11
    10 10 01 01
    01 01 10 00
    etc

    j'ai essayé mais je n'ai pas réussi alors voilà, j'espère avoir un peu d'aide.
    Merci d'avance

  2. #2
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Les 4 premières lignes je comprends bien le mécanisme, mais la cinquième je suis perdu !
    C'est exactement ce que tu dois obtenir ?
    Aucune réponse à une question technique par MP.
    Ce qui vous pose problème peut poser problème à un(e) autre

    http://thebrutace.labrute.fr

  3. #3
    Candidat au Club
    Inscrit en
    Mars 2005
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    non non, en fait c'est une permutation aléatoire des lignes qui donne les dernières lignes. mais avec la condition que il n'y a que deux 1 par colonne.

  4. #4
    Membre régulier Avatar de kaisse
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 100
    Points : 117
    Points
    117
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    10 10 01 01
    01 01 10 00
    Je ne vois pas en quoi c'est une permutation des premières lignes.
    Un élément de ta matrice est-il un bit ou une paire de bit ? Tes groupes de 1 ont-ils une taille fixe ? Ou au moins une taille toujours divisible par le nombre de colonnes ? Le shift est-il de la taille du groupe ou peut-il être plus grand ?

    Répond à ces questions et explique vraiment comment tu génère les deux dernières lignes par qu'il pourrait s'agir de tout sauf d'une permutation des premières lignes (en tout cas pas d'une permutation triviale).

    Sinon, pour coder les premières lignes, je dirais (avec l'hypothese que la taille du groupe est divisible par le nombre de colonnes et que le décalage est d'autant de colonnes ) qu'il te suffit de coder la taille de tes groupes. Donc, là tu sais génerer les premières lignes ... par contre la suite ..

  5. #5
    Candidat au Club
    Inscrit en
    Mars 2005
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    ok, commençons par un problème un peu différent. Comment faire pour générer des matrices binaires aléatoires de taille m x n dont la condition serait qu'ils n'y que deux 1 par colonnes et que donc les lignes sont lin. indépendentes entre elles.
    ( mes matrices que j'aimerais générées ensuite sont un cas spécial qui shift des groupes de 1 et ensuite fait des permutations de une ligne pour construire les dernières lignes )
    je m'excuse pour l'exemple précédent mais il était faux ( en tout cas pour les permutations ) . Et sinon pour la taille des groupes de 1, c'est égal du moment que les shits de la partie supérieur de la matrice sont complets, c'est à dire pas de superposition)
    Merci et désolé

    PS : pour ceux qui s'y connaissent, j'essaye de générer des "parity-check matrices" pour les LDPC codes

  6. #6
    Membre confirmé
    Profil pro
    Directeur Scientifique
    Inscrit en
    Avril 2005
    Messages
    419
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur Scientifique

    Informations forums :
    Inscription : Avril 2005
    Messages : 419
    Points : 554
    Points
    554
    Par défaut
    Si j'ai bien compris, la matrice (n lignes m colonnes) à fabriquer est composée de 2 sous-matrices:
    • - celle du haut: m colonnes m/2 lignes qui est totalement déterministe (donc il n'y a pas de travail à faire
      - celle du bas: m colonnes n-m/2 lignes qui est aléatoire qui a exactement un 1 par colonne.

    Pour générer aléatoirement la matrice du bas, il suffit alors pour chacune des colonne de choisir un nombre "aléatoire" r entre 0 et n-m/2-1 et de mettre à 1 la case de cette colonne située à la ligne m/2+r.

    J'espère que cela répond au problème.

Discussions similaires

  1. comment faire un vecteur avec matrice(2,3,:)
    Par paiva44 dans le forum MATLAB
    Réponses: 3
    Dernier message: 09/01/2010, 16h05
  2. Création d'une matrice spéciale
    Par nant44 dans le forum MATLAB
    Réponses: 16
    Dernier message: 15/10/2007, 11h12
  3. [Débutant] Comment faire une interpolation de matrice afin de créer un contour
    Par sydneya dans le forum MATLAB
    Réponses: 3
    Dernier message: 19/06/2007, 11h22
  4. comment transformer une image en matrice
    Par liliana07 dans le forum C++Builder
    Réponses: 3
    Dernier message: 13/03/2007, 14h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo