I want to start learning of AI and have an idea to program "social evolution simulator" but want to hear any advice to avoid creation "well known bicycles" and get strong knowledge-base. Will be grateful for online resources and/or books. Thanks.

Also, I understand, that any programming language can be used for this, but probably some language is already more suitable for.

  • 1
    $\begingroup$ This is a really broad question. Have you tried googling? There are many online resources for learning AI basics. Like this. Checking university websites is also helpful like this one. Buy the books, do the exercises. $\endgroup$ – adrianN Jun 6 '16 at 14:41
  • $\begingroup$ Thanks! Yes, there are really a lot of resources, but my biggest point of misunderstanding was "what is the most suitable for absolutely novice". I'll check your links, thank you! $\endgroup$ – Slava Klevchenia Jun 6 '16 at 14:45
  • 1
    $\begingroup$ Also, "best" is subjective. $\endgroup$ – Raphael Jun 6 '16 at 18:17

Artificial intelligence is vast.

A seminal paper by Marvin Minsky (1963) will be best place to start. I consider it to be a fundamental resource. Minsky wrote this paper in 1963, and set the foundations of much of the modern terminology of AI.

Minsky, Marvin. "Steps toward artificial intelligence." Proceedings of the IRE 49.1 (1961): 8-30.


  • "Artificial Intelligence: A Modern Approach" by Russell and Norvig
  • Overview of constraint programming "Principles of Constraint Programming by Krzysztof Apt".
  • Advanced book "Foundations of Statistical Natural Language Processing by Christopher D. Manning and Hinrich Schuetze".
  • Machine learning methods "Machine Learning by Tom M. Mitchell".
  • Intelligence by Jeff Hawkins and How to Create a Mind by Ray Kurzweil
  • The Emotion Machine by Marvin Minsky
  • Artificial Intelligence: A Modern Approach by Peter Norvig and Stuart J. Russell
  • Artifical Intelligence - A Modern Approach by Russell and Norvig
  • Sciences of the Artifical by Herb Simon
  • "An Introduction to Neural Networks" from Ben Krose and Patrick van der Smagt
  • "Information Theory, Inference, and Learning Algorithms" part V, from David J.C. MacKay

Online material

Language (my prioritizes)

  1. Python
  2. Java

Open Source Software Library

| cite | improve this answer | |
  • $\begingroup$ Please consider not to encourage undesirable posting behaviour. $\endgroup$ – Raphael Jun 6 '16 at 18:17
  • $\begingroup$ Thank you! After googleing I'd feeling about Python as "a must" language and now it became stronger. $\endgroup$ – Slava Klevchenia Jun 7 '16 at 6:16
  • $\begingroup$ Just curious why python and Java? because of libraries available? $\endgroup$ – Dreaded semicolon Mar 24 '17 at 16:29
  • $\begingroup$ Exactly! I want to get work done in days, not weeks or months. $\endgroup$ – Alwyn Mathew Mar 24 '17 at 18:16

If you want to learn a new subject I will strongly recommend you to take up a online course on that. That way you will be motivated to finish up the course and can see it through the end. Also, in a course instructor will take you step wise through the material as well there are additive benefits of assignments. So here are few online courses that I have tried.

There is this course on AI offered by UC berkely professor, Pieter Abeel. Here is the link to all the material of that course, http://ai.berkeley.edu/lecture_videos.html. I thoroughly enjoyed the course because he explained things very well using the help of diagrams and all.

Another course that you can try is on Udacity. Here is the link to the course, https://www.udacity.com/course/intro-to-artificial-intelligence--cs271. It is instructed by one of the author of famous AI book named as "Artificial Intelligence: A Modern Approach" by Russell and Norvig.

And I will recommend python as language because it is very easy to use.

| cite | improve this answer | |

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