← Open Source
google-deepmind

alphadev

google-deepmind/alphadev on GitHub: Python, Model Development, Reinforcement Learning, RL.

Model DevelopmentReinforcement LearningPython
Open on GitHub
Momentum
+0stars in 24 hours0.0%
740
Stars
81
Forks
+0
This week
1
Contributors
Created 2023-05-31 · Updated 2026-09-28 · #14341 today
Top developers

google-deepmind/alphadev is ranked 14,341 with 740 stars.

Same-category comparison

google-deepmind/alphadev is ranked 14,341 among these 8 peers; fill3d/fill is ranked 14,340.

Same-category comparison
NameRankMetrics
speechio/chinese_text_normalization14,331
Language:
Python
Stars:
741
Forks:
151
Description:
Chinese text normalization for speech processing.
zhengqili/Neural-Scene-Flow-Fields14,333
Language:
Python
Stars:
741
Forks:
93
Description:
PyTorch implementation of paper "Neural Scene Flow Fields for Space-Time View Synthesis of Dynamic Scenes".
Stable-Baselines-Team/stable-baselines3-contrib14,337
Language:
Python
Stars:
740
Forks:
244
Description:
Contrib package for Stable-Baselines3 - Experimental reinforcement learning (RL) code.
fill3d/fill14,340
Language:
TypeScript
Stars:
740
Forks:
42
Description:
Generative fill in 3D.
tensorflow/io14,344
Language:
C++
Stars:
740
Forks:
311
Description:
Dataset, streaming, and file system extensions maintained by TensorFlow SIG-IO.
MaximumEntropy/Seq2Seq-PyTorch14,345
Language:
Python
Stars:
739
Forks:
158
Description:
Sequence to Sequence Models with PyTorch.
lupantech/ScienceQA14,349
Language:
Python
Stars:
739
Forks:
68
Description:
Data and code for NeurIPS 2022 Paper "Learn to Explain: Multimodal Reasoning via Thought Chains for Science Question Answering".
vita-epfl/CrowdNav14,361
Language:
Python
Stars:
738
Forks:
184
Description:
[ICRA] Crowd-aware Robot Navigation.
Key parameters and specifications
Key parameters and specifications
ParameterValue
LanguagePython
CategoryModel Development
SubcategoryReinforcement Learning
KeywordsRL
Stars740
Forks81
Contributors1
Created date2023-05-31
Updated date2026-09-28
Stars in 1 day0
Stars in 7 days0
Rank14,341
Previous rank14,196
Rank change-145
7-day stars rank14,420
Previous 7-day stars rank14,430
7-day stars rank change10
Total stars rank14,235
Previous total stars rank14,204
Total stars rank change-31
CountryUK
README summary

AlphaDev This repository contains relevant pseudocode and algorithms for the publication "Faster sorting algorithms discovered using deep reinforcement learning" The repository contains two modules: with the pseudocode for the AlphaDev agent and the Assembly Game RL environment with the discovered assembly programs and checks their correctness. This includes the following: Installation The code present in is pseudocode to simplify reproduction. As such, no installation is required for the pseudocode. To test the discovered assembly programs, we need to install bazel

and verify it builds correctly (we only support Linux with clang, but other platforms might work) Usage The contains logic for the RL environment, AlphaDev agent and the Assembly Game. The main components are: This represents the Assembly Game RL environment. The state of the RL environment contains the current program and the state of memory and registers. Doing a step in this environment is equivalent to adding a new assembly instruction to the program (see the method). The reward

is a combination of correctness and latency reward after executing the assembly program over an input distribution. For simplicity of the overall algorithm we are not including the assembly runner, but assembly execution can be delegated to an external library (e. contains the main hyperparameters used for the AlphaDev agent. This includes configuration of AlphaZero, MCTS, and underlying networks. contains the logic to run an AlphaDev game. This include the MCTS procedure and the storage of the game. and contain

the implementation the networks used in the AlphaZero algorithm. It uses a MultiQuery Transformer to represent assembly instructions. To run the assembly test in , use the following command: Citing this work License and disclaimer Copyright 2022 DeepMind Technologies Limited All software is licensed under the Apache License, Version 2. 0); you may not use this file except in compliance with the Apache 2. 0 license at: All other materials are licensed under the Creative Commons Attribution 4. You may obtain

a copy of the CC-BY license at: Unless required by applicable law or agreed to in writing, all software and materials distributed here under the Apache 2. 0 or CC-BY licenses are distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the licenses for the specific language governing permissions and limitations under those licenses.

Frequently asked questions

How many stars and forks are recorded?

google-deepmind/alphadev has 740 stars and 81 forks.

What is the repository rank?

google-deepmind/alphadev is ranked 14,341.

What language and category are recorded?

google-deepmind/alphadev has 740 stars, uses Python and belongs to Model Development.

Which repository is closest in rank?

google-deepmind/alphadev is compared with fill3d/fill, ranked 14,340 with 740 stars.

README

AlphaDev

This repository contains relevant pseudocode and algorithms for the publication "Faster sorting algorithms discovered using deep reinforcement learning"

The repository contains two modules:

  • alphadev.py with the pseudocode for the AlphaDev agent and the Assembly Game RL environment
  • sort_functions_test.cc with the discovered assembly programs and checks their correctness. This includes the following:
    • Sort3AlphaDev sorts 3 elements with 17 instructions
    • Sort4AlphaDev sorts 4 elements with 28 instructions
    • Sort5AlphaDev sorts 5 elements with 43 instructions
    • Sort6AlphaDev sorts 6 elements with 57 instructions
    • Sort7AlphaDev sorts 7 elements with 76 instructions
    • Sort8AlphaDev sorts 8 elements with 91 instructions
    • VarSort3AlphaDev sorts up to 3 elements with 25 instructions
    • VarSort4AlphaDev sorts up to 4 elements with 57 instructions
    • VarSort5AlphaDev sorts up to 5 elements with 80 instructions

Installation

The code present in alphadev.py is pseudocode to simplify reproduction. As such, no installation is required for the pseudocode.

To test the discovered assembly programs, we need to install bazel and verify it builds correctly (we only support Linux with clang, but other platforms might work)

Usage

The alphadev.py contains logic for the RL environment, AlphaDev agent and the Assembly Game. The main components are:

  • AssemblyGame This represents the Assembly Game RL environment. The state of the RL environment contains the current program and the state of memory and registers. Doing a step in this environment is equivalent to adding a new assembly instruction to the program (see the step method). The reward is a combination of correctness and latency reward after executing the assembly program over an input distribution. For simplicity of the overall algorithm we are not including the assembly runner, but assembly execution can be delegated to an external library (e.g. AsmJit).
  • AlphaDevConfig contains the main hyperparameters used for the AlphaDev agent. This includes configuration of AlphaZero, MCTS, and underlying networks.
  • play_game contains the logic to run an AlphaDev game. This include the MCTS procedure and the storage of the game.
  • RepresentationNet and PredictionNet contain the implementation the networks used in the AlphaZero algorithm. It uses a MultiQuery Transformer to represent assembly instructions.

To run the assembly test in sort_functions_test.cc, use the following command: CC=clang bazel test :sort_functions_test

Citing this work

@Article{AlphaDev2023,
  author  = {Mankowitz, Daniel J. and Michi, Andrea and Zhernov, Anton and Gelmi, Marco and Selvi, Marco and Paduraru, Cosmin and Leurent, Edouard and Iqbal, Shariq and Lespiau, Jean-Baptiste and Ahern, Alex and Koppe, Thomas and Millikin, Kevin and Gaffney, Stephen and Elster, Sophie and Broshear, Jackson and Gamble, Chris and Milan, Kieran and Tung, Robert and Hwang, Minjae and Cemgil, Taylan and Barekatain, Mohammadamin and Li, Yujia and Mandhane, Amol and Hubert, Thomas and Schrittwieser, Julian and Hassabis, Demis and Kohli, Pushmeet and Riedmiller, Martin and Vinyals, Oriol and Silver, David},
  journal = {Nature},
  title   = {Faster sorting algorithms discovered using deep reinforcement learning},
  year    = {2023},
  volume  = {618},
  number  = {7964},
  pages   = {257--263},
  doi     = {10.1038/s41586-023-06004-9}
}

License and disclaimer

Copyright 2022 DeepMind Technologies Limited

All software is licensed under the Apache License, Version 2.0 (Apache 2.0); you may not use this file except in compliance with the Apache 2.0 license. You may obtain a copy of the Apache 2.0 license at: https://www.apache.org/licenses/LICENSE-2.0

All other materials are licensed under the Creative Commons Attribution 4.0 International License (CC-BY). You may obtain a copy of the CC-BY license at: https://creativecommons.org/licenses/by/4.0/legalcode

Unless required by applicable law or agreed to in writing, all software and materials distributed here under the Apache 2.0 or CC-BY licenses are distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the licenses for the specific language governing permissions and limitations under those licenses.

This is not an official Google product.

Nearby in the ranking
Similar items