~/talk

Using Python to build an AI to play and win SNES StreetFighter II

Talkat PyCon 2018 · on Friday, 2018-05-11· [python, machine-learning]
slides:none on file

Uses a SNES emulator (snes9x + BizHawk) and Python glue to expose game state to OpenAI gym and trains a DQN via keras-rl and tensorflow. Acts every 20 frames, runs training at ~450 FPS in cloud, and optimizes a delta health reward (health difference per frame). After ~3,000 games an agent reaches ~80% win rate, special moves emerge autonomously, and overpowered M. Bison bots are banned from the tournament.

AI-written summary · about

  1. 0:00Start
  2. 1:35Overview
  3. 2:45Reinforcement Learning
  4. 3:44Observation
  5. 5:24Action Space
  6. 7:37Gym Environment Step and Reset
  7. 21:21Funniest Programming Fails
  8. 23:33Time-Delayed Attack
  9. 24:41Have You Considered Challenging the Professional Players with Your Bots
  10. 25:29How Much Did the Training Cost
  11. 26:06How Much Did the Cloud Cost
  12. 26:41Academic Backgrounds
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.