π
<-

Concours de rentrée 2020 - défi Python du Léviathan

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 09:11

3 nouvelles IA reçues du participant n°10.

Leur évaluation automatique peut être suivie en direct dès maintenant : :)
https://tiplanet.org/concours_rentree20 ... &invalid=1
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 09:54

Mise à jour des scripts en version 2.

Des corrections mineures en terme de code, mais importantes pour vous :
  • web.py : l'affichage est maintenant correctement rafraichi une fois le Léviathan occis
  • webtest.py : correction du test disant si on peut tirer, c'est & m_a et non pas & (2 * m_a)

Voici déjà pour les fichiers .py standard :
archives_voir.php?id=2651890

Les autres plateformes vont suivre.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby Fime » 07 Nov 2020, 10:30

critor wrote:J'ai déjà réussi à plus que tripler le score du script d'exemple, sans rencontrer de problème de mémoire.

Une possibilité aussi, est d'utiliser le workshop NumWorks-Omega. Il permet de gérer des projets de plusieurs scripts (ici 3 scripts), et les 3 scripts semblent moins consommer de mémoire que le script unique les regroupant sur le workshop NumWorks-Epsilon :
https://getomega.dev/ide/tiplanet


Oui j'ai bien vu leur IDE, il est bien pensé, mais le seul truc c'est que j'aimerais bien pouvoir programmer sur ma calculatrice plutôt que sur mon ordi (pour des raisons de : 1 - purisme
2- facilité à programmer n'importe où et n'importe quand)

Du coup je vais exporter les trois scripts sur ma calculatrice.
User avatar
Fime
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Level up: 0%
 
Posts: 12
Joined: 05 Nov 2020, 19:35
Location: Lyon - France
Gender: Male
Calculator(s):
MyCalcs profile
Class: INSA Lyon promo 67
GitHub: fime-space

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 10:33

Justement, l'IDE Omega sert à ça aussi.
A transférer en 1 clic tous les scripts d'un projet vers la calculatrice. :)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 12:45

Elle ne prétend pas être première; moi je continue à y aller progressivement afin d'aider le plus grand nombre.

L'évaluation de la Critor's IA level 5 nom de code "le Grand Poucet" vient de démarrer. A suivre en direct dès maintenant :
https://tiplanet.org/concours_rentree20 ... &invalid=1

Si tout va bien, je vous la présente dans un moment.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 13:50

Afin d'être sûre de retrouver la sortie sans danger une fois la clé trouvée, le Petit Poucet revenait bêtement sur ses pas jusqu'à la porte.

Or les déplacements lors de l'exploration étant encore aléatoires, il pouvait donc y avoir plein de circuits inutiles lors du trajet retour.

Je vous présente maintenant ma nouvelle amélioration, la Critor's IA Level 5, alias "le Grand Poucet".

"Le Grand Poucet" a maintenant appris à compter. Une fois la porte trouvée, il sème sur chaque corniche visitée des cailloux qu'il numérote par ordre croissant. Si la corniche comporte déjà un caillou il le laisse et n'en rajoute pas.

Lors du trajet retour une fois la clé trouvée, il retourne toujours vers la corniche indiquée par le plus petit numéro de caillou, c'est-à-dire la corniche la plus anciennement atteinte après passage par la porte.

En fait, on parcourt un arbre inclus dans le le graphe représentant notre trajet. Il est à noter que cet algo ne fournit pas forcément le plus court chemin connu, mais simplement un chemin sans circuit. Voici un contre-exemple : prenons la liste de visites successives {1, 2, 3, 1, 3, 4}, avec la porte en 1 et la clé en 4. Notre nouvelle IA va revenir en effectuant le chemin {4,3,2,1}, ce qui est déjà mieux que {4, 3, 1, 3, 2, 1} avec l'IA récédente. Toutefois le plus court chemin serait {4,3,1}.

Mais alors, pourquoi avoir implémenté cette IA ? Il s'agissait tout simplement montrer que l’on peut obtenir une IA d'une bien meilleure efficacité, sans avoir pour autant encore à stocker en mémoire tout l’environnement et à faire tourner de gros algos de recherche de plus court chemin dessus. Cette IA offre donc un bon compromis entre performances (une fois la porte puis la clé trouvées) et espace mémoire utilisé, particulièrement bienvenu sur NumWorks et TI-83 Premium CE. ;)

Test avec 100'000 simulations sur des graphes de taille 36.

On constate ici encore une nette amélioration du taux de succès : :)






Type
Déplacement
normal
Déplacement retour
(clé trouvée après porte)
Déplacement en
cas de danger
Déplacement en
cas de blocage
Condition
de tir
Succès
Exemple
fourni
aléatoire
corniche voisine
au hasard
jamais
≈7,3%
réactive
corniche voisine
au hasard
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈8,5%
réactive
corniche voisine
au hasard
corniche précédente si
puits ou Léviathan
détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈22,9%
réactive
corniche voisine
au hasard
corniche précédente
si puits détecté
ou 2 fois de suite
Léviathan détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈23,3%
réactive +
cognitive
corniche voisine
au hasard
corniches
précédentes
corniche précédente
si puits détecté
ou 2 fois de suite
Léviathan détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈24,5%
critor's IA level 5
"le Grand Poucet"
réactive +
cognitive
corniche voisine
au hasard
corniche voisine la plus
anciennement atteinte
après découverte porte
corniche précédente
si puits détecté
ou 2 fois de suite
Léviathan détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈25,1%
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 14:36

Voici maintenant la critor's IA level 6 surnommée "la Kamikaze".
L'évaluation vient de démarrer, à suivre en direct :
https://tiplanet.org/concours_rentree20 ... &invalid=1

Si tout va bien, présentation dans un moment. :)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby cent20 » 07 Nov 2020, 14:39

J'ai envoyé ma première participation mais je suis à l'aveugle complet faute de réussir à boucler l'évaluation.
Afyu tu nous fais un tuto sur linux, en expliquant pas à pas comment tu fais pour tester un script 1000 fois ?
Image
Enseignant de mathématiques et d'informatique. Spécialité NSI : Des projets, des tutos, mais aussi de l'art
Calculatrice NumWorks : Des applications et des jeux, scripts, 📙 Découvrir la NumWorks
User avatar
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 48.3%
 
Posts: 1047
Images: 67
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: nsi_xyz

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 14:46

Nouveau participant n°3, en effet. ;)

L'évaluation peut être suivie en direct dès maintenant : :)
https://tiplanet.org/concours_rentree20 ... &invalid=1
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Concours de rentrée 2020 - défi Python du Léviathan

Unread postby critor » 07 Nov 2020, 15:43

Mes IA précédentes avait certes l'avantage de reculer en cas de danger détecter, évitant ainsi des erreurs fatales.

Mes sur certains graphes, cette stratégie d'évitement les confinent à explorer un sous-graphe, pas toujours suffisant pour réussir à s'échapper.
Elle était ainsi condamnée à erreur éternellement, ou plus précisément jusqu'au time out que nous avons prévu pour ces cas-là (actuellement, dimweb étant la taille du graphe, ne sont autorisées qu'un maximum de 2 * dimweb**2 actions).

Sans renoncer à cette précaution salutaire, voici maintenant la Critor's IA Level 6, alias "la Kamikaze".

Elle commence à avoir une mémoire un peu plus globale de son environnement. A chaque coup elle maintient à jour 2 listes :
  • liste des corniches déjà visitées
  • liste des corniches restant à visiter
Ne sont rajoutées dans cette dernière liste les seules corniches détectées comme sûres.

Et donc nuance, en cas de danger détecté, cette IA ne recule que si il lui reste encore des corniches garanties comme sûres à visiter.
Dans la négative, elle tente le tout pour le tout...

Test avec 100'000 simulations sur des graphes de taille 36.

L'amélioration n'est ici que très légère, mais cette histoire de déjà visitées et restant à visiter est quand même une étape très importante vers des IA beaucoup plus évoluées. A bientôt... ;)







Type
Déplacement
normal
Déplacement retour
(clé trouvée après porte)
Déplacement en
cas de danger
Déplacement en
cas de blocage
Condition
de tir
Succès
Exemple
fourni
aléatoire
corniche voisine
au hasard
jamais
≈7,3%
réactive
corniche voisine
au hasard
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈8,5%
réactive
corniche voisine
au hasard
corniche précédente si
puits ou Léviathan
détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈22,9%
réactive
corniche voisine
au hasard
corniche précédente
si puits détecté
ou 2 fois de suite
Léviathan détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈23,3%
réactive +
cognitive
corniche voisine
au hasard
corniches
précédentes
corniche précédente
si puits détecté
ou 2 fois de suite
Léviathan détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈24,5%
réactive +
cognitive
corniche voisine
au hasard
corniche voisine la plus
anciennement atteinte
après découverte porte
corniche précédente
si puits détecté
ou 2 fois de suite
Léviathan détecté
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈25,1%
critor's IA level 6
"la Kamikaze"
réactive +
cognitive
corniche voisine
au hasard
corniche voisine la plus
anciennement atteinte
après découverte porte
corniche précédente
si puits détecté
ou 2 fois de suite
Léviathan détecté
corniche voisine
au hasard
corniche voisine
au hasard quand
Léviathan détecté
2 fois de suite
≈25,1%
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

PreviousNext

Return to News Divers

Who is online

Users browsing this forum: ClaudeBot [spider] and 13 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.
932 utilisateurs:
>867 invités
>55 membres
>10 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)