π
<-

Résultats finale individuelle concours IA 1000 Bornes Python

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby SlyVTT » 20 Jun 2024, 20:50

J'ai oublié...

pour le lot, je partirai sur le lot Zero Premium avec le T-shirt en taille L, l'aimantin TIP ballons en noir (celui de droite en bas) et l'autocollant 1000 bornes "Le passe partout"

Merci beaucoup à vous tous.

Sly
Some works in progress :
The GUI Toolkit NF for nSpireMyShmup for fxCG-50Magic Light for Casio Graph 90+E
and
Magic Light for nSpire CX/CX-II
Simple Text Editor for nSpireOutRun for Casio Graph 90+E
95%
50%
100%
75%
100%
And more to come ... stay tuned
User avatar
SlyVTTPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 45.7%
 
Posts: 523
Images: 31
Joined: 19 Jan 2021, 09:41
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
GitHub: SlyVTT

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby critor » 20 Jun 2024, 23:19

Merci beaucoup @SlyVTT.

Est-ce que tu me confirmes que tout ce que je dois t'envoyer figure bien sur cette photo ?
20103

La Graph 90+E a été mise à jour vers la dernière version 3.80.1.
La Zero a été mise à jour vers la dernière version 2.19 (surtout que le fichier nécessaire n'est pas public).
La clé d'émulation USB Casio a été chargée avec les 7 émulateurs compatibles dans leurs dernières versions.

@Yaya.Cout, c'est à ton tour de compléter ton lot. :)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby SlyVTT » 21 Jun 2024, 06:45

Bonjour Critor,

C’est moi qui te remercie.
Cela m’a l’air parfait.
Merci beaucoup.

Sly
Some works in progress :
The GUI Toolkit NF for nSpireMyShmup for fxCG-50Magic Light for Casio Graph 90+E
and
Magic Light for nSpire CX/CX-II
Simple Text Editor for nSpireOutRun for Casio Graph 90+E
95%
50%
100%
75%
100%
And more to come ... stay tuned
User avatar
SlyVTTPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 45.7%
 
Posts: 523
Images: 31
Joined: 19 Jan 2021, 09:41
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
GitHub: SlyVTT

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby critor » 21 Jun 2024, 07:39

Merci :)

Pour info, j'ai rajouté une série de 500'000 truels, pour un total de 888'888 truels.

Cela ne change pas le classement, mais ça continue à être extrêmement serré :
Code: Select all
python3 ./finale_truel_elo.py findiv1.json findiv2.json findiv5.json findiv10.json findiv20.json findiv50.json findiv100.json findiv200.json findiv500.json findiv1000.json findiv2000.json findiv5000.json findiv10000.json findiv20000.json findiv50000.json findiv100000.json findiv200000.json findiv500000.json
Traitement des 888888 truels...
[====================================================================================================] 100%
         TOUR1            TOUR2            TOUR3

148147x  SlyVTT           Afyu             Yaya.Cout
1er      036803 (24.84)%  061294 (41.37)%  050631 (34.18)%
dernier  056977 (38.46)%  040414 (27.28)%  051649 (34.86)%
scores   1198743850        1293446875        1241300075

148147x  SlyVTT           Yaya.Cout        Afyu
1er      026523 (17.90)%  009194 (6.21)%  112804 (76.14)%
dernier  039230 (26.48)%  102893 (69.45)%  006636 (4.48)%
scores   1132699675        922902825        1463928175

148148x  Afyu             SlyVTT           Yaya.Cout
1er      069791 (47.11)%  030624 (20.67)%  048258 (32.57)%
dernier  033783 (22.80)%  062837 (42.42)%  052316 (35.31)%
scores   1326334200        1163681625        1225531375

148148x  Afyu             Yaya.Cout        SlyVTT
1er      086530 (58.41)%  046318 (31.26)%  015795 (10.66)%
dernier  020463 (13.81)%  044275 (29.89)%  084186 (56.83)%
scores   1391130775        1230940775        1080161150

148149x  Yaya.Cout        SlyVTT           Afyu
1er      018980 (12.81)%  026261 (17.73)%  103427 (69.81)%
dernier  089199 (60.21)%  047289 (31.92)%  012362 (8.34)%
scores   1026954525        1148288575        1435209325

148149x  Yaya.Cout        Afyu             SlyVTT
1er      037083 (25.03)%  097873 (66.06)%  013634 (9.20)%
dernier  052172 (35.22)%  012947 (8.74)%  083836 (56.59)%
scores   1178831350        1425181800        1059301675

-------------------------------------------------------------------------------------------

NOM       CRITERE     TOTAL           = TOUR1           + TOUR2           + TOUR3

SlyVTT    truels    : 888888          = 296294          + 296297          + 296297
Afyu      truels    : 888888          = 296296          + 296296          + 296296
Yaya.Cout truels    : 888888          = 296298          + 296295          + 296295

SlyVTT    1er       : 149640 (16.83%) = 063326 (21.37%) + 056885 (19.20%) + 029429 (9.93%)
Afyu      1er       : 531719 (59.82%) = 156321 (52.76%) + 159167 (53.72%) + 216231 (72.98%)
Yaya.Cout 1er       : 210464 (23.68%) = 056063 (18.92%) + 055512 (18.74%) + 098889 (33.38%)

SlyVTT    dernier   : 374355 (42.11%) = 096207 (32.47%) + 110126 (37.17%) + 168022 (56.71%)
Afyu      dernier   : 126605 (14.24%) = 054246 (18.31%) + 053361 (18.01%) + 018998 (6.41%)
Yaya.Cout dernier   : 392504 (44.16%) = 141371 (47.71%) + 147168 (49.67%) + 103965 (35.09%)

SlyVTT    scores    : 6782876550      = 2331443525      + 2311970200      + 2139462825
Afyu      scores    : 8335231150      = 2717464975      + 2718628675      + 2899137500
Yaya.Cout scores    : 6826460925      = 2205785875      + 2153843600      + 2466831450
-------------------------------------------------------------------------------------------

RANG  NOM             GROUP              IA                   ELO     FREQUENCE
1     Afyu            br.AI.n all.IA.ge  Triteleia            101.002  100.00% top1
2     SlyVTT          br.AI.n all.IA.ge  SLYnapse_finale      85.678  40.10% top2
3     Yaya.Cout                          42_2-5               85.678  40.10% top3
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby SlyVTT » 21 Jun 2024, 08:16

Ouh la la oui effectivement le classement ELO est identique à la 3eme décimale :D

Yaya.Cout, si tu passes devant moi et que tu désires le lot Zéro Premium, il n'y a aucun problème pour que nous échangions ;)
Cela me fera plaisir de faire un heureux. N'hésite pas à me dire.

Critor, continues-tu les combats en parallèle ?

Pour info, quand je faisais les séries de combats via le site internet, j'ai jamais réussi à départager mon IA de celle de Yaya.Cout, donc je suis pas forcément surpris de ce résultat.

Merci à Tous
Some works in progress :
The GUI Toolkit NF for nSpireMyShmup for fxCG-50Magic Light for Casio Graph 90+E
and
Magic Light for nSpire CX/CX-II
Simple Text Editor for nSpireOutRun for Casio Graph 90+E
95%
50%
100%
75%
100%
And more to come ... stay tuned
User avatar
SlyVTTPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 45.7%
 
Posts: 523
Images: 31
Joined: 19 Jan 2021, 09:41
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
GitHub: SlyVTT

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby critor » 21 Jun 2024, 11:49

SlyVTT wrote:Critor, continues-tu les combats en parallèle ?

Non, j'ai arrêté.

Je suis passé à la finale par équipes, même si il n'y a pas trop de suspense.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby SlyVTT » 21 Jun 2024, 14:17

Si les résultats sont clairs, tu n'auras pas besoin de lancer 888,888 calculs :D
Some works in progress :
The GUI Toolkit NF for nSpireMyShmup for fxCG-50Magic Light for Casio Graph 90+E
and
Magic Light for nSpire CX/CX-II
Simple Text Editor for nSpireOutRun for Casio Graph 90+E
95%
50%
100%
75%
100%
And more to come ... stay tuned
User avatar
SlyVTTPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 45.7%
 
Posts: 523
Images: 31
Joined: 19 Jan 2021, 09:41
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
GitHub: SlyVTT

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby Yaya.Cout » 25 Jun 2024, 17:03

Salut à toutes et à tous

Avant d'oublier, je tiens à remercier tout le monde ayant contribué au concours, que ce soit les participants ou les organisateurs (notamment critor qui a réussi à gérer le concours malgré ses difficultés familiales).

Pour élaborer ma stratégie, j'ai fait beaucoup de tests, avec 16 parties de 900 000 points à la fois pour avoir des résultats avec une bonne précision (j'ai utilisé Terminator pour pouvoir la sortie de toutes les exécutions à la fois). J'ai aussi fait des scripts pour tester automatiquement mon IA en sauvegardant automatiquement les résultats de l'IA dans des fichiers JSON qui contiennent tous les résultats de la configuration actuelle pour le traiter ensuite par d'autres scripts, mais je ne l'ai pas vraiment utilisé car je trouvais ça moins pratique que de lire directement à la main.

Dès le départ, j'ai copié l'IA random en supprimant tous les choix aléatoires. J'ai essayé de faire un système facilement modulable pour la gestion des actions en faisant une liste avec des fonctions retournant soit un coup à jouer, soit False. Ensuite, j'itère sur cette liste puis j'appelle toutes les fonctions jusqu'à avoir un coup. Pour vous donner un aperçu de ce que ça donne, voilà la définition de la liste dans laquelle je définis mes actions :
Code: Select all
# Ordre de priorité des actions :
ordre_actions = [
    self.pioche_si_vide,
    self.coup_fourré,
    self.pioche_si_possible,
    self.attaque_si_possible,
    self.defense_si_possible,
    self.demarrer_si_possible,
    self.botte_si_fin_de_partie,
    # TODO: Adapter au jeu en cours pour le 200 bornes
    self.joue_carte_puissante,
    self.jouer_carte_moins_puissante,
    self.botte_si_possible,
    self.defausse_carte_inutile,
    self.defausse_si_possible,
]


Ensuite, j'ai décidé de réécrire pc7_sdl2.py pour neutraliser toutes les fonctions d'affichage graphique pour accélérer la vitesse des simulations.

J'ai aussi compté les cartes sorties en modifiant traite_coup pour connaître les cartes restantes dans la pioche ou dans le jeu des autres. Notamment, il y a une fonction pour calculer le nombre de bornes restantes que je peux parcourir en moyenne ou les cartes restantes de chaque type. Mon IA s'en sert par exemple pour calculer les cartes inutiles ou pour savoir si le choix de prendre une allonge est judicieux ou non. Je pense que j'aurais pu davantage exploiter cet avantage. En regardant rapidement le code de Afyu et SlyVTT, j'ai l'impression que je suis le seul à avoir fait ça.

Avant que vous ne commenciez à réclamer le fonctionnement détaillé de mon IA (en dehors de ordre_actions), le voici :
Image
(version en meilleure qualité disponible ici : https://framagit.org/Yaya.Cout/kb/-/blo ... drawio.svg)

En faisant ce logigramme, j'ai découvert un certain nombre d'erreurs (dont certaines assez stupides, comme un supérieur ou égal à la place d'un inférieur ou égal). J'ai annoté ces endroits dès que je m'en suis rendu compte.

Je pense que j'aurais dû essayer de faire ça plus tôt, car ça donne une vision plus globale de l'IA et ça permet de comprendre où optimiser pour gagner de points.

Pour l'allonge, j'ai décidé (avec l'aide de tests) qu'il fallait l'autoriser seulement s'il restait plus de 10 tours ET qu'on pouvait parcourir 450 bornes en moyenne en prenant les cartes directement depuis le sabot (les cartes dans la main de l'IA ne sont pas prises en compte).

Toutes mes versions et modifications apportées au code original (sauf certains trucs trop moches pour être publiés) peuvent être retrouvés ici : https://framagit.org/Yaya.Cout/kb.

Pour revenir au concours, je dois avouer que j'ai trouvé l'idée assez fun, et d'avoir les stats en direct sur le site m'a vraiment motivé à essayer de redoubler les autres quand ils/elles publiaient des nouvelles versions.
Il y avait vraiment plein de possibilités de stratégie, et c'était assez fun d'essayer de chercher comment les autres ont pu faire pour avoir un meilleur algo avec les mêmes informations en entrée.

Pour le lot, je vais partir vers

1 lot TI-83 Premium : 1 calculatrice TI-83 Premium CE Edition Python + 1 gravure (je n'ai pas trouvé les choix dans la page de présentation) + 1 licence d'émulation TI-Smartview CE 3 ans + 1 protection écran Wyngs + 1 adaptateur USB + 1 clavier USB TI-83 Premium CE + 1 housse Wyngs rouge + 2 porte-clefs TI : I<3 π et Spread Math Love + 5 autocollants TI : je vais donner les coordonnées par rapport à l'image (histoire de réviser les maths :troll:) : (1;1) Spread Math Love; (1;3) Math Love is infinite; (3;1) avec le π ainsi que (5;3) et (6;3) les deux personnages + 1 clé USB TI rouge + 3 stylos TI : noir (7eme depuis en haut de l'image), le blanc et rouge Texas Instruments (6eme) et le rouge (2eme) + 1 kit de 3 casse-tête 3D TI + 1 épinglette aimantée TI + 1 aimantin TI + 1 cahier TI 96 pages + 1 sac TI Inspiring Generation STEM + 2 marque-pages TI Henri Poincaré et Stephanie Kwolek + 5 livres TI : "Algorithmique et programmation en Python (2nde), par Jean-Baptiste Civet et Boris Hanuš" ; "Activités BBC micro:bit V1 et V2 avec la TI-83 Premium CE Edition Python, par Jean-Louis Balas et Abdel Yazi" ; "Livret d’activités en Mathématiques (lycée général), par Boris Hanuš, Laurent Didier et Florent Girod" ; "Livret d’activités en SNT (lycée général), par Laurent Didier et Florent Girod" et "Enseignement de spécialité Mathématiques (1ère et Tle), par Jean-Baptiste Civet et Boris Hanuš" + 1 T-shirt TI #GenSTEM M + 1 kit de géométrie Calcuso ancienne version (avec l'équerre/rapporteur jaune) + 1 stylo HP + 1 aimantin Xcas + 1 autocollant Xcas + 1 T-shirt Xcas L + 1 goodie TI : Poster TI-Nspire CAS + 1 goodie premium TI : Gourde + 2 autocollants TI-Planet normaux + 1 autocollant Planète Casio + 1 aimantin TI-Planet noir normal (en bas à gauche de l'image) + 1 autocollant 1000 Bornes commémoratif l'As du Volant


Encore une fois, merci à tous pour ce super moment et bonne journée !
User avatar
Yaya.CoutProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 0%
 
Posts: 57
Joined: 15 Jan 2022, 15:20
Gender: Not specified
Calculator(s):
MyCalcs profile
GitHub: Yaya-Cout

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby critor » 26 Jun 2024, 01:02

Merci Yaya.cout pour ta narration de recherche ainsi que ton choix de lot, le tout très détaillé.

J'ai commencé à préparer ton lot.

Tout petits éléments à préciser :
  • la TI-83 Premium CE gravée sera commandée chez Calcuso - il faut juste nous préciser le texte que tu veux gravé sur ta calculatrice ; jusqu'à 22 caractères (en évitant les caractères trop spéciaux)
    petit échantillon avec quelques caractères spéciaux qui marchent : 18323
  • désolé, erreur de stock (ou plutôt de typographie) de ma part, le T-shirt #GenSTEM n'est pas disponible en M+XL mais en L+XL - je te mets le T-shirt #GenSTEM L ou bien tu préfères en choisir un autre ?
  • la clé USB TI rouge, c'est laquelle ? en fait il y en a 2, une avec l'inscription en noir (capacité 1 Mio) et une avec l'inscription en blanc (capacité 4 Go)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Résultats finale individuelle concours IA 1000 Bornes Py

Unread postby Yaya.Cout » 26 Jun 2024, 10:54

Pour la gravure, le texte "42 is the answer" sera très bien.
Pour le T-Shirt, je vais plutôt prendre le Ie <3 math en M (j'ai peur que ce soit trop grand sinon) vu que j'hésitais entre les deux.
La clé USB, je voudrais bien celle de 4 Go (je pensais l'avoir écrit, mais j'ai du oublier).

Bon après-midi
User avatar
Yaya.CoutProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 0%
 
Posts: 57
Joined: 15 Jan 2022, 15:20
Gender: Not specified
Calculator(s):
MyCalcs profile
GitHub: Yaya-Cout

PreviousNext

Return to News Divers

Who is online

Users browsing this forum: ClaudeBot [spider] and 11 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1091 utilisateurs:
>1035 invités
>49 membres
>7 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)