Ok, so I have been working on my chess program for a while and I am beginning to hit a wall. I have done all of the standard optimizations (negascout, iterative deepening, killer moves, history heuristic, quiescent search, pawn position evaluation, some search extensions) and I'm all out of ideas!
I am looking to make it multi-threaded soon, and that should give me a good boost in performance, but aside from that, are there any other nifty tricks you guys have come across? I have considered switching to MDF(f), but I have heard it is a hassle and isn't really worth it.
what I would be most interested in is some kind of learning algorithm, but I don't know if anyone has done that effectively with a chess program yet.
also, would switching to a bit board be significant? I currently am using 0x88.