- •Содержание
- •Введение
- •Глава 1. Основные понятия
- •1.1. Понятие об искусственном интеллекте
- •1.1.1. Точка зрения Петрунина.
- •1.1.2. Интеллектуальные алгоритмы.
- •1.2. Основные направления исследования в области ии
- •1.3. Данные и знания. Основные модели представления знаний
- •Глава 2. Логические модели представления знаний
- •2.1. Логика высказываний
- •2.1.1. Булева алгебра.
- •2.1.2. Понятие о логическом следствии.
- •2.1.3. Метод резолюции в лв.
- •Имеет место теорема о полноте резолютивного вывода. Множество клозов противоречиво тогда и только тогда, когда из него методом резолюции можно вывести пустой клоз.
- •2.2. Логика предикатов первого порядка
- •2.2.1. Основные определения.
- •2.2.2. Метод резолюции в лппп.
- •2.2.3. Стратегии проведения резолюции.
- •2.2.4. Упорядоченный линейный вывод в лппп.
- •2.2.5.Применение поиска в пространстве состояний при реализации автоматизированного логического вывода.
- •2.2.6. Логический вывод на хорновских дизъюнктах.
- •Понятие экспертной системы и применение логического вывода при построении экспертных систем.
- •2.2.9. Запросы класса b.
- •2.2.10. Запросы класса c.
- •2.3. Понятие о нечетком выводе
- •2.4. Неклассические логики
- •2.4.1. Логики высших порядков.
- •2.4.2. Модальные логики.
- •2.4.3. Многозначные логики.
- •Глава 3. Продукционные модели представления знаний
- •3.1. Основные понятия
- •3.2. Стратегии управления
- •3.2.1. Поиск с возвратом.
- •3.2.2. Поиск в пространстве состояний.
- •3.3. Понятие о коммутативных системах продукций
- •3.4. Понятие о нечетком выводе на продукциях
- •3.5. Сравнение продукционных и логических моделей
- •Глава 4. Реляционные языки представления знаний
- •4.1. Основные элементы естественных языков
- •4.2. Дескрипторные модели
- •4.2.1. Понятие об ипс.
- •4.2.2. Линейная модель работы ипс.
- •4.2.3. Понятие о многоуровневом поиске.
- •4.2.4. Основные характеристики ипс.
- •4.4. Синтагматические цепи
- •4.4.1. Понятие синтагматических цепей.
- •4.4.2. Фреймы.
- •4.5. Сетевые модели представления знаний
- •4.5.1. Понятие семантической сети.
- •4.5.2. Структура интеллектуальной системы доступа к данным на основе семантической сети.
- •4.5.3. Задача поиска кратчайшего обхода образца в семантической сети.
- •4.5.4. Понятие о логическом выводе на семантических сетях.
- •Глава 5. Нейронные сети
- •5.1. Параллели из биологии
- •5.2. Базовая искусственная модель
- •5.3. Применение нейронных сетей
- •5.4. Обучение сети
- •Глава 6. Организация диалога с эвм на естественном языке
- •6.1. Элементы теории формальных языков
- •6.2. Обратная польская запись
- •6.3. Недостатки применения аппарата формальных грамматик
- •6.4. Элементы семиотики
- •6.5. Модель непосредственных составляющих
- •6.6. Многозначность в естественных языках
- •6.7. Расширенные сети переходов
- •6.8. Глубинные (семантические) падежи
- •Глава 7. Логическое программирование на языке пролог
- •7.1. Основные понятия в языке Пролог
- •7.2. Пакет Turbo Prolog
- •7.3. Структура программы
- •7.4. Поиск решений
- •7.5. Механизм отката
- •7.6. Операторы. Декларативный и процедурный смысл программы
- •7.7. Повторение и рекурсия
- •7.8. Повторение и откат
- •7.8.1. Метод отката после неудачи (опн).
- •7.8.2. Метод отсечения и отката (оо).
- •7.8.3. Метод повтора, определенный пользователем.
- •7.9. Методы организации рекурсии
- •7.10. Отладка программы и обнаружение ошибок
- •7.11. Графика в Turbo Prolog’е
- •7.11.1 Создание меню.
- •7.11.2. Создание графического режима.
- •7.11.3. Черепашья графика
- •7.12. Списки и их использование
- •7.12.1. Использование списка.
- •7.12.2. Поиск элементов в списке.
- •7.12.3. Создание нового списка путем слияния двух списков
- •7.12.3. Разделение на два списка.
- •7.13. Сортировки
- •7.13.1. Наивная сортировка.
- •7.13.2. Сортировка включением.
- •7.13.3. Метод «пузырька».
- •7.13.4. Быстрая сортировка.
- •7.14. Компоновка данных из базы в список
- •7.15. Работа с символами и строками
- •7.16. Специальные строки
- •7.17. Работа с файлами
- •7.18. Создание динамических баз данных
- •7.19. Библиотеки Turbo Prolog’а
- •7.19. Модульное программирование
- •7.20. Решение задачи о волке, козе и капусте
- •Глава 8. Введение в язык лисп
- •8.1. Основные особенности языка Лисп
- •8.2. Понятия языка Лисп
- •8.2.1 Атомы и списки.
- •8.2.2 . Внутреннее представление списка.
- •8.2.3 .Написание программы на Лиспе.
- •8.2.4. Определение функций.
- •8.2.5. Рекурсия и итерация.
- •В) maplist. Эта функция действует подобно mapcar, но действия осуществляет не над элементами списка, а над последовательными cdr этого списка.
- •8.2.6 . Функции интерпретации выражения.
- •8.2.7. Макросредства.
- •8.2.8. Функции ввода-вывода.
- •Список используемых источников
- •Перечень используемых сокращений
7.2. Пакет Turbo Prolog
Пакет компилятора Turbo Prolog состоит из двух дистрибутивных дисков ( каталогов) и руководства. Один диск имеет название PROGRAM DISK, а второй- LIBRARY & SAMPLE PROGRAM.
Для работы с Турбо Прологом необходимо наличие на компьютере 7 программ.
Содержимое первого диска:
A) PROLOG.EXE – основной файл системы Турбо Пролог,
B) PROLOG.OVL – запуск и создание EXE программы,
C) PROLOG.SYS – файлы с информацией о цветах, окнах, использовании директорий,
D) PROLOG.ERR – файл с сообщениями об ошибках,
E) PROLOG.HLP – файл, содержащий текст подсказок,
F) README.COM – программа для выдачи на экран файла README,
G) README – текстовый файл,
Содержимое второго диска:
A) PROLOG.LIB – библиотека,
B) INIT.OBJ – используется при создании исполнимых файлов,
C) EXAMPLES – программы из руководства пользователя,
D) ANSWERS – ответы на упражнения руководства,
E) PROGRAMS – демонстрационные программы.
Для выполнения требуется ОЗУ не менее 384Кb и DOS версии выше 2.0.
Запуск осуществляется из DOS по команде
С>: PROLOG (ввод) или из NC щелчком на исполнимом файле
Появляется редактор, вид которого зависит от настроек системы. В общем случае окно будет иметь вид:
FILES |
EDIT |
RUN |
COMPILE |
OPTION |
SETUP |
Работа с файлами |
Редактирование программ |
Запуск программы |
Трансляция программы компиляции |
Применение параметров компиляции, задание опций компилятора |
Изменение системных параметров, настройка системы в соответствии с индивидуальными потребностями |
Появляется 4 окна:
1. Line1 Col1 Indent Insert Здесь пишется текст |
2. Dialog Для задания внешней цели и получения результатов работы программ |
3. message Сообщение об успешности или неуспешности транслирования |
4. Trace Для отладки программы |
Имеется 6 режимов работы: работа с файлами, редактирование, трансляция, запуск на счет, задание режимов, настройка системы. Создание файла начинается в режиме Edit. Выбор меню возможен по ALT+буква, выход по ESC. Quit – выход из системы.
Напишем первую программу. Набираем в редакторе
predicates
hello
goal
hello
clauses
hello:– write(“Welcome to TurboProlog”), nl.
Нажмем ESC, выберем RUN и смотрим в окне Message сообщения об ошибках, а в окне Dialog результат. В случае работы в сетевом классе для записи файла на диск необходимо выбрать режим FILES, в нем выбрать опцию CHDIR для смены каталога на F:\work_pr; по умолчанию там будет E:\, на который нельзя записывать. Посмотреть содержимое каталога можно по режиму DIR. После того как каталог правильно указан, записываем по команде WRITE TO (указываем имя), по SAVE он будет сохранен под стандартным именем work. Загрузка готового файла производится по LOAD. Для правильной работы транслятора необходимо также правильно настроить конфигурацию директорий, указав, откуда что брать и куда что записывать. Например, в таком виде:
Исходные тексты current directory F:\work_pr
Объектные OBJ directory F:\work_pr
Выполнимый файл EXE directory F:\work_pr
Системная Turbodirectory E:\ Prolog