intelligence_du_pendule_de_furuta
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| intelligence_du_pendule_de_furuta [2022/05/24 19:06] – Tag0 Added: pytorch,tensorboard serge | intelligence_du_pendule_de_furuta [2024/12/10 16:05] (Version actuelle) – Benjamin Labomedia | ||
|---|---|---|---|
| Ligne 13: | Ligne 13: | ||
| Une Intelligence Artificielle n'est jamais intelligente.\\ | Une Intelligence Artificielle n'est jamais intelligente.\\ | ||
| **C' | **C' | ||
| - | |||
| =====Ressources===== | =====Ressources===== | ||
| Ligne 19: | Ligne 18: | ||
| * **[[https:// | * **[[https:// | ||
| * **[[https:// | * **[[https:// | ||
| - | + | * **[[https:// | |
| + | * **[[https:// | ||
| =====Principes===== | =====Principes===== | ||
| L' | L' | ||
| Ligne 26: | Ligne 27: | ||
| * Le serveur répond par une impulsion sur le moteur dans un sens ou dans l' | * Le serveur répond par une impulsion sur le moteur dans un sens ou dans l' | ||
| Un cycle se termine au bout de 2000 steps. | Un cycle se termine au bout de 2000 steps. | ||
| - | |||
| =====Installation de l' | =====Installation de l' | ||
| - | Nous utilisons Gym de OpenAI et Stable-Baselines3. | + | Nous utilisons Gym de OpenAI et Stable-Baselines3.\\ |
| - | + | Le code de Stable-baselines est le code de Baselines nettoyé, amélioré, documenté. Stable-baselines3 est la dernière version, il utilise Torch. [[https:// | |
| - | ===Stable-baselines3=== | + | Les modules python à installer: stable-baselines3 et pyglet. Pyglet ne sert qu'a tester l' |
| - | Le code de Stable-baselines est le code de Baselines nettoyé, amélioré, documenté. | + | |
| - | Stable-baselines3 est la dernière version, il utilise | + | |
| - | * **[[https:// | + | |
| - | + | ||
| - | ===Installation: | + | |
| - | | + | |
| - | Les modules python à installer: stable-baselines3[extra] | + | |
| <code bash> | <code bash> | ||
| Ligne 58: | Ligne 51: | ||
| </ | </ | ||
| - | ====Notre environement==== | + | =====Petit Pendule de Furuta===== |
| - | Ressources: **[[https:// | + | ====Version tout en python==== |
| + | Au bout de très longs apprentissages, | ||
| + | Le codeur du balancier de 4 000 points crée 16 000 callbacks. En estimant la vitesse de rotation du balancier à 1 tour par seconde, la fréquence | ||
| + | Le moteur a un codeur | ||
| - | Notre environnement: **[[https://github.com/sergeLabo/furuta_rl|furuta sur github]]** | + | Les gpio d'une Pi ne peuvent pas tourner à plus de 20 000 Hz: [[https://atman-iot.com/blog/ |
| - | ===== Ressources | + | Les vitesses de rotation sont plus rapides que 1 tour/ |
| - | * **[[https:// | + | |
| + | Le codeur de 4 000 points a été remplacé par un codeur de 1 000 points, qui est grandement suffisant: les frottements ne permettent pas d' | ||
| + | |||
| + | ===Training avec " | ||
| + | La méthode training_best de train_test.py est étrange: la doc n'est pas claire, ça ne finit jamais, il y a un message d' | ||
| + | <code python> | ||
| + | eval_callback | ||
| + | | ||
| + | | ||
| + | | ||
| + | deterministic=True, | ||
| + | | ||
| + | </code> | ||
| - | * Notre **< | ||
| =====Suivi de l' | =====Suivi de l' | ||
| ====Installation, | ====Installation, | ||
| tensorboard est dans les requirements.\\ | tensorboard est dans les requirements.\\ | ||
| - | Voir **[[https:// | ||
| Dans le dossier du projet, qui contient le venv=mon_env, | Dans le dossier du projet, qui contient le venv=mon_env, | ||
| ./ | ./ | ||
| Ligne 80: | Ligne 86: | ||
| - | ====Des exemples==== | + | ====Exemples==== |
| - | {{ : | + | {{: |
| - | + | {{: | |
| - | {{: | + | {{: |
| - | {{: | + | {{: |
| - | {{: | + | |
| ====Moyenne des récompenses==== | ====Moyenne des récompenses==== | ||
| - | Permet d' | + | {{: |
| avec rollout/ | avec rollout/ | ||
| - | {{ : | ||
| - | |||
| - | |||
| - | =====Tableau d' | ||
| - | {{: | ||
| - | |||
| - | {{: | ||
| - | **Parameter Optimization** | ||
| - | ^Numéro | ||
| - | |Learning Rate en 10< | ||
| - | |Ent Coef en 10< | ||
| - | |Vf Coef | ||
| - | |Nombre de steps | 276 000 | 82 000 | 614 000| 307 000 | 307 000 | 512 000 | 307 000 | 1 000 000 | | ||
| - | |Note d' | ||
| - | |||
| - | **Le nombre de steps doit être d'au moins 1 millions pour commencer à noter la rapidité d'un apprentissage** | ||
| - | L' | ||
| - | La récompense est le produit de la récompense du chariot par la récompense du balancier. Il faut beaucoup de temps pour que le model intègre cette notion. | ||
| - | |||
| - | =====On peut faire dire n' | ||
| - | Mon efficience à moi, la courbe des moyennes de Récompenses par cycle, avec un lissage de 7. | ||
| - | {{ : | ||
| - | **<WRAP center round info 60% centeralign> | ||
| - | **La tendance est nettement à la progression** | ||
| - | </ | ||
| - | {{tag> bestiaire_ia pytorch tensorboard }} | + | {{tag> bestiaire_ia |
intelligence_du_pendule_de_furuta.1653419189.txt.gz · Dernière modification : de serge
