Jabba13032012

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Richard Allbert
Posts: 792
Joined: Wed Jul 19, 2006 9:58 am

Jabba13032012

Post by Richard Allbert »

Hi,

http://www.bluefever.net/enginepage.html

Jabba13032012 resides in the link above.

It's a C# engine, a W32 compile. I tried 64bit vs 32bit on my i3, and there was no discernable speed difference.

It's horribly weak, and really, I'm at a loss as what to do.

I've played 1000's of test games, and never seem to be able to improve it.

I find the initial writing of the engine good fun and involving, then I start to plug in some eval values and search paramters as a "base" version, and this base version seems to beat all alternative versions.

I think it's even weaker than Jabba 1.0, which is an achievement.

In terms of elo per line of code, it might well be the weakest ever.

Anyway, it's out there. Oh, and it's basically the CCT version.

Regards

Richard

PS Source included
User avatar
JuLieN
Posts: 2949
Joined: Mon May 05, 2008 12:16 pm
Location: Bordeaux (France)
Full name: Julien Marcel

Re: Jabba13032012

Post by JuLieN »

Thanks Richard! Let's see :)

I probably can't compile it for OSX, as C# is mainly a Microsoft thingie (there exists Mono for Mac, but I guess your engine makes use of Windows API called?), but maybe we can find out what's wrong?
"The only good bug is a dead bug." (Don Dailey)
[Blog: http://tinyurl.com/predateur ] [Facebook: http://tinyurl.com/fbpredateur ] [MacEngines: http://tinyurl.com/macengines ]
Richard Allbert
Posts: 792
Joined: Wed Jul 19, 2006 9:58 am

Re: Jabba13032012

Post by Richard Allbert »

Hi Julien

Hmm .. I don't know.

I could try with our iMac - this involves using MonoMac, correct?

I'll have a look in the next few days.

Problematic could be timer calls - I use the System.Timing and Stopwatch. Also thread calls (jabba has a thread for IO and another for thinking).

Anyway, I'll let you know!

Regarding the improvements, well, it's a bit of a slog. I keep starting long tests, something crashes / goes wrong, have to restart. Then I find a bug. Tests start again... etc etc. And then the tests finish and the results cross over the error bounds. Then you wonder if you're even testing the right paramters.... it's a minefield.

What I do have is a GUI for WB and Cutechess for setting the tournaments up quickly, as I became sick of writing endless batch files.

:D

Anyway, I need a structured plan of how to go about testing and tuning.

One thing I have written into it, but it hasn't run yet, is a move ordering tuner, which takes a file of epds and increments +/- the evaluation features using least squares to find the optimum settings for tree size (I set a max and min for each parameter so I don't end up with silly values). One nice thing about C# is that it's easy to do this using reflection.

I noticed during a debug run on just a few positions that small changes in eval parameters make a massive differerence to the tree size.

But I haven't run a "Full" test yet...

Thanks for your interest

Richard
User avatar
Graham Banks
Posts: 41433
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Jabba13032012

Post by Graham Banks »

Richard Allbert wrote:Hi,

http://www.bluefever.net/enginepage.html

Jabba13032012 resides in the link above.
Thanks Richard. There is a place for engines of all strengths in our hobby. 8-)
gbanksnz at gmail.com