Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПРЕДСТАВЛЕНИЕ ЗНАНИЙ И ЛОГИЧЕСКОЕ ПРОГРАММИРОВА...doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
1.08 Mб
Скачать

Ю.В. Чернухин, В.Ф. Гузик, А.И. Костюк

ПРЕДСТАВЛЕНИЕ ЗНАНИЙ И ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ В СИСТЕМАХ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ТАГАНРОГСКИЙ ГОСУДАРСТВЕННЫЙ РАДИОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Ю.В. ЧЕРНУХИН, В.Ф. ГУЗИК, А.И. КОСТЮК

ПРЕДСТАВЛЕНИЕ ЗНАНИЙ И ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ В СИСТЕМАХ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА

Учебное пособие

Таганрог 2001

УДК 681.3(075.8)+681.324(075.8)

Чернухин Ю.В., Гузик В.Ф., Костюк А.И. Представление знаний и логическое программирование в системах искусственного интеллекта: Учебное пособие.

Таганрог: Изд-во ТРТУ, 2001, 85 с.

Пособие предназначено для использования при изучении дисциплин «Информационные технологии» и «Системы искусственного интеллекта и нейрокомпьютеры». Рассматриваются методы представления и принципы логического программирования на примере языка Пролог. Описываются основные понятия Пролога, способы логического программирования, структуры данных. Рассматриваются представление моделей знаний и особенности создания экспертных систем.

Ил. 10. Библиогр.: 7 назв.

Печатается по решению редакционно-издательского совета Таганрогского государственного радиотехнического университета.

Р е ц е н з е н т ы:

Таганрогский НИИ Связи, ведущий научный сотрудник ТНИИС

А.В. Маргелов, д.т.н., с.н.с.

Н.И. Витиска, д.т.н., проф., проректор по УР ТГПИ.

© Таганрогский государственный радиотехнический университет, 2001.

Содержание

Ил. 10. Библиогр.: 7 назв. 4

ВВЕДЕНИЕ 2

1. ПРИНЦИПЫ ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 4

1.1. Базовые понятия 4

1.2. Терминология 10

1.3. Сложные термы, или структуры 14

1.4. Синтаксис строк 15

1.5. Утверждения 15

1.6. Запросы 16

1.7. Ввод программ 17

1.8. Унификация 17

1.9. Арифметические выражения 18

1.10. Вычисление арифметических выражений 19

1.11. Сравнение результатов арифметических выражений 20

2. СТРУКТУРЫ ДАННЫХ НА ЯЗЫКЕ ПРОЛОГ 21

2.1. Списки 21

2.2. Бинарные деревья 28

2.3. Механизм возврата и процедурная семантика 32

3. ПРЕДСТАВЛЕНИЕ МОДЕЛЕЙ ЗНАНИЙ 37

3.1. Процесс представления знаний 37

3.2. Семантические сети 42

3.3. Фреймы 43

3.4. Механизм наследования в Прологе 46

3.5. Создание динамических баз данных 52

3.6. Представление задач в виде И/ИЛИ – графов 57

4. ЭКСПЕРТНЫЕ СИСТЕМЫ 63

4.1. Системы экспертных консультаций 63

4.2. Запоминание пути вывода 76

5. ПРИМЕР ЗАДАЧИ НА ПРЕДСТАВЛЕНИЕ ЗНАНИЙ 82

6. ЗАКЛЮЧЕНИЕ 84

ЛИТЕРАТУРА 85

Введение

В настоящее время для удовлетворения экспоненциально растущих информационных запросов часто бывает недостаточно изменений только в соответствующем программном обеспечении. Часто информационные запросы часто уже не ограничиваются проблемами расширения функций, а многие принципиальные постановки задач требуют коренного пересмотра всего комплекса программ. При этом знания, заложенные в программы, например для автоматизированных предприятий, не изменяются относительно нового запроса, а могут лишь дополняться в связи с новыми формами производства или изменением состава оборудования. Здесь, на границе возможностей применения процедурного программирования, начинается совсем другая область, а именно, область интеллектуального программирования, некоторым вопросам применения которого посвящено данное учебное пособие. Интеллектуальное программирование предназначено для получения знаний в форме композиции новых фактов ("knowledge mining" вместо используемого сегодня "data mining") из технологии работы с базами данных. Основные преимущества применения интеллектуального программирования (программирование без программистов) заключаются в использовании подмножеств естественного языка; в построении парадигмы отладки знаний; расширении области применения компьютеров; формировании инструментария, аналогичного, например, системе Паскаль, но без таких формализмов, как операторы.

Целью данного пособия является освещение вопросов представления знаний методами логического программирования, изучаемых в курсах «Информационные технологии» и «Системы искусственного интеллекта и нейрокомпьютеры» [1]. В частности, рабочая программа курса «Информационные технологии» предусматривает изучение следующих вопросов, как информационные технологии логического программирования; логическое программирование на языке Пролог; логика высказываний; логика предикатов; синтаксис языка Пролог; фразы Хорна как средство представления знаний; арифметика и структуры данных; списки; способы представления базы данных на языке Пролог и др., а рабочая программа курса «Системы искусственного интеллекта и нейрокомпьютеры» предусматривает изучение методов представления знаний; семантических сетей, фреймов, построения экспертных систем и т.п.

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

В связи с этим, излагаемый в данном пособии материал кроме описания базового синтаксиса содержит примеры создания баз данных и экспертных систем, а также механизм реализации на языке Пролог таких моделей искусственного интеллекта, как семантические сети и фреймы.

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