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 :

Théorie sur les groupes et les ensembles


Sujet :

Algorithmes et structures de données

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 69
    Par défaut Théorie sur les groupes et les ensembles
    Bonjour,

    Je désire réaliser un logiciel qui aide à faire un plan de table.

    Ex : J’ai 100 invités, 5 tables de 8 places, 5 tables de 12 places et je désire répartir de la meilleur façon possible les personnes suivant leurs âges et leurs familles.

    J’ai cherché un peu sur le net des cours sur la théorie des groupes. Je ne suis tombé que sur des cours de math au dessus de mon niveau.
    Connaissez vous un site qui présente ce sujet pour les débutants ?

    Merci

  2. #2
    Membre Expert Avatar de Nemerle
    Inscrit en
    Octobre 2003
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 106
    Par défaut
    Sorry, mais je ne vois pas ce qu'ont à faire les groupes ici...

    Regarde plutôt du coté d ela recherche opérationnelle, section shuffling.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 69
    Par défaut
    Salut Nemerle,

    Comme je veux faire des groupes d'individus j'ai naturellement écris que je voulais des infos sur la théorie des groupes.
    Le terme n'est peut-être pas approprié.

    J'ai cherché sur le forum et sur le net "la recherche opérationnelle" mais sans succès.
    J'ai trouvé quelques explications sur les graphes. Cela correspond-t-il à mon problème?

    Les recherches sur Internet sont assez dures avec ce thème: je n'ai pas les bons mots clés pour chercher et les résultats sont nombreux et très spécialisés.

    Je passe par ce forum pour être aiguillé dans ma recherche et l'accélérer.

    Mais si personne ne peux me répondre tant pis. Je repars dans la jungle du web avec mon seul Google en guise de machette ou je reviens au camp me taper une bonne binouze !

    -Hé ! Roger ! 2 bières ! Pour moi et ma machette !

  4. #4
    Membre Expert Avatar de Nemerle
    Inscrit en
    Octobre 2003
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 106
    Par défaut
    Je pense pouvoir t'aider, mais précise un peu comment tu comptes répartir les gens:

    - selon l'age et la famille, mais comment? Par paquet de même age, ou de même famille? Ou bien en essayant de mélanger le plus possible les gens?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 69
    Par défaut
    L'idéal serait de laisser cette option libre à l'utilisateur.

    Mais si dans un premier temps j'arrivais à regrouper les gens
    -ayant la même tranche d'âge (0-10 ans, 10-20, 20-30 etc... ou ayant l'âge le plus proche possible sans excéder une limite de 10 ans en plus ou en moins)
    - et/ ou appartenant à la même famille.

    se serait déjà pas mal!

  6. #6
    Membre averti
    Inscrit en
    Juin 2002
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 58
    Par défaut
    SAlut,

    Premiere chose: tu t'attaques à un probleme DIFFICILE.
    Avant de cherche un algorithm pour resoudre ton probleme, tu devrais chercher une fonction (disons F) qui donne si un placement donné de tes N personnes est bon.

    Exemple: on a 4 personnes de 10, 12, 20 et 50 ans notés A B C et D.
    On les met autour d'une table ronde dont les places sont indexées de 1 à 4.
    Un placement donné (noté P) sera une suite de personne comme P1=(A, B, C, D) ou P1=(A, C, B, D).

    Pour connaitre ton meilleur placement il faut que tu evalues si P1 est meilleur que P2. Pour ca tu dois definir la fonction F que tu vas essayer de minimiser et donc obtenir F(P1)>F(P2) ou l'inverse. Si par exemple tu travailles sur les ages tu peux imaginer une fonction F(P)= somme pour i allant de 1 à N de valeur_absolue(age(i)-age(i+1))
    En utilisant la convention age(N+1)=age(1).
    Le placement A B C D va donner F(P1)=F(A B C D)=80 et F(P2)=F(A, C, B, D)=96. Tu vas en conclure que P1 est un meilleur placement que P2.

    Quand tu aurras determiné cette fonction il sera plus facile de t'orienter sur un algo.

    A+
    Victor

  7. #7
    Membre Expert Avatar de Nemerle
    Inscrit en
    Octobre 2003
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 106
    Par défaut
    Citation Envoyé par grav
    L'idéal serait de laisser cette option libre à l'utilisateur.

    Mais si dans un premier temps j'arrivais à regrouper les gens
    -ayant la même tranche d'âge (0-10 ans, 10-20, 20-30 etc... ou ayant l'âge le plus proche possible sans excéder une limite de 10 ans en plus ou en moins)
    - et/ ou appartenant à la même famille.

    se serait déjà pas mal!
    Note 0, 1, 2,... pour tes tranches d'age 0-10 ans, 10-20 ans,...

    Note A,B,C,D,... tes différentes familles.

    Si tu privilégies l'age, chaque personne a donc un "code" associé: 2B, 0C, 3D,... et tu ordonnes par ordre lexico croissant ou décroissant.

    Si tu privilégies la famille , chaque personne a le "code" associé inverse: B2, C0, D3,... et tu ordonnes par ordre lexico croissant ou décroissant.

    Après, tu as à effectuer un remplissage de tes tables, en fonction de la taille de tes tables et de la taille de tes paquets ayant le même code...

    J'y reviendrai, en utilisant une ou plusieurs fonctionnelles.

    Dans ce type de problème, toujours commencer par définir une relation d'ordre, puis essayer de rendre le problème calculatoire par l'introduction de fonctions d'évaluation en rapport avec ta relation d'ordre.

Discussions similaires

  1. Réponses: 7
    Dernier message: 23/09/2005, 20h58
  2. [SQL] problème avec les date et les group By
    Par Stef784ever dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/11/2004, 09h18

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