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


Общий обзор языка Пролог


1 1 Пример программы родственные отношения
1. 1.    Пример программы: родственные отношения Пролог - это язык программирования, предназначенный для обработки символьной нечисловой информации. Особенно хорошо он приспособлен...
Рисунок 1 1 Дерево родственных отношений
Рисунок 1. 1.  Дерево родственных отношений. Эта программа содержит шесть предложений. Каждое предложение объявляет об одном факте наличия отношения родитель. После ввода такой программы в пр...
Рисунок 1 2 Отношение родительродителя выраженное через композицию двух отношений родитель
Рисунок 1. 2.   Отношение родительродителя, выраженное через композицию двух отношений родитель. Наш составной вопрос можно интерпретировать и так: "Найти X и Y, удовлетворяющие...
Упражнения
Упражнения 1. 1.    Считая, что отношение родительопределено так же, как и раньше в данном разделе (см. Рисунок 1.1), найдите, какими будут ответы пролог-системы на следующие вопрос...
1 2 Расширение программыпримера с помощью правил
1. 2.    Расширение программы-примера с помощью правил Нашу программу-пример можно легко расширить многими интересными способами. Давайте сперва добавим информацию о том, каков пол...
Рисунок 1 3 Графы отношений родительродителя мать и отпрыск определенных через другие отношения
Рисунок 1. 3.  Графы отношений родительродителя, матьи отпрыск,определенных через другие отношения. Такие отношения как родитель, отпрыски мать можно изобразить в виде диаграмм, приведенных н...
Рисунок 1 4 Определение отношения сестра
Рисунок 1. 4.  Определение отношения сестра. Граф на Рисунок 1.4 можно перевести на Пролог так:         сестра( X, Y) :-       &nbs...
Упражнения
Упражнения 1. 3.    Оттранслируйте следующие утверждения в правила на Прологе: (a)    Всякий, кто имеет ребенка, - счастлив (введите одноаргументное отношение счастли...
1 3 Рекурсивное определение правил
1. 3.    Рекурсивное определение правил Давайте добавим к нашей программе о родственных связях еще одно отношение - предок. Определим его через отношение родитель. Все отношение мож...
Рисунок 1 5 Пример отношения предок (а) X ближайший предок Z; (b) X отдаленный предок Z
Рисунок 1. 5.  Пример отношения предок:(а)    X - ближайший предок Z;     (b)    X - отдаленный предок Z. между собой отношением родитель-ребенок,...
Рисунок 1 6 Пары предокпотомок разделенных разным числом поколений
Рисунок 1. 6.  Пары предок-потомок, разделенных разным числом поколений. Эта программа длинна и, что более важно, работает только в определенных пределах. Она будет обнаруживать предков лишь...
Рисунок 1 8 Программа о родственных отношениях
Рисунок 1. 8.   Программа о родственных отношениях. предок. Иногда бывает удобно рассматривать в целом все множество предложений, входящих в состав одного отношения. Такое множество назы...
Упражнение
Упражнение 1. 6.    Рассмотрим другой вариант отношения предок:     предок( X, Z) :-           родитель( X, Z). &nbs...
1 4 Как прологсистема отвечает на вопросы
1. 4.    Как пролог-система отвечает на вопросы В данном разделе приводится неформальное объяснение того, как пролог-система отвечает на вопросы. Вопрос к системе - это всегда после...
Рисунок 1 9 Первый шаг вычислений Верхняя цель истинна если истинна нижняя
Рисунок 1. 9.  Первый шаг вычислений. Верхняя цель истинна, если истинна нижняя. Это правила, входящие в отношение предок. Будем говорить, что головы этих правил сопоставимы с целью. Два пред...
Рисунок 1 10 Продолжение процесса вычислений показанного на Рисунок 1 9
Рисунок 1. 10.  Продолжение процесса вычислений, показанного на Рисунок 1.9. Имея теперь перед собой двецели, система пытается достичь их в том порядке, каком они записаны. Достичь первой из...
Рисунок 1 11 Все шаги достижения цели предок( том пат) Правая ветвь демонстрирует что цель достижима
Рисунок 1. 11.  Все шаги достижения цели предок( том, пат). Праваяветвь демонстрирует, что цель достижима. Графическое представление шагов вычисления на Рисунок 1.11 имеет форму дерева. Верши...
Упражнение
Упражнение 1. 7.    Постарайтесь понять, как пролог-система, используя программу, приведенную на Рисунок 1.8, выводит ответы на указанные ниже вопросы. Попытайтесь нарисовать соотве...
1 5 Декларативный и процедурный смысл программ
1. 5.    Декларативный и процедурный смысл программ До сих пор во всех наших примерах всегда можно было понять результаты работы программы, точно не зная, как система в действительн...
Резюме
Резюме Программирование на Прологе состоит в определении отношений и в постановке вопросов, касающихся этих отношений. Программа состоит из предложений. Предложения бывают трех типов: факты...
Литература
Литература Различные реализации Пролога используют разные синтаксические соглашения. В данной книге мы применяем так называемый Эдинбургский синтаксис (его называют также синтаксисом DEC-10, поско...


- Начало -


Книжный магазин