2

I'm a Java programmer, particularly an Android developer. I'm also a good chess player. My question is where do I start if I want to program a chess engine, may or may not be from scratch. Later I want to integrate it into my Android app. Thank you for your answers!

closed as not a real question by Andrew Aug 2 '12 at 14:48

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 2
    This question has been kicked around on the Meta forum. I believe, for the most part, technical questions regarding engine programming should not be asked here as the majority or participants in this forum would not have the expertise to answer these questions nor does the scope of the forum really cover most of those sorts of questions. As a fellow developer (.NET and web) I would say that you are going to get more and much higher quality answers on either CS StackExchange or StackOverflow – Robert Kaucher Aug 2 '12 at 12:39
  • 1
    Hi Adnan, thanks for your question! Right now it's a little bit too broad to be a good question for this site. The FAQ has some information about how you can narrow your question so that it can be reopened. Also, as @RobertKaucher pointed out, although many of us are programmers too, you might have better luck on one of the other SE sites like GameDev or StackOverflow. – Andrew Aug 2 '12 at 14:50
7

The Chess Programming Wiki is a good place to start . As you will quickly find out, it's a rather large and complex problem space, with many challenges (conceptual as well as actual programming).

There are plenty of open source engines out there which you could look at, to learn, or even to integrate into your engine. I think you'll generally find that these are released under the GPL, which means you are going to have trouble making using them commercially (you would have to release your own code under GPL, if you made use of a GPL engine).

If you're aiming to have a chess engine that plays at a decent level (say, 1500+), my advice would be to try to find an existing engine to use; unless you have large amounts of free time, and you are expert in programming (preferably with some background in AI). This question on StackOverflow lists several chess engines which are released under more permissive licenses.

Not the answer you're looking for? Browse other questions tagged or ask your own question.