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

Programmation multimédia/Jeux Python Discussion :

sudoku recuit simulé


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Points : 5
    Points
    5
    Par défaut sudoku recuit simulé
    Bonjour à tous !
    Je débute en informatique et j'essaie de coder un algorithme basé sur le recuit simulé pour résoudre les sudokus inspirées de la méthode ci jointe, mais sans succés... Je vous met également mes lignes de codes.
    Pouvez vous m'aider? Nom : 1.PNG
Affichages : 2460
Taille : 39,2 KoNom : 2.PNG
Affichages : 1805
Taille : 26,5 Ko2006_Sudokus_et_algorithmes_de_recuit_2.pdf
    merci d'avance

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 241
    Points : 36 698
    Points
    36 698
    Par défaut
    Salut,

    Citation Envoyé par aabdoulay Voir le message
    Je vous met également mes lignes de codes
    Lorsque vous postez du code, utilisez la balise code (le bouton # dans le menu d'édition des messages) plutôt que poster des images.

    Pouvez vous m'aider?
    Lorsque je me lance dans un nouveau projet, je commence par regarder ce que d'autres ont déjà fait dans le même domaine ou dans des domaines proches.
    Et à l'ère d'Internet et des moteurs de recherches, c'est quand même facile à faire...
    La résolution de sudoku en ayant inspiré plus d'un, vous y trouveriez même une implémentation proche de votre algo ici.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    bonjour,
    merci pour vos informations
    le lien que vous m'avez donné est en effet très adapté, mais je ne comprends pas une des lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    def make_candidate_data(self):
            """
            Generates "neighbor" board by randomly picking
            a square, then swapping two small squares within.
            """
            new_data = deepcopy(self.data)
            block = randint(0,8)
            num_in_block = len(self.get_block_indices(block, ignore_originals=True))
            random_squares = sample(range(num_in_block),2)
            square1, square2 = [self.get_block_indices(block, ignore_originals=True)[ind] for ind in random_squares]    <<<<------------
            new_data[square1], new_data[square2] = new_data[square2], new_data[square1]
    return new_data
    pouvez vous me l'expliquer?
    merci d'avance

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 241
    Points : 36 698
    Points
    36 698
    Par défaut
    La ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    square1, square2 = [self.get_block_indices(block, ignore_originals=True)[ind] for ind in random_squares]
    équivaut à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    squares = []
    for ind in random_squares:
         squares.append(self.get_block_indices(block, ignore_originals=True)[ind])
    square1, square2 = squares
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    que signifie ind?

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     : def get_block_indices(self, k, ignore_originals=False):
            """
            Get data indices for kth block of puzzle.
            """
            row_offset = (k // 3) * 3
            col_offset = (k % 3)  * 3
            indices = [col_offset + (j%3) + 9*(row_offset + (j//3)) for j in range(9)]
            if ignore_originals:
                indices = filter(lambda x:x not in self.original_entries, indices)
    return indices
    Si je comprends bien, cette fonction récupère les chiffres de chaque case d'un bloc k donné, est ce vrai?
    Je ne comprends pas la ligne 7, ainsi que la ligne 9. Pouvez vous me l'expliquer? Que signifie ignore_originals?

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 241
    Points : 36 698
    Points
    36 698
    Par défaut
    Citation Envoyé par aabdoulay Voir le message
    Si je comprends bien, cette fonction récupère les chiffres de chaque case d'un bloc k donné, est ce vrai?
    çà fait ce que çà dit: "Get data indices for kth block of puzzle"

    Citation Envoyé par aabdoulay Voir le message
    Je ne comprends pas la ligne 7
    C'est la même construction que le cas précédent: compréhension de liste ou liste en compréhension. Si vous voulez en savoir plus, cherchez un peu sur Internet!

    Que signifie ignore_originals?
    Etudiez un peu le code pour voir à quoi çà correspond. Normalement, juste en connaissant l'algo. et le jeu du sudoku, vous devriez comprendre.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Merci beaucoup pour votre aide

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

Discussions similaires

  1. Probleme Voyageur de Commerce - Recuit Simulé
    Par dinver dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 21/06/2009, 23h26
  2. demande d'un programme de recuit simulé
    Par salim_1 dans le forum C++
    Réponses: 5
    Dernier message: 21/01/2008, 10h56
  3. voyageur de commerce par recuit simulé
    Par siviuze dans le forum C
    Réponses: 6
    Dernier message: 11/01/2007, 17h14
  4. sudoku, recuit simulé
    Par mimst dans le forum Langage
    Réponses: 5
    Dernier message: 19/12/2006, 16h13
  5. Double recuit simulé
    Par bbefa dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 05/05/2004, 21h27

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