90

Ok, ce que tu dit n'as pas de rapport avec mon post #85.

Je parlais d'algorithmie, pas d'implémentation zzz
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

91

Mais comment tu fais pour trouver tout seul l'idée des algos tels que minimax, ou l'élagation alpha (cf. site de FL).
Moi, perso mon idée de base c'était de pondérer chaque colonne suivant qu'elle était avantageuse ou non et de jouer dans la colonne dont la pondération était la plus haute, mais après, pour prévoir les coups, j'aurais vraiment eu du mal à trouver un algo tel que minimax....
D'un autre côté, si je fais ce concours, je ne ferai pas comme ce que dit FL dans son site, je n'en vois pas l'intérêt. J'essaierais de trouver mon propre algo, tout pourri probablement...

92

je suis d'accord que c moins marrant si on cherche pas les algos tout seul (ceci dit j'avais cherché avant de voir le site de FL, donc moi ça m'a pas gêné smile)

Mais en même temps si c un défi, c pas très marrant si personne n'utilise le minimax, parce que sinon tous les autres algos se feraient battre très largement même par un moteur minimax de base (type TICT)

Maintenant tout le monde est en mesure d'employer l'algo du mini-max, et c là que le vrai défi commence : optimiser l'élagage, l'évaluation de position, l'exploitation des failles des programmes de base (eh oui même à une profondeur de 9 j'arrivais à battre la première version de mon moteur), avoir le minimum de failles, etc...

Je pense que c qd même plus équitable et plus intéressant si tout le monde part du même point de départ... Ceci dit Thibaut rien ne t'empêche de réfléchir au problème avant de lire la page de FL, je suis d'accord que c marrant aussi de trouver ça soi-même smile

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

93

Pollux> Tu avais trouvé le mini-max en cherchant tout seul, ou bien tu le connaissais déjà ?

94

le minimax oui, mais j'avais pas pensé à l'élagage alpha/beta jusqu'à ce que je regarde vite fait les sources de TI-Connect smile

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

95


L'algo mini-max je le connaissais avant de lire un tuto qui en parlait. Je l'ai "inventé" moi-même il y a un bout de temps.

L'alpha-bêta je n'y avais jamais pensé par contre. J'ai découvert cet algo en lisant un magazine de prog y'a 2 mois.
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

96

ben voilà, tu vas pouvoir lire la page de FL sans apprendre grand-chose smile

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

97

Ha ?
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

98

Yup, il explique le minimax, alpha/beta, et il donne 2-3 pistes de recherche assez évidentes smile

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

99

Je vais quand même le lire alors smile
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

100

Mon intention a été mal comprise : mon but n'était pas de donner un moteur tout fait et optimisé, très loin de là. J'ai juste donné quelques pistes et quelques idées générales, histoire que tout le monde puisse se consacrer sur la partie intéressante, ce que j'évoque dans mon dernier paragraphe. Programmer un minimax n'a aucun intérêt, ça prend trois lignes. Par contre, imaginer des astuces pour évaluer en peu de temps une position, optimiser l'élagage, etc, c'est ça qui est intéressant et va faire la différence entre les différents moteur !

Quant à trouver le principe du minimax et de l'élagage tout seul, j'ai suivi à peu près le même raisonnement que j'ai décrit, en contemplant quelques temps dans les yeux un arbre de réflexion...

101

Ton intention n'a pas été mal comprise smile (cf post #91)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

102

tiens, c'est un projet intéressant que celui-là grin

si j'ai le temps après l'intégration, la fin de l'O2 et de la programmation de mon réveil, je pense y participer avec 2 routiens : neurones + mini-max...
Site : http://www.phareaway.com/
Membre du groupe Phare Away et webmaster du site

103

Ayé j'ai codé ce matin mon algorithme sur papier smile

Attend-toi à perdre Pollux grin
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

104

FL > super d'avoir mis le code source de ton puissance 4 smile
je l'ai imprimé et je vais regarder ça
l'IA m'intéresse d'autant plus que ça ne fait pas bcp de code !!

sinon j'avais fait un puissance 4 il y a assez longtemps, l'IA est vraiment primitive mais par contre il est plus que rapide.
http://mapage.noos.fr/jcop/ti/puiss4/puiss4.html

105

Quelque chose me dis que vous allez vous faire chier chier à tester si vous faites comme vous dites (2 caltos en mode Hum vs Cpu et on reproduis en humain sur la calto ce que le cpu de l'autre a joué).
Ca serait pas plus simple que l'IA soit un programme auquel on file une matrice représentant le tableau de jeu et qui revoit la position du pion à placer?
Pour gérer tout ça on fait un nouveau Puissance 4 auquel on donne les noms des progs à utiliser en IA et il gère tout ça (envoyer les matrices aux progs d'AI et dessiner le tableau après que l'AI ait renvoyé la position du pion à placer
Ca ferait un style de prog tout nouveau où on pourrait choisir de jouer contre l'AI qu'on veut (parce qu'il faut quand même mettre un mode dans lequel un humain peut jouer)

Avantages:top
*1 calto au lieu de 2
*La partie est plus rapide (pas besion de reporter les coups sur l'autre calto au risque de se tromper)
*Chacun peut le faire le test chez soi sans être découragé
*Le prog est hyper évolutif niveau AI

Inconvénient:mad
*Il faut le créer
Trampoline Powwwweeeeeerrrrrr!
Fier d'être Lyonnais

106

Non ça ne doit pas être si compliqué que ça smile

Le plateau, et tous les autres paramètres nécessaires à l'IA seraient passés dans un fichier dont le format serait commun à tous, et l'IA retournerait le mouvement dans un autre fichier standard.
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

107

Voilà, exactement, et on prendrait plus de plaisir à regarder la partie ou on pourrait enlever la limite de temps (on laisse tourner la calc toute la nuit sur secteur rotfl)
Non je déconne faut laisser la limite de temps pour les raisons cités précédement

Pour coder le Puissance 4 je veux bien essayer mais il faut savoir:
*coder en C gni Je commence à y arriver
*lancer un prog à partir d'un autre Je sais pas faire mais ça s'apprend
*créer un fichier externe et l'ouvrir Maîtrise totale tongue
*utiliser les timers pour la durée de la réflexion Pas trop dur

Mais aussi
*Avoir du temps C'est chaud d'en trouver vous remarquerez
*Utiliser les niveaux de gris pour faire un beau jeu quand même

Maintenant je ne suis pas sûr d'y arriver mais je vais bosser dessus histoire d'apprendre plein de trucs
Ceux pour qui c'est ou ça semble simple n'hésitez pas à le faire
Trampoline Powwwweeeeeerrrrrr!
Fier d'être Lyonnais

108

Mais à ce moment là il faut impérativement rajouter un système de CRC pour éviter qu'un programme ne perde juste parce que celui d'en face n'était pas stable wink

Moi g plus trop le temps avec GT-Dev, donc je pense pas pouvoir y participer avec une version très évoluée...

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

109

Il est censé finir kan le concours
(pas trop tôt SVP) du style fin des grandes vacances roll
Au moins après les vacances de noël parce que j'assiste à des formation pour le trampo et g plein de week-end (== temps de programmation) qui sautent.
Don pendant les vacances j'aurai le temps de développer le puissance 4 que g proposé
Si qqn veut ou est en train d'en faire un, qu'il le signal plz
Sinon quel est la meilleur façon:
Les progs d'IA nécessitent des argument , qui seront donnés par le Puissance 4 au moment de l'appel du programme ,ou les progs d'AI ne nécessitent aucun argument et vont chercher les données dans un fichier externe appelé par exemple donnees avec comme extension Pc4 (comme PuiSance 4)
La première façon est la plus simple (pas de création de fichier ni de lecture) mais il faut savoir donner des arguments à un prog au moment du lancement et ceux qui développent l'IA doivent savoir récupérer des arguments donnés au programme
Trampoline Powwwweeeeeerrrrrr!
Fier d'être Lyonnais

110

Pour faire le point:

[sondage=13218]

PS: c koi un système CRC
Trampoline Powwwweeeeeerrrrrr!
Fier d'être Lyonnais

111

Cyclic Redundancy Check - c'est un mécanisme de somme de contrôle pour détecter la corruption d'un fichier. Personnellement, j'utiliserais plutôt du MD5 (Message Digest 5), c'est moins facile à traffiquer pour un programme qui essaye de tricher en modifiant l'autre programme.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

112

Euh, le but n'est pas de faire un jeu de combat entre deux programmes (ce qui est intéressant en soi), je propose qu'on parte du principe que chacun a un moteur relativement stable. Et puis si ce n'est pas le cas, le coupable risque d'être relativement vite découvert, pas la peine de se prendre la tête avec des CRC...

113

Oui parce que g t en train de me dire que ça risquait d'être plus difficile que prévus pour programmer
Trampoline Powwwweeeeeerrrrrr!
Fier d'être Lyonnais

114

Le MD5 c peut-être un peu inutile (on va pas s'amuser à pirater le système roll)

Par contre un CRC ça peut toujours être utile, il suffirait d'un petit bug pour faire foirer le programme adverse...

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

115

Heu... génial ce topic grin

Je crois que je suis hors-concours. J'ai laissé tomber l'IA de P4 et je suis repartit sur mon IA de Dames smile
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

116

Dites, le concours pour Puissance 4 est toujours ouvert ?
Oui oui, je sais, j'arrive un tout petit peu (mais vraiment très peu) en retard grin !!!
Je viens de penser à un algorithme qui n'a strictement rien à voir avec ce qui a été dit jusqu'ici (je n'en suis pas sûr, je n'ai pas lu le source de FL), et qui est théoriquement très rapide ... mais je ne me prononcerai pas sur son éventuelle (in)efficacité roll.

En tout et pour tout, je ne connais que 5 langages de programmation :
- MS-Basic sur MO5 : euh, non, je n'ai rien dit => inutilisable ;
- TI-Basic sur 92/92+ : même si l'algorithme est rapide, la gestion de matrices 4x69 et 42x13 ne l'est pas du tout => pas top, sauf si quelqu'un accepte de me faire le portage TI-Basic -> C (ou si j'apprends le C sur TI wink) ;
- Assembleur x86 (PC) : pas de problème pour l'algorithme, mais il faut que le programme organisant les matchs soit sur PC et non sur TI, et soit déjà écrit pour que je saches quoi mettre comme sortie => pas top pour participer avec les autres ;
- C sous Linux (GCC) : j'en fait uniquement en cours d'Info, soit 2h/semaine pendant lesquelles je doit aussi faire ce qui est demandé => pas avant 2048 wink;
- Assembleur PIC : euh, non, je n'ai toujours rien dit => inutilisable.

Sinon, comme je le disais, il faudrait que le programme arbitre existe déjà, et connaître son interfaçage, pour décider du langage à utiliser.


En tout cas, ça, c'est de l'archéologie tongue !

@++
avatar
Je ne suis pas développeur Java : je suis artiste Java.
Ce que l’on conçoit bien s’énonce clairement, / Et le code pour l’écrire arrive aisément.
Hâtez-vous lentement ; toujours, avec méthode, / Vingt fois dans l’IDE travaillez votre code.
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.
You don't use science to show that you're right, you use science to become right.

117

Le thème du projet d'info cette année dans mon école était ... un puissance 4 wink
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

118

Si tu l'as déjà fait, tu es hors-concours => tusors ...

...

Mais non, je plaisante !
Au contraire, c'est mieux : au moins, je suis sûr d'avoir un adversaire lorsque j'aurai fini mon IA, vers 2023 grin !

Au fait, ton programme est-il une interface graphique, ou une IA ?
Sur quelle plate-forme, en quel langage ?

Quelle école (avec des cours de SF eek) ?
Ici, à PG, ce sont toujours les 4 mêmes sujets de projet d'Info, depuis des années ...

En ce moment, comme je programme mon Puissance 4 sur PC, ce qui me gêne le plus est l'interfaçage entre le programme arbitre et les deux IA qui s'affrontent.
Je suis en train de tenter un hook TSR, mais de nombreux tests restent à faire sad ...

@++
avatar
Je ne suis pas développeur Java : je suis artiste Java.
Ce que l’on conçoit bien s’énonce clairement, / Et le code pour l’écrire arrive aisément.
Hâtez-vous lentement ; toujours, avec méthode, / Vingt fois dans l’IDE travaillez votre code.
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.
You don't use science to show that you're right, you use science to become right.

119

Tu as le temps smile
Mon P4 sortira en 2048, juste après GTools et Tomb Raider IV-TI89 grin
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

120

Bah, si je suis si rapide (2023 ... roll), c'est parce que je le fais en Asm.
Si je l'avais commencé en C, il serait sorti en même temps que le tien, comme je l'ai déjà indiqué grin.

Au fait, puisque tu es l'instigateur du projet, sais-tu qui participe encore à ce projet, et quelle est la plate-forme prévue ?
Et quid de l'interfaçage ?

@++
avatar
Je ne suis pas développeur Java : je suis artiste Java.
Ce que l’on conçoit bien s’énonce clairement, / Et le code pour l’écrire arrive aisément.
Hâtez-vous lentement ; toujours, avec méthode, / Vingt fois dans l’IDE travaillez votre code.
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.
You don't use science to show that you're right, you use science to become right.