43 lines
6.8 KiB
Markdown
43 lines
6.8 KiB
Markdown
![]() |
# Chess
|
|||
|
|
|||
|
Chess is an old board [game](game.md), perhaps most famous and popular among all board games in history. It is a complete information game that simulates a battle of two armies on a 64x64 board with different battle pieces. Chess has a world-wide competitive community and is considered an intellectual sport but is also a topic of active research (chess is unlikely to be ever solved due to its non-trivial rules combined with enormous state space size, Shannon estimated the number of possible games at 10^120) and programming (many chess engines, [AI](ai.md)s and frontends are being actively developed).
|
|||
|
|
|||
|
**At [LRS](lrs.md) we consider chess to be one of the best games**, if not the very best one, for the following reasons:
|
|||
|
|
|||
|
- It is just a great, interesting and deep game in which luck plays minimal role, skill is all that matters.
|
|||
|
- **It is [suckless](suckless.md)**, the rules are very simple, it can be implemented on simple 8bit computers and doesn't even require a computer to play. Chess masters don't even need a board to play (they can completely visualize it in memory), and in the end can in theory just play against himself in his head, achieving ultimate freedom: the only dependency of the game is one's brain, i.e. it becomes a [brain software](brain_software.md). Chess is extremely inexpensive, doesn't discriminate against poor people and will survive even the most extreme technological [collapse](collapse.md).
|
|||
|
- **No one owns chess**, the game is hundrends of years old and many books about it are also already in the [public domain](public_domain.md). It is extremely free.
|
|||
|
- It is a basis for other derived games, for example many different chess variants or chess puzzles which can be considered a "singleplayer chess game".
|
|||
|
- It is a source of many interesting mathematical and programming challenges.
|
|||
|
|
|||
|
## Chess in General
|
|||
|
|
|||
|
Chess evolved from ancient board games in India in about 6th century. Nowadays the game is internationally governed by **FIDE** which has taken the role of defining the rules: FIDE rules are considered to be the standard chess rules. FIDE also organizes tournaments, promotes the game and keeps a list of registered player whose performance it rates with so called Elo system – based on the performance it also grants titles such as **Grandmaster** (GM, strongest), **Internation Master** (IM, second strongest) or **Candidate Master** (CM).
|
|||
|
|
|||
|
**Elo rating** is a mathematical system of numerically rating the performance of players and is used in many sports, not just chess. Given two players with Elo rating it is possible to compute the probability of the game's outcome (e.g. white has 70% chance of winning etc.). The FIDE set the parameters so that the rating is roughly this: < 1000: beginner, 1000-2000: intermediate, 2000-3000: master.
|
|||
|
|
|||
|
The rules of chess are quite simple and can be found anywhere on the Internet. In short, the game is played on a 64x64 board by two players: one with **white** pieces, one with **black**. Each piece has a way of moving and capturing (eliminating) enemy pieces, for example bishops move diagonally while pawns move one square forward and take diagonally. The goal is to **checkmate** the opponent's king, i.e. make the king attacked by a piece while giving him no way to escape this attack. There are also lesser known rules that noobs often miss and ignore, e.g. so called en-passant or the 50 move rule that declares a draw if there has been no significant move for 50 moves.
|
|||
|
|
|||
|
At the competitive level **clock** (so called *time control*) is used to give each player a limited time for making moves: with unlimited move time games would be painfully long and more a test of patience than skill. Clock can also nicely help balance unequal opponent by giving the stronger player less time to move. Based on the amount of time to move there exist several formats, most notably **correspondence** (slowest, days for a move), **classical** (slow, hours per game), **rapid** (faster, tens of minutes per game), **blitz** (fast, a few seconds per move) and **bullet** (fastest, units of seconds per move).
|
|||
|
|
|||
|
Currently the best player in the world is pretty clearly Magnus Carlsen from Norway with Elo rating 2800+.
|
|||
|
|
|||
|
During covid chess has experienced boom among normies and [YouTube](youtube.md) chess channels have gained considerable popularity.
|
|||
|
|
|||
|
## Chess and Computers
|
|||
|
|
|||
|
{[This](https://www.youtube.com/watch?v=DpXy041BIlA) is an absolutely amazing video about weird chess algorithms :) ~drummyfish}
|
|||
|
|
|||
|
Chess have a very strong relationship with computers, computers help people play chess, train their skills but also analyze positions, create and search game databases and find new play styles. The game also provides a nice framework for machine learning.
|
|||
|
|
|||
|
There is a great online Wiki focused on programming chess engines: https://www.chessprogramming.org.
|
|||
|
|
|||
|
Chess programs are usually separated to **chess engines** and **frontends** (or boards). Chess engine is typically a [CLI](cli.md) program capable of playing chess but also doing other things such as evaluating arbitrary position, hinting best moves, saving and loading games etc. Frontends on the other hand are [GUI](gui.md) programs that help people interact with the underlying engine.
|
|||
|
|
|||
|
For communication between different engines and frontends there exist standards such as XBoard (engine protocol), UCI (another engine protocol), FEN (way of encoding a position as a string) etc.
|
|||
|
|
|||
|
Computers have already surpassed the best humans in their strength (we can't exactly compute an engine's Elo as it depends on hardware used, but generally the strongest would rate high above 3000). As of 2021 the strongest chess engine is considered to be the [FOSS](foss.md) engine [Stockfish](stockfish.md), with other strong engines being e.g. Leela Chess Zero (also FOSS) or AlphaZero ([proprietary](proprietary.md), by [Google](google.md)). [GNU Chess](gnu_chess.md) is a reasonably strong [free software](free_software.md) engine by [GNU](gnu.md). There are world championships for chess engines such as the *Top Chess Engine Championship* or *World Computer Chess Championship*. [CCRL](https://ccrl.chessdom.com/ccrl/4040/) is a list of chess engines along with their Elo ratings. Despite the immense strength of modern engines, there are still very specific situation in which humans beat the computer (shown e.g. in [this](https://www.youtube.com/watch?v=R9IZWgArWUE) video).
|
|||
|
|
|||
|
The first chess computer that beat the world champion (at the time Gary Kasparov) was famously [Deep Blue](deep_blue.md) in 1997.
|
|||
|
|
|||
|
For online chess there exist many servers such as https://chess.com or https://chess24.com, but for us the most important is https://lichess.org which is gratis and uses [FOSS](foss.md). These servers rate players with Elo, allow them to play with each other or against computer, solve puzzles, analyze games, play chess variants, explore opening databases etc.
|