2

I'm trying to write a AIML interpreter to develop AI bot. I went through several implementations of aiml interpreters but still I find it difficult to understand the algorithm behind it.

So if anyone can describe the general aiml interpreter algorithm or point out proper specification or document which I can used to understand it will be a great help.

Thank you.

2 Answers2

2

AIML interpreters uses pattern matching technique. It finds the best and longest pattern match of the keyword.

Basically, it will search through the categories of the whole knowledge base for values enclosed in <pattern> tag which matches the keyword.

Then, it will return the value enclosed within the <template> tag corresponding to the matching <pattern>.

There are also priorities for search areas. For example, if the chatbot conversations is within a certain <topic>, it will search for matches within the topic first. If match is not found, it will then search through the whole knowledge base.

tyn
  • 21
  • 2
0

You should use the newer Java AIML 2.0 interpreter Program AB at https://code.google.com/p/program-ab/