Creating a Powerful AI

Pages: 123... 6
I'm attempting to make the first AI that can actually think about sentences written to it. First of all, I want to make my AI some what like
http://www.wolframalpha.com/
and
http://www.cleverbot.com/
put together.

So, I want to give some computing power to it's systems! I've been studying this for the entire summer (northern hemisphere), and I think the base of it needs something I call memory slots (haha like on Playstations, but a totally different concept). So what about these? Okay, slots will be the AI's memory places. There will be 3 types:

+ binary
+ real (double)
+ string

My current question for this project is about binary slots. How would I store a bunch of bits where I could apply algorithms with ease?

I may also want to build memory slots off of other slots of the same type. For example, "virtual structures".

I'm also planning on implementing "virtual classes," or "tables" to hold groups of these slots under domains/categories.

If you're interested in helping me with this project, please contact me at bennewob@live.com, other-wise please just try to help this topic.

I have a whole team, but they're mostly oriented in game development. Go to
http://www.viblicent.com
Last edited on
Neither AI nor an Intelligence do not exist.
They are product of the overfeeding.
How would I store a bunch of bits

There is a C++ compiler construct for this purpose.
That is the bit field similar to the struct, also a set of
three logical operators. In addition there is
the asm keyword to rearrange bits in the machine that is
not thinking but clock working,so to speak. Besides the self-test
it can remember how to calculate as well.
Actually, the term computer language is not a communication
with calculators but the construction tool.
Sorry, I can't help. I'm an AItheist.
How would I store a bunch of bits where I could apply algorithms with ease?

You can try std::bitset http://www.cplusplus.com/reference/stl/bitset/ ( it's for a fixed number of bits )
Or the std::vector<bool> specialization http://www.cplusplus.com/reference/stl/vector/ ( it can grow )
There will be 3 types:

+ binary
+ real (double)
+ string

My current question for this project is about binary slots. How would I store a bunch of bits where I could apply algorithms with ease?

I may also want to build memory slots off of other slots of the same type. For example, "virtual structures".

I'm also planning on implementing "virtual classes," or "tables" to hold groups of these slots under domains/categories.
This whole thing sounds more like a language than an AI, to be honest.
This whole thing sounds more like a language than an AI, to be honest.


First of all, what do you mean by language? A programming language, ha! No.

I've been studying this for a long while (about a year now) and I've decided that the most fundamental part will require it to be able to easily manage it's own mind. For example, if you say "Do you eat apples?" one of the many things it will do is trace down the word "apple" and find out what you mean by "apple". Once it comes to realize that it is a machine and it cannot eat-food (a characteristic pre-defined at a very low-level of it's architecture), it will eventually respond "No."

To do this, it needs to store the word "apple" as a class under the class "fruit", and under the class "food" etc.

So why hold values? Well even language itself requires a lot of "programming language"-like characteristics. For example, if you query, "Turn off all of the lights." It will need to construct a loop to go through each light.

Get it yet?
I don't want to burst your bubble, but you are in way over your head.
Hundreds of thousands of people smarter than you have been working on a viable AI that can handle human language for nearly seventy years.

The best place to start is not by being snobish at a C++ forum about basic misunderstandings over the implementation language. You are clearly a novice at both C++ and AI.

To get you started, begin working through a couple of C++ tutorials and writing some simple programs to handle basic parsing and the like. A good start would be to write a program to convert all HTML tags to UPPERCASE or lowercase. After that, you could validate an html file. Then write yourself an interpreter for a simple toy language. You can google around for examples. Having a firm knowledge of this stuff is an absolutely basic requirement for the goal you have in mind.

You will also want to start hanging around with people who know their stuff about AI. That's not here.
http://www.google.com/search?q=ai+forum&search=

Remember, it is good to have a goal, but it is also good to know your limits.

It would also be helpful to play around with the sources (if you can get them) of WolframAlpha and CleverBot, so you can see how they tick. They are really very simple, and you should find examples easily enough online.


Oh, I almost forgot. For simple collections of bits, the STL has two classes that may prove useful to you: std::bitset<N> and std::vector<bool>. You could easily roll your own, also, as a collection of bits is essentially a dynamically allocated, specially-handled array of bytes (unsigned char).

Good luck!
I figured out the answer last-night (while I was thinking in bed). By the way, I'm really good at parsing. Don't get me wrong. I have written a small group of functions for this, in fact. I can also do a lot of stuff that you obviously don't know I can do.
Last edited on
Sweet. Parsing stuff is half the battle.
Not even. It's getting the English language down to a very simple form of "code" which can have all of the meaning of a sentence packed down into an elegant computer representation.
Last edited on
There will be 3 types


In my opinion that a bit too much. One is sure enough like integral one of the size
as it is in usage in C/C++.
And of course a microphone.
The English language is not 1:1 translatable. Vagaries exist in (nearly) every language, and English has so many valid syntactic variations that you will not easily write something to parse correct meaning from any given construct. You will have to limit your input in some significant ways.
"i love a language that breaks it's own rules every step of the way"

-my dear old dad

English happens to be one of those languages. Good luck.
Indeed. It still a mistery what pushing a number into is called now push_back instead of
pop in the number from? What is actually being depressed beyound recognition so that
without popping it up it never recover?
They say it is an accumulator, a battery like durasell one. Really I do not understood it
then till now. Some its slow.
Both of the AI programs you listed work in a similar way to Google, which is to say, all they're doing is searching a database for the most relevant reply. This technique is called CBR: http://en.wikipedia.org/wiki/Case-based_reasoning
May them rest in peace.
A brain isn't a rain lying in vain
Cluelessly drains robust of veins.
@chrisname

Exactly, those were just examples of what it should be able to do, but not really the clockwork inside. Instead of playing the search engine game, mine will actually think.
Now you're talking about conscious thought?!
To do this, it needs to store the word "apple" as a class under the class "fruit", and under the class "food" etc.
If it can't eat, what's the point of a "food" category?
And besides, the design is semantically broken. Being food is a property of a substance, not an object class. The word "food" has no place in a taxonomic classification.

A better approach would be to, since it can't eat anything, not just apples, to define what it can do.
Pages: 123... 6