Saturday, July 02, 2011

Move tree

Move tree

La recherche par "iterative deepening" s'est transformée en une class "MoveTree". Et depuis, je n'ai plus blogué car j'ai amélioré cette classe, avec une moyenne d'un commit par jour. Je me suis aussi amusé avec GraphViz, FicsBot et... Google+.

Bref je suis toujours dessus !

Voici ce que donne un arbre de recherche avec GraphViz.

Performances

J'avais oublié de vous dire dans le post précédant qu'en utilisant la nouvelle technique de vérification des mouvements légaux, j'ai divisé par 3 le temps qu'il met à générer les mouvements légaux ! Mais c'est encore lent, puisqu'en générant tous les mouvements sans pruner les mouvements non légaux je divise par 7 le temps qu'il lui faut ! J'ai encore de la marge....

Je fais donc perft 4 en 1m09 au lieu de 3m14 (alors que n'importe quel moteur le fait en moins d'une demi seconde). Et j'ai gagné 20% de temps avec la nouvelle façon de générer les captures.

Mais le moteur est encore trèèès lent. Et c'est bien cela occupe mon temps en ce moment.

La suite

- optimize moves generation to go to full depth 2
- know where the time is spent (quiesce?)
- do not prunes tactical moves
- 3 repetition rule with hash table
- Finish LMR
- opening book
- Setup a match routine between different versions of MyTeacher to see ELO improvements ! :)
- use mongodb for persistent Hash table ?
- FICS interface

No comments: