Программирование на языке ПРОЛОГ для искуственного интеллекта

       

Процесс рассуждений


Наш интерпретатор будет принимать вопрос и искать на него ответ. Язык правил допускает, чтобы в условной части правила была И / ИЛИ-комбинация условий. Вопрос на входе интерпретатора может быть такой же комбинацией подвопросов. Поэтому процесс поиска ответов на эти вопросы будет аналогичен процессу поиска в И / ИЛИ-графах, который мы обсуждали в гл. 13.

Ответ на заданный вопрос можно найти несколькими способами в соответствии со следующими принципами:

line();

Для того, чтобы найти ответ  Отв  на вопрос  В,  используйте одну из следующих возможностей:

  • если  В  найден в базе знаний в виде факта, то  Отв  -  это "В  это правда"
  • если в базе знаний существует правило вида

            "если  Условие   то  В",

    то для получения ответа  Отв   рассмотрите  Условие
  • если вопрос В  можно задавать пользователю, спросите пользователя об истинности В
  • если в имеет вид  В1  и  В2,  то рассмотрите  В1,  а затем,
            если  В1  ложно, то положите  Отв  равным  "В   это ложь",  в противном случае рассмотрите  В2  и получите  Отв   как соответствующую комбинацию ответов на вопросы  В1  и  В2
  • если  В  имеет вид  В1  или  В2,   то рассмотрите  В1,  а затем,
            если  В1   истинно, то положите  Отв  равным   "В1 это правда",  в противном случае рассмотрите  В2  и получите  Oтв   как соответствующую комбинацию ответов на вопросы  В1  и  В2.


line();

Вопросы вида

        не  В

обрабатываются не так просто, и мы обсудим их позже.



Содержание раздела