Search found 81 matches

by maksimKorzh
Sat Sep 15, 2018 10:14 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Newbie's question about printing the PV
Replies: 12
Views: 1991

Re: Newbie's question about printing the PV

I actually did it, but forgot to add to post, the declaration is int *pvStart = pvPtr; // start of own PV *pvStart = 0; // initialize empty PV at the top of the PV stack At the moment I'm experimenting with triangular pv you've mentioned, I use pvTable[64][64] array to store pv and it seems to work ...
by maksimKorzh
Sat Sep 15, 2018 6:55 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Newbie's question about printing the PV
Replies: 12
Views: 1991

Re: Newbie's question about printing the PV

Here is the code: int pvStack[10000]; int *pvPtr = pvStack; static int NegaMaxSearch(int alpha, int beta, CHESSBOARD *board, SEARCH *info, int depth) { ... for(int moveNum = 0; moveNum < list->moveCount; ++moveNum) { ... if(score >= beta) { ... return beta; // fail hard beta-cutoff } if(score > alph...
by maksimKorzh
Sat Sep 15, 2018 6:24 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Newbie's question about printing the PV
Replies: 12
Views: 1991

Re: Newbie's question about printing the PV

mr. H.G.Muller, I've implemented mvv_lva, killer and history heuristics and now Chenglite become pretty stronger compare to no move ordering. I've also implemented your method of collecting PV, but the question is how to actually retrieve the line back from pvStack[10000] array. I tried to loop thro...
by maksimKorzh
Fri Sep 14, 2018 8:17 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Minimalist UCI chess engine written by self learner from scratch
Replies: 18
Views: 2887

Re: Minimalist UCI chess engine written by self learner from scratch

I'm stuck with collecting mating scored moves, please help static inline int NegaMaxSearch(int alpha, int beta, CHESSBOARD *board, SEARCH *info, int depth) { int bestScore = 0; int bestMove = 0; int legalMoves = 0; info->nodes++; if(InCheck(board, side)) depth++; if(!depth) return QuiescenceSearch(a...
by maksimKorzh
Tue Sep 11, 2018 4:09 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Newbie's question about printing the PV
Replies: 12
Views: 1991

Re: Newbie's question about printing the PV

That's exactly what I was asking for, thanks a lot again! Just great!
by maksimKorzh
Tue Sep 11, 2018 3:25 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Minimalist UCI chess engine written by self learner from scratch
Replies: 18
Views: 2887

Re: Minimalist UCI chess engine written by self learner from scratch

Wow, that's fantastic answer, making all the things completely clear to me now! Thank's a lot. H.G.Muller, I'm great fan of you and this is the great honor for me to get an answer from you, I've researched MicroMax as far as I could understand it... well, at least I've read a lot at your site descri...
by maksimKorzh
Tue Sep 11, 2018 1:24 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Minimalist UCI chess engine written by self learner from scratch
Replies: 18
Views: 2887

Re: Minimalist UCI chess engine written by self learner from scratch

Some errors 1) Quiescence search and nega max search. Take back should be placed before if (score >= beta) otherwise you return without having take back the move. 2) quiescence search. If you are in check you have to switch back to all move generation, not only capture. 3) quiescence. It looks like...
by maksimKorzh
Tue Sep 11, 2018 11:20 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Minimalist UCI chess engine written by self learner from scratch
Replies: 18
Views: 2887

Re: Minimalist UCI chess engine written by self learner from scratch

Re: Minimalist UCI chess engine written by self learner from scratch Post by elcabesa » Tue Sep 11, 2018 10:40 am Some errors 1) Quiescence search and nega max search. Take back should be placed before if (score >= beta) otherwise you return without having take back the move. 2) quiescence search. ...
by maksimKorzh
Tue Sep 11, 2018 9:33 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Newbie's question about printing the PV
Replies: 12
Views: 1991

Newbie's question about printing the PV

Currently my engine has a very basic alpha beta pruning and no move ordering for now. For now I want to avoid using of PV-table and simply try to print to the screen the PV-move of each ply, but I'm stuck. Could you please help me finding the right approach? This is my code: static inline int NegaMa...