New Engine: Blitzkrieg

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

Moderators: hgm, Rebel, chrisw

MathAddict
Posts: 9
Joined: Mon Dec 28, 2015 1:14 am

New Engine: Blitzkrieg

Post by MathAddict »

Hi, I have made a new UCI engine Blitzkrieg. Should be around 2000-2200 ELO, but I want to get a more accurate ELO. How do I submit this engine to the CCRL rating lists?

Link: https://github.com/rianneogi/Blitzkrieg ... xe%20files

Blitzkrieg Best.exe is the strongest version so far.
User avatar
Graham Banks
Posts: 41423
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: New Engine: Blitzkrieg

Post by Graham Banks »

MathAddict wrote:Hi, I have made a new UCI engine Blitzkrieg. Should be around 2000-2200 ELO, but I want to get a more accurate ELO. How do I submit this engine to the CCRL rating lists?

Link: https://github.com/rianneogi/Blitzkrieg ... xe%20files

Blitzkrieg Best.exe is the strongest version so far.
Hi,

we'll test it soon.

Graham.
gbanksnz at gmail.com
User avatar
Guenther
Posts: 4606
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: New Engine: Blitzkrieg

Post by Guenther »

MathAddict wrote:Hi, I have made a new UCI engine Blitzkrieg. Should be around 2000-2200 ELO, but I want to get a more accurate ELO. How do I submit this engine to the CCRL rating lists?

Link: https://github.com/rianneogi/Blitzkrieg ... xe%20files

Blitzkrieg Best.exe is the strongest version so far.
What's the difference to version 336? I am asking because I see no
commits after 336 too.

Blitzkrieg is already since the start of the new XB/UCI chronology listed there.
http://rwbc-chess.de/chronology.htm

Normally you don't have to submit your engine to CCRL, if it is already
known. I guess they have not enough testers, but actively asking here
should help somehow. Good luck!

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

Re: New Engine: Blitzkrieg

Post by Graham Banks »

Guenther wrote:...I guess they have not enough testers...Guenther
Always seems to be an issue unfortunately.
gbanksnz at gmail.com
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: New Engine: Blitzkrieg

Post by Dann Corbit »

Shifing an int by 48 results in undefined behavior, so:

Code: Select all

Bitset TTRandom()
{
	unsigned long long r0 = rand(), r1 = rand(), r2 = rand(), r3 = rand();
    return &#40;r0| &#40;r1<<16ULL&#41; | &#40;r2<<32ULL&#41; | &#40;r3<<48ULL&#41;);
&#125;
I am quite sure that you meant this also:

Code: Select all

int lastOf&#40;Bitset b&#41;
&#123;
    for&#40;int i = 0; i<64; i++)
    &#123;
        if&#40;&#40;b&0x8000000000000000&#41;==1&#41;
        &#123;
            return 63-i;
        &#125;
        b <<= 1; // Compare this line with your code
    &#125;
    return -1;
&#125;
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
Sven
Posts: 4052
Joined: Thu May 15, 2008 9:57 pm
Location: Berlin, Germany
Full name: Sven Schüle

Re: New Engine: Blitzkrieg

Post by Sven »

Dann Corbit wrote:I am quite sure that you meant this also:

Code: Select all

int lastOf&#40;Bitset b&#41;
&#123;
    for&#40;int i = 0; i<64; i++)
    &#123;
        if&#40;&#40;b&0x8000000000000000&#41;==1&#41;
        &#123;
            return 63-i;
        &#125;
        b <<= 1; // Compare this line with your code
    &#125;
    return -1;
&#125;
... or even like this, more correct version:

Code: Select all

int lastOf&#40;Bitset b&#41;
&#123;
    for&#40;int i = 0; i<64; i++)
    &#123;
        if&#40;&#40;b&0x8000000000000000&#41;!=0&#41; // !!
        &#123;
            return 63-i;
        &#125;
        b <<= 1; // Compare this line with your code
    &#125;
    return -1;
&#125;
User avatar
Werner
Posts: 2871
Joined: Wed Mar 08, 2006 10:09 pm
Location: Germany
Full name: Werner Schüle

Re: New Engine: Blitzkrieg

Post by Werner »

MathAddict wrote:Hi, I have made a new UCI engine Blitzkrieg. Should be around 2000-2200 ELO, but I want to get a more accurate ELO. How do I submit this engine to the CCRL rating lists?

Link: https://github.com/rianneogi/Blitzkrieg ... xe%20files

Blitzkrieg Best.exe is the strongest version so far.
Sorry, I do not like this name.
Werner
mar
Posts: 2554
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: New Engine: Blitzkrieg

Post by mar »

Dann Corbit wrote:Shifing an int by 48 results in undefined behavior, so:

Code: Select all

Bitset TTRandom&#40;)
&#123;
	unsigned long long r0 = rand&#40;), r1 = rand&#40;), r2 = rand&#40;), r3 = rand&#40;);
    return &#40;r0| &#40;r1<<16ULL&#41; | &#40;r2<<32ULL&#41; | &#40;r3<<48ULL&#41;);
&#125;
Also I don't like the sequence of ors, xor would be better here (or at least masking before ors).
Microsoft rand returns 15 bits only IIRC, so best would be to use 5 rands and shifting by 15, 30 etc.
Even better would be to use some high quality PRNG because microsoft crt uses a stupid LCG that's not much random; but for zobrist keys it'd probably do.
MathAddict
Posts: 9
Joined: Mon Dec 28, 2015 1:14 am

Re: New Engine: Blitzkrieg

Post by MathAddict »

Guenther wrote:
MathAddict wrote:Hi, I have made a new UCI engine Blitzkrieg. Should be around 2000-2200 ELO, but I want to get a more accurate ELO. How do I submit this engine to the CCRL rating lists?

Link: https://github.com/rianneogi/Blitzkrieg ... xe%20files

Blitzkrieg Best.exe is the strongest version so far.
What's the difference to version 336? I am asking because I see no
commits after 336 too.

Guenther
Build 336 is "No longer sorts in quiescence"

Shifing an int by 48 results in undefined behavior, so:
Thanks, I fixed that.
I am quite sure that you meant this also
lastOf is not used anywhere in the code so I'm in the clear there.
User avatar
Guenther
Posts: 4606
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: New Engine: Blitzkrieg

Post by Guenther »

MathAddict wrote:
MathAddict wrote: Blitzkrieg Best.exe is the strongest version so far.
Guenther wrote: What's the difference to version 336? I am asking because I see no
commits after 336 too.

Guenther
Build 336 is "No longer sorts in quiescence"
Sorry I don't understand. The lastest source is for build 336.
What version is 'Best'? If people want to test your program normally
they attach a (given) version number for later comparisons.

Edit:
Ok, I see now that the 'best' version internally is build 327,
but only after downloading...

More important though is that it crashes soon after the 'go' command
on my machine => Win7 64 Quadcore from 2009.
Could you create also compiles for older 64 bit machines w/o bmi2 or popcnt instructions?