On 2/24/13, Patrik Baláž <[email protected]> wrote: > Hello. Hi Patrik,
without knowing more about what you are planning to do it's hard to know what may be relevant to how easy creating your AI will be. Are you planning to use learning? In that case: supervised, reinforced or unsupervised? Are you planning to use pre exisiting AI libraries? In that case: in what language are they written and how are they licensed? Are you planning to release your code? Are you planning to reuse (parts of) the existing AI? There are different ways for an AI to talk to Freeciv. Please note that I may be biased when I describe them. Human players connects to the Freeciv server using Freeciv clients. An AI that want to be sure that the server has the same control over it as it has over a human player can pretend to be a client used by a human. (This way it is possible to be sure that the AI isn't cheating during an experiment where it isn't supposed to cheat even if it has a bug) The standard AI uses the server's AI-interface. This runs the AI inside the server. It is possible to reuse the existing Freeciv code, including the AI code, from it. It is also easy to cheat from it. https://gna.org/patch/?2143 is about making it possible to write server side AI's in Lua. How knowledge intensive are the methods you plan to use? Freeciv has a a lot of domain knowledge gathered in the rule sets. Much of that knowledge is in a declarative format (making auto conversion easier). For the most common rule sets the imperative parts (the Lua code) aren't to large. The developers continue moving stuff from Freeciv's C code to the rule set. As we speak rivers are changed from special stuff that has hard coded rules in many different C files to some declarative statements in the rule set. If you go for Freeciv it may be a good idea to consider what tasks can be done upstream in Freeciv. Having people that know more about the code base than you do review your patch will correct mistakes you did while writing it. Doing a task in Freeciv also enables cooperation: If doing a task in Freeciv cost 150 effort and doing it locally cost 100 effort but someone else is willing to do 50% of it if its done in Freeciv you will still save effort by doing it in Freeciv. -- Sincerely Sveinung Kvilhaugsvik _______________________________________________ Freeciv-dev mailing list [email protected] https://mail.gna.org/listinfo/freeciv-dev
