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


Использование структур: примеры


4 1 Получение структурированной информации из базы данных
4. 1.    Получение структурированной информации из базы данных Это упражнение развивает навыки представления структурных объектов данных и управления ими. Оно показывает также, что...
Рисунок 4 1 Структурированная информация о семье
Рисунок 4. 1.   Структурированная информация о семье. четырех компонент: имени, фамилии, даты рождения и работы. Информация о работе - это либо "не работает", либо указание места ра...
Рисунок 4 2 Описания объектов
Рисунок 4. 2.    Описания объектов по их структурным свойствам:  (а)   любая семья Армстронгов;  (b)  любая семья, имеющая ровно трех детей;  (с)  люба...
Упражнения
Упражнения 4. 1.    Напишите вопросы для поиска в базе данных о семьях. (а)        семей без детей; (b)       ...
4 2 Абстракция данных
4. 2.    Абстракция данных Абстракцию данных можно рассматривать как процесс организации различных фрагментов информации в единые логические единицы (возможно, иерархически), придав...
Упражнение
Упражнение 4. 3.    Завершите определение отношения nребенок, определив отношение         n_элемент( N, Список, X) которое выполняется, если Х явл...
4 3 Моделирование недетерминированного автомата
4. 3.    Моделирование недетерминированного автомата Данное упражнение показывает, как абстрактную математическую конструкцию можно представить на Прологе. Кроме того, программа, ко...
Рисунок 4 3 Пример недетерминированного конечного автомата
Рисунок 4. 3.  Пример недетерминированного конечного автомата. Переход выполняется всякий раз при чтении входного символа. Заметим, что переходы могут быть недетерминированными. На Рисунок 4....
Рисунок 4 4 Допущение цепочки
Рисунок 4. 4.  Допущение цепочки:    (a)    при чтении первого символа X;(b)    при совершении спонтанного перехода. текущем состоянии. Однако абс...
Упражнения
Упражнения 4. 4.    Почему не могло возникнуть зацикливание модели исходного автомата на Рисунок 4.3, когда в его графе переходов не было "спонтанного цикла"? Посмотреть о...
4 4 Планирование поездки
4. 4.    Планирование поездки В данном разделе мы создадим программу, которая дает советы по планированию воздушного путешествия. Эта программа будет довольно примитивным советчиком...
Рисунок 4 5 Планировщик воздушных маршрутов и база данных о рейсах самолетов
Рисунок 4. 5.  Планировщик воздушных маршрутов и база данных о рейсах самолетов. Как мне добраться из Любляны в Эдинбург в четверг?         ?- маршрут...
4 5 Задача о восьми ферзях
4. 5.    Задача о восьми ферзях Эта задача состоит в отыскании такой расстановки восьми ферзей на пустой шахматной доске, в которой ни один из ферзей не находится под боем другого....
Рисунок 4 6 Решение задачи о восьми
Рисунок 4. 6.  Решение задачи о восьми ферзях. Эта позиция может бытьпредставлена в виде списка [1/4,  2/2,  3/7,   4/3,  5/6,  6/8,  7/5,  8/1]. Нас интере...
Рисунок 4 7 Программа1 для задачи о восьми ферзях
Рисунок 4. 7.  Программа1 для задачи о восьми ферзях. Система будет генерировать решения в таком виде:         S = [1/4, 2/2, 3/7, 4/3, 5/6, 6/8, 7/5, 8/1];...
Упражнение
Упражнение 4. 6. При поиске решения программа, приведенная на Рисунок 4.7, проверяет различные значения Y-координат ферзей. В каком месте программы задается порядок перебора альтернативных вариант...
4 5 2 Программа 2
4. 5. 2.    Программа 2 В соответствии с принятым в программе 1 представлением доски каждое решение имело вид         [1/Y1, 2/Y2, 3/Y3, ..., 8/Y8...
Рисунок 4 8 (а) Расстояние по
Рисунок 4. 8.    (а)     Расстояние по Х между Ферзь и Остальныеравно 1.(b)    Расстояние по Х между Ферзьи Остальные равно 3 Отношение перестановка мы...
Рисунок 4 9 Программа 2 для задачи о восьми ферзях
Рисунок 4. 9.  Программа 2 для задачи о восьми ферзях. Трудность состоит в том, что расположение ферзей определяется только их Y-координатами, а Х-координаты в представлении позиции не присут...
4 5 3 Программа 3
4. 5. 3.    Программа 3 Наша третья программа для задачи о восьми ферзях опирается на следующие соображения. Каждый ферзь должен быть размещен на некотором поле, т. е. на некоторой...
Рисунок 4 10 Связь между вертикалями
Рисунок 4. 10.  Связь между вертикалями, горизонталями и диагоналями. Помеченноеполе имеет следующие координаты: x= 2,  у = 4,  u = 2 - 4 = -2,  v = 2 + 4 = 6. Области изменени...
Рисунок 4 11 Программа 3 для задачи о восьми ферзях
Рисунок 4. 11.  Программа 3 для задачи о восьми ферзях. задачи о восьми ферзях. Процедура реш универсальна в том смысле, что ее можно использовать для решения задачи об N ферзях (на доске раз...
4 5 4 Заключительные замечания
4. 5. 4.    Заключительные замечания Три решения задачи о восьми ферзях показывают, как к одной и той же задаче можно применять различные подходы. Мы варьировали также и представлен...
Упражнение
Упражнение 4. 7. Пусть поля доски представлены парами своих координат в виде X/Y, где как X, так и Y принимают значения от 1 до 8. (а)        Определите отношени...
Резюме
Резюме Примеры, рассмотренные в данном разделе, иллюстрируют некоторые достоинства и характерные черты программирования на Прологе: Базу данных можно естественным образом представить в виде мн...


Начало


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