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 :

Algo de placement par rapport à des périodes données


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 15
    Par défaut Algo de placement par rapport à des périodes données
    Bonjour le forum,

    Dans un projet de Gestion de camping, je voudrais un algorithme permettant l'optimisation d'attributions d'emplacements par rapport aux periodes reservees par un camper.
    Je m'explique avec un petit exemple tres simpliste:

    Soit un camping a 2 emplacements.
    Paul reserve du 2 au 8. => Emplacement 1 attribue
    Marc reserve du 10 au 16. => Emplacement 2 attribue
    Si Jean veut reserver du 7 au 12, aucun emplacement ne sera disponible !
    (Alors qu'il aurait ete possible en attribuant a Marc l'emplacement 1)


    Voila l'idee. J'ai cherche du cote d'un algorithme d'ordonnancement mais je n'arrive pas a trouver ce qui me convient.
    Une idee d'un algorithme existant se rapprochant de mon probleme ?
    Tout piste m'interesse

    Merci de m'orienter !

  2. #2
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par romfret Voir le message
    Voila l'idee. J'ai cherche du cote d'un algorithme d'ordonnancement mais je n'arrive pas a trouver ce qui me convient.
    Il te faut plutôt un algorithme de réservation/booking de ressources.

    Une idee d'un algorithme existant se rapprochant de mon probleme ?
    Tout piste m'interesse
    Ca se rapproche des algos de type "système réducteur", avec du packing (vertical) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    date:            01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17
    Paul :              PPPPPPPPPPPPPPPPPPPP
    Marc :                                      MMMMMMMMMMMMMMMMMMMM
    Jean :                             JJJJJJJJJJJJJJJJJ
     
    Emplacement 1 :  --------------------------------------------------
    Emplacement 2 :  --------------------------------------------------
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  3. #3
    Membre averti
    Inscrit en
    Février 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 15
    Par défaut
    Ok merci pour ces infos, je vais fouiller

  4. #4
    Membre averti
    Inscrit en
    Février 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 15
    Par défaut
    Bon après des recherches, j'ai eu quelques pistes de base à adopter.

    On m'a conseillé l'algorithme "Hill Climbing".

    Sinon, que pensez-vous de l'algorithme des noeuds-chapeaux ?
    http://www.developpez.net/forums/d51...e/#post3078887

    Voilà je parcours un peu tous les algorithmes existant pour le moment, je n'ai pas vraiment de connaissances dans le domaine de ce genre d'algo, tout cela me parait encore flou.

    Voilà où j'en suis pour le moment, des suggestions ? ^^

  5. #5
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par romfret Voir le message
    Bon après des recherches, j'ai eu quelques pistes de base à adopter.

    On m'a conseillé l'algorithme "Hill Climbing".
    C'est plus une "technique générale" qu'un algorithme particulier, mais oui c'est une bonne approche

    Sinon, que pensez-vous de l'algorithme des noeuds-chapeaux ?
    http://www.developpez.net/forums/d51...e/#post3078887
    Hum... L'algo de rayrole n'est pas vraiment fait pour optimiser l'allocation des ressources.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  6. #6
    Expert confirmé 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
    Par défaut
    On peut utiliser une approche qui consiste à attribuer un poids (coefficient de difficulté à chaque demande) puis à attribuer les emplacements en traitant en priorité les demandes les plus difficiles.

    Pour calculer le coefficient de difficulté, on peut prendre l'ensemble des demandes et faire une attribution dans un ordre aléatoire en prenant le premier emplacement dispo. Une fois ces allocation faites, on atttribue à chaque demande un poids égal au nombre d'autres emplacements susceptibles de satisfaire la demande. Les demandes les plus difficiles auront un poids égal à 0 et les plus faciles (une canadienne en janvier) auront un poids élevé pour ). Pour départager les ex-aequo, on pourra refaire un calcul avec une allocation initiale réalisée avec seulement 80% des demandes.

    Après calcul des coeff de difficulté, on attribue donc les emplacements en traitant en priorité les demandes les plus difficiles. Il reste des echecs que l'on peut "retraiter" en faisant des permutations. Une allocation par permutation consiste à trouver un emplacement qui pourrait être dispo à condition de bouger des demandes plus faciles vers d'autres emplacements pouvant convenir à ces demandes. On peut évidement améliorer le processus en cascadant plusieurs permutations (en veillant bien à ce que les mouvements portent sur demandes moins difficiles).

Discussions similaires

  1. [XL-2010] Tableau automatique par rapport à des données d'un autre tableau
    Par ZHNEE dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 14/12/2014, 19h21
  2. [AC-2010] Lecture sons par rapport à des données
    Par Stoo69 dans le forum IHM
    Réponses: 12
    Dernier message: 29/04/2012, 14h47
  3. Réponses: 4
    Dernier message: 01/02/2012, 20h19
  4. Réponses: 2
    Dernier message: 15/10/2010, 10h47
  5. Html : liste de choix par rapport à des choix
    Par Djwaves dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 22/03/2006, 16h52

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