  Games have a long history as benchmarks for progress in artificial
intelligence. Approaches using search and learning produced strong performance
across many perfect information games, and approaches using game-theoretic
reasoning and learning demonstrated strong performance for specific imperfect
information poker variants. We introduce Student of Games, a general-purpose
algorithm that unifies previous approaches, combining guided search, self-play
learning, and game-theoretic reasoning. Student of Games achieves strong
empirical performance in large perfect and imperfect information games -- an
important step towards truly general algorithms for arbitrary environments. We
prove that Student of Games is sound, converging to perfect play as available
computation and approximation capacity increases. Student of Games reaches
strong performance in chess and Go, beats the strongest openly available agent
in heads-up no-limit Texas hold'em poker, and defeats the state-of-the-art
agent in Scotland Yard, an imperfect information game that illustrates the
value of guided search, learning, and game-theoretic reasoning.
