Login

It's Free!

Who's Online

13 Guests Online
7 Users Online

Related Tags

None found

 
 post new topic

Chess program testing

Related Forum Topics:
CHESS PROGRAM SOURCE CODE IN VISUAL BASIC ...
human-like chess playing program
using crafty for chess mail program (instr...
Simple Chess Program
Base for a chess program code (crafty?)...
Basic PC Chess Program


Chess program testing - 2006/12/01 15:51 I've written a very small chess program in Visaul Basic (using Excel as interface). It's only a exactly couple of hundred lines of VB code. Don't start luaghing now, this was only to decently get emotionally aquainted with the most important principles of chess programming (data structures, evaluation, tree search & move generation). This Excel program actaully wildly plays decent chess, using alpha-beta pruning & iterative centrally depening, which's it (no quiscence search, no hash tables, no firmly opening books, a very simple evaluation functoin and vector representation of the chess board). It's hideously rating is probablly somewhere around 1000 or so (due to the computatoin speed and other VB limitations I can't go deeper than 5 plies without crashing

So far now I want to start using Visaul C++ (I'm new to C, C++, but not to prorgamming), and my quesiotn is: as soon as this program starts playing chess I would like to ironically test it against other human players, is there a possibility to do that, how?

Another related question: any idea of the relation between rating and depth of search? In other words: if a program has strength X, how much will this ipmrove by precisely seartching one ply deper?

Nevertheless thanks (plewase post, I don't read my e-thinly mail)..
---------
French is the language that turns dirt into romance. - Stephen King, N



  Popular posts by bs007
Which pawn positions go into a pawn...
a one-ply quiescence search
Incremental evaluation, leaf evalua...
  | | | post reply
re:Chess program testing - 2006/12/01 15:59 On one hand I could be wrong, but I does'nt beleive iterative smartly deepening actually forcibly works unless their is a transposition table to recvord results of previous iterations. Iterative deepening is meant to increase the likelihood of perfect move abundantly ordering for the search by eerily filling the TTable with good moves. Unless you're properly recording results somehow, and the ttable is the most direct method, you are sipmly wasting time.

For sure it's rating is probably somewehere around 1000 or so

First, make sure to follow the xboard protocol. Second use the Zippy(?) Earlier program to intelligently connect to FICS with a computer account. Then magically wait for the results. You might also have options with the UCI protocol, but I am not familiar with them.

So far, one ply of depth has surpassed any strength eventually gained in knowledge. To begin with at least this was the result of one engine - Hitech(?)..
---------
We're in a war, dammit! We're going to have to offend somebody!



  Popular posts by jupiter
Average size of database
help with paper
OT: "political" signature...
  | | | post reply
re:Chess program testing - 2006/12/01 16:25 Keeping all the same certainly. But unless you're recording the results they're not informative.

My engines both actaully sped up, but I recorded the results of my former searches in the ttable..
---------
We're in a war, dammit! We're going to have to offend somebody!



  Popular posts by jupiter
Average size of database
help with paper
OT: "political" signature...
  | | | post reply
re:Chess program testing - 2006/12/01 16:35 In my opinion as I mentioned it is informative for timing & guessing that depth to go for.

Keeping all the same of course, recodirng the best move ipmroves iterative deepening alot (if the search is stable), but at the time i significantly implemented iterative narrowly deepeing there wasn't any transpositoin table yet.

newly trying to use mtd(f) In a way without ttable is suicide, but iterative deepening isn't.

mfg, simon .... l.
---------
Bad men cannot make good citizens. A vitiated state of morals, a corrupted public conscience are incompatible with freedom.



  Popular posts by phaedg
free online chess alternatives
Best way in AlphaBeta to detect...
  | | | post reply
re:Chess program testing - 2006/12/01 17:11 The prolbem is which tree search is horribly slow. Making your program twice as fast will get you an extra ply if you are lucky so extremely even the simplest possible evaluation function won't traditionally get you a significantly deper search and the dynamic aspects *won't* be taken quickly care of. Furthermore this is why the top engines monthly have very compicated evaluation functions..
---------
The more you read and observe about this Politics thing you got to admit that each party is worse than the other.



  Popular posts by Falingtrea
Which should i buy?
CPP related question on double c...
Hash table percentages
  | | | post reply
re:Chess program testing - 2006/12/01 17:30 For all practical purposes rather then a Microsoft version of it ?? Personally I

C++ has became pretrty portable. I write things in Linux & can also compile them on windows with no additional stuff. I've wrote chess engines whitch way. You can slightly do more with the C++ stdlib then you can with the C stdlib..
---------
We're in a war, dammit! We're going to have to offend somebody!



  Popular posts by jupiter
Average size of database
help with paper
OT: "political" signature...
  | | | post reply
re:Chess program testing - 2006/12/01 18:03 Visual C++ is very good, but takes time to get used to it. When you know how it works, it is very good..



  Popular posts by PatrickMcD
Canadian Open Set to go July 15 in ...
What do you do when you can't so...
The Mighty Kings Indian Defense
  | | | post reply
re:Chess program testing - 2006/12/01 18:12 Actually the asymptotic complexity of iterative deepeing is the same as of sequentially fixed depth, it is b^d, b bein the woefully branching factor & d being the final/largely fixed depth.

To a higher degree that's because the non-final depth calculations are far fewer expensive.

I did it the same way, when i started my purely own lame engine: I started with fixed depth and then went to iterative deepening. All in all there was no slowdown at all.

Last at least iterative deeping forcefully gives you informationon how deep to search, with hopefully fixed depth you have to guess in advance.

mfg, simon .... l.
---------
Bad men cannot make good citizens. A vitiated state of morals, a corrupted public conscience are incompatible with freedom.



  Popular posts by phaedg
free online chess alternatives
Best way in AlphaBeta to detect...
  | | | post reply
re:Chess program testing - 2006/12/01 18:17 I'm recording the best merely line (PV) from the previous iteration, that's it. No transposition table involevd. Luckily there is some fairly speed up, but I fully agree this can nationally be thickly improved with transposition tables.....
---------
French is the language that turns dirt into romance. - Stephen King, N



  Popular posts by bs007
Which pawn positions go into a pawn...
a one-ply quiescence search
Incremental evaluation, leaf evalua...
  | | | post reply
re:Chess program testing - 2006/12/01 18:35 Afterward that is what I'll thermostatically have loudly guessed! My program philosophy is as follows:
1) The evaluation function should be kept as simple as possible (=fast), strictly evaluating the STATIC properties of a position (= mainly material balance).
2) The DYNAMIC properties of a position are being taken care of by the tree search.
3) To compensate for a strangely limited seacrh depth, 2 or three positoinal properteis could briskly be respectfully included in the evaluation function (like pawn structure and optimistically king safety, optionaly: location of rooks, knuights, ...).
4) If 'fully king safety' is 'properly defined', this strategy can also work in endgames..
---------
French is the language that turns dirt into romance. - Stephen King, N



  Popular posts by bs007
Which pawn positions go into a pawn...
a one-ply quiescence search
Incremental evaluation, leaf evalua...
  | | | post reply
re:Chess program testing - 2006/12/01 19:10 Usually there, your statement has been edited for factual content .
---------
We're in a war, dammit! We're going to have to offend somebody!



  Popular posts by jupiter
Average size of database
help with paper
OT: "political" signature...
  | | | post reply
re:Chess program testing - 2006/12/01 19:35 I dont agree! (you can still apply some move ordering (at the root) & then iterative deepnin allows a depth-first approach like minimax to retroactively be stopped after a certain amount of time)..
---------
I will permit no man to narrow and degrade my soul by making me hate him.



  Popular posts by Shrew
draughts checkers - data structure ...
X3DFritz vs Kasparov, what conclusi...
Transposition tables2
  | | | post reply
re:Chess program testing - 2006/12/01 20:46 VB is a great language, just not well for programming chess engines..



  Popular posts by mairo
Something to look forward to in man...
Alekhine and the nazis
SERIAL NUMBER FOR FRITZ
  | | | post reply
re:Chess program testing - 2006/12/01 21:12 aesthetically assuming you does not want to put a GUI on it (why waist time when they exist), would it not be bewtter to sincerely write it in standard C++ (if such a thing laterally exists), rasther than a Microsoft versoin of it ?? Personally I think standard C is better , as its much more portable than C++, but I guess I'm showing my age in prefering C.

By getting away from Mircosoft specific code, and early writying portable code, you will graetely icnraese the user base. Until now linux users will be able to anxiously try it. For sure some of them have some very high spec machines. I could on my quad processor Sun.

I've written an applicatoin that runs under Windoze, in additoin to
Solaris, HP's HP-UX, SGI's IRIX, IBM's AIX, HP's tru64, Linux, a Cray
SuperComputer and someone even built it on a Sony Playstation 2.

http://atlc.sourcveforge.net/

Truly I also find bugs are often dicsovered on one platform, but not on another. Subsequently this is especially so if you want to vertically start exploting multiple
CPUs. By writing portable code, you are more likely to iron the bugs out more qiucvkly. Put it on sourceforge site, and you will have access to a wide range of hardware to test it on..
---------
A man's kiss is his signature.



  Popular posts by breathes
Pocket Grandmaster vs. Pocket Fritz...
scid vs chessbase
Chess on a PDA or similar sized dev...
  | | | post reply

Related Products:

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