Betsabe

From Chessprogramming wiki
Jump to: navigation, search

Home * Engines * Betsabe

Batsheba with King Davids Letter [1]

Betsabe II, (Betsabe, Betsabé II)
a Chess Engine Communication Protocol compliant open source chess engine under the GPL by Juan Benitez, written in C, with appropriate compiles able to run under Windows, Linux, Mac OS and Android platforms. Betsabe II is successor of Betsabe, which already played various Spanish Computer Chess Championships in the 90s, notably the SCCC 1993 where it became first Spanish Champion with a 100% score, and the SCCC 1994 as runner-up behind Zeus II. Betsabe was initially based on Dieter Steinwender's and Chrilly Donninger's program Minimax [2], but differences in search and evaluation are substantial.

Description

Board Representation

Betsabe II maintains a 10x12 board as internal board representation and to generate moves. Definition of (part of) the initial position [3]:

const int Tablero_Inicio[120] =  {
FUERA, FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA, FUERA,
FUERA, FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA, FUERA,
FUERA,  T_B,    C_B ,   A_B ,   D_B ,   R_B ,   A_B ,   C_B ,   T_B,  FUERA,
FUERA,  P_B,    P_B ,   P_B ,   P_B ,   P_B ,   P_B ,   P_B ,   P_B,  FUERA,
FUERA, VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO, FUERA,
FUERA, VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO, FUERA,
FUERA, VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO, FUERA,
FUERA, VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO,  VACIO, FUERA,
FUERA,  P_N ,   P_N ,   P_N ,   P_N ,   P_N ,   P_N ,   P_N ,   P_N,  FUERA,
FUERA,  T_N,    C_N ,   A_N ,   D_N ,   R_N ,   A_N ,   C_N ,   T_N,  FUERA,
FUERA, FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA, FUERA,
FUERA, FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA,  FUERA, FUERA};

Search

Betsabe II applies PVS with transposition table inside an iterative deepening fractional ply framework in conjunction with mate distance pruning, IID, adaptive null move pruning, LMR, razoring, futility pruning, SEE pruning in quiescence, and check- and capture extensions with transitions to pawn endings. Move ordering is enhanced by history- and killer heuristic with two ordinary killer moves and one mate killer per ply.

Evaluation

The evaluation might be lazy using material and piece-square tables with respect to bounds, and otherwise considers mobility, pawn structure, king safety and various piece terms.

Selected Games

SCCC 1999, round 7, Betsabe - Genesis [4]

[Event "SCCC 1999"]
[Site "Parets del Valles"]
[Date "29.12.99"]
[Round "7"]
[White "Betsabe"]
[Black "Genesis"]
[Result "1-0"]

1.d4 e6 2.e4 d5 3.Nc3 Bb4 4.e5 Bxc3+ 5.bxc3 c5 6.Qg4 g6 7.Nf3 f5 8.Qg5 Qc7 
9.Qd2 Nc6 10.Ba3 b6 11.Rb1 Bb7 12.Bd3 Nge7 13.O-O c4 14.Be2 h6 15.Rb2 Qd7 
16.Rfb1 g5 17.h3 O-O-O 18.Nh2 Ng6 19.Bd6 Nf4 20.Bf3 Qf7 21.Nf1 Rxd6 22.exd6 
Rh7 23.Ng3 Qd7 24.Ne2 Nxe2+ 25.Qxe2 Qxd6 26.a4 Re7 27.Ra1 e5 28.Qd2 e4 29.Bh5 
Na5 30.Rba2 f4 31.Re1 Kb8 32.Qc1 Ka8 33.Qb2 e3 34.Raa1 exf2+ 35.Kxf2 Qf6 
36.Rxe7 Qxe7 37.Re1 Qd7 38.Re8+ Bc8 39.Rf8 Qe6 40.Bg4 Qe3+ 41.Kf1 Kb7 42.Bxc8+ 
Kc7 43.Bg4 Nc6 44.Rc8+ Kb7 45.Rxc6 Kxc6 46.Qb5+ Kb7 47.Qxd5+ Kc7 48.Qd7+  
1-0

See also

Forum Posts

External Links

Chess Engine

Misc

References

  1. Willem Drost - Bathsheba holding King David's letter, 1654, Louvre Museum, Bathsheba from Wikipedia
  2. betsabe-II-109-ja-jm/readme.txt
  3. data.h
  4. Spanish Championship: Final Round by Sergio Martinez, CCC, December 29, 1999

Up one level