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

Langage Java Discussion :

Problème d'ordonnancement en java


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 151
    Par défaut Problème d'ordonnancement en java
    Bonjour à tous,
    Voici mon problème : Je dispose d'un ensemble de figures géometriques(8000). Je dispose aussi d'un ensemble de points.Mon problème est de distribuer les figures aux points, chaque point aura ainsi un territoire constitué d'un ensemble de ces figures. Initialement j'attribue à chaque point une surface totale atteignable. Les allocations sont faites en fonctions des distances minimales des points au figures.Donc un point se voit attribuer une figure de surface S tant que sa surface allouable n'est pas atteinte.
    Ma question :
    -Je me demande s'il n'y a pas un algorithme qui fais proprement là même chose afin que je puisse l'appliquer dans mon cas. Je cherche encore....Une idée
    -Quelqu'un voit il comment je devrais proceder sans réinventer la roue ?
    Mon idée : J'ai pensé à associé a chaque point une liste temporaire des
    figures , triée suivant la distance du point au aux figures.
    Je mets tout çà dans un Map. Un ordonanceur qui detient la vrai liste des figures alloue chaque point et suprime de sa liste toute figure déja allouée. Qu'en pensez vous?
    Merci de toutes vos suggestions.

  2. #2
    Membre expérimenté
    Avatar de anadoncamille
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 395
    Billets dans le blog
    1
    Par défaut Vive la roue !
    Bonjour,

    J'ai quelques questions :
    - tu tries les figures ou les points?
    - les distances figure-point sont calculées comment?

    A prime abord, ta roue n'existe pas en entier mais dans la classe Collections tu as la méthode Colections.sort(MaCollection) qui trie un Vector ou la collection que tu choisis. Si tu choisis un tableau, utilise Arrays.sort(MonTableau)

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 151
    Par défaut
    Citation Envoyé par anadoncamille
    Bonjour,

    J'ai quelques questions :
    - tu tries les figures ou les points?
    - les distances figure-point sont calculées comment?

    A prime abord, ta roue n'existe pas en entier mais dans la classe Collections tu as la méthode Colections.sort(MaCollection) qui trie un Vector ou la collection que tu choisis. Si tu choisis un tableau, utilise Arrays.sort(MonTableau)
    anadoncamille : je te remercie pour tes réponses.
    1- Je trie les les figures suivant les distances par rapport au points.
    2- La distance figure-point est connue car la methodé existe déja.
    3-En effet dans mon algorithme j'utilise Collections.(sort, DistanceComparator) qui trie bien les figures.
    ==>Le problème est peut être un problème d'optimisation. Des milliers de figures à faire partager quleques centaines points. Je ne vois pas comment le faire pour que la complexité ne soit pas trop élevée.

  4. #4
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    En fait là tu sort du domaine de la prog comme on a l'habitude de le faire pour rentrer dans celui de l'optimisation Combinatoire ou de la programmation par contrainte.

    Donc autant se diriger vers les outils qui sont fait pour.

    En java un solver connu et open source est choco: http://choco-solver.net/index.php?title=Main_Page.

    Ce genre d'outil te demande de définir un modèle de contraintes à respecter, un résultat que l'on peut viser (genre maxmiser tel ou tel critère, dans ton cas maximiser la surface des points => utiliser un nombre minimal de points).
    Puis tu laisse le solver travailler jusqu'à temps qu'il te fournisse une réponse (s'il existe une réponse bien sûr).
    Ensuite pour obtimiser le temps de traitement il faut en général trier les contraintes par ordre d'importance (la contrainte éléminant le plus de cas devant venir en premier)

    Enfin voilà des cours pour assimiler les concepts:

    Recherche opérationnelle (aka optimisation combinatoire): http://www.librecours.org/cgi-bin/co...k=info&elt=183

    PPC: http://bat710.univ-lyon1.fr/~csolnon/Site-PPC/e-miage-ppc-som.htm

  5. #5
    Membre expérimenté
    Avatar de anadoncamille
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 395
    Billets dans le blog
    1
    Par défaut
    Salut,

    ton problème me fait penser à un problème de 3D, fais-tu un moteur 3D ou c'est autre chose? De la reconnaissance visuelle par exemple?

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 151
    Par défaut
    Citation Envoyé par anadoncamille
    Salut,

    ton problème me fait penser à un problème de 3D, fais-tu un moteur 3D ou c'est autre chose? De la reconnaissance visuelle par exemple?
    Salut,
    Non, je fais de la simulation et les figures représentent en fait des polygones dans tous leurs états.

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 151
    Par défaut La doc j'adore !!!
    Citation Envoyé par sinok
    Donc autant se diriger vers les outils qui sont fait pour.
    En java un solver connu et open source est choco: http://choco-solver.net/index.php?title=Main_Page.
    http://www.librecours.org/cgi-bin/co...k=info&elt=183
    http://bat710.univ-lyon1.fr/~csolnon/Site-PPC/e-miage-ppc-som.htm
    Coucou Sinok
    merci, je vais potasser tout ça. Et voir si je peux trouver mon bonheur.

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 151
    Par défaut
    Je n'ai pas trouvé mon bonheur dans la doc que anadoncamille m'a fourni .

    Mais j'ai trouvé une solution en m'inspirant du pattern observer.
    Thank you very much

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ordonnancement des processus en java
    Par biljava dans le forum Général Java
    Réponses: 34
    Dernier message: 13/07/2011, 16h12
  2. Ordonnancement Thread Java
    Par mi_info dans le forum Général Java
    Réponses: 11
    Dernier message: 05/01/2011, 15h08
  3. Insertion d'objet java: ordonnancement d'interprétation
    Par capitaine-nemo dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/08/2009, 13h57
  4. webcam : lire sur un port usb en c/c++ ou java. sous win. ?
    Par flo007 dans le forum Choisir un environnement de développement
    Réponses: 2
    Dernier message: 24/05/2002, 23h24
  5. Service de nommage java C++
    Par Anonymous dans le forum CORBA
    Réponses: 3
    Dernier message: 15/04/2002, 12h48

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