View Single Post
Old 06-24-2019, 09:39 AM   #6
Kryptozoon
Junior Member
Kryptozoon began at the beginning.
 
Posts: 5
Karma: 10
Join Date: Jun 2019
Location: Budapest, Hungary
Device: Hanlin V3+
While waiting for a miracle here I have finished implementing the game in Java, and it does run - for a low enough value of 'running' - on the ebook reader. I'd need some proper words to describe its performance, but for now we can probably settle on "abysmal". 2-ply search + extending the horizon by one ply at each check, plus a quiescence search along captures + repetition check using Zobrist hashes = sometimes three-four minutes worth of thinking. I'm sure I could tune the algorithm somewhat - e.g. the efficiency of the alpha-beta cutoff depends on a preliminary sorting and I am not at all sure I'm doing it correctly. For now, given how a weak player I am and how I'll use this game mostly amid distractions provided by public transport, I think I'll simply cut back on depths - no horizon expansion, a ten-ply limit even for quiescence search etc. We should be evenly matched, then.

I kept postponing this particular experiment for four years because when I last tried it I kept running into spurious Out of memory errors with it, and the errors seemed to be linked to the amount of static data I had. But it turns out the problem is with JVM initialization, not class loading. Specifically, I need two-three megabytes at most, but since I kept getting the OOM erros, I was trying to set the heap size as high as possible, which is 64 M. Turns out the problem is this heap size - if I set it to 32 M, which is still more than I need, the OOM errors go away.

All this is rather unsatisfactory, so I still hope someone can direct me to the proper SDK. I was told nothing ever disappears from the Internet once it makes it there, but I seem to have stumbled upon a counterexample.
Kryptozoon is offline   Reply With Quote