# Off-Topic Discussion > The Lounge > Tech Talk >  >  Chat Bots and AI

## SuperSmashcz

If you go to Google, and you search chat bot, you get allot of programs where you can "chat" with them and they talk back. However, as a programmer it is obvious that they all have pre-written answers, and do not understand what it is that they are talking about (If you ask them what the topic of the conversation is, they just ask a question about something random). To me it seems like cheating. Anyone can make a huge database with allot of IF-Statements and return pre-written responses.
This kinda made me think about how you could make a real chat bot, one that can look at a sentence and then give you a real answer that was not pre-written. And have the ability to learn and ask if it does not understand and put that into a memory.
But, how would you do this without having a huge Text file that has answers and inputs stored in it?

Ive looked at neural networks, and different types of storage of information. It just dosen't seem realistic to have a real chat bot. I know that you can use a neural network for other things than text because you are dealing with numbers rather than text. Any thoughts?

----------


## ninja9578

Yay!  Finally someone asked a question in the area of my expertise!  Usually Ynot or Replicon come in and give great answers and I feel dumb.  Now it's my turn to feel smart  :boogie: 

What you are talking about is called ontology.  It's mapping everything to everything else through relationships; sort of like a UML diagram for the universe.  An example:  A cheeseburger.

Cheeseburger Is Food
Is variant of hamburger
Has a bun
Has a cheese slice
Has a beef patty

Bun is bread

Cheese is dairy

Beef Patty is meat
has weight
has cooked amount

...  

As you can see, it gets complicated fast.  What a real chat bot would have to do is map everything in the english language.  Not just words, but meanings, grammar, relationships, synonyms...

A complete ontology of the entire english language would be very massive indeed.  The one that I'm familiar with is Protege.  It places everything into one huge XML file, so it would be very large and slow to read.  I'm sure that there are better ones out there, though that would put it in some sort of ordered database.

The nice thing about ontology is that it is very capable of learning.  I'm sure that most learning AI software has one somewhere in it's system.

----------


## SuperSmashcz

Wow, cool idea! idk if i could do it (seeing its only one programmer) but after i finish my 2D game engine id like to try to do what ur suggesting. Thanks  :tongue2:

----------


## Ynot

One problem with the online "chat bots" is that writing a half-intelligent program needs huge amounts of computing power and storage space
which is expensive, and most people aren't prepared to offer this on the web for anyone to arse around with

Also, any program with auto-learning capabilities is less likely to be available to the public, as it'll end up being filled with sex terms or whatever
and need to heavily maintained to keep it useful

There's a few half-decent ones out there on the net
but not a lot
most are squirrelled away in labs and their progress is both controlled and recorded

as a side note,

http://en.wikipedia.org/wiki/Turing_test





> The Turing test is a proposal for a test of a machine's capability to demonstrate intelligence. Described by Alan Turing in the 1950 paper "Computing Machinery and Intelligence," it proceeds as follows: a human judge engages in a natural language conversation with one human and one machine, each of which try to appear human; if the judge cannot reliably tell which is which, then the machine is said to pass the test. In order to test the machine's intelligence rather than its ability to render words into audio, the conversation is limited to a text-only channel such as a computer keyboard and screen (Turing originally suggested a teletype machine, one of the few text-only communication systems available in 1950).



also,

----------


## skysaw

Try out personalityforge.com. They have an online chat-bot making language. I actually won 6th place in the Loebner prize in 2004 with one I made there.

Also take a look at WordNet for some ideas about parsing and understanding language.

----------


## Flicker Flare

Jabberwacky is one of the better chatterbots out there.

----------

