Hi,
My name is Marco and i'm writing my first chess engine.
it's name is Vajolet and is named after the Vajolet towers, three italian mountain in dolomiti.
It will never be the strongest engine in the world due to my skill and his programming language c#.
After writing move generation, alphabeta search and a material count evalutation function i'm now writing a very basic time management function and a basic UCI interface.
The engine has not quiescence search, no hashtables , no magic bitboard and it's slow.
I need now to start testing the complete engine. I already tested the move generation code with a perft testsuite.
Where can i find a good testsuite?
where can i find some weak engine to test my engine against?
how can i estimate his ELO?
up to now I only know it has won a game against a chessmaster personalities rated 950, I haven't had the time to make any other test.
thank you all for your help
Vajolet Chess Engine
Moderators: hgm, Rebel, chrisw
-
- Posts: 3533
- Joined: Tue Jan 09, 2007 8:33 pm
- Location: Antalya, Turkey
Re: Vajolet Chess Engine
Hi Marco,elcabesa wrote:Hi,
My name is Marco and i'm writing my first chess engine.
it's name is Vajolet and is named after the Vajolet towers, three italian mountain in dolomiti.
It will never be the strongest engine in the world due to my skill and his programming language c#.
After writing move generation, alphabeta search and a material count evalutation function i'm now writing a very basic time management function and a basic UCI interface.
The engine has not quiescence search, no hashtables , no magic bitboard and it's slow.
I need now to start testing the complete engine. I already tested the move generation code with a perft testsuite.
Where can i find a good testsuite?
where can i find some weak engine to test my engine against?
how can i estimate his ELO?
up to now I only know it has won a game against a chessmaster personalities rated 950, I haven't had the time to make any other test.
thank you all for your help
I see your first post on this forum. Welcome in CTF.
You may choose some engines from Carlos' list.
http://www.talkchess.com/forum/viewtopic.php?t=34293
And then carry out engine matches on Arena or WinBoard.
I must state that I am no expert in writing engines.
Best,
hi, merhaba, hallo HT
-
- Posts: 2641
- Joined: Wed Mar 10, 2010 10:18 pm
- Location: Hamburg, Germany
- Full name: Srdja Matovic
Re: Vajolet Chess Engine
Hi Marco,
congratulations for the first engine.
Youd didnt post about move ordering. To speed alpha-beta search up you need good move ordering, i still use MVV-LVA, my next step will be to implement SEE.
What kind of Board presentation do you use?
How many nodes/second does Vajolet calculate?
Regards,
Srdja
congratulations for the first engine.
I like my engine to play against micromax, mscp and tscp, they support XBoard and the sourcecode is published.where can i find some weak engine to test my engine against?
Code: Select all
...and it's slow.
Youd didnt post about move ordering. To speed alpha-beta search up you need good move ordering, i still use MVV-LVA, my next step will be to implement SEE.
What kind of Board presentation do you use?
How many nodes/second does Vajolet calculate?
Regards,
Srdja
-
- Posts: 855
- Joined: Sun May 23, 2010 1:32 pm
Re: Vajolet Chess Engine
thank you for pointing me to the Carlos's list and for the warm welcome on CTF.
-
- Posts: 855
- Joined: Sun May 23, 2010 1:32 pm
Re: Vajolet Chess Engine
the first version of the engine is still not finished, I need to finish a UCI interface.
these are the vajolet implementation detail
language: c#, so i cant use intrinsic processor instruction for bitcounting etc.
board rappresentation: bitboard
move generation:
- lookup table for king, knight
- bitshift for pawn
- iteration for sliding pieces
the move generator konw how to make enpassant, promotion and castling
search algorithm: alphabeta, negamax frameword,, iterative deepening, PV for move ordering( I search the PV before all the other move, but the other moves are not ordered)
evalutation: piece counting
regarding speed, without castling code enabled i'm below 400kn/s, with castling enabled the speed goes <100kn/s( the engine give ok to castling after having calculated all the enemy attacked squares. I have to change this piece of code)
it looks slow to my eyes I'll enenche it, but first i need to write the uci interface, clean the code and refactor it
these are the vajolet implementation detail
language: c#, so i cant use intrinsic processor instruction for bitcounting etc.
board rappresentation: bitboard
move generation:
- lookup table for king, knight
- bitshift for pawn
- iteration for sliding pieces
the move generator konw how to make enpassant, promotion and castling
search algorithm: alphabeta, negamax frameword,, iterative deepening, PV for move ordering( I search the PV before all the other move, but the other moves are not ordered)
evalutation: piece counting
regarding speed, without castling code enabled i'm below 400kn/s, with castling enabled the speed goes <100kn/s( the engine give ok to castling after having calculated all the enemy attacked squares. I have to change this piece of code)
it looks slow to my eyes I'll enenche it, but first i need to write the uci interface, clean the code and refactor it
-
- Posts: 6640
- Joined: Thu Mar 09, 2006 4:21 am
Re: Vajolet Chess Engine
Hello Marco,
Welcome! You may find these test suites useful for tuning your engine's evaluation:
http://sites.google.com/site/strategict ... pd-testing
http://sites.google.com/site/strategict ... /downloads
Just go through the site to get some idea of how to set it up.
Best wishes,
Swami
Welcome! You may find these test suites useful for tuning your engine's evaluation:
http://sites.google.com/site/strategict ... pd-testing
http://sites.google.com/site/strategict ... /downloads
Just go through the site to get some idea of how to set it up.
Best wishes,
Swami
-
- Posts: 1728
- Joined: Sun Dec 13, 2009 6:09 pm
Re: Vajolet Chess Engine
Hi Marco,elcabesa wrote:thank you for pointing me to the Carlos's list and for the warm welcome on CTF.
It is always nice to have a new engine in the computer chess world.
Regards,
Carlos
PS: Let us know how it does on your tests against some of the engines of my rating list.
-
- Posts: 855
- Joined: Sun May 23, 2010 1:32 pm
Re: Vajolet Chess Engine
i think my first test will be against something like gringo1.49b or Xadreco 5.7, i hope I could win some game
-
- Posts: 855
- Joined: Sun May 23, 2010 1:32 pm
Re: Vajolet Chess Engine
I have tested my move generator against this testsuite
http://hem.passagen.se/maragor/perftsuite.epd
do yuo know any other testsuite, or this testsuite is enough to test a movegenerator?
http://hem.passagen.se/maragor/perftsuite.epd
do yuo know any other testsuite, or this testsuite is enough to test a movegenerator?
-
- Posts: 1728
- Joined: Sun Dec 13, 2009 6:09 pm
Re: Vajolet Chess Engine
Keep in mind that some engines of that list, especially the weakest are buggy.
For example looking at the weakest engines:
- Pos loses on time or by illegal moves sometimes.
- NSVChess losses on time frequently (at least at fast tc.)
- DeepDuke makes illegal moves (at least Arena does not recognize them as legal)
- Cpp1 loses here and then by illegal moves.
- Brutus RND is a randomizer version of Brutus (the "real" version is too strong.) It is the weakest, bug-free engine on my list.
etc.
Here you have some links that may help you to avoid those engines if you want:
http://www.talkchess.com/forum/viewtopic.php?t=33557
http://www.talkchess.com/forum/viewtopic.php?t=31754
For example looking at the weakest engines:
- Pos loses on time or by illegal moves sometimes.
- NSVChess losses on time frequently (at least at fast tc.)
- DeepDuke makes illegal moves (at least Arena does not recognize them as legal)
- Cpp1 loses here and then by illegal moves.
- Brutus RND is a randomizer version of Brutus (the "real" version is too strong.) It is the weakest, bug-free engine on my list.
etc.
Here you have some links that may help you to avoid those engines if you want:
http://www.talkchess.com/forum/viewtopic.php?t=33557
http://www.talkchess.com/forum/viewtopic.php?t=31754