Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб.роб_01_Штучний інтелект.doc
Скачиваний:
21
Добавлен:
19.02.2016
Размер:
337.41 Кб
Скачать

5. Выполнить упражнения в соответствии с индивидуальным заданием

Содержание отчета:

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

Контрольные вопросы

Варианты заданий

Описать базу фактов, содержащих сведения о личностях и родственных отношениях:

Родители

Дети

Артем

Борис и Елена.

Анна

Борис, Семен и Ира

Борис

Ева и Люба

Вера

Ева и Люба

Ева

Дима

Люба

Света

Имя

Год рождения

Пол

Артем

1900

Мужской

Анна

1910

Женский

Борис

1940

Мужской

Вера

1945

Женский

Ева

1963

Женский

Люба

1966

Женский

Елена

1924

Женский

Семен

1930

Мужской

Ира

1934

Женский

Дима

1987

Мужской

Света

1986

Женский

Составить правила, определяющие понятия:

1 вариант - мать, ребенок, сын, дед, внучка, родная тетя, племянник

2 вариант - отец, ребенок, дочь, бабушка, внук, родной дядя, племянница.

отношения

родители отец мать

дети сын дочь

брат_сестра брат сестра братья сестры

дед_бабка дед бабка

внук_внучка внук внучка

дядя_тетя дядя тетя

племянники племянник племянница

двоюродные_брат_сестра дв_брат(кузен) дв_сестра(кузина)

прадед_прабабка прадед прабабка

правнуки_правнук правнучка

троюродные_брат_сестра тр_брат тр_сестра

двоюродные_тетя_дядя дв_дядя дв_тетя

двоюродные_дед_баба

Справочный материал

Функции главного меню

Элемент меню

Описание

FILES

Управление файлами (загрузка, сохранение, создание), манипуляция каталогами, выход из системы.

EDIT

Позволяет с помощью встроенного текстового редактора создавать и редактировать исходные файлы.

RUN

Автоматически компилирует и запускает программу из среды разработки

COMPILE

Компилирует программу или проект одним из нескольких возможных способов: в память, в объектный файл или в исполняемый файл.

OPTIONS

Позволяет установить опции компилятора (такие, как контроль переполнения, информация для отладки, размеры памяти) и компоновщика. Кроме того, можно отредактировать свой файл описания проекта (*.prj).

SETUP

Позволяет описать цвета и размеры окон Турбо Пролога, установить каталоги для файлов исходных текстов, объектных и выполняемых.

Структура среды разработки пролог-программ

Files

Edit

Run

Compile

Options

Setup

Edit

Dialog

Message

Trace

F2 Save

F3 Load

F6 Switch

F9 Compile

Alt-X Exit

Структура простой пролог-программы

predicates

имя_предиката(список типов аргументов)

. . . . . . . . . . . . . . . . . . . . . . .

секция описания предикатов

clauses

имя_предиката(значения аргументов).

заголовок_правила(аргументы) : –

предикат_подцель_1,

предикат_подцель_2,

. . . . . . . . . . . . . . . . ,

предикат_подцель_N.

секция

фактов

правил

В конце каждого предложения ставится точка!

Базовые типы аргументов, поддерживаемые Прологом:

константы

диапазон

symbol

tom female 24

атомы

string

"Андрей" "т-22"

< 64 Kb

строки

char

'a' 'g' \dd \n \t

ASCII символы

символы

integer

34 -45

-32768 : 32767

целые

real

3.12 1e-3

(1е-307 : 1е+308)

вещественные

Типовые ошибки

Неописанный предикат

Предикат описан но нигде не используется

Нет точки в конце предложения

Неправильный тип

переменная, описанная в заголовке правила не используется в теле правила

Родственные отношения

Люди связаны между собой многими отношениями – родственными, брачными, юридическими, религиозными, биологическими (наследственные болезни). Важнейшими из них являются родство и свойство.

Родство – связь между людьми, основанная на происхождении одного лица от другого (прямое родство) или разных лиц от общего предка, а также на брачных отношениях.

Родственник – человек, который состоит в родстве с кем-либо.

Кровное родство – связь, основанная на общем происхождении от одних родителей.

Родственники одной степени родства по отношению к общему предку образуют поколение.

Прямое родство (между соседними поколениями)

отец мать родитель сын дочь ребенок

Прямое родство (через одно поколение)

дед бабушка внук внучка

Для обозначения прямого родства более чем через одно поколение используется приставка "пра" (см. таблицу).

интервал

мужской пол

женский пол

обобщение

2 поколения

прадедушка (прадед)

прабабушка (прабабка)

прародители

Правнук

правнучка

правнуки

3 поколения

Прапрадед

прапрабабка

прапрародители

Праправнук

праправнучка

праправнуки

Понятие предки означает множество родителей старшего поколения, начиная с родителей (мать, отец, дед, бабка, прадед и т.д.).

Аналогично, потомки это множество детей младших поколений (сын, дочь, внук, внучка, правнук и т.д.).

Родство на основе общего предка.

Отношения между родственниками одного поколения. Названия отношений зависят как от пола одного из лиц, входящего в отношение (рис. 4), так и от удаленности общего предка (рис.5).

брат сестра братья сестры

Рис. 4 Названия отношений в зависимости от пола одного или обоих лиц, входящих в отношение.

Рис. 5 Названия отношений в зависимости от степени удаленности общего предка

расстояние от общего предка

мужской пол

женский пол

1 колено

Брат

сестра

2 колена

двоюродный брат (кузен)

двоюродная сестра (кузина)

3 колена

троюродный брат

троюродная сестра

. . . . .

. . . . .

. . . . .

Отношения между родственниками разных поколений

Названия отношений зависят от двух величин: удаленности от общего предка, разнице в поколениях и пола лиц, входящих в отношение.

разница в поколениях

младшее поколение по отношению к старшему

старшее поколение по отношению к младшему

двоюродный дядя

двоюродная тетя

1 колено

племянник племянница

тетя дядя

двоюродный (внучатый) племянник

двоюродная (внучатая) племянница

Сводное родство – связь, основанная на общем происхождении только одного из родителей.

Вертикальные отношения

отчим

Мачеха

пасынок

Падчерица

Горизонтальные отношения

сводный брат

сводная сестра

пасынок

Падчерица

Свойство – отношение между людьми, возникающее из брачного союза одного из родственников.

Свойственник (свояк) – человек, который состоит в свойстве с кем-либо.

брат мужа зять невестка (сноха)

сестра мужа

брат жены

сестра жены

муж

жена

супруги

для родителей

муж дочери – зять

жена сына – сноха невестка

муж сестры – зять

жена брата – невестка

Родственники жены для мужа

отец жены – тесть

мать жены – теща

брат жены - шурин

сестра жены -

Родственники мужа для жены

отец мужа – свекор

мать мужа – свекровь

брат мужа – деверь

сестра мужа – золовка

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]