Arion chess engine

Auteur : Gabriel Guillory
Version actuelle :
1.7
Programmation : C++
Système : Windows
Arion is distributed free of charge, however, if you want to reward my work, please consider making a voluntary donation to Unicef

 

 

Présentation


Arion est un moteur de jeu d'échecs gratuit qui peut être utilisé sous Arena, Shredder Classic ou des produits chessbase tels que Fritz 7&8 . Bien que difficilement évaluable, son niveau de jeu doit probablement se situer autour de 2400 élos par rapport à des joueurs humains. Vous pouvez suivre les performances d'Arion sur le site du Fou numérique.


Arion is a free chess engine for common graphic user interfaces such as Arena, Shredder Classic or Fritz 8. Its stength is about 2300 elo, maybe more. Arion's performances and games are reported on the french web site "Fou numérique" and on other chess-engines site


Caractéristiques / main features

Heuristiques / Heuristics Fonctionnalités / Funtionalities
  • Negascout with aspiration

  • Transposition table

  • Perfect bitboard generator (see "perft" command in console)

  • MVV/LVA

  • Null move pruning

  • Futility pruning

  • Razoring

  • Iterative & internal iterative deepening

  • History table

  • Killer moves

  • Simple static exchange evaluator + full SEE

  • Lazy evaluation

  • Standard & non-standard extensions

  • Adaptive contempt factor

  • Enhanced Transposition Table

  • History pruning

  • UCI protocol complient (xboard is no more supported)

  • Average speed on Intel 2,8 Ghz : 750Kn/s

  • Adjustable HashTable (12Mo => 128Mo max)

  • Massive own book generator (see "newbk" command in console)

  • Massive EPD bench (see "bench" command in console)

  • PGN-Games analyzer (see "analyze" command in console)

  • Alpha-beta debugger (available only if arion is compiled in debug mode)

  • Pondering mode

 

Prochaines évolutions / next updates

  • aucune pour le moment / none

 

Tests EPD principaux / Main EPD bench

Bench 1 seconde sur Intel 2,8 Ghz

Bench Arion 1.00 Arion 1.1 Arion 1.2 Arion 1.3 Arion 1.4 Arion 1.5
BDT150 89/150 88/150 96/150 95/150 100/150 102/150
WACNEW 279/300 275/300 282/300 283/300 287/300 284/300

 

Meilleures parties / best games

 

 

Téléchargement / Download

Moteur / Engine Bibliothèque d'ouvertures / Book

Arion 1.7 (07-mars-2006)
Arion 1.6 (08-sept-2005) 

Arion 1.5 (24-juillet-2005)
Arion 1.42 (28-juin-2005)
Arion 1.4 (20-juin-2005)
Arion 1.3 (10-mars-2005)  
Arion 1.2 (01-mars-2005)
 
Arion 1.1 (20-dec-2004)

Arion 1.0 (13-dec-2004)

Use "newbk" command if you want to generate your own book !
Larger books can be generated with the same command

 

Conseils d'installation pour jouer contre Arion / How to play with Arion

  1. Téléchargez Arena à cette adresse et effectuez l'installation
    Arena est une interface graphique gratuite très fonctionnelle pour moteurs d'échecs Windows.

  2. Téléchargez et copier Arion dans un répertoire

  3. Lancez Arena et installez Arion dans le menu "Modules/Gérer"

  4. Jouez...

 

  1. Please download Arena here and launch the installation
    Arena is a powerfull graphic user interface for Windows chess engines

  2. Dowload Arion in a folder

  3. Launch Arena and configure Arion

  4. Play now...

 

 

Configurer un répertoire d'ouvertures sous Arena / How to install an opening book for Arena

 

  1. Vérifiez que vous avez bien une bibliothèque d'ouvertures (fichier ayant l'extension .abk) dans le répertoire d'Arena c:\Program Files\Arena\Books\. A défaut, vous pouvez vous procurer le mainbook v4.5 d'Harry Schnapp ici : http://www.playwitharena.com/

  2. Chargez la bibliothèque d'ouvertures en allant dans le menu "Biblio." puis "Gérer" ("Book" et "Manage" en anglais). La boite de dialogue ci-dessous apparaît alors.

  3. Chargez le fichier de la bibliothèque avec le bouton "ouvrir", cochez les 2 cases et validez en cliquant sur "ok"

  4. Allez ensuite dans le menu "Modules" puis "Gérer" ("engines" et "manage" en anglais).

  5. Dans l'onglet "détails" sélectionnez le moteur utilisant la bibliothèque (Arion par exemple) puis cliquez sur l'onglet 'bibliothèque" ("book" en anglais) dans la partie de droite.

  6. Sélectionnez alors le fichier de la bibliothèque (le même que celui déclaré précédemment) et cochez la case.

  7. Cliquez sur "OK" pour valider. Vous pouvez jouer maintenant...

 

  1. click on "book" then "manage"

  2. open the book file

  3. click on "ok"

  4. In "Engine" / "Manage", click on detail tab in order to configure engine parameters

  5. click on the book tab on the right and then open the book file

  6. click ok and exit

 

 

 

 

 

Mode sympa / fun mode

 

  • Si vous voulez réduire le niveau de jeu d'Arion, vous pouvez ajouter la commande fun à la ligne "Options ligne de commandes" dans le menu <Module> / <gérer> d'Arena. Arion tâchera alors d'ajuster dynamiquement sa force à votre niveau de jeu.

 

  • If you want to reduce the strength of Arion, you can add the command fun to the line "Command line" in the menu < engine >/< manage > of Arena. Arion will then try to dynamically adjust its strength on your level of play.

 

 

Historique du programme

Arion 1.7

- réduction

- autres réglages

 

Arion 1.6

- MAXGAMEMV passe de 512 à 1024
- ajout du bloc "orage de pions" dans l'évaluation
- implémentation mécanisme de strongmove (header + nullmove + evaluation).
- généralisation à la finale de l'extension de "recapture d'une capture"
- ajout de l'extension de transition vers la finale de pion

- implémentation du Enhanced Transposition cutoff
- petite amélioration du tri

- modif condition stand pat

- réécriture du critical pruning

- modif conditions d'échecs dans la quiescence

- correction d'un bug mineur dans genQmv

- implémentation de safeAttack

- modif dans h->threat

- modif extension poussée de pion passé

- modif valeur de DRAW et règle des 50 coups

- élimination d'un bug latent lors du pondering

- initialisation header simplifié pour la quiescence

- petit nettoyage
 

Arion 1.5

- rétablissement d'anciens poids matériels

- ajout d'un limiteur d'extensions

- ajout de "mauvais rapport matériel"

- modification sur les extensionss
- abandon du searchId dans le read de hashtable

- modification des conditions de nullmove

- modération de la table strat du roi dans evalKing :
- suppression de USE_THREATDETECT
- modifications dans l'évaluation
- suppression de l'extension de recapture simple (ext+=2)
- modif du stand pat :
- meilleure évaluation du meilleur pion passé en finale
- légère modif du critical pruning

 

Arion 1.42

- désactivation d'une ligne de débogage qui enregistrait continuellement le trafic UCI dans le fichier protocol.txt

- correction du mode pondering (dysfonctionnement sous Polyglot)

- modification de certaines extensions

- modification des valeurs de pièce

- élimination du message parasite "initial draw value = -40" sous FritzGUI

- modifications notables dans les extensions de recherche (gain de vitesse)

 

Arion 1.4

- nettoyage et etiquetage

- correction d'un bug d'initialisation h->prevMv

- correction d'un bug de tableau stratégique dans bPawnEv

- optimisation des extensions

- correction d'un bug dans les variables de profondeur

- modification du futility et du razoring

- ajout du tropisme

- correction de bugs d'évaluation Roi

- correction d'un bug d'incrément lié au compilateur

- ajout d'un cache de pion (fonctionnement similaire à une hashtable pour pions) => -5%

- ajout pions candidats

- modification tables stratégiques

- modification ratio de pièces

- ajout détection de tours ou dame clouées

- abandon du protocol XBOARD

- refonte du système d'aide (=> fichier help.man)

- correction d'un bug de signe présent dans la 1.3 qui rendait le TRAPPED_BISHOP attractif

- prise en compte de la gestion complète du HIGH_BND pour la hashtable

- modification du calcul des phases

- amélioration du fun mode

- implémentation du pondering

- diverses corrections concernant la gestion du book

- gain de vitesse

- autres modifications...

 

Arion 1.3
- ajout dans eval Queen et Rook de "menacée"
- meilleure lecture de PGN comprenant des sous-variantes pour la création du book
- ajout dans eval position de "Ratio de pièces"
- implémentatoin du FUNMODE
- amélioration du SEE simplifié : => -4%!

- ajout dans eval pawn de "si duo de pions passés"
- ajout dans eval position de "position bloquée"
- correction et simplification du calcul du contempt factor : CSearch::setDrawVal(void) {
- ajout dans eval pawn de "soutenu / attaqué par une tour par derrière
- modification de table middlegame et endgame de la dame

- ajustement valeur de TRAPPED_BISHOP
- modification et amélioration dans eval Rook de "attaque conjuguée avec une dame"
- ajout dans eval knight de "attaque conjuguée avec une dame"
- ajout dans eval King de "fou attaque cases faibles"
- rayon x sur dame dans eval Rook
- ajustement valeur paire de fous

- ajustement valeur pion doublé

- suppression "sur sortie d'échecs" dans la quiescence
 

Arion 1.2
- gain important de vitesse

- élimination de plusieurs bugs potentiellement dangereux

- suppression de données inutiles et nettoyage de warning

- implémentation de "futilité de recapture"

- tuning lié au temps et implémentation d'une fonction d'ajustement du temps de recherche

- optimisations de compilation, notamment pour les processeurs Pentium

- optimisation de l'extension de recapture

- meilleure prise en compte du protocole UCI (affichages)

- fonction d'analyse sous Arena et Shredder Classic

- option de redimensionnement dynamique de la hashtable

- implémentation du générateur de book gérant les transpositions
- adaptation et activation de la fonction d'analyse de parties
- amélioration de la lecture des PGN au niveau des roques.
- soutien de pion passé par le roi
- modification de la détermination de la valeur de nulle (contempt factor)
- système d'aide et de message multi-langues en mode console
- adaptations pour la compilation sous Intel C++. Gain => 12%

- amélioration du branching factor (tri)

- implémentation d'un SEE simplifié. Gain => 15%
- implémentation d'un Mutex pour plus de stabilité dans les "stop" (pb sinon en bench sous arena)
- nullmove : r=2 pour toutes les phases
- massive bench implémenté
- modifications et correction malus du pion du roi
- implémentation proximité de la dame par rapport au roi ennemi
- valeur Dame 1020 => 1000
- implémentation en début de quiescence des finales à très faible matériel (sauf R+p/R) et désactivation dans eval.
- modification malus sécurité du roi

Arion 1.1
- ajout "invasion du roi"
- ajout "soutien de pion passé par le roi"
- ajout "si roque envisageable"
- ajout "blocade & avant-poste cavalier"
- correction d'un léger bug concernant les killers-moves
- échecs dans la quiescence
- ajout "mobilité & clouage"
- modif. conditions de coupe beta précoce dans la quiescence
- modif. sortie d'échecs dans la quiescence
- correction de "progression vers le mat"
- élimination d'un affichage de débogage résiduel
- réorganisation des conditions de calcul des clés de hashage
- ajout "si aucune pièce amie proche" et "si aucune figure amie proche"
- ajout "si tour sur colonne ouverte proche roi ennemi"
- modif pondération des pions passés
- modif nulle par défaut de matériel

Arion 1.00
Version initiale

 

Bugs et commentaires

bal5[ AT ]club-internet.fr

 

Type         Name/pseudo