Ceci est une ancienne révision du document !
Table des matières
Intelligence du Pendule de Furuta
C'est quoi une Intelligence Artificielle
Une Intelligence Artificielle n'est jamais intelligente. C'est un programme informatique qui comprend à un moment donné un Apprentissage Automatique.
Ressources
Principes
Entrées / Sorties sur le pendule
Entrées: Vitesse/Position du chariot et du pendule. Un point zéro, et le décalage en points par rapport au zéro
Sortie: Impulsion moteur dans un sens ou dans l'autre. Cette impulsion sera proportionnelle (coefficient à trouver empiriquement !) à la valeur entre -1 et 1 , résultat du calcul.
Matériels
Choix du PC pour l'IA
Le fichier de poids fait ~46 ko. Un Raspi 4 doit suffire.
Choix du PC pour le pendule
Un Raspi 3 et du Arduino ?
Installation
Nous utilisons Gym de OpenAI et Stable-Baselines3.
Stable-baselines3
Le code de Stable-baselines est le code de Baselines nettoyé, amélioré, documenté. Documentation de stable-baselines @ stable-baselines.readthedocs.io
Stable-baselines3 est la dernière version, il utilise tensorflow2 et Torch
- Documentation de stable-baselines3 @ stable-baselines3.readthedocs.io
Installation: https://stable-baselines3.readthedocs.io/en/master/guide/install.html
Les modules python à installer: stable-baselines3[extra] et pyglet. Pyglet ne sert qu'a tester l'installation. L'installation de stable-baselines3 installe gym et installe tout ce qui est dans requirements.txt
# Installation et Mise à jour du module pip sudo apt install python3-pip python3 -m pip install --upgrade pip # Installation de venv sudo apt install python3-venv
Télécharger les sources de furuta
Dans votre dossier “projets”, par exemple /home/machin/projets
git clone https://github.com/sergeLabo/furuta # Allez dans le dossier des sources cd /home/machin/projets/furuta python3 -m venv mon_env source mon_env/bin/activate python3 -m pip install -r requirements.txt
Création d'un Environment particulier dans Gym de OpenAI
Ressources
Using Custom Environments Nous réalisons l'apprentissage dans le monde réel, nous n'avons pas besoin de render