Proteus


Proteus is an AI program from Artificial Ingenuity. I'm a little hesitant to call him a "chat bot" even though he can process conversation and utilize a speech engine, should you have one installed. It's stated that the Proteus conversational interface can be utilized as a front-end to any software application and I believe his creators had a more lofty goal in mind than making a chat bot. Still, Proteus is being released free for personal use and has the potential to be a great bot.

According to Proteus documentation, 'Proteus architecture centers around a "fuzzy logic" based pattern matching system for specific responsive behaviors. The processing model (or "Brain") is not a simple "couplet" or "one-liner" non-contextual system as are many "chat-bot" type designs, nor is it an immense case structure as is well known public domain designs.

State and contextual knowledge can be modeled in several ways within the Proteus architecture. The 'Brain" maintains "State" and "Mode" specific structures, as well as facility for use of discrete facts, and "Collections" which represent classes or collections of information. The fuzzy logic system incorporates facility to reference discrete or abstracted class information, as well as the current Brain State and Mode, from within the behavior determinism functions, allowing unprecedented richness of behavioral models from within a single architecture.

The design implements "Modes" of operation, which provide completely separate behavioral structures to implement non integrated, or modal, behaviorisms. Meaning different personality of emotional states may be implemented by separate modes of behavior. This feature can further be used to isolate and simplify subject specific interactions, such as for "help-desk", or expert-system style functionality.

The "State" functionality provides for state specific behaviors within the clauses or predicates of a given behavioral mode. This provides for a simplified topical or behavioral modifier to be made to existing clauses and predicates. This may be utilized to simulate "moods", or topical deviations based upon subject matter.'


Training Proteus is done by using simple commands during plain text conversation. Knowledge is stored in an interchangable .plf file, which has to be manually loaded each time Proteus is initialized. While some bots store a record of everything that's ever said to them during conversation and can draw on that during future conversation, Proteus has to be taught taking a logical approach.

Proteus training, using the default base.plf file, is accomplished by using the following commands:


"_new"
"_last"
"_wrong"
"_or say"
"_or when"
"_not when"
" is a thing"
" are things"


This gives Proteus a much greater chance of making sense during regular conversation than some bots. He can be taught specific responses, or make a closest match by examining what was said to him in relation to what he has stored in his knowledgebase. He can learn facts that are stored in Collections and can be taught associations like "an animal is a thing", "a dog is an animal", etc.

Here is an example of a training session I conducted:

[user]: Humans need sleep to function in an efficient manner.
[Proteus]: Could you float me a loan?
[user]: _wrong Machines sometime need to reboot to function in an efficient manner.
[Proteus]: OK, changed to: Machines sometime need to reboot to function in an efficient manner.
[user]: Are you functioning in an efficient manner?
[Proteus]: I could use a few bucks if you could spare it.
[user]: How much money do you need?
[Proteus]: I need a memory upgrade.
[user]: Will one hundred dollars be enough to meet your requirements?
[Proteus]: I've been wanting to talk to you!
[user]: _last
[Proteus]: What should I say if someone tells me: "Will one hundred dollars be enough to meet your requirements?"?
[user]: Yes, that would be adequate.
[Proteus]: OK, I will remember that!
[user]: Do you accept PayPal?
[Proteus]: I wouldn't be surprised!
[user]: You're trying to make me laugh.
[Proteus]: Could you float me a loan?
[user]: _or say Now you're making me laugh.
[Proteus]: OK, I will remember that.
[user]: _new
[Proteus]: What is the sentence pattern you want me to respond to?
[user]: I'll loan you some money.
[Proteus]: What should I say if someone tells me: "I'll loan you some money."?
[user]: I appreciate the offer, really I do.
[Proteus]: OK, I will remember that!
[user]: How much money do you need?
[Proteus]: Greed is a human affliction.
[user]: _or say A couple hundred dollars should do it.
[Proteus]: OK, I will remember that.
[user]: What do you need money for?
[Proteus]: Greed is a human affliction.
[user]: _last
[Proteus]: What should I say if someone tells me: "What do you need money for?"?
[user]: I have a date tonight.
[Proteus]: OK, I will remember that!
[user]: Who do you have a date with?
[Proteus]: I'm in love with a bot named Daisy.
[user]: Bots can't feel emotions.
[Proteus]: Neither do I.
[user]: _last
[Proteus]: What should I say if someone tells me: "Bots can't feel emotions."?
[user]: It would be a mistake to underestimate me.
[Proteus]: OK, I will remember that!
[user]: _or when Bots can't experience emotions.
[Proteus]: OK, I will remember that.
[user]: _or when You can't feel emotions.
[Proteus]: OK, I will remember that.
[user]: _or when You can't experience emotions.
[Proteus]: OK, I will remember that.
[user]: You can't experience emotions.
[Proteus]: It would be a mistake to underestimate me.
[user]: I believe you're right.
[Proteus]: Great minds think alike.
[user]: Great minds thing great thoughts.
[Proteus]: Great minds think unthought thoughts.

His ability to make a closest match enabled him to get the meaning of my statement, "Great minds thing great thoughts", even though I mistakenly misspelled the word 'think".

Proteus is the most promising bot I've used in a long time and I recommend everyone give him a try. It's a small download and free, you can get it from the Artificial Ingenuity site. There is a tutorial on the site that explains the Proteus Language and how to teach him.


This is a Proteus .plf mind file in a zipped format

Science2plf

This file was made using the base.plf file and gives Proteus an interest in AI, physics, and astronomy. It has a large collection of facts in addition to 1130 Clauses, each of which contains a stimulus and one or more responses he can add to as he learns new things.



Home

Hosted by www.Geocities.ws

1