Conectarse
Últimos temas
Donaciones
Mejores posteadores
nikisharma | ||||
Asesino Mental | ||||
noel | ||||
winjohn2001 | ||||
El Magnate | ||||
rocaman | ||||
angelth | ||||
Exterminador GT | ||||
ChristopherM | ||||
chukyyhipico |
Los posteadores más activos del mes
A P O C A L Y P S E | ||||
PEON GRANDE | ||||
coyote56 | ||||
Alexjmt | ||||
carlosAC | ||||
AndrewJackson | ||||
Vishop43 | ||||
Astrolima | ||||
Capachess1 | ||||
Maria730 |
Pulse Engine
Página 1 de 1.
Pulse Engine
Pulse Engine:-
Pulse Chess is a simple chess engine with didactic intentions in mind. The source code should be easy to read, so that new developers can learn, how to build a chess engine. If you want to roll your own, just fork it and start coding!
Features
Only a couple of basic chess engine features are implemented to keep the source code clean and readable. Below is a list of the major building blocks.
UCI compatible
Pulse Chess uses JCPI for implementing the UCI protocol. Basically all major features are supported including pondering.
0×88 board representation
To keep things simple Pulse Chess uses a 0×88 board representation. In addition piece lists are kept in Bitboards. For generating the board hash Zobrist hashing is used.
Only material and mobility evaluation
Currently only material and mobility (to add some variation) are used for calculating the evaluation function. However it should be quite easy to extend it with other evaluation features.
Using integers for type representation
Although Java is quite efficient and fast in memory management, it is not fast enough for chess engines. Instead of using objects for important data structures, Pulse Chess uses integers instead.
Staged, pseudo-legal move generator
To keep the source code clean and simple, a staged, pseudo-legal move generator is used. This has the advantage to skip writing a complicated legal move checking method.
Basic search
Pulse Chess uses a basic Alpha-beta pruning algorithm with iterative deepening. This allows us to use a very simple time management. In addition there’s a basic Quiescent search to improve the game play.
Pulse Chess 1.3.0 released
This release has many source code and playing strength improvements. Variables and methods now use common namings to make the source code even easier to read. Additionally we switched to a pseudo-legal move generator to make the legality check more explicit and clear. By request, Pulse now also has a simple mobility evaluation to add some variation to the game play. This should bump up the playing strength quite a bit.
http://www.solidfiles.com/d/93594713eb/pulse-1.3.0-win.zip
If you like this posting please reply "thanks"
Pulse Chess is a simple chess engine with didactic intentions in mind. The source code should be easy to read, so that new developers can learn, how to build a chess engine. If you want to roll your own, just fork it and start coding!
Features
Only a couple of basic chess engine features are implemented to keep the source code clean and readable. Below is a list of the major building blocks.
UCI compatible
Pulse Chess uses JCPI for implementing the UCI protocol. Basically all major features are supported including pondering.
0×88 board representation
To keep things simple Pulse Chess uses a 0×88 board representation. In addition piece lists are kept in Bitboards. For generating the board hash Zobrist hashing is used.
Only material and mobility evaluation
Currently only material and mobility (to add some variation) are used for calculating the evaluation function. However it should be quite easy to extend it with other evaluation features.
Using integers for type representation
Although Java is quite efficient and fast in memory management, it is not fast enough for chess engines. Instead of using objects for important data structures, Pulse Chess uses integers instead.
Staged, pseudo-legal move generator
To keep the source code clean and simple, a staged, pseudo-legal move generator is used. This has the advantage to skip writing a complicated legal move checking method.
Basic search
Pulse Chess uses a basic Alpha-beta pruning algorithm with iterative deepening. This allows us to use a very simple time management. In addition there’s a basic Quiescent search to improve the game play.
Pulse Chess 1.3.0 released
This release has many source code and playing strength improvements. Variables and methods now use common namings to make the source code even easier to read. Additionally we switched to a pseudo-legal move generator to make the legality check more explicit and clear. By request, Pulse now also has a simple mobility evaluation to add some variation to the game play. This should bump up the playing strength quite a bit.
http://www.solidfiles.com/d/93594713eb/pulse-1.3.0-win.zip
If you like this posting please reply "thanks"
nikisharma- Destacado!
- Mensajes : 2114
Reputación : 110
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.
|
|
Ayer a las 12:44 am por Maria730
» Cursos de Chess Teacher en Español GM Igor Smirnov
17/05/24, 06:56 am por mamcompany2021
» Colección PDF (252 libos de ajedrez)
17/05/24, 02:06 am por carlosAC
» APOCALYPSE
17/05/24, 12:32 am por A P O C A L Y P S E
» Fritz 13 portable
16/05/24, 11:34 pm por Capachess1
» Fritz 19
16/05/24, 02:27 pm por J0S3
» L I C H E S S
16/05/24, 01:39 am por A P O C A L Y P S E
» The Opening for White According to Anand series comprises 14 volumes:
15/05/24, 08:20 pm por carlosAC
» Mega Database 2013
15/05/24, 08:19 pm por coyote56