Algorithme pour tetris
Fermé
velocity
Messages postés
204
Date d'inscription
lundi 8 juin 2009
Statut
Membre
Dernière intervention
16 octobre 2014
-
13 janv. 2010 à 00:07
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 13 janv. 2010 à 21:41
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 13 janv. 2010 à 21:41
A voir également:
- Algorithme pour tetris
- Telecharger tetris - Télécharger - Stratégie
- Logiciel algorithme gratuit - Télécharger - Édition & Programmation
- Algorithme euromillion excel gratuit - Forum Logiciels
- Logiciel algorithme euromillion - Télécharger - Loisirs créatifs
- Tetris webmaster ✓ - Forum Audio
5 réponses
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
13 janv. 2010 à 19:49
13 janv. 2010 à 19:49
Oui le truc de Char Snipeur est le plus simple : Pour une situation donnée et étant donné la pièce qu'il faut placer, tu calcules toutes les possibilités (disons dans un arbre trié, mais franchement, à part pour l'optimisation des calculs, dans ce cas ça n'a aucune importance) et tu leur associes un nombre. Ex : -1 s'il va y avoir un trou, -2 si ça va faire perdre la partie, 0 si tout va bien, +1 si tu vas remplir une ligne, +2 si tu vas remplir 2 lignes...
Toutes ces possibilités, c'est selon où tu poses la pièce (et sachant qu'il peut y avoir jusqu'à 4 possibilités pour chaque endroit selon comment elle est tournée, au moins). Ensuite, l'ordi choisi la configuration qui aura le meilleur score.
Toutes ces possibilités, c'est selon où tu poses la pièce (et sachant qu'il peut y avoir jusqu'à 4 possibilités pour chaque endroit selon comment elle est tournée, au moins). Ensuite, l'ordi choisi la configuration qui aura le meilleur score.
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
13 janv. 2010 à 00:38
13 janv. 2010 à 00:38
un algorithme classique pour ce genre de cas est l'algorithme "min-max", mais c'est plutot dur à apprendre, malgré que ce soit un algo pas très compliqué. Ce serait bien que tu aies des notions sur les arbres, et pour l'optimiser sur le hashage.
un lien parmis tant d'autre, si tu connais l'anglais : https://www.youtube.com/user/ucberkeley?blend=2&ob=4#p/c/4BBB74C7D2A1049C/15/Unh51VnD-hA
ça commence vers 2:00
le prof présente un exemple avec un jeu Tic-Tac-Toe (morpion)
Ceci dit, ce sera clairement différent nas le cas du tetris, mais tu pourras déjà avec ça apprendre pas mal de choses.
un lien parmis tant d'autre, si tu connais l'anglais : https://www.youtube.com/user/ucberkeley?blend=2&ob=4#p/c/4BBB74C7D2A1049C/15/Unh51VnD-hA
ça commence vers 2:00
le prof présente un exemple avec un jeu Tic-Tac-Toe (morpion)
Ceci dit, ce sera clairement différent nas le cas du tetris, mais tu pourras déjà avec ça apprendre pas mal de choses.
Apaachee
Messages postés
248
Date d'inscription
mardi 13 novembre 2007
Statut
Membre
Dernière intervention
25 août 2011
47
13 janv. 2010 à 01:22
13 janv. 2010 à 01:22
Minmax pour un jeu à 1 joueur ? Je suis sceptique.
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
13 janv. 2010 à 01:26
13 janv. 2010 à 01:26
on minimaxise par rapport aux prochaines séries de pièces qu'on pourrait avoir. un peu comme s'il y avait un "joueur adverse" qui choisirait des pièces pour bloquer celui qui doit les mettre.
Je suis d'accord que ce n'est pas vraiment un min max simple dans ce cas, mais les idées de bases avec un arbre et une évaluation chemins possibles, selon si on peut être "mortellement bloqué" ou "avoir une case vide perdue sous les autres" (mauvais) est tout à fait possible.
Je suis d'accord que ce n'est pas vraiment un min max simple dans ce cas, mais les idées de bases avec un arbre et une évaluation chemins possibles, selon si on peut être "mortellement bloqué" ou "avoir une case vide perdue sous les autres" (mauvais) est tout à fait possible.
velocity
Messages postés
204
Date d'inscription
lundi 8 juin 2009
Statut
Membre
Dernière intervention
16 octobre 2014
6
13 janv. 2010 à 20:57
13 janv. 2010 à 20:57
En fait c'est pour le multijoueur avec l'ordinateur comme adversaire.
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
>
velocity
Messages postés
204
Date d'inscription
lundi 8 juin 2009
Statut
Membre
Dernière intervention
16 octobre 2014
13 janv. 2010 à 21:41
13 janv. 2010 à 21:41
j'imaginais de mon coté que de toute façon l'"IA" ne prendrait pas en compte ce que fait le joueur humain (trop compliqué à gérer pour toi je pense)
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
13 janv. 2010 à 08:34
13 janv. 2010 à 08:34
J'aurai vu un truc plus simple. Je ne suis pas un expert en tetris, mais connaître la piece suivante, n'a pas énormément d'intéret je trouve, sauf lorsque que l'on veux enlever plein de lignes d'un coup.
Si on prend une pièce qui tombe, elle a (dans le cas général) 4 positions possible en rotation et x-largeur_piece (où x est le nombre de brique de gauche à droite). Donc tu as moins de 4*x possibilités pour chaque nouvelle pièce, c'est raisonnable.
Ce que je ferai c'est choisir la position donnant la plus grande compacité (éviter les trous) et la plus petite hauteur de l'ensemble.
Si on prend une pièce qui tombe, elle a (dans le cas général) 4 positions possible en rotation et x-largeur_piece (où x est le nombre de brique de gauche à droite). Donc tu as moins de 4*x possibilités pour chaque nouvelle pièce, c'est raisonnable.
Ce que je ferai c'est choisir la position donnant la plus grande compacité (éviter les trous) et la plus petite hauteur de l'ensemble.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question