Partage
  • Partager sur Facebook
  • Partager sur Twitter

Comment gérer des boucles ? Robot LEJOS JAVA

    28 mars 2022 à 17:41:51

    Bonjour,

    Moi et mon groupe sommes sur un projet d’algo (Java) où l’on doit trouver un trésor dans un labyrinthe, puis ressortir par le chemin le plus court. Le labyrinthe comporte une boucle. Avez-vous une piste pour gérer cette boucle infinie ? Merci d’avance.

    Cordialement,

    • Partager sur Facebook
    • Partager sur Twitter
      28 mars 2022 à 20:02:05

      Bonjour,

      Java ou JavaScript ? Ce sont deux langages fort différents. Peux-tu donner plus d'infos sur ce que tu cherches à faire et ce que tu as déjà produit ? Cela me permettra de déplacer le sujet s'il y en a besoin.

      • Partager sur Facebook
      • Partager sur Twitter

      Pas d'aide concernant le code par MP, le forum est là pour ça :)

        29 mars 2022 à 8:36:01

        Bonjour,

        Le labyrinthe contient des impasses, des croisements ainsi qu’un trésor.

        À un croisement le robot utilise la règle de la main gauche.
        À une impasse, il fait demi-tour. 

        Nous avons réussi à programmer le robot pour qu’il cherche le trésor et revienne par le chemin le plus court. Maintenant le labyrinthe contient une boucle. La question est comment le robot peut trouver le trésor si le trésor est dans la boucle ? Ensuite comment simplifier le chemin le plus possible ?

        Cordialement,

        • Partager sur Facebook
        • Partager sur Twitter
          29 mars 2022 à 13:56:16

          Quel est le langage que tu dois utiliser ?
          • Partager sur Facebook
          • Partager sur Twitter

          Pas d'aide concernant le code par MP, le forum est là pour ça :)

            29 mars 2022 à 15:02:52

            Sujet déplacé dans le bon forum ;)
            • Partager sur Facebook
            • Partager sur Twitter

            Pas d'aide concernant le code par MP, le forum est là pour ça :)

              29 mars 2022 à 15:06:35

              Merci, mais du coup avez-vous une piste pour m’aider ?
              • Partager sur Facebook
              • Partager sur Twitter
                29 mars 2022 à 15:36:36

                Moi, non, je n'y connais rien en Java… Mon rôle ici se borne à faire la modération ;)
                • Partager sur Facebook
                • Partager sur Twitter

                Pas d'aide concernant le code par MP, le forum est là pour ça :)

                  29 mars 2022 à 19:07:47

                  Bonjour,

                  Le plus simple est d'utiliser l'algorithme "breadth-first search" ou "recherche en largeur" (https://fr.wikipedia.org/wiki/Algorithme_de_parcours_en_largeur).

                  • Partager sur Facebook
                  • Partager sur Twitter
                    30 mars 2022 à 8:02:30

                    Bonjour à tous,

                    dites moi si je me trompe, mais il me semble que l’agorithme breadth first search implique de connaître le labyrinthe (d’avoir un point de vue omniscient) non ?

                    • Partager sur Facebook
                    • Partager sur Twitter
                      30 mars 2022 à 8:18:04

                      Non, il faut juste mémoriser deux infos : les positions visitées et pour chaque position visitées, la direction d'où l'on vient ou la position précédente.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        30 mars 2022 à 9:11:00

                        Oui mais ça résout pas vraiment le problème parce qu’on a pas les positions, juste un capteur de couleur et 2 moteurs. Donc tous les algorithmes dépendant de la position on oublie...

                        • Partager sur Facebook
                        • Partager sur Twitter

                        Comment gérer des boucles ? Robot LEJOS JAVA

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown