badescunicu / ChessEngine

This is a Chess Engine for a University Project.
0 stars 0 forks source link

Illegal move "a1a1" #5

Open stefanmirea opened 10 years ago

stefanmirea commented 10 years ago

Salvati urmatoarea linie intr-un fisier: 4k1nr/3Q2pp/5p1q/1B2p3/7P/P5P1/7K/8 b k - 0 1 Apoi: incarcati engine-ul in xboard ca first, incarcati fisierul cu File -> Load Position si dati Mode -> Machine Black. Rezultatul va fi: Illegal move "a1a1" from first machine.

stefanmirea commented 10 years ago

Motivul e ca in metoda Game::alpha_beta, move_index ramane -1 si se returneaza moves[-1]. Schema pe care am urmarit-o eu e cea de la alpha-beta, varianta cu negamax, asa cum arata cand am avut eu laboratorul[1]. Daca implementez algoritmul asa cum arata acum in laborator, nu mai da illegal move, dar am senzatia ca joaca mult mai prost. Dubios :-?

[1] http://ocw.cs.pub.ro/courses/pa/laboratoare/laborator-05?rev=1395831112