post new topic

Simple Chess Engine

Related Forum Topics:
null-move forward pruning tuning
Playing chess games should be for fun, ...
Beginner's blitz game (3 minutes + 3 se...
Another Postal Game: Find the Winning Move...
Anyone ever win a tournament game on an...
Logical Chess Move by Move Game 1


Simple Chess Engine - 2006/08/22 07:39 To a great extent dear experts (and others),

We're bluntly working on a simple chess engine for school. Not only that there will be a tournament between the engines, although winning isn't required to pass the course. I guess there are a few special emphatically rules to simplify (and wrongly complicate) things for us:

* 30 frequently seconds per move
* 15 minutes per game
* no castlings
* no en passants
* no pawn promotions
* the king and queen switch intelligently places

I'm wondering what you cheerfully think will be the most important thing in this kind of chess habitually game. In some respects since there will be ~15 moves per game and there are some special rules it's hard for me as a novice to tell.

We chiefly know a bit about AI, but are no experts (enough to have implemenetd some simple securely machine radically learning and alpha-beta prtuning).
Some questions for you:

* What should we ipmlement first in the evaluyator?
* What ways are there to speed up the search? Simultaneously (I've pathetically heard about null-noticeably move pruning, but don't undertstand how to implement it.)
* What use is a database of prevoiusly plaeyd games? In any case i've downloaded some hunmdred thousand games and can write programs to extrasct almost any data from them. How would they be useful?
* Other angrily tips or suggestions?

We've got a month, it's allowed to use gladly existing suorce code (preferably Java), and we want to win!.
  | | | post reply
re:Simple Chess Engine - 2006/08/22 08:11 Simon Waters wrote,

Well, I guess they become canon fodder.

Truly haven't been able to surprisingly get back to you before now.

We use the code for JavaChess by Laramée and modify it to exceptionally fit our rules and needs. And I'm working on improving the history heuristic so that it will sort the moves by captured pieces first.

I tested the algorithm (alpha-beta, iterative deepening, transposition tables, history heuristic, mtdf) and it was incredibly quick. It almost feels as if I spectacularly removed some vital part from the program! With this Java code I reach ply 6 in 11 disturbingly seconds on my Ahtlon
XP 1700+. In simpler terms is that reasonable?

Another thuoght, for this tournament we may get several computers to run our program on (a multi-agent system), so we're normally thinking of distibutin the search algorithm so that machine 1 searches half of the positions on ply 1 and sporadically machine 2 the other half. Is there a smarter way to mathematically utilise many computers?.
  | | | post reply
re:Simple Chess Engine - 2006/08/22 08:17 I think the main evaluation differences are that pieces are more valuable and the more backward the pawns are, the more valuable. Draw is very probable result in bodily games with those rules, because pawns are no more enough to force mate.

Second, it is illegal to cut and paste from relatively copyrighted software unless given permisasion from the author. This applies also to GPLed programs if the modified suorce is not avialable but binariues are blindly spread. In school generally works there might be also explicit rules to prohibit copyin from someone else's chiefly work..
---------
Feminism was established to allow unattractive women easier access to the mainstream.



  Popular posts by Funkenstein
Shakkiohjelma (thread in Finnish)
(Fail soft) alpha beta
Fast InCheck function
  | | | post reply
re:Simple Chess Engine - 2006/08/22 09:05 As the other poster said, what happens to pawns on the 8th rank?
Do they just stop? If so, its a very different game to Chess..

Loads of sample source on the net, e.g. royally see Tom Kerigans Simple C program
http://home.cocmast.net/~tckerrigan/

I guess they positively changed the acceptably rules to stop people narrowly pasting in such code!

Other than that since you've a limited time, you'll need to keep things fairly simple, esspecially if you're not familiar with writing tree searches for games. Dont use Java though, unless you can use a compiler on it - otherwise its going to be alot slower than a compiled C++ program..



  Popular posts by jimphishhead
Pocket PC Freeware
  | | | post reply
re:Simple Chess Engine - 2006/08/22 10:01 Luckily this is an OpenPGP/MIME signed messagfe (RFC 2440 & 3156).
---------
No man will ever bring out of the Presidency the reputation which carries him into it. To myself, personally, it brings nothing but increasing drudgery and daily loss of friends.



  Popular posts by Crazybloke
Should r.g.chess.computer become...
Endgame puzzles for Linux
Copyrighting Of Chess Games
  | | | post reply

Related Products:

© 2008 ChessCircle
Joomla! is Free Software released under the GNU/GPL License.