Computers and people

Started by
14 comments, last by Kylotan 18 years, 8 months ago
Why do people expect computers to be 'smart'? Do you expect your dog to be 'smart'? To understand more then a few words you speak at it? No? Then why do you ask your computer to do the same? What was the point of all these retorical questions? i'm trying to design a simpler version of english, that is easily parsable so that computers can use it, yet is easy to learn. ie. "Computer, what is the time?" The problem is how to do it.... Any ideas? From, Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.
Advertisement
I don't agree with your analogy really... computers work in quite different ways to dogs so expectations are different. And being able to parse the language is not the same as understanding it, which in turn is not the same as being able to act upon understanding it.

It's quite easy to get a computer to parse natural language if you remove the special cases. X-bar theory is one approach. Even less generally, a simple handling of noun, verb, and prepositional phrases is pretty trivial. The hard part is in assigning semantics to the vocabulary.
Does anybody know of any good examples of a computer understanding english as an interface solution?
(sorry for the stupid sentence:D)
----------------------~NQ - semi-pro graphical artist and hobbyist programmer
Zork.
Quote:Original post by Kylotan
I don't agree with your analogy really... computers work in quite different ways to dogs so expectations are different. And being able to parse the language is not the same as understanding it, which in turn is not the same as being able to act upon understanding it.

It's quite easy to get a computer to parse natural language if you remove the special cases. X-bar theory is one approach. Even less generally, a simple handling of noun, verb, and prepositional phrases is pretty trivial. The hard part is in assigning semantics to the vocabulary.


Hmmm. I'm not sure if i made my point clear.

People expect computers just to be 'smart' and that its 'easy' to do that.

What i was thinking, was to build a small set of words, and using a simple grammer model, allows us to interface with our computers using only a subset of english.

For eg.

Computer, Turn off the lights.

[Computer,] <- Subject
, Second clause.
[Turn off] <- Command
[The lights] <- Object. (turn that into just a pointer to the object 'lights', or it could ask for a specific light).

I was wondering if anybody had any ideas on that?

From,
Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.
* The cl assical approach is a layered approach :
letters -> word (with the stuffs like do/does/did taken in accout). It's the lexical layer. Performed by a huge state machine (transducer).
word -> sentence. It's the grammatical layer. Performed by some flavours of Hidden Markov Models (aka HMM).
sentence -> meaning. Well... A good research subject ;)
For all this, there some software package, but never free. Sad...

* You can work with sentences with some fixed grammatical structure, a "Tarzan-like speaking". The grammatical layer could be much easier this way, a simple HMMM could perform this. The lexical layer could be also simplified, with only one word for each lexical entry.
A simplified grammar for a RPG game :
1) SENTENCE -> ACTION [and] SENTENCE
2) SENTENCE -> ACTION
3) ACTION -> ACTION_TYPE ACTION_PARAMETER_LIST
4) ACTION_PARAMETER_LIST -> ACTION_PARAMETER ACTION_PARAMETER_LIST
5) ACTION_PARAMETER_LIST -> ACTION_PARAMETER
6) ACTION_PARAMETER -> ITEM
7) ACTION_PARAMETER -> BUDDY
8) ACTION_PARAMETER -> LOCATION_DEF
9) ITEM -> [sword], [crystal ball], ...
... and so on
A LL(1) grammar is really easy to parse.
By following the derivation of a grammar to build a given sentence, you can deduce the meaning of the sentence.

* Some examples of simplified English :
Letters -> Take sword and attack monster in-front-of me.
Lexical -> [Take][sword][and][attack][monster][in-front-of][me].
Grammatical -> ACTION_TYPE ITEM ACTION_TYPE BUDDY LOCATION LOCATION_PARAMETER
I don't really get it. Isn't your idea really just the premise of every single text based game only used in a different application?
Quote:Original post by SirSmokey
I don't really get it. Isn't your idea really just the premise of every single text based game only used in a different application?


Actually, i was thinking of making a replica of the star-trek computer. (and marketing it, since everybody would want one).

Quote:Original post by Marmakoide


Hmmm. Interesting.

Can you give a worked example please?

From,
Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.
The last 3 lines of his post are a worked example.

Getting a computer to understand a subset of grammar with a subset of vocabulary is a solved problem, as of decades ago, so I'm not really sure what you're asking. Simply develop a grammar (grammar types are well-defined - look up the Chomsky hierarchy for examples, or just come up with a Backus-Naur definition), populate it with your required verbs, nouns, and modifying terms, then attach those verbs and nouns to actions and targets. Understanding that language is then just a case of parsing it (eg. chart parser, recursive descent parser, etc) and executing the appropriate function (based on the verb) with the right parameters (based on the noun and adverb).

Language processing only becomes difficult when you don't have control over the grammar or vocabulary. You said you have control over the language, so the problem is as trivial as you want it to be.
Hmmm.

I was thinking of a more deatailed thing, but meh. :-) (like an example sentence, for parsing)

What i was thinking of making is a 'compubuddy'.

Ie. You tell your computer what to do.
It does what its told.

Ie. "Find file ****"
Or "Play music"

Ect.

Pretty much an Nlp command prompt (similar to the computer in star trek)

For example.

You go [f12]Open command prompt[f12] and it goes and opens the command prompt.

You press f12 to open a window, which is sortov like a shell window.]
You then press f12 to get rid of it when you don't want it.
You just press the key, type your commands, then key it again and its gone!

From,
Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.

This topic is closed to new replies.

Advertisement