Unity Machine Learning Agents: Mesterséges intelligencia a videojátékokban Az összes betanított ügynök kipróbálható a release fül alatt található Quantum Crusaide v1.0 zip letöltésével
A projekt három különböző tanítási rendszert tartalmaz, mindegyik külön mappában található:
- Projektkód:
AgentVsAgent/ - Modellek:
- Full self-play modell:
Model/ZolaRLAgentV4-fullSelfplay/ - Kezdetleges intelligenciával tanított modell:
Model/ZolaRLAgentV3-InitialIntelligence/
- Full self-play modell:
- Projektkód:
PlayerVsAgent/ - Modell:
Model/ZolaRLAgentV3vsPlayer/
- Projektkód és modell:
Model/ZolaRLAgentV2vsArtint/
A Models/ mappában minden betanított modell megtalálható, tartalmaznak:
- Checkpoint fájlokat
- ONNX exportokat
A modellek újrataníthatók vagy közvetlenül kipróbálhatók.
- Unity verzió:
6000.0.28f1(telepítve a Unity Hubból) - Lépések:
- Unity Hub →
Add→Add project from disk - Válaszd ki a kívánt mappát →
Add
- Unity Hub →
A projekt mappájában hozz létre két külön venv-et:
# ML-Agents környezet
python -m venv mlagents-env
# TensorBoard környezet
python -m venv tensorboard-env# ML-Agents környezet
mlagents-env\Scripts\activate
# Telepítések
pip install mlagents
pip install torch torchvision torchaudiomlagents-learn --run-id DesiredRunIDFontos: A Unity Editorben az Agent Behaviour Name értéke meg kell hogy egyezzen a
--run-idparaméterrel.
Ez a parancs létrehozza a results/DesiredRunID/ mappát és egy configuration.yaml fájlt, ahol a hiperparamétereket testre lehet szabni.
mlagents-learn results/DesiredRunID/configuration.yaml --resumeEzután Unity-ben a Play gombbal indítható a szimuláció.
A tanulási folyamat vizualizálásához:
# TensorBoard környezet aktiválása
tensorboard-env\Scripts\activate
# Telepítés és indítás
pip install tensorboard
tensorboard --logdir results/DesiredRunIDA jutalmazási rendszer minden esetben a Zola Agent kódjában van definiálva, az adott projekt Agent osztályában. Ezt szükség esetén érdemes testre szabni a kívánt tanulási viselkedés eléréséhez.
Ez a projekt a Unity ML-Agents keretrendszerre épül, és három különböző tanítási módszert vizsgál:
- Self-play
- Játékossal való tanulás
- Hard-coded AI elleni tanulás
Célja, hogy feltérképezze, melyik módszerrel tanított mesterséges intelligencia válik a legélvezetesebb és legintelligensebb ellenféllé a játékos számára.