|MadSci Network: Computer Science|
I believe you are asking about Speech Recognition programs (multi-tasking, which is how the question reads, is a whole different answer). Today, there are a number of such programs available for the PC. The major ones include Dragon System's and L&H Voice Express. IBM has one, etc. They all work the same way. All [spoken] languages consist of "phonemes" (you might consider them "letters") which, when put together, form spoken words. In English there are 42-44 (depending on what book you read) of them. (Other languages have more or less of them). The speech recognition program examines the input (from a microphone, usually), and acts like a spelling checker, looking up words in a "dictionary". Like all spelling checkers, if it does not find a "word" it asks if that word should be added to the dictionary (this is the "learning" step in your program). If it does find the word, it "builds" a command line based on "replacement values" for the "words" you supplied in the input. When you are done, it passes them on to the command processor, as if you had typed them. The task gets a little bit more complicated with the various Chinese dialects, because they also add in the concept of "tone". The interesting work is not so much in the Phenome breakdown, and dictionary lookup, but rather in the filtering needed to "smooth out" the words so that different people may have their speech recgnized too, and at different speeds. Also, just as Grammer Checkers are becoming better today (with checking syntax), Speech Recognition programs may improve by checking the synatax (and even the symantics!) of the spoken phrase. Personally, I'd rather type, but then again, I keep away from GUI's too!
Try the links in the MadSci Library for more information on Computer Science.