Welcome to Chess AI Arena

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 trillion possible 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
3 7
≤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
2nd Killer 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
α-β TT NMP LMR
~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.5 White 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
Alan Turing
Turochamp
Material counting Mobility King 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
Claude Shannon
Shannon's Framework
Piece values Pawn structure Doubled 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!

1960s SOMA Center control
1990s Simplified PST tables
2005 Fruit Outposts, mobility
2017 NNUE Neural 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.

Random Bot BOT
8765 4321
8765 4321
abcd efgh
You HUMAN

Promote Pawn

White Won

by checkmate

Moves
White to move

Build New Rule

Condition Click to choose
THEN
Target Click to choose
AWARD
Value Click to set

Your Rules (0)

No rules yet. Build one above!

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