Skip to content

ppipelin/radiance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

144 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Radiance Engine

Build Status Latest Release License

Lichess classical rating Lichess rapid rating Lichess blitz rating Lichess bullet rating

⚡ Zig chess engine ⚡

Radiance Logo, courtesy of Jim Ablett

Move Generation and Ordering

Search

Evaluation

  • Tuned Piece-square Tables
  • AlphaZero Average Piece Values
  • Tapered Evaluation
  • Transposition Table Evaluation
  • Endgame Heuristics
  • Pawn Structures Heuristics
  • Bishop pair bonus
  • Mobility Bonus

Versions tournament

Time control: 120+1

CCRL blitz benchmark.

Rank Name CCRL Elo + - games score oppo. draws
1 radiance_4.2 1844 10 10 4096 81% 1594 22%
2 radiance_4.1 1674 1673 10 10 5371 65% 1489 18%
3 radiance_4.0.1 1514 8 8 12264 75% 1165 8%
4 radiance_3.5 1321 1256 8 7 10216 66% 1059 11%
5 radiance_3.4 1300 1232 8 8 10218 64% 1062 11%
6 radiance_3.3 1180 8 8 10216 59% 1068 11%
7 radiance_3.2 1169 8 7 10215 58% 1070 11%
8 radiance_3.1.1 1114 999 8 8 9552 45% 1049 9%
9 radiance_3.0.1 722 9 9 9552 20% 1084 9%
10 radiance_2.4 681 9 9 9552 16% 1089 10%
11 radiance_2.3 864 636 9 9 9552 13% 1095 9%

Getting started

Compile and run

zig build run -release=fast

Deploy

zig build deploy

Test

zig build test --release=safe

UCI options

Name Type Default value Valid values Description
Hash spin 256 [1, 65535] Memory allocated to the transposition table (in MB).
Threads spin 1 [1, 1] Number of threads used to search.
Evaluation combo "PSQ" ["PSQ", "Shannon", "Materialist"] Type of evaluation function.
Search combo "NegamaxAlphaBeta" ["NegamaxAlphaBeta", "Random"] Type of search function.
UCI_Chess960 check false ["true", "false"]

Commands

  • uci
  • isready
  • setoption name <id> [value <x>]
  • position [fen <string> | startpos | kiwi | lasker] [moves <string>...]
  • eval
  • go [movetime <int> | [wtime <int>] [btime <int>] [winc <int>] [binc <int>] | depth <int> | infinite | perft <int>]
  • bench
  • stop
  • quit
  • ucinewgame
  • d

Archive

This project was originaly written in C++ before 4.0 version and archived under the name radiance_archived.

Aknowledgments

  • Avalanche engine is a great example of how a zig project should be coded. Radiance engine still uses its pseudo random number generator (MIT License - Copyright (c) 2023 Yinuo Huang).
  • Stockfish with its aggressive pruning methods.
  • Chess Programming Wiki.

I'm radiant!

About

UCI Chess Engine written in Zig

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages