J'ai utilisé draw.io J'ai cherché un logiciel plus spécifique pour que la mise en page soit plus cohérente mais je n'ai pas trouvécent20 wrote:citorva wrote:Voici l'algorigramme du système de prise de décision:
Quel logiciel as-tu utilisé pour cet algorigramme ?
Je cherche un truc hyper simple, intuitif.
La mise en page est-elle automatique ?
Concours de rentrée 2020 - défi Python du Léviathan
Re: Concours de rentrée 2020 - défi Python du Léviathan
-
citorvaProgrammeur
Niveau 7: EP (Espèce Protégée: geek)- Posts: 36
- Images: 4
- Joined: 20 Jan 2020, 21:43
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: CPGE PT
- Twitter: citorva
- GitHub: citorva
Re: Concours de rentrée 2020 - défi Python du Léviathan
Merci @citorva.
Tant que tu es là, tu as vu pour le choix des goodies NumWorks ?
viewtopic.php?f=49&t=24387&start=350#p258311
Tant que tu es là, tu as vu pour le choix des goodies NumWorks ?
viewtopic.php?f=49&t=24387&start=350#p258311
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 41981
- Images: 15887
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Concours de rentrée 2020 - défi Python du Léviathan
Ah oui les goodies
- 1 manuel NumWorks N0110
- 1 cahier d'activités NumWorks SNT 2nde
- 1 sac NumWorks N0110
- 1 cahier NumWorks
- 1 poster NumWorks NumWorks N0100 : Xavier Andréani / TI-Planet - roulé - dédicacé
- 1 stylo NumWorks
-
citorvaProgrammeur
Niveau 7: EP (Espèce Protégée: geek)- Posts: 36
- Images: 4
- Joined: 20 Jan 2020, 21:43
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: CPGE PT
- Twitter: citorva
- GitHub: citorva
Re: Concours de rentrée 2020 - défi Python du Léviathan
Merci.
Vraiment désolé, le poster demandé est épuisé.
Il faut se référer à la dernière liste maintenant à jour que j'ai postée dans le fil :
viewtopic.php?f=49&t=24387&start=350#p258304
Vraiment désolé, le poster demandé est épuisé.
Il faut se référer à la dernière liste maintenant à jour que j'ai postée dans le fil :
viewtopic.php?f=49&t=24387&start=350#p258304
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 41981
- Images: 15887
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Concours de rentrée 2020 - défi Python du Léviathan
critor wrote:Merci.
Vraiment désolé, le poster demandé est épuisé.
Il faut se référer à la dernière liste maintenant à jour que j'ai postée dans le fil :
viewtopic.php?f=49&t=24387&start=350#p258304
Ducoup: NumWorks N0110: Comprendre le monde devient un jeu - plié
-
citorvaProgrammeur
Niveau 7: EP (Espèce Protégée: geek)- Posts: 36
- Images: 4
- Joined: 20 Jan 2020, 21:43
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: CPGE PT
- Twitter: citorva
- GitHub: citorva
Re: Concours de rentrée 2020 - défi Python du Léviathan
Bonjour à tous,
Pour ce défi j'ai distingué 3 axes majeurs, qui demandaient chacun d'être travaillés de façon égale :
1) Déduire des évènements et capteurs les propriétés des corniches et la cartographie du labyrinthe ;
2) Choisir une corniche objectif au mieux étant données les connaissances limitées du labyrinthe ;
3) Calculer le chemin le plus court et le plus sûr entre deux corniches.
Pour le premier point, je pense qu'il fallait faire son maximum pour que la suite ait du sens. Les commentaires dans mon code sont très explicites sur ce qu'on peut déduire de la présence, ou l’absence, d'un capteur ou évènement. En parcourant les divers codes a posteriro je pense que je n'ai rien raté de majeur de ce côté. J'ai beaucoup aimé cette partie, en particulier les cas qui pouvaient mener la vie dure (une corniche avec deux voisines piégées par exemple).
Pour le second axe, ma stratégie de choix est illustrée par le logigramme suivant :
J'avoue que mon implémentation est structurée mais non optimisée. J'avais prévu une logique beaucoup plus compacte avec la généralisation du système de pondération des corniches (voir plus bas) mais je n'ai pas eu le temps de le mettre au point.
Concernant le dernier axe, j'ai sciemment évité de regarder ce qui se fait sur le net pour explorer le problème "à ma sauce". A posteriori, je vois que je n'ai rien inventé : parcours en largeur, avec au retour une pondération des corniches pour favoriser les chemins qui incluent des corniches non explorées et discriminer les potentiels pièges/serpent/bat etc.
Cette approche fonctionne mais aurait pu porter plus de fruit avec une pondération systématique et un parcours en profondeur. Actuellement l'algorithme choisit le meilleur objectif puis je choisit le meilleur chemin pour s'y rendre. Je pense qu'il aurait fallu comparer tous les chemins à toutes les corniches pour choisir le meilleur. En terme de calcul ça resterait raisonnable dans tous les cas où l'objectif est connu (clé, porte), ou que le saftey level est contraignant. De toute façon la gourmandise ou l'efficacité de l’algorithme n'étaient pas des critères d'évaluation.
J'ai envisagé l'approche "proba" mais j'avais compris que les densités des items dans le labyrinthe seraient changées pour l’évaluation finale, donc que je ne pouvais pas m'appuyer sur ces données. C'est malin de la part de CrimsonDeus de les avoir exploitées ! J'ai moi même cherché à optimiser les gains de pondération pour la recherche du chemin, mais seulement à la main. Je me demandais si finalement, le fait de pondérer les cases puis d'optimiser les poids ne pouvait pas "englober" les probas ? La question est ouverte à tous je pense.
Il y avait finalement un quatrième axe caché dans ce défi, qui était l'évaluation automatisée de son IA. C'est la partie que j'ai le plus négligée et je remercie tous ceux qui ont partagé des scripts d'évaluation. A vrai dire, quand je simulais sur mon PC j'avais toujours entre 4 et 5% de moins que ce que le classement officiel affichait donc je ne sais pas qui de mon implémentation ou de la chance sur mon PC est responsable, mais j'ai toujours sous-estimé mes IA !
Pour ce défi j'ai distingué 3 axes majeurs, qui demandaient chacun d'être travaillés de façon égale :
1) Déduire des évènements et capteurs les propriétés des corniches et la cartographie du labyrinthe ;
2) Choisir une corniche objectif au mieux étant données les connaissances limitées du labyrinthe ;
3) Calculer le chemin le plus court et le plus sûr entre deux corniches.
Pour le premier point, je pense qu'il fallait faire son maximum pour que la suite ait du sens. Les commentaires dans mon code sont très explicites sur ce qu'on peut déduire de la présence, ou l’absence, d'un capteur ou évènement. En parcourant les divers codes a posteriro je pense que je n'ai rien raté de majeur de ce côté. J'ai beaucoup aimé cette partie, en particulier les cas qui pouvaient mener la vie dure (une corniche avec deux voisines piégées par exemple).
Pour le second axe, ma stratégie de choix est illustrée par le logigramme suivant :
J'avoue que mon implémentation est structurée mais non optimisée. J'avais prévu une logique beaucoup plus compacte avec la généralisation du système de pondération des corniches (voir plus bas) mais je n'ai pas eu le temps de le mettre au point.
Concernant le dernier axe, j'ai sciemment évité de regarder ce qui se fait sur le net pour explorer le problème "à ma sauce". A posteriori, je vois que je n'ai rien inventé : parcours en largeur, avec au retour une pondération des corniches pour favoriser les chemins qui incluent des corniches non explorées et discriminer les potentiels pièges/serpent/bat etc.
Cette approche fonctionne mais aurait pu porter plus de fruit avec une pondération systématique et un parcours en profondeur. Actuellement l'algorithme choisit le meilleur objectif puis je choisit le meilleur chemin pour s'y rendre. Je pense qu'il aurait fallu comparer tous les chemins à toutes les corniches pour choisir le meilleur. En terme de calcul ça resterait raisonnable dans tous les cas où l'objectif est connu (clé, porte), ou que le saftey level est contraignant. De toute façon la gourmandise ou l'efficacité de l’algorithme n'étaient pas des critères d'évaluation.
J'ai envisagé l'approche "proba" mais j'avais compris que les densités des items dans le labyrinthe seraient changées pour l’évaluation finale, donc que je ne pouvais pas m'appuyer sur ces données. C'est malin de la part de CrimsonDeus de les avoir exploitées ! J'ai moi même cherché à optimiser les gains de pondération pour la recherche du chemin, mais seulement à la main. Je me demandais si finalement, le fait de pondérer les cases puis d'optimiser les poids ne pouvait pas "englober" les probas ? La question est ouverte à tous je pense.
Il y avait finalement un quatrième axe caché dans ce défi, qui était l'évaluation automatisée de son IA. C'est la partie que j'ai le plus négligée et je remercie tous ceux qui ont partagé des scripts d'évaluation. A vrai dire, quand je simulais sur mon PC j'avais toujours entre 4 et 5% de moins que ce que le classement officiel affichait donc je ne sais pas qui de mon implémentation ou de la chance sur mon PC est responsable, mais j'ai toujours sous-estimé mes IA !
-
NeOtuXMembre UPECS
Niveau 8: ER (Espèce Rare: nerd)- Posts: 197
- Joined: 18 May 2012, 08:58
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Concours de rentrée 2020 - défi Python du Léviathan
Merci @citorva.
Désolé également, le manuel NumWorks N0110 est épuisé.
Je te mets un manuel NumWorks N100.
Désolé également, le manuel NumWorks N0110 est épuisé.
Je te mets un manuel NumWorks N100.
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 41981
- Images: 15887
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Concours de rentrée 2020 - défi Python du Léviathan
@NeOtuX, merci pour ton explication.
Que nous prends-tu ?
Que nous prends-tu ?
- 1 lot Capricorne ♑ : 1 calculatrice Casio Graph 90+E + 1 pack de goodies Casio + 1 goodie Xcas + 1 pack de goodies TI-Planet & Planète Casio
- 2 lots Bélier ♈ : 1 solution d'émulation Casio au choix + 1 catalogue de produits Casio au choix + 1 pack de goodies Casio + 1 goodie Xcas + 1 pack de goodies TI-Planet & Planète Casio
Show/Hide spoilerAfficher/Masquer le spoiler
Détail des solutions d'émulation Casio au choix :- clé USB 8 Go d'émulation permanente au choix, à jour avec 3 émulateurs pour Windows : fx-92+ Spéciale Collège + Graph 35+E II 3.30 + Graph 90+E 3.40
- clé à capuchon Transcend 2019 (7,5 Go de capacité réelle)
- clé monolithique EMTEC 2020 (7,7 Go de capacité réelle)
- licence 3 ans utilisable pour l'installation de tout ou partie des logiciels d'émulation suivants :
- clé USB 8 Go d'émulation permanente au choix, à jour avec 3 émulateurs pour Windows : fx-92+ Spéciale Collège + Graph 35+E II 3.30 + Graph 90+E 3.40
- Lot Serpentaire ⛎ : 1 goodie HP au choix + 1 goodie Xcas + 1 pack de goodies TI-Planète-Casio
Show/Hide spoilerAfficher/Masquer le spoiler
Poster HP : format 59,2×40 cm². - 1 lot Sagittaire ♐ : 1 calculatrice NumWorks N0110 + 1 pack de goodies NumWorks + 1 goodie Xcas + 1 pack de goodies TI-Planet & Planète Casio
- 3 lots Balance ♎ : 1 couvercle NumWorks au choix + 1 autocollant NumWorks + 1 enveloppe NumWorks ou carte postale NumWorks ou carte de visite-énigme NumWorks au choix + 1 pack de goodies NumWorks + 1 goodie Xcas + 1 pack de goodies TI-Planet & Planète Casio
Show/Hide spoilerAfficher/Masquer le spoiler
Couvercle NumWorks au nouveau format N0110 protégeant mieux l'écran contre les rayures, mais restant parfaitement utilisable sur l'ancien modèle N0100. - Lot Taureau ♉ : 1 calculatrice TI-Nspire CX II-T CAS + 1 licence logiciel TI-Nspire CAS élève + 1 pack de goodies TI + 1 goodie Xcas + 1 pack de goodies TI-Planète-Casio
- Lot Lion ♌ : 1 calculatrice TI-Nspire CX II-T + 1 licence logiciel TI-Nspire élève + 1 pack de goodies TI + 1 goodie Xcas + 1 pack de goodies TI-Planète-Casio
- Lot Gémeaux ♊ : 1 calculatrice TI-83 Premium CE Edition Python au choix + 1 adaptateur USB + 1 clavier USB dédié + 1 chargeur mural au choix + 1 housse Wyngs bleue ou film de protection écran Wyngs + 1 pack de goodies TI + 1 pack de goodies TI-Planète-Casio
- Lot Verseau ♒ : 1 calculatrice TI-83 Premium CE Edition Python + 1 gravure texte laser au choix + 1 adaptateur USB + 1 clavier USB dédié + 1 chargeur mural + 1 housse Wyngs au choix + 1 film de protection écran Wyngs dédiés + 1 extension de garantie 6 ans Calcuso + 1 pack de goodies TI + 1 pack de goodies TI-Planète-Casio
Show/Hide spoilerAfficher/Masquer le spoiler
Détail des calculatrices TI-Nspire CX II-T CAS au choix :- TI-Nspire CX II-T CAS sous blister version B
- TI-Nspire CX II-T CAS sous blister version B avec autocollant sceau Comenius Edumedia 2019
Détail des calculatrices TI-83 Premium CE Edition Python au choix pour le lot Gémeaux ♊ :- TI-83 Premium CE Edition Python sous blister version E
- TI-83 Premium CE Edition Python sous blister version E avec autocollant masquant sceau Approuvé par les familles 2019
La gravure au laser de la TI-83 Premium CE Edition Python du lot Verseau ♒ est effectuée par Calcuso. Le texte souhaité est à nous communiquer par le gagnant choisissant ce lot, dans la limite de 22 caractères et sans caractères spéciaux.
Détail des packs de goodies communs accompagnant les lots :
Aperçus de quelques cahiers d'activités TI-83 Premium CE Python au choix:
- 1 stylo Casio au choix
- 1 clé USB Casio au choix :
- clé USB Casio fx-CP400+E - 4,019 Go
- clé USB Casio - 4,018 Go
- 1 batterie USB Casio
- 1 histoire intégrale imprimée du manga Casio Academy - ClassWiz Edition - Function Hero - épisode 1, 2 ou 3 au choix - 5 pages ci-dessous + page de fin secrète :
- Episode 0 : Kaito (pour référence)
- Episode 1 : Takuma
- Episode 2 : Emi
- Episode 3 : Azusa
- 1 manuel NumWorks N0100
- 1 cahier d'activités NumWorks SNT 2nde
- 1 sac NumWorks au choix (N0100 versions 1.0-1.5, N0100 versions 1.6+, ou N0110)
- 1 cahier NumWorks
- 1 poster NumWorks au choix format A2 (42×59,4 cm²) :
- NumWorks N0100 : Eduscol / Ministère de l'Education Nationale - roulé - brillant
- NumWorks N0100 : Eduscol / Ministère de l'Education Nationale - roulé - mat
- NumWorks N0110 : Comprendre le monde devient un jeu - plié
- 1 stylo NumWorks
- 1 stylo TI au choix
- 1 porte-documents TI
- 1 poster TI plié au choix :
- format ANSI-D (55,9×86,4 cm²) : TI-73 Explorer
- format A1 (59,4×84,1 cm²) : TI-89 Titanium
- format 55,75×83,5 cm² : TI-Nspire CX, TI-Nspire CX CAS
- 1 clé USB TI au choix :
- clé USB T3 France bleue - 2 Go de capacité nominale
- clé USB TI-Primaire Plus - 4,01759 Go de capacité réelle
- clé USB TI-Innovator Rover - 4,01813 Go de capacité réelle
- clé USB TI-83 Premium CE avec lanière - 4,01811 Go de capacité réelle
- clé USB TI-83 Premium CE avec chaînette - 4,01811 Go de capacité réelle
- clé USB TI rouge - 1 Mo de capacité nominale (promotion TI-Primaire Plus défectueuse)
- 1 autocollant TI ou décalcomanie TI ou pochette CD TI ou lunettes TI au choix
- 1 cahier TI-83 Premium CE au choix
Aperçus de quelques cahiers d'activités TI-83 Premium CE Python au choix:
- Eyrolles : TI-83 Premium CE Edition Python - 2nde Générale + Technique - Mathématiques extrait ou intégral au choix
- Eyrolles : TI-83 Premium CE Edition Python - Mathématiques + Physique-Chimie
- Eyrolles : TI-83 Premium CE Edition Python - SNT
- TI-83 Premium CE Edition Python - 2nde Professionnelle - Mathématiques + Physique-Chimie
- Eyrolles : TI-83 Premium CE - BAC Pro - Mathématiques + Physique-Chimie
- Eyrolles : TI-83 Premium CE - 2nde - ICN
- Eyrolles : TI-83 Premium CE - 2nde + 1ère - ICN
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 41981
- Images: 15887
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Concours de rentrée 2020 - défi Python du Léviathan
critor wrote:Désolé également, le manuel NumWorks N0110 est épuisé.
Je te mets un manuel NumWorks N0100.
J'aurais bien échangé mais j'ai déjà également choisi celui de la N0100... pas de chance.
-
AfyuVIP++
Niveau 16: CC2 (Commandeur des Calculatrices)- Posts: 405
- Images: 149
- Joined: 30 Oct 2019, 19:17
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: plutôt, oui :)
Re: Concours de rentrée 2020 - défi Python du Léviathan
Pour le lot, je choisis le Sagittaire avec la N0110, un cahier et un stylo dans le premier sac.
En dehors des explications ci-dessus je voulais sincèrement remercier l'organisation et les participants. De tous les défis auxquels j'ai pu participer ici, je crois que celui-ci était mon préféré. Les règles du jeu étaient simples et abordables et l'interface du jeu très belle. Il m'a semblé que cette épreuve était accessible sur calculatrice (magnifique travail d'adaptation encore une fois), mais moins facile à attaquer en profondeur sur ce même medium. Il y avait donc un petit ticket d'entrée pour faire tourner le tout sur PC (qui a dû décourager ceux qui ont participé avec l'IA par défaut) qui une fois passé donnait carte blanche (pas juste un seul concept d'opti).
J'ai bien aimé l'ambiance et le florilège de messages sur ce topic (37 pages actuellement). Tout comme la bataille pour le podium qui a fait rage assez vite et qui a certainement permis d'aboutir aux solutions les plus intéressantes (le bat-rodéo !).
Je salue aussi la réactivité de Critor qui a fait évoluer le script au gré des retours et a relancé l'évaluation au moindre soupçon d’iniquité. A ce stade, le plus grand mystère pour moi c'est l'envers du décors, en particulier durant le concours. J'imagine sans trop de peine le travail formidable en amont, mais pendant, je ne sais pas quels sont les machines utilisées, le niveau d'automatisation etc.
Au fait c'est intéressant de découvrir des participants par leur code : on y trouve parfois des habitudes d'autres langages, des commentaires rigolos ou de bonnes astuces ! Riche idée que de les publier et je suggère d'être curieux à ceux qui ne l'ont pas encore fait.
En dehors des explications ci-dessus je voulais sincèrement remercier l'organisation et les participants. De tous les défis auxquels j'ai pu participer ici, je crois que celui-ci était mon préféré. Les règles du jeu étaient simples et abordables et l'interface du jeu très belle. Il m'a semblé que cette épreuve était accessible sur calculatrice (magnifique travail d'adaptation encore une fois), mais moins facile à attaquer en profondeur sur ce même medium. Il y avait donc un petit ticket d'entrée pour faire tourner le tout sur PC (qui a dû décourager ceux qui ont participé avec l'IA par défaut) qui une fois passé donnait carte blanche (pas juste un seul concept d'opti).
J'ai bien aimé l'ambiance et le florilège de messages sur ce topic (37 pages actuellement). Tout comme la bataille pour le podium qui a fait rage assez vite et qui a certainement permis d'aboutir aux solutions les plus intéressantes (le bat-rodéo !).
Je salue aussi la réactivité de Critor qui a fait évoluer le script au gré des retours et a relancé l'évaluation au moindre soupçon d’iniquité. A ce stade, le plus grand mystère pour moi c'est l'envers du décors, en particulier durant le concours. J'imagine sans trop de peine le travail formidable en amont, mais pendant, je ne sais pas quels sont les machines utilisées, le niveau d'automatisation etc.
Au fait c'est intéressant de découvrir des participants par leur code : on y trouve parfois des habitudes d'autres langages, des commentaires rigolos ou de bonnes astuces ! Riche idée que de les publier et je suggère d'être curieux à ceux qui ne l'ont pas encore fait.
-
NeOtuXMembre UPECS
Niveau 8: ER (Espèce Rare: nerd)- Posts: 197
- Joined: 18 May 2012, 08:58
- Gender:
- Calculator(s):→ MyCalcs profile
Who is online
Users browsing this forum: ClaudeBot [spider] and 7 guests