Skip to content

ratosh/pirarucu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

987dd02 · Jun 20, 2020
Nov 18, 2018
Mar 7, 2020
Mar 7, 2020
Jun 20, 2020
Jun 20, 2020
Jun 20, 2020
Mar 9, 2019
May 26, 2019
Apr 26, 2018
Feb 23, 2018
Sep 13, 2019
Mar 7, 2020
Mar 9, 2018
Jun 20, 2020
Feb 25, 2018
Feb 25, 2018
Mar 7, 2020

Repository files navigation

Build Status

Pirarucu

A Kotlin Chess Engine with Universal Chess Interface protocol support and more than 3000 CCRL Rating.

Results

Concepts

  • Color represents chess colors.
  • Piece represents chess piece type.
  • Bitboard represents a board (each signed bit indicates a piece on that location).
  • Square represents a board position square index.
  • File represents a board file index.
  • Rank represents a board rank index.

Features

  • Bitboard representation
  • Magic bitboard
  • Transposition table
  • Static Exchange Evaluation
  • Quiescence search
  • Alpha-beta search
    • Aspiration window
    • Interactive deepening
    • Null move reduction
    • Razoring pruning
    • Futility pruning
    • Late Move Reduction
    • Late move pruning
    • History futility pruning
  • Evaluation
    • Material value
    • Piece square table
    • Tapered evaluation
    • Mobility
    • Pawn evaluation
    • Passed pawn evaluation
    • King safety
    • Safe check
  • Move Ordering
    • Most value victim / Lowest Value Attacker
    • Killer moves
    • Butterfly history
  • Multi Thread

How to use

Requirements

The engine runs on JRE (Java Runtime Environment) version 8 and above.

Running

  • Download the latest release.
  • Uncompress the downloaded file in a empty directory.
  • Run the bash file in bin directory.

Compatible Interfaces

Contributions

You are welcome to contribute, please follow the instructions.

Appreciation

  • To all who share ideas and/or code, without this huge resource I would not be able to make such strong engine.
  • To all who tested Pirarucu, especially to all CCRL team who are constantly testing several engines (including several versions of Pirarucu).
  • To Andrew Grant for developing OpenBench, a great open source tool to test and track progress of chess engines. I started using it just after v2.2.2 release and recommend it for every author.
  • To all who shared their computer power with the Pirarucu OpenBench instance.

Author

  • Raoni Campos

Supported By