Build your own chess evaluation function and watch it compete. No coding required — just drag, drop, and see your AI think.
Start
20
20
20
×20 moves
×20
×20
×20
each...
430 trillionpossible positions at depth 8
The Problem: Infinite Possibilities
Chess has ~20 moves per position. Looking 8 moves ahead means 20⁸ = 430 trillion positions. Even the fastest computer can't check them all.
MAX▲
MIN▼
MIN▼
+3
-1
+5
+2
The Solution: Minimax
We assume both players play perfectly. You maximize your score, your opponent minimizes it. By thinking ahead, we find the best move.
α ≥ 3
3
37
≤2
2??
Why check? Already worse!
Alpha-Beta Pruning
If we find a move that's already worse than one we've seen, we can stop exploring it. This cuts the search tree in half — or better!
430T → ~20 billion positions
e4 → e5 → Nf3
=
Nf3 → e5 → e4
Same position — cache it!
Transposition Table
Different move orders often reach the same position. We cache evaluations and never compute the same position twice.
~50% fewer evaluations
What if I just... pass?
✓Still winning!
→ Skip deep search here
Null Move Pruning
A clever trick: if doing nothing still leaves you winning, this position is probably good. No need to search every response deeply.
Prunes 80-90% of branches
1st×
Capture
2ndKiller move
Killer
...Quiet moves
Reduced
Good moves first = more cutoffs
Smart Move Ordering
We try promising moves first: captures, checks, and "killer" moves from similar positions. Boring moves get reduced depth.
2-3x more cutoffs
→
Capture in progress!
✗Stop here: "I'm winning!"
✓Keep searching captures
Quiescence Search
Never stop mid-action! If there's a capture or check happening, we keep searching until the position is "quiet" — no pieces hanging.
Prevents horizon effect
430 trillion
Naive search
α-βTTNMPLMR
~200K
With optimizations
2 billion× reduction
From Trillions to Thousands
Combined, these techniques reduce 430 trillion positions to just ~200,000 — searchable in under a second!
Now• • • • • • • •Depth 8
?Who's winning here?
We can't search to checkmate — that's 40+ moves away!
We need a way to estimate who's ahead.
The Missing Piece
Even with all these tricks, we can only search 8-10 moves deep. Games last 40+ moves! We need an evaluation function to estimate who's winning at any position.
vs
→
+2.5White is better
Material+Position+Safety+...
What is an Evaluation Function?
An eval takes a position and outputs a score. Positive = White is better, negative = Black is better. The higher the magnitude, the more one-sided.
1948
Alan Turing
Turochamp
Material countingMobilityKing safety
The First Chess Eval
Alan Turing wrote the first chess evaluation — by hand on paper! No computer could run it. He simulated each step manually. Simple but groundbreaking.
1950
Claude Shannon
Shannon's Framework
Piece valuesPawn structureDoubled pawns penalty
Shannon's Blueprint
The father of information theory designed a chess evaluation framework. His piece values (Queen=9, Rook=5, etc.) are still used today!
1960sSOMACenter control
1990sSimplifiedPST tables
2005FruitOutposts, mobility
2017NNUENeural networks
Decades of Evolution
Each era brought new ideas: piece-square tables, knight outposts, passed pawns, king tropism. Modern engines use neural networks trained on millions of games.
IF piece in center→+30 pts
IF pawn passed→+50 pts
IF king exposed→-40 pts
Your AI
Now Build Your Own!
The search is the same for everyone. The evaluation function is where you get creative! What matters in a chess position? You decide.
Chess AI Arena
Random BotBOT
87654321
87654321
abcdefgh
YouHUMAN
Promote Pawn
White Won
by checkmate
Moves
White to move
Blocks
Conditions
Targets
Values
Build New Rule
ConditionClick to choose
THEN
TargetClick to choose
AWARD
ValueClick to set
Your Rules (0)
No rules yet. Build one above!
Configure Block
Eval Leaderboard
Community-created evaluation functions ranked by ELO
—Total Evals
—Matches Played
—Top Ranked
#
Name
ELO
Games
W/D/L
Actions
Loading leaderboard...
How ELO is Calculated
1
Your eval plays multiple games against Stockfish at various skill levels (800-2600 ELO)
2
All games are played at depth 8 for consistency and fair comparison
3
ELO is calculated using standard Elo rating formulas based on expected vs actual results
Upload Evaluation Function
Share your eval with the community and see how it ranks!