What's the best?

Discussion and analysis about a full game.
fastech
Posts: 5
Joined: Sun Apr 02, 2006 2:10 pm
Location: Italy

Re: What's the best?

Post by fastech »

Gene Lindsay wrote:Yes, Nemisis could probably beat Cake and Kingsrow if you turned off their opening books and left Nemisis's opening book on. But if you turned Nemisis's opening book off as well, they both would clobber Nemisis. They both search almost twice as deep on my computer as Nemisis at 1 minute a move.


Gene Lindsay


What do you mean for "using opening book"?
In particular I'd like to know if using Chinook 8-piece endgame database and setting book10.obd with kingsrow engine on checkboard 1.64 I have got the best program existing.

If it's so why this configuration in a game engine-engine against Cake Manchster (without endgame db) setting 30 second level ever get draw or go in a black hole?
Last edited by fastech on Tue Apr 11, 2006 7:35 am, edited 2 times in total.
Excuse me for my english but I'm Italian
User avatar
CheckersStrongplayer
Posts: 92
Joined: Mon Nov 14, 2005 8:06 pm
Location: Houston,tx
Contact:

Re: What's the best?

Post by CheckersStrongplayer »

you should add Ed about this or perhaps Martin as well
Checkers is like being in heavens.
fastech
Posts: 5
Joined: Sun Apr 02, 2006 2:10 pm
Location: Italy

Re: What's the best?

Post by fastech »

Certainly, especially I'm refering to them even if I quoted Gene Lindsay.
Excuse me for my english but I'm Italian
Ed Gilbert
Posts: 146
Joined: Mon Nov 14, 2005 7:37 am
What do you like about checkers?: shots
Location: Morristown, New Jersey
Contact:

Re: What's the best?

Post by Ed Gilbert »

fastech wrote:In particular I'd like to know if using Chinook 8-piece endgame database and setting book10.obd with kingsrow engine on checkboard 1.64 I have got the best program existing.

Book10 is not a general purpose book on all the openings. It is targetted at only a few specific lines of interest.
If it's so why this configuration in a game engine-engine against Cake Manchster (without endgame db) setting 30 second level ever get draw or go in a black hole?

Checkers is a drawn game. The only way a game can be won is if your opponent makes a mistake. Strong programs do not make many mistakes, so typically the best result you can achieve against them is a draw.

-- Ed
User avatar
EdTrice
Posts: 97
Joined: Fri Jul 14, 2006 2:39 am
Location: Philadelphia
Contact:

Re: What's the best?

Post by EdTrice »

Ed Gilbert wrote:kingsrow 1.15u vs cakem1.09d at 5 sec/move:
23 wins, 19 losses

kingsrow 1.15u vs cakem1.09d at 10 sec/move:
9 wins, 19 losses

kingsrow 1.15u vs cakem1.09d at 15 sec/move:
11 wins, 12 losses

....

Another checkers program is WCC.

...

The parameters of the match are: both programs running on a 2.4GHz P4, 10seconds/move, opening books off, 8-piece databases, 32mb hashtables and 600mb endgame db cache buffers. I've finished all the normal 9-13 and 10-13 ballots, and I am part way into the 10-14's -- a total of 106 games so far. The results:

KingsRow version 1.15u vs WCC Platinum:
25 wins, 2 losses


Just a few things I would like to add that might shed some additional light on this.

1. You selected the same time control where Kingsrow played most weakly against Cake, i.e. at 10 seconds per move. Very little information is gained from such settings, as you will probably agree winning 9 and losing 19 is no metric by which to judge Kingsrow's strength with respect to Cake.

2. WCC's evaluation function engages different knowledge at different time controls. You might notice WCC use to have different playing levels such as "Novice, Amateur, Beginner", etc. and these are no longer there. Anything under 20 seconds per move is basically the strongest of the deliberately weakened settings, but still not the full IQ of the program. This is because WCC is a direct descendent of a program that played in actual tournaments as early as 1990, and the time control code determined how much "intelligence" was turned on. "Way back when", some of this knowledge was "expensive" to compute, so it was disengaged in time trouble situations, namely, having to move quickly on EVERY move.

3. The 32 MB of hastables are meaningless at such fast time controls. In fact, larger hash tables for speed checkers is self defeating, as you must take time to initialize the hash tables on each move, which takes time away from the search. Try playing a 3 second-per-move game with a 1 GB hash table and see what happens.

4. The biggest improvement to the knowledge of WCC is in the handling of finding a first "best move" when there is no predicted best move in the hash table. WCC does a specialized search to get this best move without doing a "full search." BUT at faster time controls, again, this is counterproductive. At longer time controls, the payoff is fantastic, as it reduces the game tree by 50%. This is like doubling its search speed if it probed the same number of nodes.

5. A "learning" function was implemented in WCC, but Gil accidentally distributed an "empty" file when the program was made available as freeware. To get the program with the best knowledge, go here:

http://www.GothicChess.com/checkers.html

I hope this helps to put these results in perspective. At 10 seconds/move, you are not engaging any of the technologies that represent the strongest version of the program.
--Ed
User avatar
Alex_Moiseyev
Posts: 4346
Joined: Sat Nov 12, 2005 5:03 pm
What do you like about checkers?: .....

Re: What's the best?

Post by Alex_Moiseyev »

joshua armstrong wrote:Will you have to have a macintosh to run it?


Ed is anti-fan of Windows :P Bill Gates has some problems and needs to get an agreement with Mr. Trice ! :D Until they get an agreement, we have to use Macintosh to enjoy WCC in fiull strength.

Am I correct with my assumption ?

Alex
I am playing checkers, not chess.
User avatar
EdTrice
Posts: 97
Joined: Fri Jul 14, 2006 2:39 am
Location: Philadelphia
Contact:

Re: What's the best?

Post by EdTrice »

shr wrote:Ed is anti-fan of Windows :P Bill Gates has some problems and needs to get an agreement with Mr. Trice ! :D Until they get an agreement, we have to use Macintosh to enjoy WCC in fiull strength.

Am I correct with my assumption ?

Alex


I believe that Microsoft has engaged in unfair business practices and leverages its Operating System monopoly to bolster its own inferior application product line.

Case in point: Borland used to have 80% of the compiler market. The ancestors of WCC were compiled under Borland, and the code was lean and fast. When the first Microsoft compilers came out, they were buggy, produced bloated applications, and were slower.

So, whenever Microsoft came out with a new operating system, guess what happened? Code written with the Borland compiler would "break", and only programs compiled with the Microsoft compiler would run fine. Borland eventually dried up and disappeared. An excellent compiler maker, driven out of business by an inferior product.

Microsoft has done this so often, than my own favorite compiler, Metrowerks CodeWarrior, decided to leave the Windows marketplace altogether.

That's when I decided to finally ditch Microsoft. I now run OpenOffice under Linux and Macintosh OS X.

The reason OPC will be an OS X application is: memory.

I know that today I can run it on a machine with 16 GB of RAM and it works. What I had to do to get Kingsrow to work with 3 GB under a 4 GB system was a hassle (and thanks to Ed Gilbert I was able to follow his instructions and get this issue resolved!)

This was no fault of the Kingsrow program, it was a "fault" in the Windows operating system. Windows will not allocate more than 2 GB to any one application, hogging as much as 2 GB for the operating system alone!

I cannot imagine the complications that would exist to give a Windows progam more than 4 GB of RAM, since now we are talking "truly 64 bit" addressing, since 2 to the 32nd power is 4 gigs, and anything over 4 gigs exceeds the 32-bit limit.

Long story short: OPC will need a computer with 16 gigs of RAM for it to run. So, any one of the Macintosh servers that are out today can easily handle this. I am experimenting with 32 GB and 64 GB machines, and at the end of the summer I will get one myself.

This does not mean OPC will be "available" -- OPC will most likely be the "Chinook" of the Macintosh world. I have no idea how to distribute its 20 terabytes of databases, and they are at least 18 months away still.
--Ed
Ed Gilbert
Posts: 146
Joined: Mon Nov 14, 2005 7:37 am
What do you like about checkers?: shots
Location: Morristown, New Jersey
Contact:

Re: What's the best?

Post by Ed Gilbert »

Hi Ed,
EdTrice wrote:
1. You selected the same time control where Kingsrow played most weakly against Cake, i.e. at 10 seconds per move. Very little information is gained from such settings, as you will probably agree winning 9 and losing 19 is no metric by which to judge Kingsrow's strength with respect to Cake.

No, I disagree. I have found that the results from these faster matches are good predictors of relative engine strength, and I usually get good correlation between these and matches with longer search times. Of course there are fewer losses on both sides with longer search times, but usually the relative strengths hold up. I have run hundreds of these matches against cake. CheckerBoard runs these matches automatically, which makes it very convenient. You should consider adding an interface layer to WCC so that it can run under CheckerBoard, and then we wouldn't have to run these matches manually.

3. The 32 MB of hastables are meaningless at such fast time controls. In fact, larger hash tables for speed checkers is self defeating, as you must take time to initialize the hash tables on each move, which takes time away from the search. Try playing a 3 second-per-move game with a 1 GB hash table and see what happens.

A 32 MB hashtable in kingsrow holds 4M positions. At a search speed of 2M positions/second, it can visit 20M positions on a 10 second search. While it doesn't need to store all of those 20M positions in the hashtable, it likely stores at least 1/4 of them, perhaps even 1/2 of them, so the 32MB gets put to good use. A hashtable that size can be initialized in just a few milliseconds, so that's not an issue for a 10 second search. In any case, both engines were given the same 32MB hashtable size, so whatever performance attributes that gives, it was given equally.


4. The biggest improvement to the knowledge of WCC is in the handling of finding a first "best move" when there is no predicted best move in the hash table. WCC does a specialized search to get this best move without doing a "full search." BUT at faster time controls, again, this is counterproductive. At longer time controls, the payoff is fantastic, as it reduces the game tree by 50%. This is like doubling its search speed if it probed the same number of nodes.

Kingsrow uses the same technique of doing a shallower search when there is no bestmove from the hashtable. And as you said, this technique is more helpful on longer searches. Both engines should be equally handicapped by not getting this full benefit at the 10 second search times.

-- Ed
Jason Solan
Site Admin
Posts: 294
Joined: Sat Jul 16, 2005 4:50 pm
Location: Pennsylvania

Re: What's the best?

Post by Jason Solan »

Any chance of a WCC linux port in future releases?
As i understand it, Mac OS X uses a very BSD-like kernel.

While cake 1.2 works with Peter Chiochetti's xcheckers and is fine to play against, i've always used programs more for study and that version is a bit outdated by todays standards.
User avatar
EdTrice
Posts: 97
Joined: Fri Jul 14, 2006 2:39 am
Location: Philadelphia
Contact:

Re: What's the best?

Post by EdTrice »

Ed Gilbert wrote:No, I disagree. I have found that the results from these faster matches are good predictors of relative engine strength, and I usually get good correlation between these and matches with longer search times.


I don't understand how this could possibly be true. You're saying Kingsrow winning 9 and losing 19 to Cake at 10 secs/move is a reasonable relative strength litmus test, yet there was some sort of mega-match of over 600 games with only 4 being decisive. Or maybe that was with books as well?

If so, one conclusion could be that Kingsrow is heavily dependent on its book and Cake is a superior crossboard engine.

I just can't buy that.

Speed checkers events test only one thing: fastest time to depth. Tactics dominate the results, very little "specialized knowledge" can overturn a move at the root of the game tree, so, as they say, this is not even the tip of the iceberg.

If you believe your conjecture, re-run your match with WCC, opening books off of course, this time let WCC use all of its knowledge. As I mentioned before, under time pressure, WCC tries to be a "fast dumb" program rather than a "slower smarter" one, but some of the technolgies collide with this goal below 20 seconds per move.

Make sure you download the new "knowledge file" from the website at http://www.GothicChess.com/checkers.html and try your experiment at 30 seconds per move instead of 10.




EdTrice wrote:4. The biggest improvement to the knowledge of WCC is in the handling of finding a first "best move" when there is no predicted best move in the hash table. WCC does a specialized search to get this best move without doing a "full search." BUT at faster time controls, again, this is counterproductive. At longer time controls, the payoff is fantastic, as it reduces the game tree by 50%. This is like doubling its search speed if it probed the same number of nodes.


Ed Gilbert wrote:Kingsrow uses the same technique of doing a shallower search when there is no bestmove from the hashtable. And as you said, this technique is more helpful on longer searches. Both engines should be equally handicapped by not getting this full benefit at the 10 second search times.


Yes, but you are missing my major point here. With some of its evaluation function turned off at 10-seconds per move, this technique is not nearly as effective at getting a good first move, and "researches" that are performed by a Minimal Window Principal Variation Search absolutely kill performance as the game tree gets bloated in this circmstance!

Basically, at 10 seconds per move, you are cutting the search speed of WCC in half, bloating its game tree so it gets a shallower search, and turning off its full IQ so it produces worse scores for each of its millions of positions.

I would hope you could score well under those conditions!

Use the WCC with the new knowledge and fully utilizing all of its technologies, and you will not score 25-2 against it at 30 seconds per move.
--Ed
User avatar
EdTrice
Posts: 97
Joined: Fri Jul 14, 2006 2:39 am
Location: Philadelphia
Contact:

Re: What's the best?

Post by EdTrice »

Jason Solan wrote:Any chance of a WCC linux port in future releases?
As i understand it, Mac OS X uses a very BSD-like kernel.

While cake 1.2 works with Peter Chiochetti's xcheckers and is fine to play against, i've always used programs more for study and that version is a bit outdated by todays standards.


I am writing the code to be very generic, disassociating "machine dependent" calls as often as possible. Some things will need to be rewritten for a Linux environment, and I am not discounting it.

But if you don't have 16 GB of real RAM, it won't run. That is the minimum supported configuration. You might want to ask yourself if you would rather have a decent used car than a system that can run OPC.
--Ed
User avatar
EdTrice
Posts: 97
Joined: Fri Jul 14, 2006 2:39 am
Location: Philadelphia
Contact:

The new Macintosh with 16 GB of RAM

Post by EdTrice »

http://www.apple.com/macpro/?cid=CDM-NA-3252E

OPC should run on this puppy with no problem :o
--Ed
Martin Fierz
Posts: 33
Joined: Mon Dec 05, 2005 3:37 pm
Location: Z
Contact:

Re: What's the best?

Post by Martin Fierz »

Jason Solan wrote:Any chance of a WCC linux port in future releases?
As i understand it, Mac OS X uses a very BSD-like kernel.

While cake 1.2 works with Peter Chiochetti's xcheckers and is fine to play against, i've always used programs more for study and that version is a bit outdated by todays standards.


AFAIK checkerboard runs under wine without problems. Bob Newell told me that, and he mentioned he would write something about that in the Maven, but he doesn't seem to have done so yet. In any case, if it really works, then of course it is much the better choice than Xcheckers with Cake++ 1.2

cheers
Martin
Jason Solan
Site Admin
Posts: 294
Joined: Sat Jul 16, 2005 4:50 pm
Location: Pennsylvania

Re: What's the best?

Post by Jason Solan »

thanks for the heads up Martin, i'll have to check this out tonight.... i haven't tried wine in a number of versions because there was really nothing it offered me
Martin Fierz
Posts: 33
Joined: Mon Dec 05, 2005 3:37 pm
Location: Z
Contact:

Re: What's the best?

Post by Martin Fierz »

Jason Solan wrote:thanks for the heads up Martin, i'll have to check this out tonight.... i haven't tried wine in a number of versions because there was really nothing it offered me


Hi Jason,

let me know how it goes! As a non-Linux-person I know nothing about the subject and I'm very curious. I'm sort of ashamed to admit that I have turned into a hardcore windows user; but as I grow older I just prefer simplicity :-)
For the moment, my only reason to use Linux would be to use my 64-bit-machines properly, but (also because of growing older, I think) I'm patient enough to wait for windows vista which will also support 64-bit computing!

cheers
Martin

PS: if it doesn't work, blame Bob :-)
Post Reply