I'd like to know at what point can be considerated an AI implementation?

I means, what is the minimal requeriment for that?

Can you give a simple code example?

  • possible duplicate of Will we ever develop artificial intelligence? (Covers same ground)
    – user8
    Sep 18, 2010 at 4:18
  • 6
    sorry, but there is nothing duplicated.
    – killown
    Sep 18, 2010 at 6:02
  • 1
    This question is so very unclear. Relates to the field of AI ≠ would be considered AGI.
    – Tobu
    Nov 24, 2010 at 22:51

5 Answers 5


Any program in which the decisions made at time t are impacted by the outcome of decisions made at time t-1. It learns.

A very simple construct within the field of Neural Networks is a Perceptron. It learns by adjusting weights given to different input values based on the accuracy of the result. It is trained with a known set of good inputs. Here is an article that covers the theory behind a single layer Perceptron network including an introduction to the the proof that networks of this type can solve specific types of problems:

If the exemplars used to train the perceptron are drawn from two linearly separable classes, then the perceptron algorithm converges and positions the decision surface in the form of a hyperplane between the two classes.

Here is a book chapter in PDF form that covers the topic. Here is an Excel Spreadsheet that explains a bit more with a concrete example. And finally, here is a beautiful Javascript Example that you can watch learn.

  • I don't know... this is a good definition of learning systems, but artificial intelligence is a broader field, surely? If you pick up a text on AI you'll find subjects such as decision trees, search algorithms etc., which don't "learn" in the sense that you mean.
    – Ben
    Sep 19, 2010 at 18:03
  • 1
    That is a very good point. True, Wikipedia notes that "AI textbooks define the field as "the study and design of intelligent agents"[1] where an intelligent agent is a system that perceives its environment and takes actions that maximize its chances of success.[2]" en.wikipedia.org/wiki/Artificial_intelligence which is a very good definition. I have always been partial to having 'learning' as part of the definition, because the bar is much lower if you do. You don't have to mimic a level of knowledge, just the capacity to improve. Learning AI is sexy AI. Sep 20, 2010 at 2:37

I'd say some sort of decision-making and/or learning algorithm would be involved. You can read about different sub-problems within AI in this Wikipedia article.

Depending on what you needed AI for, there'd need to be an implementation of some subset of those.


Depends on how your want to define AI. The working definition I was given in my intro to AI class was:

AI is any program that does something computers are not traditionally good at but humans are.

Examples being game AI, natural language processing, image processing, etc.

Assuming such a definition for AI, there's no 'minimal requirements'- a Tic-Tac-Toe AI is just a simple decision tree, for example. For a small enough subset of NLP, "Hello World" is AI. There's no real answer to your question in that regard.

  • I just want a example code, when you start learn programming you have the "Hello World" example, then I need a "Hello word" of AI programming.
    – killown
    Sep 18, 2010 at 6:32
  • As I said, that depends on what you define as "AI." Sep 18, 2010 at 14:31
  • 2
    RIGHT. And usually the rule is, as soon as computers get good at doing it, you have to stop calling it AI :) Nov 25, 2010 at 1:26

I would consider any machine that is both useful and permanently beyond my understanding to be artificially intelligent (although I dare not suggest that such machine might exist outside of fiction lest my geekhood would be cast into doubt).

alt text

A less personal definition:

A machine can be considered artificially intelligent if it can solve classes of problem that were not envisaged by its designers.

Preumably, the architects of such a machine must endow their creation with the ability to lean, or else they must be possessors of extreem good fortune. By definition, trivial machine learning is precluded (so no, your tic-tac-toe solver dosn't count). Either way, happy + surprised should characterise the mood of that machine's engineers.

The closest I can get to a code sample? Is this:


This works quite well on my machine (indeed, this automiton sometimes appears prescentient) but YMMV.


It passes the Turing Test? In other words, a human being wouldn't be able to definitely tell the actions of your code from that of another human being attempting to do the same thing. Basically, can it fool someone?

  • -1 Passing the Turing Test is hardly the -minimal- requirement for code to be considered an AI implementation.
    – adamk
    Nov 24, 2010 at 22:59
  • @adamk Surely this depends on what your definition of "AI implementation" is? The fact that the OP stated what is the "minimal requirement" without first defining what "AI" is renders the word "minimal" redundant. How do you know what "minimal" means without a definition of "AI"? It doesn't make sense. My answer addresses one commonly-accepted test to define AI which is all you can really do. So mark my answer down, but realise your subjective view of "minimal" is no more correct than mine.
    – Dan Diplo
    Nov 25, 2010 at 11:52
  • The Turing test is a measure of a machines intelligence evaluated by a human judge conversing in natural language with both a machine and a human. If the judge cannot tell which is the machine, then the AI implementation passes the test. However, a machines intelligence is not limited to communication via natural language. Using the same evaluation methodology a judge could watch the moves of Garry Kasparov playing chess against Deep Blue and be incapable of telling which is the real player, 'fooling' the judge, thereby defining the machines intelligence in this area.
    – adamk
    Nov 25, 2010 at 18:58
  • Extrapolating from that, as playing chess is much simpler and therefore has more minimal requirements to complete the implementation than any implementation meeting the requirements of the Turing Test. However, I was a bit pissed last night, and although I disagree with your answer, it didn't really deserve a down vote so I apologise for that.
    – adamk
    Nov 25, 2010 at 19:00
  • Fair enough. But I would personally exclude being able to play chess from any definition of "AI" since machines excel at chess mainly due to brute-force (having a massive database of opening/closing moves) rather than through other means. I still think the general definition of being able to "fool someone" that it could be human (or other living entity) is a reasonable rule of thumb for an AI.
    – Dan Diplo
    Nov 26, 2010 at 10:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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