Feb 6, 2007

[Other] Good suggestions and protected e-mail

I have received a few good suggestions to how I can improve the speed of Mediocre. I have also learned a lot about optimizing Java while researching myself.

Many of the things I have changed are very program specific. I do not know how much use it can be for other programmers other then the general things like not allocate too many objects etc. I might try to put together a short list of suggestions what to look for in the code, but generally it is up to every programmer to find these things in his own code.

A thing like the isAttacked()-method not checking for color of the piece before doing the calculations, is more of a bug than an actual general improvement.

Anyway I am going to finish up with the improvements (right now quiescent search and move sorting are broken due to the new move representation) and then release a (hopefully) much faster version of Mediocre.

On another note I have been receiving many very good suggestions through e-mail, along with unwanted spam that is starting to add up. So I for now use a thing called 'spambutcher' instead of printing my e-mail address in clear text. Just follow the link and enter the phrase and you get my e-mail address. This is to prevent automatic gathering of e-mail addresses.

Hope it is not too much of a hassle. :)

2 comments:

genorb said...

The new features added to Mediocre like the possibility the stop it while thinking or fixing the time for thinking at each move is very useful to test it.

Funny enough, Mediocre 0.12b and 0.21b are equivalent for the "quick test" and the "LCTII test". In the first one they found 1 good move, but not the same one. For the second test they found 2 moves, one of the two was different.

So from those tests no improvement are visible. But as you wrote, when they play together the 0.21b version is much stronger than the 0.12b, this is a better test I suppose.

The key to find the solution for those test is to reach a depth large enough. Mediocre cannot yet do it for now.

Let us see for the next version.

Jonatan Pettersson said...

Hopefully the next version will be able to reach slightly higher depths. The transposition tables might not help enough on a single position since the real benefits come when the table is starting to fill up after a few moves.

If there are any other interface specific features you are missing please tell me. I think I covered the most important ones now atleast.