EuroPython 2018

Winning card games with 1000+ CPUs

Vincent was playing a card game against his girlfriend and he kept loosing. So he wanted to train a bot to play on his behalf. This is our story.

We’re using AWS Lambda to get better at a card game named SushiGO. We make a small genetic algorithm in Python that uses AWS Lambda as a backend. The talk consists of these parts:

  • Quick Explanation of the rules of the SushiGo Card Game
  • Translation of real life to an algorithm
  • Explain why this problem needs a lot of CPU
  • Explain why AWS Lambda fits the simulation use-case
  • How to quickly hack Concurrency in Python
  • How to deploy lambda very quickly with chalice
  • Experimentation Results

This talk will discuss an algorithm that we’ve tried to improve in three ways:

  • Applying simple maths to make the search algorithm better
  • Throwing lots (lots!) of CPU’s against the problem by leveraging AWS Lambda and python concurrency

We will conclude by discussing whether or not AWS Lambda is suitable for a gridsearch/grid simulation (hint, it’s not meant for this task, but it actually kind of works very well).

in on Friday 27 July at 11:20 See schedule

Do you have some questions on this talk?

New comment