Super Tournament III Qualifier (after 74 of 76 rounds at 40

Archive of the old Parsimony forum. Some messages couldn't be restored. Limitations: Search for authors does not work, Parsimony specific formats do not work, threaded view does not work properly. Posting is disabled.

Super Tournament III Qualifier (after 74 of 76 rounds at 40

Postby Graham Banks » 15 Sep 2004, 19:28

Geschrieben von:/Posted by: Graham Banks at 15 September 2004 20:28:53:

Athlon XP2000
256mb hash each (or closest allowed by each program)
3,4,5 piece tablebases
All using Fritz Powerbook tournament book (maximum variety, minimum 5 games for a move to be played, no learning)
40 moves in 40 minutes repeating.
Ponder off
Tournament run under Deep Fritz 8 GUI
The top three finishers aside from CM9000 Judge II and CM 10th Edition (which have already qualified) will progress to the final stage which will be played at 40/120 with the powerbook settings optimised.
There are approximately 100 games that I will be rerunning at the end of the tournament due to unsatisfactory openings caused by the powerbook settings used. I don’t expect this to have much effect on final placings.

STANDINGS (after 74 of 76 rounds)
56.0 - CM9000 Judge II
47.0 - CM 10th Edition (default)
45.0 - List 512
44.0 - SOS 4
44.0 - Pro Deo 1.0
42.0 - Gandalf 5.1
41.5 - Delfi 4.5
39.0 - Thinker 4.6c
39.0 - SmarThink 0.17a
38.0 - Deep Sjeng 1.6
36.0 - Pharaon 2.62
35.0 - Gothmog 1.0b10
35.0 - Yace 0.99.87
34.0 - Anaconda 1.6.2
32.0 - Tao 5.6
29.0 - Little Goliath Revival
28.5 - Fruit 1.5
27.0 - Comet B68
25.0 - Crafty 19.15
23.0 - Slow Chess 2.93a

An updated full crosstable and a download file of all games to date should be up on Kurt’s website sometime soon. http://www.utzingerk.com/banks/st_03_qual.htm
Comments welcome as always.
Graham.
Graham Banks
 

Re: Super Tournament III Qualifier (after 74 of 76 rounds at

Postby Dann Corbit » 15 Sep 2004, 20:51

Geschrieben von:/Posted by: Dann Corbit at 15 September 2004 21:51:17:
Als Antwort auf:/In reply to: Super Tournament III Qualifier (after 74 of 76 rounds at 40 in 40) geschrieben von:/posted by: Graham Banks at 15 September 2004 20:28:53:
Athlon XP2000
256mb hash each (or closest allowed by each program)
3,4,5 piece tablebases
All using Fritz Powerbook tournament book (maximum variety, minimum 5 games for a move to be played, no learning)
40 moves in 40 minutes repeating.
Ponder off
Tournament run under Deep Fritz 8 GUI
The top three finishers aside from CM9000 Judge II and CM 10th Edition (which have already qualified) will progress to the final stage which will be played at 40/120 with the powerbook settings optimised.
There are approximately 100 games that I will be rerunning at the end of the tournament due to unsatisfactory openings caused by the powerbook settings used. I don’t expect this to have much effect on final placings.

STANDINGS (after 74 of 76 rounds)
56.0 - CM9000 Judge II
47.0 - CM 10th Edition (default)
45.0 - List 512
44.0 - SOS 4
44.0 - Pro Deo 1.0
42.0 - Gandalf 5.1
41.5 - Delfi 4.5
39.0 - Thinker 4.6c
39.0 - SmarThink 0.17a
38.0 - Deep Sjeng 1.6
36.0 - Pharaon 2.62
35.0 - Gothmog 1.0b10
35.0 - Yace 0.99.87
34.0 - Anaconda 1.6.2
32.0 - Tao 5.6
29.0 - Little Goliath Revival
28.5 - Fruit 1.5
27.0 - Comet B68
25.0 - Crafty 19.15
23.0 - Slow Chess 2.93a

An updated full crosstable and a download file of all games to date should be up on Kurt’s website sometime soon. http://www.utzingerk.com/banks/st_03_qual.htm
Comments welcome as always.
Graham.
I am more impressed/amazed by Thinker than any other chess program.
The binary is the size of TSCP.
Whatever he is doing, it is bloody brilliant.
This:
07/01/2004 12:03a 78,336 Thinker.exe
Is simply absurd. How can a program of this size be among the top, elite engines? Inquiring minds want to know.



my ftp site {remove http:// unless you like error messages}
Dann Corbit
 

Re: Super Tournament III Qualifier (after 74 of 76 rounds at

Postby Lance Perkins » 16 Sep 2004, 01:28

Geschrieben von:/Posted by: Lance Perkins at 16 September 2004 02:28:11:
Als Antwort auf:/In reply to: Re: Super Tournament III Qualifier (after 74 of 76 rounds at 40 in 40) geschrieben von:/posted by: Dann Corbit at 15 September 2004 21:51:17:

Here is the answer for the inquiring minds: The Thinker source code is only slightly longer than TSCP.
The next release (in a few weeks) of Thinker will even be smaller (from 77K to 69K). I am replacing all of the experimental code with better implementation, now that I am contented with the results.
I have below an example of the efficient coding that is in Thinker. This is the entire move generator (the GeneratePawnMoves is similar to the GeneratePieceMoves). Other implementations that also use bitboards have at least five times the source code compared to my implementation.


TMove *CPosition::GeneratePieceMoves (TMove *pmoves, TBitBoard target)
{
    TBitBoard pieces = AllPieces (wtm) ^ Pawns (wtm)&#59;
    while (pieces)
    {
        TBitBoard moves&#59;
        TSquare from = FindBitAndClear(pieces)&#59;
        TPieceType pct = PieceType (BoardPiece (from))&#59;
        switch (pct)
        {
            case Knight:
                moves = KnightAttacks (from) & target&#59;
                break&#59;
            case Bishop:
                moves = BishopAttacks (from) & target&#59;
                break&#59;
            case Rook:
                moves = RookAttacks (from) & target&#59;
                break&#59;
            case Queen:
                moves = QueenAttacks (from) & target&#59;
                break&#59;
            case King:
                moves = KingAttacks (from) & target&#59;
                break&#59;
        }
        if (moves)
        {
            TMove mv = MvMkFrom (from) + MvMkPiece (pct)&#59;
            do
            {
                TSquare to = FindBitAndClear(moves)&#59;
                *pmoves++ = mv | MvMkTo (to) | CaptureOnSq (to)&#59;
            }
            while (moves)&#59;
        }
    }
    return (pmoves)&#59;
}
#define EmptySquares() (~(AllPieces(White)|AllPieces(Black)))
TMove *CPosition::GenerateCaptureAndPromotionMoves (TMove *pmoves) // used by q-search and gen-all-moves
{
    pmoves = GeneratePieceMoves (pmoves, AllPieces (Opponent (wtm)))&#59;
    return GeneratePawnMoves (pmoves, AllPieces (Opponent (wtm)) | c_PromotionSquares)&#59;
}
TMove *CPosition::GenerateNonCaptureMoves (TMove *pmoves)
{
    pmoves = GeneratePieceMoves (pmoves, EmptySquares())&#59;
    return GeneratePawnMoves (pmoves, EmptySquares() | c_NonPromotionSquares)&#59;
}
TMove *CPosition::GenerateAllMoves (TMove *pmoves)
{
    pmoves = GenerateCaptureAndPromotionMoves (pmoves)&#59;
    return GenerateNonCaptureMoves (pmoves)&#59;
}

39.0 - Thinker 4.6c
39.0 - SmarThink 0.17a
I am more impressed/amazed by Thinker than any other chess program.
The binary is the size of TSCP.
Whatever he is doing, it is bloody brilliant.
This:
07/01/2004 12:03a 78,336 Thinker.exe
Is simply absurd. How can a program of this size be among the top, elite engines? Inquiring minds want to know.
Lance Perkins
 

Re: Super Tournament III Qualifier (after 74 of 76 rounds at

Postby Roger Brown » 16 Sep 2004, 02:02

Geschrieben von:/Posted by: Roger Brown at 16 September 2004 03:02:05:
Als Antwort auf:/In reply to: Re: Super Tournament III Qualifier (after 74 of 76 rounds at 40 in 40) geschrieben von:/posted by: Lance Perkins at 16 September 2004 02:28:11:
Here is the answer for the inquiring minds: The Thinker source code is only slightly longer than TSCP.
The next release (in a few weeks) of Thinker will even be smaller (from 77K to 69K). I am replacing all of the experimental code with better implementation, now that I am contented with the results.

Hello Lance,
Of course you are merciless in your answer. We were impressed before. What are we going to be now?
:-)
I would say blown away but I have a painful, very recent association to deal with...
Later.
Roger Brown
 

Re: Super Tournament III Qualifier (after 74 of 76 rounds at

Postby Graham Banks » 16 Sep 2004, 02:41

Geschrieben von:/Posted by: Graham Banks at 16 September 2004 03:41:55:
Als Antwort auf:/In reply to: Re: Super Tournament III Qualifier (after 74 of 76 rounds at 40 in 40) geschrieben von:/posted by: Lance Perkins at 16 September 2004 02:28:11:

Hi Lance,
good to see you getting credit where credit's due. Are you pleased with Thinker's performance in this field or is it where you'd expect to be?
I look forward to your new release.
Graham.
Graham Banks
 

Re: Super Tournament III Qualifier (after 74 of 76 rounds at

Postby Lance Perkins » 16 Sep 2004, 04:33

Geschrieben von:/Posted by: Lance Perkins at 16 September 2004 05:33:18:
Als Antwort auf:/In reply to: Re: Super Tournament III Qualifier (after 74 of 76 rounds at 40 in 40) geschrieben von:/posted by: Graham Banks at 16 September 2004 03:41:55:

Hi Graham,
I'm fine with where Thinker is at, but of course I wish it is better. I have a few more experimental code in the works.
I've always told myself that I will spend more time on the UI. However, there is always something to tweak or to try out on the engine, and I never get the time to do some UI work. The UI code base is being reworked so that I can have as much common code for the Pocket PC UI (yes, I'm doing that too).
The next engine version is more of a maintainance release. Just a few bug fixes and some major code clean-up.
Cheers...
Hi Lance,
good to see you getting credit where credit's due. Are you pleased with Thinker's performance in this field or is it where you'd expect to be?
I look forward to your new release.
Graham.
Lance Perkins
 

Re: Super Tournament III Qualifier (after 74 of 76 rounds at

Postby Dann Corbit » 16 Sep 2004, 18:18

Geschrieben von:/Posted by: Dann Corbit at 16 September 2004 19:18:35:
Als Antwort auf:/In reply to: Re: Super Tournament III Qualifier (after 74 of 76 rounds at 40 in 40) geschrieben von:/posted by: Lance Perkins at 16 September 2004 02:28:11:
Here is the answer for the inquiring minds: The Thinker source code is only slightly longer than TSCP.
The next release (in a few weeks) of Thinker will even be smaller (from 77K to 69K). I am replacing all of the experimental code with better implementation, now that I am contented with the results.
I have below an example of the efficient coding that is in Thinker. This is the entire move generator (the GeneratePawnMoves is similar to the GeneratePieceMoves). Other implementations that also use bitboards have at least five times the source code compared to my implementation.


>TMove *CPosition::GeneratePieceMoves (TMove *pmoves, TBitBoard target)
>{
>    TBitBoard pieces = AllPieces (wtm) ^ Pawns (wtm)&#59;
>    while (pieces)
>    {
>        TBitBoard moves&#59;
>        TSquare from = FindBitAndClear(pieces)&#59;
>        TPieceType pct = PieceType (BoardPiece (from))&#59;
>        switch (pct)
>        {
>            case Knight:
>                moves = KnightAttacks (from) & target&#59;
>                break&#59;
>            case Bishop:
>                moves = BishopAttacks (from) & target&#59;
>                break&#59;
>            case Rook:
>                moves = RookAttacks (from) & target&#59;
>                break&#59;
>            case Queen:
>                moves = QueenAttacks (from) & target&#59;
>                break&#59;
>            case King:
>                moves = KingAttacks (from) & target&#59;
>                break&#59;
>        }
>        if (moves)
>        {
>            TMove mv = MvMkFrom (from) + MvMkPiece (pct)&#59;
>            do
>            {
>                TSquare to = FindBitAndClear(moves)&#59;
>                *pmoves++ = mv | MvMkTo (to) | CaptureOnSq (to)&#59;
>            }
>            while (moves)&#59;
>        }
>    }
>    return (pmoves)&#59;
>}
>#define EmptySquares() (~(AllPieces(White)|AllPieces(Black)))
>TMove *CPosition::GenerateCaptureAndPromotionMoves (TMove *pmoves) // used by q-search and gen-all-moves
>{
>    pmoves = GeneratePieceMoves (pmoves, AllPieces (Opponent (wtm)))&#59;
>    return GeneratePawnMoves (pmoves, AllPieces (Opponent (wtm)) | c_PromotionSquares)&#59;
>}
>TMove *CPosition::GenerateNonCaptureMoves (TMove *pmoves)
>{
>    pmoves = GeneratePieceMoves (pmoves, EmptySquares())&#59;
>    return GeneratePawnMoves (pmoves, EmptySquares() | c_NonPromotionSquares)&#59;
>}
>TMove *CPosition::GenerateAllMoves (TMove *pmoves)
>{
>    pmoves = GenerateCaptureAndPromotionMoves (pmoves)&#59;
>    return GenerateNonCaptureMoves (pmoves)&#59;
>}
>
Well, that's just what I was afraid of. You're smarter than the rest of us.
Now, I am not being facetious. My notion of genius is to take a compilcated problem and reduce it to the simplest, elegant solution. See (for example):
http://richardrplourde.home.comcast.net ... ivity.html



my ftp site {remove http:// unless you like error messages}
Dann Corbit
 

Re: Super Tournament III Qualifier (after 74 of 76 rounds at

Postby Niyaz Khasanov » 17 Sep 2004, 06:25

Geschrieben von:/Posted by: Niyaz Khasanov at 17 September 2004 07:25:00:
Als Antwort auf:/In reply to: Re: Super Tournament III Qualifier (after 74 of 76 rounds at 40 in 40) geschrieben von:/posted by: Lance Perkins at 16 September 2004 05:33:18:
The next engine version is more of a maintainance release. Just a few bug fixes and some major code clean-up.
...and my lovely "sd" command, please :)
Niyaz Khasanov
 


Return to Archive (Old Parsimony Forum)

Who is online

Users browsing this forum: No registered users and 62 guests