Uploaded April 2026 | Updated September 2026, 3 weeks ago
Please subscribe to our YouTube channel @ youtube.com/@DevoxxForever
Subscribe to LinkedIn @ linkedin.com/company/voxxed-days-amsterdam
Follow us on Twitter @ twitter.com/voxxedamsterdam
AI has become part of our everyday lives but we often forget one of its earliest and most fascinating uses: creating an opponent to play games with.
We’ve seen it in chess, Go, and countless video games, where AI opponents follow complex strategies or fixed rule sets. But who says you need PyTorch or TensorFlow to do it? Sometimes, the good old Java is all you need.
In this talk, I’ll share how I built a Deep Q-Network (DQN) in Java to teach an AI to play the board game Azul. I’ll cover environment design, state encoding, reward shaping, and training strategies.
Please subscribe to our YouTube channel @ youtube.com/@DevoxxForever
Subscribe to LinkedIn @ linkedin.com/company/voxxed-days-amsterdam
Follow us on Twitter @ twitter.com/voxxedamsterdam
AI has become part of our everyday lives but we often forget one of its earliest and most fascinating uses: creating an opponent to play games with.
We’ve seen it in chess, Go, and countless video games, where AI opponents follow complex strategies or fixed rule sets. But who says you need PyTorch or TensorFlow to do it? Sometimes, the good old Java is all you need.
In this talk, I’ll share how I built a Deep Q-Network (DQN) in Java to teach an AI to play the board game Azul. I’ll cover environment design, state encoding, reward shaping, and training strategies.


![[VDBUH2026] Roberto Cortez - How difficult can it be to write efficient code?
When we write code, we often prioritize completing our feature over performance. However, performance may become a bottleneck, requiring additional resources and time. When we reach that point, how should we proceed?
In this session, we will explore tools that can help us identify performance problems and focus our code improvements in the most beneficial areas. Some of these tools include AsyncProfiler, JMH, JFR, and others. Expect a session with lots of demos, live coding, real-life examples, and tips and tricks to help you get started on improving your code’s performance. [VDBUH2026] Roberto Cortez - How difficult can it be to write efficient code?](https://i.ytimg.com/vi/qSJf8yKoFhY/mqdefault.jpg)
![[VDBUH2026] Andra Ghibutiu & Alex Proca - Opening thoughts
[VDBUH2026] Andra Ghibutiu & Alex Proca - Opening thoughts [VDBUH2026] Andra Ghibutiu & Alex Proca - Opening thoughts](https://i.ytimg.com/vi/qSzhiRLFcwY/mqdefault.jpg)






