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 :

Reconstruction de flux de données


Sujet :

Algorithmes et structures de données

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Février 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Février 2020
    Messages : 3
    Par défaut Reconstruction de flux de données
    Bonjour à tous,

    J'ai un plus ou moins gros soucis sur lequel j'espère vous pourrez m'apporter des indications. Je ne sais pas si je post dans le bon répertoire.

    J'expose dans un premier temps le problème. Puis, je décris mon ébauche de résolution bien qu'encore très limité. Par ailleurs, SI vous voyez d'autre moyen de résoudre ce problème, je suis tout ouïe.

    Problème:

    Un exemple de données est dans le fichier joint.

    Ma données est tout simplement une table.
    Chaque observation contient un identifiant unique, clé de ma table. puis quelques caractéristiques intrinsèques liées a cette identifiant.
    Enfin, pour l'une des variables spécifiques, nous avons l'historique des mesures de la variable dans le temps dispatché annuellement sur plusieurs colonnes. Cela représente le flux de la variable au niveau de l'identifiant.

    Pour rendre plus concret. Imaginons un monde post apocalyptique où on fait très attention a la gestions de l'eau. On a un parc de différents points d'eau (identifiants unique), disons trois points A0, B0 et C0. la gestion est confiée à trois personnes différentes (disons Bob, Snoopy et Pierrot) et chacune est responsable de son point d'eau. Jusqu'ici tout va bien.

    Seulement les points d'eau communiquent entre eux. et du jour au lendemain le point A0 peut etre vidé dans un autre point d'eau disons A1 avec une petite perte d'eau. quant à B0, le volume d'eau est vidé dans B11 et B12. Cette fois en cumulant les deux volumes, on a un petit peu plus en terme de quantité.

    Il se peut même qu'a partir d'une certaine date, Bob se voit accorder la gérance supplémentaire d'un nouveau point d'eau Z.

    Il se peut aussi qu'un beau jour, pour xY raison, A1 et C0 soit versé dans le même point d'eau AC0 toujours avec une legere perte ou gain.

    Imaginez après quelques années de gestion, on nous demande d'évaluer comment les quantités A0, B0 et C0 ont été géré. Mais on rencontre un problème, les seuls données dont on dispose sont le nom des point d'eau qui ont été utilisé avec leur historique de volume. nous ne savons plus qui c'est occupé de tel ou tel point d'eau ni des transferts de volume. Avec ces seules données, on voudrait reconstruire la colonne de provenance tel que: A0->A1; A1->AC0;
    B0->B11
    B0->B12
    Z quantité à part
    C0->AC0
    L'exemple inclus les cas décrits.
    Une contrainte supplémentaire est que les réservoirs sont à usage unique. une fois vidé, ils ne sont plus utilisé.

    L'idée de la solution est intuitif et simple dans le cas de l'exemple mais la solution devra être utiliser sur des milliers de tables dont le nombre de reservoir pourra aller jusqu'a quelques centaine et la profondeur historique jusqu'a 160 mois a une frequence mensuelle.

    Résolution:

    - solution simple:
    regarder quand les réservoirs se vident et ou ils sont susceptibles d'avoir été transférés en se basant sur la stabilité du niveau volumétrique en prenant en compte à la fois les contraintes techniques et à la fois les caractéristiques (qui peuvent porter de l'information pertinente quand disponible). facile a dire ^^ mais je peche un peu ici.

    D'abord la solution pour un cas ou on a 3 reservoirs initiaux et 8 réservoirs au globale aura la forme d'une matrice tel que:
    A0 B0 C0 A1 B11 B12 AC0 K C1
    A0 1 0 0 1 0 0 1 0 0
    B0 0 1 0 0 1 1 0 0 0
    C0 0 0 1 0 0 0 1 0 1
    NA (nouvel assignation) 0 0 0 0 0 0 0 1 0


    La matrice contient des 1 lorsques le réservoir d'une colonne donnée a contenu un volume issue du reservoir de la ligne correspondante.
    Des contraintes portent sur le contenu de la matrice :
    - soit directement par exemple par rapport aux caractéristiques :l'eau contenu dans un réservoir homologué en L ne peut être contenu que dans un reservoir homologué L ou info absente.
    - soit indirectement par exemple le transfert ne peut durer que deux mois maximun entre deux réservoirs. ie que le reservoir de transfert a un reservoir ne peut etre rechercher que parmi ceux qui contiennent Au moins une goutte d'eau deux mois apres.

    Une fois ces limites/règles établies, Il reste selon moi à chercher la solution optimale ie (je crois qu'on appelle ca l'optimun de pareto) minimiser au mieux la fonction de stabilité de notre data D et de notre solution potentielle S d'une part et minimiser le nombre de solution ranger en nouvel assignation d'autre part.

    La fonction de stabilité est plus ou moins la volatilité de ma variable volume au cours du temps. Voila ou j'en suis.

    Techniquement, je pensais, pour gérer ces contraintes simplement à de la programmation par contraintes, mais je ne connais pas du tout ce sujet donc je suis assez preneur de conseils qui pourrait m'orienter vers une solution technique efficace et gratos . et si il y a beaucoup plus simple je suis aussi biensur preneur.

    Il faut aussi savoir que on a un jeu de test ou la solution est connue



    Merci
    Images attachées Images attachées
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Flux de données C# 2.0
    Par jpo dans le forum Accès aux données
    Réponses: 2
    Dernier message: 12/10/2006, 09h13
  2. [AJAX/XML/JAVA] Afficher un flux de données depuis un site web
    Par chodaboy34 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/10/2006, 16h38
  3. Réponses: 1
    Dernier message: 24/05/2006, 12h10
  4. [XML] [EXPAT] traitement d'un flux de donnée xml contenant des \n
    Par firejocker dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 23/02/2006, 16h49
  5. Rediriger un flux de données sous linux
    Par Nicaisse dans le forum POSIX
    Réponses: 7
    Dernier message: 01/07/2003, 16h04

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