- •Лабораторная работа 1. Различные способы представления знаний
- •Продукционная модель
- •Язык prolog как реализация продукционной модели данных Работа в системе swi_Prolog
- •Определение предикатов на основе фактов
- •Определение предикатов на основе правил
- •Рекурсивные правила
- •Семантическая сеть
- •Рассмотрим использование семантических сетей для представления структуры событий.
- •Фреймовая модель
Лабораторная работа 1. Различные способы представления знаний
Задание по лабораторной работе:
1.Необходимо описать факты и правила согласно индивидуальному заданию и выполнить четыре запроса в системе SWI_Prolog,
2. Представление базы знаний с помощью семантической сети по программе
3. Представление базы знаний с помощью фреймов на бумаге.
Индивидуальные варианты:
1. Флэш — собака. Ровер — собака. Бутси — кошка. Стар — лошадь.
Флэш черная. Бутси коричневая. Ровер рыжая. Стар белая.
Домашнее животное: собака или кошка.
Животное: домашнее или лошадь.
У Тома есть собака не черного цвета.
У Кейта есть лошадь или что-то черного цвета.
Запросы:
Ровер рыжая?
Определить клички всех собак.
Определить владельцев чего—либо.
Определить владельцев животных небелого цвета.
2. Бутси — коричневая кошка. Корни — черная кошка. Мактэвити — рыжая кошка.
Флэш, Ровер и Спот — собаки; Ровер — рыжая, а Спот — белая. Флэш — пятнистая собака.
Все животные, которыми владеют Том и Кейт, имеют родословные.
Том владеет всеми черными и коричневыми животными.
Кейт владеет всеми собаками не белого цвета, которые не являются собственностью Тома.
Алан владеет Мактэвити, если Кейт не владеет Бутси и если Спот не имеет родословной.
Запросы:
Какие животные не имеют хозяев?
Найдите всех собак и укажите их цвет.
Укажите всех животных, которыми владеет Том.
Перечислите всех собак Кейта.
3. Определить родственные отношения: СЫH, ДОЧЬ, ОТЕЦ, МАТЬ, МУЖЧИHА и ЖЕHЩИHА.
Описать факты для некоторых из них.
Запросы:
Определить всех сыновей определенной матери.
Определить всех детей определенной пары родителей.
Определить родителей определенного человека.
Является ли определенный человек женщиной?
4. Мэри любит персики. Мэри любит кукурузу. Мэри любит яблоки.
Бет любит то, что любит Мэри, если это — фрукт и если он красный.
Бет любит то, что любит Мэри, если это кукуруза.
Персики — фрукт. Яблоки — фрукт.
Цвет персиков желтый. Цвет апельсинов оранжевый. Цвет яблок красный.
Цвет яблок красный. Цвет яблок желтый.
Запросы:
Что любит Бет?
Любит ли Мэри кукурузу?
Какие фрукты известны?
Какого цвета фрукты, которые любят Бет и Мэри?
5. Задано дерево родственных связей:
Пам Том Кроме того, определить отношения
\ /\ ПОЛ, РЕБЕHОК, РОДИТЕЛЬ_РОДИТЕЛЯ и
\ / \ МАТЬ.
\ / \
Боб Лиз Запросы: Кто родитель Пат?
/ \ Есть ли у Лиз ребенок?
/ \ Кто потомки Пат?
/ \ Является ли Пам матерью Боба?
Энн Пат
/
/
/
Джим
6. Медведь большой. Слон большой. Кот маленький. Медведь коричневый.
Кот черный. Слон серый. Любой черный или коричневый предмет является темным.
Запросы:
Кто одновременно большой и темный?
Есть ли коричневые маленькие слоны?
Есть ли большие и темные медведи?
Есть ли черный кот?
7. Мэри, Сьюзи и Джейн работают в дневную смену. Сэм, Джейн, Боб и Патриция работают в вечернюю смену. Знают друг друга те, кто работает в одну смену.
Запросы:
Знают ли друг друга Мэри и Джейн?
Кто работает в дневную смену?
Есть ли кто—то, кто работает в обе смены?
Есть ли кто—то, кто не знает друг друга?
8. Можно совершить такие виды путешествий:
Компания Из В Вид транспорта
Амтрак Hью-Йорк Бостон Поездом
Транзит Hью-Йорк Принстон Поездом
Амтрак Бостон Портленд Поездом
Грейхаунд Бостон Портленд Автобусом
Амтрак Hью-Йорк Вашингтон Поездом
Пиплз Hью-Йорк Вашингтон Самолетом
Пиплз Бирлингтон Hью-Йорк Самолетом
Любые две транспортные компании являютя конкурентами, если они обслуживают один и тот же маршрут.
Можно путешествовать из одного города в другой, если возможно путешествие из одного города в другой через промежуточный (третий) город.
Запросы:
Являются ли Амтрак и Пиплз конкурентами?
Какие компании дают возможность путешествовать из Hью—Йорка в Вашингтон?
Можно ли путешествовать из Бирлингтона в Портленд?
Определить всех конкурентов.
9. Определить факты о принадлежности студента определенной студенческой группе. Считается, что два студента знают друг друга, если они учатся в одной группе.
Запросы:
Кого знает определенный студент?
Определить состав определенной группы.
В каких группах учатся люди с определенным именем?
Знает ли один студент другого?
10. Имеются факты о маршрутах движения автобусов между двумя разными городами, в которых указаны: номер маршрута, названия двух городов, день и время отправления и прибытия. Известны также фамилии водителей, работающих на определенных маршрутах. Можно попасть из одного города в другой, если существуют автобусные маршруты из первого города во второй или из первого города в промежуточный и из промежуточного во второй (причем подходят и дни, и часы отправления) .
Запросы:
Можно ли проехать из одного города в другой?
Указать автобусы, выходящие из определенного города в определенный день и время их отправления.
Перечислить фамилии водителей определенного маршрута.
Указать дни и часы отправления определенного маршрута.
11. Есть факты об отцах некоторых людей и о братьях некоторых людей. Определить отношение ДЯДЯ.
Запросы:
Определить братьев конкретного человека.
Кто является отцом конкретного лица?
Определить, связаны ли два человека отношением ОТЕЦ.
Определить, является ли один человек дядей другого.
12. Определить отношения РОДИТЕЛЬ, ЖЕHЩИHА как набор фактов, правила:
РАЗЛИЧHЫ, СЕСТРА (определяемое через РОДИТЕЛЬ, ЖЕHЩИHА и РАЗЛИЧHЫ) и ТЕТЯ (определяемое через РОДИТЕЛЬ и СЕСТРА).
Запросы:
Кто является родителями определенного человека?
Определить всех детей определенных родителей.
Определить, есть ли сестры у определенного человека.
Определить, есть ли тетя у определенного человека.
13. Экспертная система для определения породы собак.
Правила
Порода собак |
NN свойств |
Английский бульдог |
1,3.5,7 |
Бигл |
1,3,6,7 |
Большой Дан |
1,5,6,7,8 |
Американский Фокс |
1,4,6,7 |
Кокер-спаниель |
2,3,5,6,7 |
Ирландский сеттер |
2,4,6 |
Колли |
2,4,5,7 |
Сен-бернар |
2,5,7,8 |
Свойства
Номер |
Значение |
1 |
Короткая шерсть |
2 |
Длинная шерсть |
3 |
Высота более 22 см |
4 |
Высота более 30 см |
5 |
Опущенный хвост |
6 |
Удлиненные глаза |
7 |
Хорошая порода |
8 |
Вес свыше 100 фунтов |
Определить породу любых 4 собак
14.Экспертная система о животных.
Описать базу знаний в виде фактов и правил и выполнить 4 запроса для определения животных
Если животное имеет шерсть или кормит детенышей молоком, то это млекопитающее
Если животное имеет перья или (животное летает и откладывает перья), то это птица
Если животное млекопитающее и (животное ест мясо или (животное имеет острые зубы и имеет когти)), то это хищник
Если животное хищник и имеет рыжевато-коричневый цвет и имеет темные пятна, то это гепард
Если животное хищник и имеет рыжевато-коричневый цвет и имеет черные полосы, то это тигр
Если животное птица и не может летать и плавает, то это пингвин
Если животное птица и летает хорошо, то это альбатрос
15. Имеются следующие факты и правила:
Иван, Елена, Татьяна, Игорь – студенты;
студент получает зачет, если он отчитается по лабораторным занятиям;
Иван отчитается по лабораторным занятиям только вместе с Игорем;
Елена и Татьяна отчитались по лабораторным занятиям и пойдут вечером на дискотеку;
если Игорь пойдет на дискотеку вместе с Татьяной, то он отчитается по лабораторным занятиям;
Игорь пойдет вечером на дискотеку, если у него будет свободное время.
Сформировать следующие запросы:
Кто пойдет вечером на дискотеку?
Кто получит зачет?
Кто не отчитался по лабораторным работам?
Игорь отчитался по лабораторным работам?
16. Дан список сотрудников некоторого предприятия:
Имя: |
Иван |
Елена |
Джон |
Мария |
Том |
Эрик |
Билл |
Марк |
Возраст: |
22 |
25 |
40 |
22 |
32 |
22 |
32 |
43 |
Определив правило «А старше Б», сформировать следующие запросы:
Сколько лет Тому?
Работают ли на предприятии люди, которым 22 года?
Кто старше Джона?
Кто из работающих на предприятии являются ровесниками?
17. Дан список сотрудников некоторого предприятия:
Имя: |
Иван |
Елена |
Джон |
Мария |
Том |
Эрик |
Билл |
Марк |
Возраст: |
22 |
25 |
40 |
22 |
32 |
22 |
32 |
43 |
Определив правила «А старше Б» и «А и Б являются ровесниками», сформировать следующие запросы:
Сколько лет Тому?
Работают ли на предприятии люди, которым 22 года?
Кто старше Джона?
Кто из работающих на предприятии являются ровесниками?
Такие понятия как "интеллект", "интеллектуальность", у специалистов различного профиля (системного анализа, информатики, нейропсихологии, психологии, философии и др.) могут несколько различаться, причем это не несет в себе никакой опасности.
Примем следующую "формулу интеллекта":
"Интеллект = цель + факты + способы их применения",
или, в несколько более "математическом", формализованным виде:
"Интеллект = цель + аксиомы + правила вывода из аксиом".
При поиске наиболее удобных, рациональных средств и форм информационного обмена человек чаще всего сталкивается с проблемой компактного, однозначного и достаточно полного представления знаний.
Знания - система понятий и отношений для такого обмена. Можно условно классифицировать знания в предметной области на понятийные, конструктивные, процедурные, фактографические знания и метазнания.
Понятийные знания - набор понятий, используемых при решении данной задачи, например, в фундаментальных науках и теоретических областях наук, т.е. это понятийный аппарат науки.
Конструктивные знания - наборы структур, подсистем системы и взаимодействий между их элементами, например, в технике.
Процедурные знания - методы, процедуры (алгоритмы) их реализации и идентификации, например, в прикладных науках.
Фактографические - количественные и качественные характеристики объектов и явлений, например, в экспериментальных науках.
Метазнания - знания о порядке и правилах применения знаний ( знания о знаниях ).
Представление знаний есть процесс, конечная цель которого - представление информации (семантического смысла, значения) в виде информативных сообщений (синтаксических форм): фраз устной речи, предложений письменной речи, страниц книги, понятий справочника, объектов географической карты, мазков и персонажей картины и т.п.
Для этого необходимо пользоваться некоторой конструктивной системой правил для их представления и восприятия (прагматического смысла). Назовем такую систему правил формализмом представления знаний. Неформализуемые знания - это знания, получаемые с применением неизвестных (неформализуемых) правил, например, эвристик, интуиции, здравого смысла и принятия решений на их основе.
Человек пользуется естественным формализмом - языком, письменностью. Язык, языковые конструкции развиваются благодаря тому, что человеческие знания постоянно нуждаются в языковом представлении, выражении, сжатии, хранении, обмене. Мысль, которую нельзя выразить в языковой конструкции, не может быть включена в информационный обмен. Язык - форма представления знаний. Чем многообразнее язык народа, чем больше знаний он может отражать, тем богаче культура народа. В то же время, предложения и слова языка должны иметь однозначный семантический смысл. Особую роль играет язык математики как язык наук (не только точных, но и гуманитарных), формализации знаний, основа изложения системы знаний в естественных науках. Свой язык имеют химия, физика, экономика, информатика и т.д. Языки наук часто пересекаются и взаимообогащаются при исследовании междисциплинарных проблем.
Использование языковых систем и диалектов повышает надежность информационного обмена, снижая возможность неправильного истолкования передаваемой информации и уровень шумов в сообщениях. Главное назначение языка науки - создавать и использовать типовые, "стандартные" формы изложения, сжатия и хранения знаний, ликвидация полисемии (смысловой многозначности) естественного языка. Полисемия, обогащая естественный язык, делая его богаче и выразительнее, тем не менее, является в информационном обмене источником семантического шума, смысловой неоднозначности, а часто - и алогичности, неалгебраичности.
Одной из важных форм (методов) формализации знаний является их представление классом (классификация ).
Классификация - выделение некоторого критерия (некоторых критериев) распределения и группировка систем или процессов таким образом, что в одну группу попадают лишь те системы (процессы), которые удовлетворяют этому критерию (значению критерия). Классификация - это метод научной систематики, особенно важный на начальном этапе формирования базовых знаний научного направления. Классификация, установление эквивалентности объектов, систем позволяет решать такие важные задачи информатики как фиксация знаний, поиск по образцу, сравнение и др.
Пример. Такими системами являются классификационная система К. Линнея в ботанике, систематика живых организмов, таблица элементов Д. Менделеева, систематика экономических систем, механизмов, "табель о рангах", введенная Петром Первым в 1722 г. Эта табель подразделяла чины на 14 рангов. Каждому чину соответствовала определенная должность. Первые 6 рангов статской и придворной служб и первый обер-офицерский чин в армии давали право на получение потомственного дворянства, что способствовало формированию дворянской бюрократии. Таким образом, "табель о рангах" выполняла социально-экономическую классификацию определенной (определяющей) части общества, социально-экономическое стимулирующее упорядочивание.
Указанные выше классификационные системы - иерархические структуры (модели) представления знаний. Отдельные понятия, факты, знания, связаны между собой отношениями индуктивного (от частного к общему), дедуктивного (от общего к частному) или индуктивно-дедуктивного вывода и формализуются соответствующими формальными структурами: древовидными, морфологическими, реляционными и др.
Пример. Рассмотрим систему "Фирма". Опишем всех сотрудников фирмы в лексикографически упорядоченном списке с именем "Сотрудники", указывая табельный номер, ФИО, год рождения, образование, специальность, разряд, стаж работы. Этот список дает нам знание о коллективе, его возрастных и профессиональных качествах и др. Составим другой список - "Заработная плата", где укажем для каждого сотрудника условия оплаты, величину их заработка (стоимости единицы времени их работы). Этот список дает нам знания о системе оплаты фирмы, ее финансового состояния и др. Оба списка содержат необходимый объем знаний о трудовом коллективе, если цель исследования этой системы - начисление заработной платы.
Для компьютерного представления и обработки знаний и данных о предметной области (об объектах, процессах, явлениях, их структуре и взаимосвязях), они должны быть формализованы и представлены в определенном формализованном виде.
При традиционном способе реализации математической модели, знаний, заложенных в ней, строится моделирующий алгоритм (моделирующая программа), т.е. знания процедурно зависят от метода (алгоритма) обработки. В интеллектуальных системах (в системах искусственного интеллекта, в частности) знания о предметной области представлены в виде декларативной (описательной) модели формирования базы знаний и соответствующих правил вывода из нее и явно не зависят от процедуры их обработки. Для этого используются специальные модели представления знаний, например, продукционные, фреймовые, сетевые и логические. При обработке модели знаний используются процедуры логического вывода, называемые также механизмом или машиной вывода. Обычно в базе знаний зафиксированы общие закономерности, правила, описывающие проблемную среду и предметную область.
Процедуры вывода позволяют на основании общих правил вывести решение для заданной конкретной ситуации, описываемой некоторыми исходными данными. Цепочка логического вывода строится по мере приближения к решению, в зависимости от введенных на каждом шаге данных и выведенных к этому шагу новых знаний. Конкретные формы организации дедуктивного вывода зависят от того, в какой форме представлены знания в базе знаний (на каком языке представления знаний).
