Training My Rival in Java: A Deep Q-Learning AI to Play Azul
summary
Built a playable Azul opponent using a Deep Q-Network (DQN) in Java with a dual-target network, a replay buffer, and a terminal UI; state encoding includes central tile counts, current player, floor line, player scores, pattern lines, wall tiles and tile bag size, action encoding is (factory, color, line), reward equals score delta minus extra floor penalties, hyperparameters include gamma=0.99 and learning rate=0.1, training saved/loaded from training.bin and occasionally behaves randomly due to epsilon-greedy.
AI-written summary · about
chapters (11)
- 0:00Azul AI project intro
- 1:00Azul game rules
- 3:06Q-learning basics
- 7:25Deep Q-learning transition
- 8:51DQN neural network
- 12:22Game state encoding
- 14:31Epsilon-greedy action
- 15:54Training with replay buffer
- 16:39DQN trainer setup
- 18:05Reward calculation
- 19:09Live AI demo
related talks
17mTraining My Rival in Java: A Deep Q-Learning AI to Play Azul
35mLet's play Space Invaders!
49mML: Teaching machine to learn from its own mistakes (...)
33mBreakthroughs and the Future of (Deep) Reinforcement Learning
01h 01mReinforcement Learning: Pac-Man
56mCan I do AI?
01h 03mIEEE CoG 2019 - Industry Day - David Silver (DeepMind)
15mAI Self - Learning Game Playing
