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




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


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








Начало    



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