Alouette 0.0.1

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

Moderators: hgm, Harvey Williamson, bob

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
tpoppins
Posts: 918
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Alouette 0.0.1

Post by tpoppins » Mon Apr 29, 2019 6:26 am

Roland Chastain wrote:
Mon Apr 29, 2019 12:24 am
I have made a ZIP file including a binary compiled with DEBUG option: it's alouette.exe. The other files (alouette32.exe and alouette64.exe) are binaries compiled with RELEASE option. The main difference is that the DEBUG version produces a log file.

alouette-20190429.zip

@Tirsa
If you have time for a new test, please use alouette.exe.
Thank you for taking the time to look into it, Roland.

Attempting to run alouette.exe produces this error:

Code: Select all

An unhandled exception occurred at $004272D8:
EAssertionFailed: Assertion failed (essais.pas, line 23)
  $004272D8  ESSAIS_$$_init$,  line 39 of essais.pas
  $0040A9A4
and an empty log file.

WER report:

Code: Select all

Version=1
EventType=APPCRASH
EventTime=132009921122201584
ReportType=2
Consent=1
UploadTime=132009921122711613
ReportIdentifier=24f6ac91-6a46-11e9-8533-002713cab278
IntegratorReportIdentifier=24f6ac90-6a46-11e9-8533-002713cab278
WOW64=1
Response.BucketId=3148485691
Response.BucketTable=285975491
Response.type=4
Sig[0].Name=Application Name
Sig[0].Value=alouette-2019-04-29.exe
Sig[1].Name=Application Version
Sig[1].Value=0.0.0.0
Sig[2].Name=Application Timestamp
Sig[2].Value=00000000
Sig[3].Name=Fault Module Name
Sig[3].Value=KERNELBASE.dll
Sig[4].Name=Fault Module Version
Sig[4].Value=6.1.7601.24408
Sig[5].Name=Fault Module Timestamp
Sig[5].Value=5c92f101
Sig[6].Name=Exception Code
Sig[6].Value=c0000005
Sig[7].Name=Exception Offset
Sig[7].Value=000373de
DynamicSig[1].Name=OS Version
DynamicSig[1].Value=6.1.7601.2.1.0.256.48
DynamicSig[2].Name=Locale ID
DynamicSig[2].Value=1033
DynamicSig[22].Name=Additional Information 1
DynamicSig[22].Value=59d2
DynamicSig[23].Name=Additional Information 2
DynamicSig[23].Value=59d28f4851ee3e61e3aa57edc696ac9e
DynamicSig[24].Name=Additional Information 3
DynamicSig[24].Value=96e5
DynamicSig[25].Name=Additional Information 4
DynamicSig[25].Value=96e5d9c06ef15df24e090b4b614092d0
UI[2]=C:\Program Files\ChessBase\Engines.x64\CCRL\a-c\alouette\alouette-2019-04-29.exe
UI[3]=alouette-2019-04-29.exe has stopped working
UI[4]=Windows can check online for a solution to the problem.
UI[5]=Check online for a solution and close the program
UI[6]=Check online for a solution later and close the program
UI[7]=Close the program
LoadedModule[0]=C:\Program Files\ChessBase\Engines.x64\CCRL\a-c\alouette\alouette-2019-04-29.exe
LoadedModule[1]=C:\Windows\SysWOW64\ntdll.dll
LoadedModule[2]=C:\Windows\syswow64\kernel32.dll
LoadedModule[3]=C:\Windows\syswow64\KERNELBASE.dll
LoadedModule[4]=C:\Windows\syswow64\oleaut32.dll
LoadedModule[5]=C:\Windows\syswow64\ole32.dll
LoadedModule[6]=C:\Windows\syswow64\msvcrt.dll
LoadedModule[7]=C:\Windows\syswow64\GDI32.dll
LoadedModule[8]=C:\Windows\syswow64\USER32.dll
LoadedModule[9]=C:\Windows\syswow64\ADVAPI32.dll
LoadedModule[10]=C:\Windows\SysWOW64\sechost.dll
LoadedModule[11]=C:\Windows\syswow64\RPCRT4.dll
LoadedModule[12]=C:\Windows\syswow64\SspiCli.dll
LoadedModule[13]=C:\Windows\syswow64\CRYPTBASE.dll
LoadedModule[14]=C:\Windows\syswow64\LPK.dll
LoadedModule[15]=C:\Windows\syswow64\USP10.dll
LoadedModule[16]=C:\Windows\system32\IMM32.DLL
LoadedModule[17]=C:\Windows\syswow64\MSCTF.dll
LoadedModule[18]=C:\Windows\system32\uxtheme.dll
State[0].Key=Transport.DoneStage1
State[0].Value=1
State[1].Key=DataRequest
State[1].Value=iData=1/nDumpFile=//Upload//iCab//139-3b997e5e03234eb5930fd2de4e066009-c852876da7a372c4110ba3c3bbaa143b-1-1228255384451028027-AppCrash32-6-1-7601-2.cab/nDumpServer=watson.microsoft.com/nResponseServer=watson.microsoft.com/nResponseURL=//dw//StageFour.asp?iBucket=1228255384451028027&szCab=3b997e5e03234eb5930fd2de4e066009.cab&EventType=AppCrash32&BucketHash=c852876da7a372c4110ba3c3bbaa143b&MID=FEE2AA27-9D66-4CAD-858E-73E264EB7636/nBucket=-1146481605/nBucketTable=285975491/nResponse=1/n
FriendlyEventName=Stopped working
ConsentKey=APPCRASH
AppName=alouette-2019-04-29.exe
AppPath=C:\Program Files\ChessBase\Engines.x64\CCRL\a-c\alouette\alouette-2019-04-29.exe
edit: exact same error on a 16-core Sandybridge dual Xeon (E5-2670), same OS (Win 7 x64 Pro SP1).
Last edited by tpoppins on Mon Apr 29, 2019 6:28 am, edited 1 time in total.
Tirsa Poppins
CCRL

tpoppins
Posts: 918
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Alouette 0.0.1

Post by tpoppins » Mon Apr 29, 2019 7:44 am

I tried building from the source you provided in your last post. Same error.

Code: Select all

C:\msys64\home\admin\alouette\source>C:\FPC\3.0.4\bin\i386-win32\fpc.exe -B -M
jfpc -Sh -Sa -Fcutf8 -FUunits -dDEBUG alouette
Compiling Debug Version
Free Pascal Compiler version 3.0.4 [2017/10/06] for i386
Copyright (c) 1993-2017 by Florian Klaempfl and others
Target OS: Win32 for i386
Compiling alouette.pas
Compiling journal.pas
Compiling joueur.pas
Compiling echecs.pas
Compiling damier.pas
Compiling tables.pas
Compiling deplacement.pas
Compiling meilleur.pas
Compiling coups.pas
coups.pas(166,12) Note: Local variable "passives" is assigned but never used
Compiling roque.pas
Compiling histoire.pas
Compiling tablespiececase.pas
Compiling tri.pas
meilleur.pas(136,66) Note: Local variable "LBalanceMateriel" not used
Compiling outils.pas
Compiling essais.pas
Compiling numero.pas
Compiling performance.pas
Linking alouette.exe
7114 lines compiled, 0.3 sec, 182960 bytes code, 44708 bytes data
2 note(s) issued

C:\msys64\home\admin\alouette\source>alouette
An unhandled exception occurred at $004272D8:
EAssertionFailed: Assertion failed (essais.pas, line 23)
  $004272D8  ESSAIS_$$_init$,  line 39 of essais.pas
  $0040A9A4

edit: Also built a 64-bit v0.0.3 -- need to test it make our current blitz entry more balanced. It runs without errors but stalls just like the official exec.
Perhaps it's a timing issue. Alouette sends bestmove to the GUI instantly. How about inserting a delay -- say, 100 or 500 ms -- before each command it sends to the GUI?
Tirsa Poppins
CCRL

User avatar
Roland Chastain
Posts: 148
Joined: Sat Jun 08, 2013 8:07 am
Location: Dakar (Senegal)
Full name: Roland Chastain
Contact:

Re: Alouette 0.0.1

Post by Roland Chastain » Mon Apr 29, 2019 8:19 am

@Tirsa
Thank you for your message. For the first error that you reported, it's because the program doesn't find the file chess960.fen, which is used for a test (only in the DEBUG version). The file was included in the ZIP file. You can also solve that problem by removing the test unit (named Essais) and recompiling.

Code: Select all

// alouette.pas

program Alouette;

uses
  Classes, SysUtils, Journal, Joueur, Echecs, Outils,
{$ifdef DEBUG}
  //Essais, <----
{$endif}
  Performance;
OK, I will try to add a delay as you suggest. Thank you.

tpoppins
Posts: 918
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Alouette 0.0.1

Post by tpoppins » Mon Apr 29, 2019 9:50 am

Sorry, that was dumb of me to miss the significance of the .fen file. The error went away with the file placed into the same dir.

I ran a short tmt vs. Sapeli RND and set up Cute Chess to abort after the first problem -- Recover crashed engines=off. Concurrency was set to one, to keep things simple. Curiously, this produced the longest uninterrupted series of games I've seen from Alouette so far. It finally stalled on the 21st game after winning 20 in 11 seconds. Log and PGN attached.
Attachments
alouette-20190429-stall.zip
log and PGN
(48.71 KiB) Downloaded 13 times
Tirsa Poppins
CCRL

User avatar
Roland Chastain
Posts: 148
Joined: Sat Jun 08, 2013 8:07 am
Location: Dakar (Senegal)
Full name: Roland Chastain
Contact:

Re: Alouette 0.0.1

Post by Roland Chastain » Mon Apr 29, 2019 10:11 am

Thank you Tirsa. I can reproduce the bug here. I come back as soon as it is fixed.

tpoppins
Posts: 918
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Alouette 0.0.1

Post by tpoppins » Mon Apr 29, 2019 11:49 am

Good, I'm looking forward to the fix.

While trying to generate some more games for the v0.0.3 entry on the blitz list I managed to unearth this:



If later version didn't explicitly fixed this it's worth looking into, rare as it is.
Tirsa Poppins
CCRL

User avatar
Roland Chastain
Posts: 148
Joined: Sat Jun 08, 2013 8:07 am
Location: Dakar (Senegal)
Full name: Roland Chastain
Contact:

Re: Alouette 0.0.1

Post by Roland Chastain » Mon Apr 29, 2019 2:57 pm

OK, the first bug is fixed. It was a very important bug and I wonder how I didn't see it before. Thank you Tirsa.

alouette-201904291647.zip

Now I will make something for the bug that you reported in your latest message. :)

tpoppins
Posts: 918
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Alouette 0.0.1

Post by tpoppins » Mon Apr 29, 2019 5:05 pm

Whoa, that some quick work, Roland!

100 40/2 games vs. Sapeli RND with concurrency=4 completed in 1m 8s without a single error! Bravo!
Now I just need to backport this to v0.0.3 -- since v0.0.5 scores over 90% vs. a random mover v0.0.3 should still be useful.

So far I figured out that the following needs to be inserted in interprete.pas at line 152, after { Promotion }

Code: Select all

    if (Length(ACoup) = 4) and EstUnePromotion(APos, ACoup) then
    begin
      Eteint_(LType^, LDep);
      Allume_(APos.Dames, LDep);
      LType := @APos.Dames;
    end else
but the changes in meilleur.pas are beyond me.
Tirsa Poppins
CCRL

User avatar
Roland Chastain
Posts: 148
Joined: Sat Jun 08, 2013 8:07 am
Location: Dakar (Senegal)
Full name: Roland Chastain
Contact:

Re: Alouette 0.0.1

Post by Roland Chastain » Mon Apr 29, 2019 5:38 pm

tpoppins wrote:
Mon Apr 29, 2019 5:05 pm
Now I just need to backport this to v0.0.3 -- since v0.0.5 scores over 90% vs. a random mover v0.0.3 should still be useful.

So far I figured out that the following needs to be inserted in interprete.pas at line 152, after { Promotion }

Code: Select all

    if (Length(ACoup) = 4) and EstUnePromotion(APos, ACoup) then
    begin
      Eteint_(LType^, LDep);
      Allume_(APos.Dames, LDep);
      LType := @APos.Dames;
    end else
but the changes in meilleur.pas are beyond me.
Thank you Tirsa. I believe that the modification above is enough. If I remember correctly, other changes are just extra code that I wrote to find the bug.

But there was a bug in v0.0.3, and I don't remember exactly which one. If you need a version weaker than the current version, I could add a setting for that, to reproduce the behaviour of the previous versions (but without bugs).

User avatar
Roland Chastain
Posts: 148
Joined: Sat Jun 08, 2013 8:07 am
Location: Dakar (Senegal)
Full name: Roland Chastain
Contact:

Re: Alouette 0.0.1

Post by Roland Chastain » Mon Apr 29, 2019 6:20 pm

@Tirsa

I fixed the other bug that you have reported (illegal castling).

alouette-201904291956.zip

Thank you very much!

Post Reply