Cargando…

Faster sorting algorithms discovered using deep reinforcement learning

Fundamental algorithms such as sorting or hashing are used trillions of times on any given day(1). As demand for computation grows, it has become critical for these algorithms to be as performant as possible. Whereas remarkable progress has been achieved in the past(2), making further improvements o...

Descripción completa

Detalles Bibliográficos
Autores principales: Mankowitz, Daniel J., Michi, Andrea, Zhernov, Anton, Gelmi, Marco, Selvi, Marco, Paduraru, Cosmin, Leurent, Edouard, Iqbal, Shariq, Lespiau, Jean-Baptiste, Ahern, Alex, Köppe, Thomas, Millikin, Kevin, Gaffney, Stephen, Elster, Sophie, Broshear, Jackson, Gamble, Chris, Milan, Kieran, Tung, Robert, Hwang, Minjae, Cemgil, Taylan, Barekatain, Mohammadamin, Li, Yujia, Mandhane, Amol, Hubert, Thomas, Schrittwieser, Julian, Hassabis, Demis, Kohli, Pushmeet, Riedmiller, Martin, Vinyals, Oriol, Silver, David
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Nature Publishing Group UK 2023
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10247365/
https://www.ncbi.nlm.nih.gov/pubmed/37286649
http://dx.doi.org/10.1038/s41586-023-06004-9
Descripción
Sumario:Fundamental algorithms such as sorting or hashing are used trillions of times on any given day(1). As demand for computation grows, it has become critical for these algorithms to be as performant as possible. Whereas remarkable progress has been achieved in the past(2), making further improvements on the efficiency of these routines has proved challenging for both human scientists and computational approaches. Here we show how artificial intelligence can go beyond the current state of the art by discovering hitherto unknown routines. To realize this, we formulated the task of finding a better sorting routine as a single-player game. We then trained a new deep reinforcement learning agent, AlphaDev, to play this game. AlphaDev discovered small sorting algorithms from scratch that outperformed previously known human benchmarks. These algorithms have been integrated into the LLVM standard C++ sort library(3). This change to this part of the sort library represents the replacement of a component with an algorithm that has been automatically discovered using reinforcement learning. We also present results in extra domains, showcasing the generality of the approach.