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 :

Question sur la complexité d'un algorithme en théorie des graphes


Sujet :

Algorithmes et structures de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut Question sur la complexité d'un algorithme en théorie des graphes
    Bonjour je vous contacte par rapport à un exercice que je trouve dur au niveau de la compléxité

    Soit l’algorithme de construction de graphe planaire suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    fonctionG = planaire(G)
          tant que G n’est pas planaire faire
                      pour tout x sommet de G faire
                              V = liste des voisins de x
                              M = barycentre des sommets de V
                              si on diminue le nombre d’intersections d’arcs
                                     alors placer x en M
                      fin si
          fin faire
    fin faire
    Les questions sont les suivantes : Quelle est la complexité de cet algorithme ? Finit-il toujours ?

    En espérant être aidé

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 397
    Points
    9 397
    Par défaut
    J'essaie de réfléchir, je n'ai pas la réponse.

    Déjà, j'ai envie d'inverser les questions.
    La complexité d'un algorithme, c'est en gros calculer le nombre d'opérations que le programme va effectuer.
    Si dans certains cas l'algorithme ne finit pas (il tourne en boucle de façon infinie), ça veut dire que l'algorithme est de complexité infinie.

    Du coup si on commence par répondre à la 1ère question en disant que l'algorithme est en n^5 ou même n^10 ... par exemple, alors ça y est, on a répondu à la 2ème question, l'algorithme se finit forcément.

    Pour la complexité de l'algorithme, on peut déjà commencer par le 'coeur' du programme.

    Il y a un test dans ton algorithme : si on diminue le nombre d’intersections d’arcs alors

    Tu peux déjà essayer d'évaluer la complexité de ce test

    Accessoirement, oublions l'exercice.
    Ceci est un exercice, ou un besoin perso ?
    J'étais tombé sur un jeu qui correspond exactement à cet algorithme, j'adorais ce jeu. on avait un graphe, non planaire, et il fallait déplacer des points jusqu'à obtenir un graphe planaire. Le graphe était conçu de façon à ce qu'il y ait toujours une solution.
    Je ne trouve plus le lien vers ce jeu. Si tu as ça, je suis très intéressé
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut
    C'est un exercice que je dois faire absolument sur cette algorithme je ne comprends pas tres bien?
    Cordialement

  4. #4
    Membre expérimenté
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juillet 2020
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juillet 2020
    Messages : 352
    Points : 1 376
    Points
    1 376
    Par défaut
    Bonjour,

    techniquement un algo doit terminer … mais passons ce petit abus de langage.
    La complexité de ton algo va dépendre des primitives que tu emploies comme «est planaire» (l. 3) par exemple.
    Mais ton algo ne se termine pas dans tous les cas de figures … que se passe-t-il si :
    1. le graphe que tu dois dessiner n'est pas planaire ?
    2. tous les nœuds de ton graphe sont aux mêmes coordonnées ?

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut
    Bah j'imagine que si le graphe n'est pas planaire l'algorithme s'arrêtera ?

  6. #6
    Membre expérimenté
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juillet 2020
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juillet 2020
    Messages : 352
    Points : 1 376
    Points
    1 376
    Par défaut
    bah il aura du mal à s'arrêter avec une boucle comme tant que G n’est pas planaire faire.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut
    Du coup cela donnera une boucle infini ?

  8. #8
    Membre expérimenté
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juillet 2020
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juillet 2020
    Messages : 352
    Points : 1 376
    Points
    1 376
    Par défaut
    tu n'as pas testé sur des exemples simples ou classiques ou border line ?
    tu peux dérouler l'algo à la main … cela te permettra de mieux comprendre son fonctionnement. Mais à ton avis, si tu fournis un graphe non planaire à un algorithme qui possède une boucle tant que G n’est pas planaire faire et que la seule manière de sortir de ladite boucle est d'invalider la conditionnelle , finira-t-elle ?

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut
    Non elle ne finira pas du coup ?

  10. #10
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 459
    Points
    13 459
    Par défaut
    Bonjour

    Il me semble qu'il y a confusion entre planaire (en l'état) et planaire (en déplaçant les sommets). Un graphe est planaire lorsqu'il n'y a pas d'intersections d'arêtes. On peut trouver un dessin de graphe qui a des intersections, mais qui devient évidemment planaire en déplaçant des nœuds. C'est tout le principe des jeux "Untangle".

    Cet algorithme doit probablement s'arrêter pour des graphes intrinsèquement planaires, mais planter pour K5 ou K3,3, par exemple.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  11. #11
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut
    Non elle ne finira pas du coup ?

  12. #12
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 397
    Points
    9 397
    Par défaut
    WhitCrow parlait évidemment d'un graphe qui n'est pas planaire, et qu'on ne peut pas rendre planaire.

    Et évidemment, il l'a dit 2 fois, on aura une boucle infinie.

    Ici l'exercice est très compliqué. Personnellement, je ne sais pas répondre, et je suis convaincu que personne ne sait répondre.


    On peut déjà donner quelques notations. Au départ, on a un graphe avec S sommets, A arcs , et C croisements.
    On va être cool, on va supposer que tous les graphes qui sont dans la 'base de données' sont des graphes qu'on peut rendre planaires.
    Là, on peut vaguement apporter des éléments de réponse.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  13. #13
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut
    Je pensais que l'algo auraitp lus simple que prévu dommage. Je vais voir ce que je peux faire

  14. #14
    Membre expérimenté
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juillet 2020
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juillet 2020
    Messages : 352
    Points : 1 376
    Points
    1 376
    Par défaut
    ce que tu peux déjà faire est nous donner l'énoncé de ton problème plutôt que des petits bouts …

  15. #15
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 51
    Points : 11
    Points
    11
    Par défaut
    L'énoncé c'est uniquement cela y a rien d'autre que le prof m'avait donné

Discussions similaires

  1. Des questions sur la complexité asymptotique et uniforme
    Par Karimce dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 28/03/2016, 11h17
  2. Algorithme théorie des Graphes - trouver l'itinéraire entre un arrêt A et un arrêt B
    Par domino313131 dans le forum Intelligence artificielle
    Réponses: 4
    Dernier message: 20/03/2011, 03h39
  3. Réponses: 0
    Dernier message: 21/06/2009, 22h06
  4. question sur la complexité d'un algorithme?
    Par logo98 dans le forum Mathématiques
    Réponses: 5
    Dernier message: 29/03/2009, 16h54
  5. Réponses: 5
    Dernier message: 15/09/2007, 00h02

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