Author: Stan Arts
Date: 10:14:03 09/18/02
Hello! I have finished my third version of S-chess, and it has many new features, and it is a little bit stronger again. I describe the new things in my new readme.txt, so I paste it in! : -------------------------------------------------------------------- This is the README.TXT file with extra info about my chess-program. S-chess is my own attempt at writing a computer-chessplaying program, And I am a 21 year old hobbyist-programmer from holland. After doing some first computer- chess experiments in february and onwards, I started on S-chess the 7th of May 2002. And since then I work on it almost every day and I think I have put a bit too much time into it.. :-) My program is freeware, and can be distributed freely, as long as all the files are unmodified. Version 1.2 is the third release of my program, the main improvements (over version 1.1) are: It's stronger, and I estimate it 100 to 200 ELO stronger than version 1.1 . Implemented 16MB of Hashtables, that mainly improve move-ordening on great depths to make alpha-beta slightly more efficient. I now use and tweaked a different Alpha-beta technique, and it makes my program nearly twice as efficient. (In some positions that's nearly an extra ply) Especially under longer timecontrols the difference is huge. Check-detections everywhere in the searchtree now (instead of just on the 1st ply) so illegal positions in the searchtree are avoided, and mates are always correctly scored that way. Shows a PV (=principle variation/expected best line) but because of the new alpha-beta technique it's sometimes difficult to determine. Also I retrieve this PV from the hashtable instead of directly out of the searchtree which causes it to be shorter than it could of been sometimes, (values in the hashtable get over written a lot) and also some of the "best" moves might be noncense. But overal it still gives a good impression of the expected best line, or any great threats. New chessknowledge that improves play. Centreplay is different now, and also it now knows how to solve a king/king+queen or king/king+rook endgame.. And some other small tweaks, overal it doesn't play so bad positionally, as it knows a lot of things about pawnstructure and general piece-play etc. I implemented a small randomfactor. New features under winboard: Edit position! So it is now possible to set up a position and continue play from this position. Best way to do this is to skip edit-game mode, as this sometimes confuses my program. So it would be best to create the position, then set my program (whichever colour you want it to be) on move, and then click directly "machine white" or "machine black" so edit-game mode is skipped. Edit-game mode is implemented too though, and generally won't give problems. Retract move command is now implemented, and will make my program take back 2 halfmoves, so the move my program played after your move and your move get retracted with you set on move again. (It's possible to keep taking back as far as you want) Please always use the retract move command directly in play mode instead of going into edit-game mode and using the undo command to take back moves with S-chess. Some general features of my program are: I estimate my programs strength to atleast 1600-1700 ELO (on an average computer) against human players under tournament controls, (should be more in quick games) but I am not sure about these figures though, I don't have much testing against human players and I am the human most testing has been done against..:-) Knows all rules of chess, including en-passant, underpromotions, and all special moves, also it knows draws by 3x repetition, stalemate and by the 50 move rule. Technicaly it does a minimaxing search, and has alpha-beta pruning to make this efficient. Null-move isn't used yet, and I think this will be the last version without this technique :-) My program relies mostly on it's full-width searching, and doesn't do too much extending, (So it might miss some very deep combinations, but will find shallower quiet combinations more quickly.) but it does however extend a lot of capture-lines deeper than the full-width depth. My program is also a good problem solver, because I am still not using null- move pruning or any other agressive pruning that might make a program sometimes miss a tactical line, and therefore my programs search is very accurate, and it will always find a (tactical) combination upto the depth that's seen on screen, and it might even find a deeper one than the full-width depth. By the way, the maximum full-width depth for my program is 30 ply, but I doubt it'll ever reach that.. There is a very small opening-book implemented in my program, it has just about 50 moves.. :-) But this way my program knows most common openings and it will randomize it's openingplay a bit. S-chess is written in Pascal, and compiled with the 32-bit Free Pascal for win32 aplications. S-chess requires an MMX processor to run. If you encounter a problem with this though, just email me and I send you a version that'll run on any processor. Same goes when you encounter a problem with the 16MB hashtables, I will send you one with them switched off or made smaller. There is also a stand alone version that has a fully 3D chessboard and pieces and chessclock and room and and..well everything is 3D and you can move/fly around in it freely, and it gives a very neat experience for a chessprogram. I wanted to "include" this version with the winboard-version, but I wasn´t able to complete the 3D version along with the new winboard version. :-( So I am currently still developing this version, but it's already possible to play against a beta version, (with the chesscode of S-chess version 1.1, will have the 1.2 code soon) and email me if you would like to receave it! (The 3D code I already developed years ago for some other experimenting and games and mainly for my flight simulator I wrote back in 1997, and now I thought it would be a good idea to use this code for my chessprogram.. ) Please take a look at the screenshots!! Enjoy! -------------------------------------------------------------------- Stan
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.