···369369370370isaacsim:
371371 type: web
372372- title: Isaac Sim - Robotics Simulation and Synthetic Data Generation | NVIDIA Developer
372372+ title: Isaac Sim - Robotics Simulation and Synthetic Data Generation
373373+ author: NVIDIA Developer
373374 url:
374375 date: '2025-10-10'
375376 value: https://developer.nvidia.com/isaac/sim
···377378378379physx:
379380 type: web
380380- title: PhysX SDK - Latest Features & Libraries | NVIDIA Developer
381381+ title: PhysX SDK - Latest Features & Libraries
382382+ author: NVIDIA Developer
381383 url:
382384 date: '2025-10-10'
383385 value: https://developer.nvidia.com/physx-sdk
···426428 serial-number:
427429 arxiv: '1707.06347'
428430431431+qlearning:
432432+ type: book
433433+ title: Reinforcement Learning for Sequential Decision and Optimal Control
434434+ author: Shengbo Eben Li
435435+ page-range: 1-460
436436+ publisher: Springer Singapore
437437+ serial-number:
438438+ doi: 10.1007/978-981-19-7784-8
439439+
+5-9
rapport/context.typ
···223344#let comment = content => text(fill: gray)[(Note: #content)]
55+#let todo = content => text(fill: red)[(TODO: #content)]
56#let refneeded = text(fill: luma(100), [[Réf. nécéssaire]])
6777-#show terms: it => grid(
88- columns: 2, row-gutter: 1em, column-gutter: (15pt, 0pt), align: (left, left),
99- ..it.children.map(item =>
1010- (strong(item.term), item.description)
1111- ).flatten()
1212- )
1313-148== Bases théoriques du _Reinforcement Learning_
1591610L'apprentissage par renforcement, ou _Reinforcement Learning_, permet de développer des programmes sans expliciter leur logique: on décrit plutôt quatre choses, qui vont permettre à la logique d'émerger pendant la phase d'entraînement:
···1812- Un _agent_: c'est le programme que l'on souhaite créer
1913- Des _actions_ que l'agent peut choisir d'effectuer ou pas
2014- Un _environnement_, que les actions viennent modifier
2121-- Un _score_ (_coût_ s'il doit être minimisé, _récompense_ inversement) qui dépend de l'état pré- et post-action de l'environnement ainsi que de l'action qui a été effectuée #footnote[Le Q-learning consiste en la définition d'une fonction coût qui ne dépend que de l'état actuel de l'environnement]
1515+- Un _score_ (_coût_ s'il doit être minimisé, _récompense_ inversement) qui dépend de l'état pré- et post-action de l'environnement ainsi que de l'action qui a été effectuée
22162317La phase d'apprentissage consiste à trouver, par des cycles d'essai/erreur, quelles sont les meilleures actions à prendre en fonction de l'environnement actuel, avec meilleur définit comme "qui minimise le coût" (ou maximise la récompense):
2418···4135/ Coût: un ensemble de contraintes ("ne pas endommager le robot"), dont la plupart dépendent de l'objectif de la politique
42364337=== L'entraînement
3838+3939+#todo[Expliquer exploration vs exploitation et $gamma$]
44404541Une fois que ce cadre est posé, il reste à savoir _comment_ l'on va trouver la fonction qui associe un état de l'environnement à une action.
4642···7571L: E -> S
7672$
77737878-avec $E$ l'ensemble des états possibles de l'environnement, et $S$ un ensemble muni d'un ordre total (on utilise souvent $[0, 1]$)
7474+avec $E$ l'ensemble des états possibles de l'environnement, et $S$ un ensemble muni d'un ordre total (on utilise souvent $[0, 1]$). Ces fonctions coût, qui ne dépendent que de l'état actuel de l'environnement, représente un domaine du RL#footnote[Reinforcement Learning] appelé _Q-Learning_ @qlearning
79758076On remplit la colonne "Action à effectuer" avec l'action au coût le plus bas:
8177