<p>I've been asked to help out on an XNA project with the AI. I'm not totally new to the concepts (pathfinding, flocking, etc.) but this would be the first "real" code. I'd be very thankful for any resources (links or books); I want to make sure I do this right.</p>

[{'answer_id': 24815, 'author': 'Josh Segall', 'author_id': 2659, 'author_profile': 'https://Stackoverflow.com/users/2659', 'pm_score': 1, 'selected': False, 'text': '<p>I\'ve always found <a href="http://www.gameai.com/" rel="nofollow noreferrer">Steve Woodcock\'s Game AI site</a> to be a great reference.  It includes discussion, source code, and pointers to books, conferences, etc.</p>\n'}, {'answer_id': 24875, 'author': 'tghw', 'author_id': 2363, 'author_profile': 'https://Stackoverflow.com/users/2363', 'pm_score': 4, 'selected': False, 'text': '<p>The standard textbook and a great place to start is Russel and Norvig\'s <a href="https://rads.stackoverflow.com/amzn/click/com/0137903952" rel="noreferrer" rel="nofollow noreferrer"><em>Artificial Intelligence: A Modern Approach</em></a>.  You can also get <a href="http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-034Spring-2005/CourseHome/" rel="noreferrer">MIT\'s Intro AI course</a> via <a href="http://ocw.mit.edu/" rel="noreferrer">OpenCourseWare</a></p>\n'}, {'answer_id': 24926, 'author': 'Tomi Kyöstilä', 'author_id': 616, 'author_profile': 'https://Stackoverflow.com/users/616', 'pm_score': 2, 'selected': False, 'text': '<p>You might find the blog, wiki and forums on <a href="http://aigamedev.com/" rel="nofollow noreferrer">AiGameDev.com</a> useful.</p>\n'}, {'answer_id': 24927, 'author': 'Berzemus', 'author_id': 2452, 'author_profile': 'https://Stackoverflow.com/users/2452', 'pm_score': 4, 'selected': True, 'text': '<p>These links might be useful to check out, for a beginning (even if most are mostly game-oriented):<br>\n<a href="http://www.a-i.com" rel="nofollow noreferrer">http://www.a-i.com</a><br>\n<a href="http://www.kynogon.com" rel="nofollow noreferrer">http://www.kynogon.com</a><br>\n<a href="http://openai.sourceforge.net" rel="nofollow noreferrer">http://openai.sourceforge.net</a><br>\n<a href="http://www.botspot.com" rel="nofollow noreferrer">http://www.botspot.com</a><br>\n<a href="http://aigamedev.com" rel="nofollow noreferrer">http://aigamedev.com</a><br>\n<a href="http://www.aiwisdom.com" rel="nofollow noreferrer">http://www.aiwisdom.com</a><br>\n<a href="http://igda.org/ai/" rel="nofollow noreferrer">http://igda.org/ai/</a><br>\n<a href="http://gamedev.net" rel="nofollow noreferrer">http://gamedev.net</a></p>\n\n<p>and <a href="http://www.gameai.com" rel="nofollow noreferrer">http://www.gameai.com</a>, who has already been mentioned.. </p>\n'}, {'answer_id': 24940, 'author': 'sven', 'author_id': 46, 'author_profile': 'https://Stackoverflow.com/users/46', 'pm_score': 2, 'selected': False, 'text': '<p>I second <a href="http://aima.cs.berkeley.edu/" rel="nofollow noreferrer"><em>"Artificial Intelligence: A modern Approach"</em></a>. It is really good at explaining the items in a basic, understandable manner. It\'s also a book that is used in <a href="http://aima.cs.berkeley.edu/adoptions.html" rel="nofollow noreferrer">many universities</a> to teach students the basics of artificial intelligence.<br>\nMaybe it is not such a bad idea to take also take a look at the <a href="http://aima.eecs.berkeley.edu/slides-pdf/" rel="nofollow noreferrer">slides they use in the courses</a>, to get a basic idea on the topics at hand.</p>\n'}, {'answer_id': 24964, 'author': 'TK.', 'author_id': 1816, 'author_profile': 'https://Stackoverflow.com/users/1816', 'pm_score': 2, 'selected': False, 'text': "<blockquote>\n  <p>Russel and Norvig's Artificial Intelligence: A Modern Approach. </p>\n</blockquote>\n\n<p>Be warned, this book is a bit of a door step. Very detailed and generally very good. I would probably recommend some of the online sites first to get a flavour for the types of algorithms you might need and then selectivly dive into Russel and Norvig to get a more in depth view of the implementation.</p>\n\n<p>Dont forget the usefulness of online forurms such as this or aigamedev.com as I used these extensivly throughout my own AI degree. You might also find that you need to buy a specific game AI book to help with some game logic as this can be substantially different from AI  'application' logic. In game scenarios I think you're generally lucky if you get ~5-10% of the processing time whereas in an application the AI is generally the only thing running and this allows for much more advanced and processor heavy techniques. This is also something that you might need to consider and Im not entirely sure that Russel &amp; Norvig is the best place.</p>\n\n<p>Good luck with the project, I wish I was in your shoes!</p>\n"}, {'answer_id': 24971, 'author': 'Andrew Walker', 'author_id': 2246, 'author_profile': 'https://Stackoverflow.com/users/2246', 'pm_score': 2, 'selected': False, 'text': '<p>Two references of interest should be </p>\n\n<ul>\n<li>Artificial Intelligence for games (Ian Millington)</li>\n<li>Programming Game AI by example (Matt Buckland)</li>\n</ul>\n\n<p>I second the reference to the AI forum at gamedev.net. particularly because some of the key posters on that forum work in the industry (including the writer of AiGameDev.com), or use AI &amp; related techniques like planning and optimisation in practical domains.</p>\n'}, {'answer_id': 35577, 'author': 'David Basarab', 'author_id': 2469, 'author_profile': 'https://Stackoverflow.com/users/2469', 'pm_score': 0, 'selected': False, 'text': '<p>I would second: Programming Game AI by example (Matt Buckland) </p>\n\n<p>This book gives great algorithms that should easly port to XNA.</p>\n'}, {'answer_id': 35581, 'author': 'Frank Krueger', 'author_id': 338, 'author_profile': 'https://Stackoverflow.com/users/338', 'pm_score': 2, 'selected': False, 'text': '<p>I have to comment that <em>AI: A modern approach</em> is a pretty dry read.</p>\n\n<p>If you\'re actually interested in AI, and want to stay interested, you are much better off going with Norvig\'s gift to the world: <a href="http://norvig.com/paip.html" rel="nofollow noreferrer">Paradigms of Artificial Intelligence Programming</a>. Not only is this a great intro to AI, it\'s a great intro to beautiful programming.</p>\n'}, {'answer_id': 36298, 'author': 'Cat Zimmermann', 'author_id': 3431, 'author_profile': 'https://Stackoverflow.com/users/3431', 'pm_score': 2, 'selected': False, 'text': '<p>There\'s an XNA specific tutorial on <a href="http://creators.xna.com/en-us/sample/flocking" rel="nofollow noreferrer">flocking</a>. </p>\n'}, {'answer_id': 67578, 'author': 'Adi', 'author_id': 9090, 'author_profile': 'https://Stackoverflow.com/users/9090', 'pm_score': 3, 'selected': False, 'text': '<p>I was surprised not to find in the above answers any of the books I though of so here goes, the books that any development team in a game studio will always have:</p>\n\n<ul>\n<li>Game Programming Gems (there are 7\nbooks by now). </li>\n<li>AI programming Wisdom (I think 4 are out).</li>\n</ul>\n\n<p>Both series are combined of many very useful articles and browsing through the first two of each series (the game programming gems have AI chapters which includes several very good articles) will give you nice understanding of both basic and advanced techniques used currently in the game industry.</p>\n\n<p>BTW - you can also gain understanding in other areas like data structures, effects, 3D and sound.</p>\n\n<p>Enjoy the reading,</p>\n'}, {'answer_id': 163578, 'author': 'Jurney', 'author_id': 2642, 'author_profile': 'https://Stackoverflow.com/users/2642', 'pm_score': 2, 'selected': False, 'text': '<p><a href="http://theory.stanford.edu/~amitp/GameProgramming/" rel="nofollow noreferrer">Amit\'s A* Pages</a> are extremely helpful in writing pathfinding code.  Lots of meaty theoretical and practical info there.</p>\n'}, {'answer_id': 359074, 'author': 'Nils', 'author_id': 44232, 'author_profile': 'https://Stackoverflow.com/users/44232', 'pm_score': 0, 'selected': False, 'text': "<p>I just read some excerpts from AI a modern approach, mostly because I'm interested in the matter, not because I could actually use it. AI a modern approach is quite good, it's well written and really interesting, however I don't know if you can use it, maybe not if you are more looking for code samples..</p>\n"}]
['https://Stackoverflow.com/questions/24812', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/-1/']