Jakob256 / PurplePanda

Chess Engine
2 stars 0 forks source link

Makefile? #1

Closed rwbc closed 2 years ago

rwbc commented 2 years ago

Could you please add a makefile? I would like to compile it myself.

The release version 10 doesn't work on my old hardware, actually it crashes after 'position startpos' from cmd, probably due to missing instructions or popcount.

Guenther

rwbc commented 2 years ago

Ok I tried now: g++ -O3 -pthread -march=native -static UCI_wrapper.cpp -oPP_10

and this worked.

uci
id name Purple Panda
id author J. Steininger
uciok
isready
readyok
position startpos
go wtime 100000 btime 100000
info depth 20 score cp 0 nodes 81 pv g1f3
info depth 30 score cp 10 nodes 1005 pv g1f3
info depth 40 score cp 0 nodes 6034 pv g1f3
info depth 50 score cp 8 nodes 68664 pv e2e4
info depth 60 score cp 0 nodes 256597 pv d2d4
info depth 70 score cp 8 nodes 2176291 pv b1c3
countingStationaryEvalCalled: 11180841
countingEvalCalled: 12196587
countingMoveGenerationCalled: 1015746
bestmove b1c3

Depth seems multiplied by 10 though.

I guess the program is inspired by Vice?

Guenther

rwbc commented 2 years ago

compling the TB file now worked too, but you forgot an include in assignMoveList.h

g++ -O3 -pthread -march=native -static creating_KPk_Tablebase.cpp -oTB
In file included from creating_KPk_Tablebase.cpp:17:
assignMoveList.h: In function 'void assignMoveList(int (*)[8], long long unsigned int, int*, bool)':
assignMoveList.h:30:9: error: 'countingMoveGenerationCalled' was not declared in this scope
   30 |         countingMoveGenerationCalled++;
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~

after adding #include "globalVariables.h" it compiled.

Jakob256 commented 2 years ago

Hi Guenther,

I'm glad to hear you were able to get it running :)

@depth: Yes, the search depth is returned as a multiple of 10. In an earlier version, this was used for debugging and I left it in. I am planning to update the search heuristic in general, at which point I will get rid of the *10 :)

@Inspiration: I actually didn't look at any other code/engine for creating PurplePanda. I simply searched for general ideas for chess engine on the chessprogramming wiki and thought about how I could implement them. The only thing I directly copied was the Piece-Square table, taken from https://www.chessprogramming.org/Simplified_Evaluation_Function .

@KPk-Tablebase: thanks for pointing it out. This part was used once for creating the Tablebase and then never updated. I now pushed a fix for the problem.

Let me know if can help you any further:) Jakob

rwbc commented 2 years ago

Let me know if can help you any further:) Jakob

Yes, for including your program into the XB/UCI chronology I need to know if you are from Germany or Austria, actually I found two Jakob Steininger, who could be you ;-)

Edit: BTW I had no problem using your program vs. other programs in the CuteChessGUI. My current very rough guess would place it somewhere between 1300 and 1500 CCRL rating.

Jakob256 commented 2 years ago

I'm from Austria and looking forward to having my engine compete against others as well as improving it further :D

rwbc commented 2 years ago

Thanks! Current issue can be closed :)