Implementiere einen Reinforcement Learning Algorithmus und löse damit eine kontinuierliche ML-Agents Domäne.
Wir haben die Proximal Policy Optimization (PPO) implementiert und damit den Crawler gelöst. Dafür haben wir verschiedene Tools genutzt:
- UnityToGymWrapper
- Pytorch
- Optuna
- Tensorboard
Um den Lauf zu starten, installiere alle Anforderungen, die in requirements.txt
enthalten sind.
Wir haben zwei leicht variierte PPOs, eine Version mit Mininbatch und eine ohne Minibatch (Default Version).
python main.py <unity-worker-id> <ppo-var>
unity-worker-id: eine beliebige Ganzzahl (default: 0)
ppo-var = 0: ohne Minibatch, >= 1: mit Mininbatch (default: 0)
- lr = 3e-4
- tau = 0.95
- clip = 0.2
- hidden_units = 512
- minibatch_size = 32
- update_episodes = 15
- ppo_epochs = 8
- beta = 0.05
- gamma = 0.99
- std = 1.0
- lr = 3e-4
- tau = 0.95
- clip = 0.2
- hidden_units = 512
- update_episodes = 15
- ppo_epochs = 5
- beta = 0.05
- gamma = 0.99
- std = 0.35