Leela Zero

Last updated
Original author(s) Gian-Carlo Pascutto
Developer(s) Gian-Carlo Pascutto
Initial release25 October 2017;6 years ago (2017-10-25)
Final release
0.17 / 4 April 2019;5 years ago (2019-04-04)
Repository
Written in C++
Type Go software
License GPL-3.0
Website zero.sjeng.org

Leela Zero is a free and open-source computer Go program released on 25 October 2017. It is developed by Belgian programmer Gian-Carlo Pascutto, [1] [2] [3] the author of chess engine Sjeng and Go engine Leela. [4] [5]

Contents

Leela Zero's algorithm is based on DeepMind's 2017 paper about AlphaGo Zero. [3] [6] Unlike the original Leela, which has a lot of human knowledge and heuristics programmed into it, the program code in Leela Zero only knows the basic rules and nothing more. The knowledge that makes Leela Zero a strong player is contained in a neural network, which is trained based on the results of previous games that the program played. [7]

Leela Zero is trained by a distributed effort, which is coordinated at the Leela Zero website. Members of the community provide computing resources by running the client, which generates self-play games and submits them to the server. The self-play games are used to train newer networks. Generally, over 500 clients have connected to the server to contribute resources. [7] The community has provided high quality code contributions as well. [7]

Version history

Leela Zero finished third at the BerryGenomics Cup World AI Go Tournament in Fuzhou, Fujian, China on 28 April 2018. [8] The New Yorker at the end of 2018 characterized Leela and Leela Zero as "the world’s most successful open-source Go engines". [9]

In early 2018, another team branched Leela Chess Zero from the same code base, also to verify the methods in the AlphaZero paper as applied to the game of chess. AlphaZero's use of Google TPUs was replaced by a crowd-sourcing infrastructure and the ability to use graphics card GPUs via the OpenCL library. Even so, it is expected to take a year of crowd-sourced training to make up for the dozen hours that AlphaZero was allowed to train for its chess match in the paper. [10]

The distributed training server was shut down on 2021-02-15, marking the end of Leela Zero project. The page now directs visitors to KataGo and SAI [11] .

The model sizes increased steadily over time. The first released model has hash name d645af97, size 1x8 (1 layer, 8 channels), and released at 2017-11-10 13:04. The last released model has hash name 0e9ea880, size 40x256, and was released at 2021-02-15 09:04. [12]

Technology

Leela Zero is an (almost) exact replication of AlphaGo Zero in both training process and architecture. [13]

The training process is Monte-Carlo Tree Search with self-play, exactly the same as AlphaGo Zero.

The architecture is the same as AlphaGo Zero (with one difference). Consider the last released model, 0e9ea880. It has 47 million parameters, and the following architecture: [14] [6]

Related Research Articles

<span class="mw-page-title-main">Computer chess</span> Computer hardware and software capable of playing chess

Computer chess includes both hardware and software capable of playing chess. Computer chess provides opportunities for players to practice even in the absence of human opponents, and also provides opportunities for analysis, entertainment and training. Computer chess applications that play at the level of a chess grandmaster or higher are available on hardware from supercomputers to smart phones. Standalone chess-playing machines are also available. Stockfish, Leela Chess Zero, GNU Chess, Fruit, and other free open source applications are available for various platforms.

<span class="mw-page-title-main">Evaluation function</span> Function in a computer game-playing program that evaluates a game position

An evaluation function, also known as a heuristic evaluation function or static evaluation function, is a function used by game-playing computer programs to estimate the value or goodness of a position in a game tree. Most of the time, the value is either a real number or a quantized integer, often in nths of the value of a playing piece such as a stone in go or a pawn in chess, where n may be tenths, hundredths or other convenient fraction, but sometimes, the value is an array of three values in the unit interval, representing the win, draw, and loss percentages of the position.

<span class="mw-page-title-main">Computer Go</span> Field of artificial intelligence around Go computer programs

Computer Go is the field of artificial intelligence (AI) dedicated to creating a computer program that plays the traditional board game Go. The field is sharply divided into two eras. Before 2015, the programs of the era were weak. The best efforts of the 1980s and 1990s produced only AIs that could be defeated by beginners, and AIs of the early 2000s were intermediate level at best. Professionals could defeat these programs even given handicaps of 10+ stones in favor of the AI. Many of the algorithms such as alpha-beta minimax that performed well as AIs for checkers and chess fell apart on Go's 19x19 board, as there were too many branching possibilities to consider. Creation of a human professional quality program with the techniques and hardware of the time was out of reach. Some AI researchers speculated that the problem was unsolvable without creation of human-like AI.

<span class="mw-page-title-main">Anti-computer tactics</span> Human methods against game-playing computers

Anti-computer tactics are methods used by humans to try to beat computer opponents at various games, most typically board games such as chess and Arimaa. They are most associated with competitions against computer AIs that are playing to their utmost to win, rather than AIs merely programmed to be an interesting challenge that can be given intentional weaknesses and quirks by the programmer. Such tactics are most associated with the era when AIs searched a game tree with an evaluation function looking for promising moves, often with Alpha–beta pruning or other minimax algorithms used to narrow the search. Against such algorithms, a common tactic is to play conservatively aiming for a long-term advantage. The theory is that this advantage will manifest slowly enough that the computer is unable to notice in its search, and the computer won't play around the threat correctly. This may result in, for example, a subtle advantage that eventually turns into a winning chess endgame with a passed pawn.

<span class="mw-page-title-main">Sjeng (software)</span>

Sjeng is a chess engine written by Gian-Carlo Pascutto based on Faile, written by Adrien Regimbald. There are two major versions of Sjeng: the original open source version called Sjeng and Deep Sjeng, a closed source commercial version.

<span class="mw-page-title-main">Stockfish (chess)</span> Free and open-source chess engine

Stockfish is a free and open-source chess engine, available for various desktop and mobile platforms. It can be used in chess software through the Universal Chess Interface.

In computer science, Monte Carlo tree search (MCTS) is a heuristic search algorithm for some kinds of decision processes, most notably those employed in software that plays board games. In that context MCTS is used to solve the game tree.

Google DeepMind Technologies Limited is a British-American artificial intelligence research laboratory which serves as a subsidiary of Google. Founded in the UK in 2010, it was acquired by Google in 2014 and merged with Google AI's Google Brain division to become Google DeepMind in April 2023. The company is based in London, with research centres in Canada, France, Germany, and the United States.

AlphaGo is a computer program that plays the board game Go. It was developed by the London-based DeepMind Technologies, an acquired subsidiary of Google. Subsequent versions of AlphaGo became increasingly powerful, including a version that competed under the name Master. After retiring from competitive play, AlphaGo Master was succeeded by an even more powerful version known as AlphaGo Zero, which was completely self-taught without learning from human games. AlphaGo Zero was then generalized into a program known as AlphaZero, which played additional games, including chess and shogi. AlphaZero has in turn been succeeded by a program known as MuZero which learns without being taught the rules.

Darkforest is a computer go program developed by Meta Platforms, based on deep learning techniques using a convolutional neural network. Its updated version Darkfores2 combines the techniques of its predecessor with Monte Carlo tree search. The MCTS effectively takes tree search methods commonly seen in computer chess programs and randomizes them. With the update, the system is known as Darkfmcts3.

Master is a version of DeepMind's Go software AlphaGo, named after the account name used online, which won 60 straight online games against human professional Go players from 29 December 2016 to 4 January 2017. This version was also used in the Future of Go Summit in May 2017. It used four TPUs on a single machine with Elo rating 4,858. DeepMind claimed that AlphaGo Master was 3-stone stronger than the version used in AlphaGo v. Lee Sedol.

AlphaGo versus Ke Jie was a three-game Go match between the computer Go program AlphaGo Master and current world No. 1 ranking player Ke Jie, being part of the Future of Go Summit in Wuzhen, China, played on 23, 25, and 27 May 2017. AlphaGo defeated Ke Jie in all three games.

AlphaGo Zero is a version of DeepMind's Go software AlphaGo. AlphaGo's team published an article in the journal Nature on 19 October 2017, introducing AlphaGo Zero, a version created without using data from human games, and stronger than any previous version. By playing games against itself, AlphaGo Zero surpassed the strength of AlphaGo Lee in three days by winning 100 games to 0, reached the level of AlphaGo Master in 21 days, and exceeded all the old versions in 40 days.

AlphaGo versus Fan Hui was a five-game Go match between European champion Fan Hui, a 2-dan professional, and AlphaGo, a computer Go program developed by DeepMind, held at DeepMind's headquarters in London in October 2015. AlphaGo won all five games. This was the first time a computer Go program had beaten a professional human player on a full-sized board without handicap. This match was not disclosed to the public until 27 January 2016 to coincide with the publication of a paper in the journal Nature describing the algorithms AlphaGo used.

<span class="mw-page-title-main">Leela (software)</span>

Leela is a computer Go software developed by Belgian programmer Gian-Carlo Pascutto, the author of chess engine Sjeng. It won the third place for 19x19 board Go and the second place for 9x9 board Go at the Computer Olympiad in 2008, and won the eighth place in the 1st World AI Go Tournament in August 2017. According to its website, it has "Strength over 9 dan on 19 x 19, depending on hardware". The program was named "Leela" because the author wanted a pleasant female name that contrasted with the prevailing style at the time, typified by names like "Shredder", "Tiger", and "Rebel".

<span class="mw-page-title-main">AlphaZero</span> Game-playing artificial intelligence

AlphaZero is a computer program developed by artificial intelligence research company DeepMind to master the games of chess, shogi and go. This algorithm uses an approach similar to AlphaGo Zero.

Gian-Carlo Pascutto is a Belgian computer programmer. He is the author of the chess engine Sjeng and Go software Leela, and the original author of the free and open-source Go software Leela Zero. Gian-Carlo also authored many core components of the foobar2000 media player.

<span class="mw-page-title-main">Leela Chess Zero</span> Deep neural network-based chess engine

Leela Chess Zero is a free, open-source, and deep neural network–based chess engine and volunteer computing project. Development has been spearheaded by programmer Gary Linscott, who is also a developer for the Stockfish chess engine. Leela Chess Zero was adapted from the Leela Zero Go engine, which in turn was based on Google's AlphaGo Zero project. One of the purposes of Leela Chess Zero was to verify the methods in the AlphaZero paper as applied to the game of chess.

<span class="mw-page-title-main">MuZero</span> Game-playing artificial intelligence

MuZero is a computer program developed by artificial intelligence research company DeepMind to master games without knowing their rules. Its release in 2019 included benchmarks of its performance in go, chess, shogi, and a standard suite of Atari games. The algorithm uses an approach similar to AlphaZero. It matched AlphaZero's performance in chess and shogi, improved on its performance in Go, and improved on the state of the art in mastering a suite of 57 Atari games, a visually-complex domain.

KataGo is a free and open-source computer Go program, capable of defeating top-level human players. First released on 27 February 2019, it is developed by David Wu, who also developed the Arimaa playing program bot_Sharp which defeated three top human players to win the Arimaa AI Challenge in 2015.

References

  1. "Feature: One man's Go program looks to remake AlphaGo Zero - and beyond". Xinhuanet. 9 April 2018. Archived from the original on April 9, 2018. Retrieved 28 April 2018.
  2. "围棋AI"丽拉"获赞接近职业棋手水准,它的作者竟是一个不太会下棋的程序员" (in Chinese). Xinhuanet. 5 February 2018. Archived from the original on 11 February 2018. Retrieved 27 April 2018.
  3. 1 2 "更开放,更共享,比利时围棋AI"丽拉·元"重塑"阿尔法元"" (in Chinese). Xinhuanet. 8 April 2018. Archived from the original on April 9, 2018. Retrieved 27 April 2018.
  4. "프로 수준급 인공지능 바둑 프로그램 '릴라(Leela)' 무료 공개" (in Korean). Baduk News. 23 February 2017. Archived from the original on 6 July 2018. Retrieved 27 April 2018.
  5. "릴라의 출현과 온라인 대국의 비극적인 종말..." (in Korean). Cyberoro. 3 March 2017. Retrieved 27 April 2018.
  6. 1 2 "leela-zero". GitHub . Retrieved 27 April 2018.
  7. 1 2 3 "Gian-Carlo Pascutto - The man behind LeelaZero". European Go Federation. 24 May 2018. Retrieved 27 May 2018.
  8. "世界AI大赛决赛腾讯内战 凤凰2-1绝艺夺冠" (in Chinese). sina.com.cn. 28 April 2018. Retrieved 28 April 2018.
  9. "How the Artificial-Intelligence Program AlphaZero Mastered Its Games". The New Yorker . 2018. Retrieved 31 December 2018.
  10. Silver, Albert (26 April 2018). "Leela Chess Zero: AlphaZero for the PC". Chess News. Retrieved 11 June 2018.
  11. Morandin, Francesco; Amato, Gianluca; Fantozzi, Marco; Gini, Rosa; Metta, Carlo; Parton, Maurizio (2019-11-26), SAI: a Sensible Artificial Intelligence that plays with handicap and targets high scores in 9x9 Go (extended version), doi:10.48550/arXiv.1905.10863 , retrieved 2024-09-21
  12. "Leela Zero". zero.sjeng.org. Retrieved 2024-09-21.
  13. Silver, David; Schrittwieser, Julian; Simonyan, Karen; Antonoglou, Ioannis; Huang, Aja; Guez, Arthur; Hubert, Thomas; Baker, Lucas; Lai, Matthew; Bolton, Adrian; Chen, Yutian; Lillicrap, Timothy; Fan, Hui; Sifre, Laurent; Driessche, George van den; Graepel, Thore; Hassabis, Demis (19 October 2017). "Mastering the game of Go without human knowledge" (PDF). Nature . 550 (7676): 354–359. Bibcode:2017Natur.550..354S. doi:10.1038/nature24270. ISSN   0028-0836. PMID   29052630. S2CID   205261034. Archived (PDF) from the original on 18 July 2018. Retrieved 2 September 2019. Closed Access logo transparent.svg
  14. Du, Haoxing (2023-03-01). "Inside the mind of a superhuman Go model: How does Leela Zero read ladders?".