Computers and programming are a major part of my life. I enjoy the logic of
them, figuring out puzzles.
Right now I am working on a text based Artificial Intelligence(AI) program. The
program should be able to understand and respond to English text entered into
the console window. In addition, the program should be able to learn from text
it is not familiar with. In other words, by 'talking' to the program through
the console you will not be able to tell if you are communicating with a real
life person or a computer.
I am still not sure what approach I should take, but I do know what approaches
I should not take. First off, I obviously can't explicitly program a response
for every sentence in the English language, way too many of those. Secondly,
the interpreter cannot understand the meaning of a sentence simply by
understanding the meaning of each word as words often have multiple meanings
that are determined by context. (e.g. The word 'hate' in "I hate you" could
mean either a negative emotion or a playful one depending on the context of the
sentence with-in all sentences of communication). Its not too hard to see that
my AI program gets very complicated very fast.
I think the secret lies in discovering how a child learns English for the first
time. I believe that this will be a very vital part of my program. Reproducing
the structure of the human brain, this is the answer. It is unfortunate that a
lot of these mechanisms are invisible to us as humans, we just go about
thinking and learning without the ability to see whats going on 'under the
hood'. What physical things take place in the brain that allow us to remember
and use English?
-------------------------------
5/11/04 Got some more ideas on AI
Words are just the tip of the iceburg. To create a program that can respond as a human would
you have to create a lot of other things. It needs to have emotions, thought patterns and the
like. It can't work exclusivly within a world of text. What makes human speech human has nothing
to do with mechanical things. The ultimate action of speech must follow certain mechanical rules
to be considered language, but what leads to the final result of speech is something much more
organic.
What is said by a human is determined by current internal circumstances. Current internal circumstances
are determined by current external circumstances and past internal/external circumstances.
Current external circumstances are the world as perceived by the viewer. The raw surroundings of the viewer
are taken in and passed through several layers of interpretation until they are either discarded or
converted into something meaningful to the viewer and cause emotions, thoughts or action.
Past internal/external circumstances create these layers of interpretation of present circumstances. They are memories
that influence how the present is percieved. These memories are manifested either as emotions or thoughts.
So, essentially, speech is the sum of emotions and thoughts coupled with the current state of the viewer.
In order to create my text based AI program I will first need to find a way to create, store and recall simulated thoughts and
emotions. Next, it will need to be able to percieve a current state of existence. Finally, it will have to recall certain thoughts
and emotions and combine them somehow with its current state of existence and then combine this element with certain language rules in
order to produce speech.
This all sounds very abstract and complicated, but I believe I can break it down far enough to turn it into code. All I have to do
is pass through all necessary obstacles.