Author: Peter Kappler
Date: 09:15:49 07/20/00
Go up one level in this thread
On July 20, 2000 at 05:47:34, Ralf Elvsén wrote: >On July 19, 2000 at 22:18:53, Peter Kappler wrote: > >>On July 19, 2000 at 20:14:20, Ralf Elvsén wrote: >> >>>On July 19, 2000 at 18:13:30, Peter Kappler wrote: >>> >>>>On July 19, 2000 at 17:56:44, Larry Griffiths wrote: >>>> >>>>>Hi, >>>>> >>>>>I have been re-programming my chess engine lately and have been implementing a >>>>>concept that I saw posted here about a year ago. >>>>> >>>>>The concept is to look out from the FROM and TO squares when a piece is moved to >>>>>determine what pieces need to have their moves re-generated. >>>>> >>>>>I am having second thoughts about this since it is about equal to >>>>>generating moves for 2 Queens, 2 Kings, 2 Knights and 2 Pawns looking out >>>>>from the FROM and TO squares. >>>>> >>>>>Is anybody using something like this, or even tried this? >>>>> >>>>>Larry >>>> >>>> >>>>A couple of months ago, I seriously considered scrapping my move generator and >>>>using an incremental scheme, like the one you described. I spent a couple of >>>>nights thinking about the design, and then decided it was too much work. :) >>>> >>>>The big advantage I see is that you automatically get up-to-date attack >>>>information, which is extremely valuable in an eval function. >>>> >>>>I asked Bob about this a long time ago, and he said he started down this path >>>>with Crafty before switching to bitboards. I also think KnightCap does >>>>incremental move generation, and the source code is available. >>>> >>>>--Peter >>> >>>For fun I wrote a (almost) full OO-chess program in Java with this >>>move generation. It worked but was sloooooooooow, but that was only >>>one of many reasons :) >>> >>>Ralf >> >> >>Mine is in Java, too! :) >> >>--Peter > >Yes, I know. And you seem to have a pretty strong program >with competitive speed (whatever that means). I wrote a more >serious Javaprogram but I never got any speed (or depth rather) >out of it. It's not Java's fault, you have proved that. But I >never could figure out where the problem was, in spite of tweaking >and profiling. Since I was in a position where I could use some >C-knowledge in other situations, I started porting the program to >C, to learn the language better (unfinished project). > >Lately I have begun to suspect that the try/catch statements >in my Javacode was partly responsible for the preformance. >Do you know if this is true? Can you guesstimate other pitfalls >for an unexperienced Java-chess programmer? > I'm not sure about the try/catch overhead. The only thing I absolutely avoid is creating any new objects while the search is executing. Also, what VM/JIT are you using? IBMs is the fastest. >I like Javaprogramming though. If they ever add genericity >and maybe covariance and some other "minor" improvements, >it will be a joy :) > >Ralf Generic types are being considered for the next version. Good luck with your program! --Peter
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.