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 :

Casse tête chinois


Sujet :

Algorithmes et structures de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Points : 41
    Points
    41
    Par défaut Casse tête chinois
    Bonjour à tous;
    voilà je suis vraiment bloqué pour trouver un algorithme à mon problème.

    Résumé:
    Je dispose d'un nombre de commandes Nc, chaque commande contient un nombre variable d'objets No. Le but c'est de remplir un nombre maximal de de cavités-les cavités ayant des capacités égales- avec ces objets.
    Les conditions sont:
    1-Il faut remplir le maximum de cavités
    2-Il faut que les cavités remplies soient pleines.
    3-Il faut que pour une commande utilisée, tous ses objets soient utilisés.

    L'idée c'est de jouer sur une combinaison de commandes de sortes que la somme de leurs objets soient divisible par la capacité des cavités.
    Merci pour votre aide.

  2. #2
    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, une commande est dans une seule cavité.

    Le problème est NP complet même s'il n'y a que 2 cavités: c'est le problème de PARTITION (en disant que la taille de la cavité est la moitié du onmbre total d'objets).

    Il faut donc t'orienter vers les techniques d'optimisation exactes ou approchées selon tes besoins et les problèmes de type "bin packing".

  3. #3
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Une première idée, je ne sais pas ce qu'elle vaut :

    On définit une notion de boites qui sont des "sous-cavités" dont le nombre d'objet sera compris entre la taille de la plus petite commande et la taille de la cavité.

    On travaille par itération en augmentant par pas de 1 la taille des boites:
    Une boite de taille N peut contenir toutes les combinaisons de boites de taille N1 et telles que N=N1+N2 et N1>N2>=0.

    Lorsqu'on est arrivé à N=taille de la cavité, on envisage toutes les combinaisons possibles de boites :
    on vérifie, lors de la décomposition progressives des boites en commandes, si une boite a déjà été utilisée : dans ce cas, on abandonne la décomposition.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  4. #4
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Bonjour,

    en général sur les problèmes NP complet, on ne peut tester toute les possbilités, c'est bien là le problème.

    Une heuristique toute simple pour résoudre ce genre de problème est de trier les objets en fonction de leurs volume et de commencer à placer les plus gros. En procédant de cette sorte, on s'approche de la solution. Bien évidemment, comme toute heuristisque elle ne fonctionne pas tout le temps.
    Pense peut etre au taboo.

    Bon courage...
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

Discussions similaires

  1. [1.x] embedForm / mergeForm => casse tête chinois
    Par erictomcat dans le forum Symfony
    Réponses: 17
    Dernier message: 08/02/2011, 23h56
  2. Casse tête chinois
    Par mortimer.pw dans le forum SQL
    Réponses: 5
    Dernier message: 26/09/2008, 19h59
  3. SMSLIB casse tête chinois
    Par yashiro dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 02/11/2007, 11h45
  4. Classe, pile, pointeurs et casse-tête!
    Par zazaraignée dans le forum Langage
    Réponses: 6
    Dernier message: 26/09/2005, 16h57
  5. casse-tête excel
    Par gregius dans le forum Access
    Réponses: 2
    Dernier message: 21/09/2005, 16h38

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