Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
ЭТ0-МЛЕ К 0ПИТА1ОЩЕЕ ИМЕЕТ - КОПЫТА⇐ ПредыдущаяСтр 34 из 34
10 ПРАВИЛО: ЭТО-КОПЫТНОЕ27 (ЭТО-КОП' 1 ОЕ 11 ЭТО-МЛЕКОГШТАЮЩЕЕ ЖВАЧНОЕ ) ПРАВИЛО: ЭТО-ГЕПАРД?
12 (ЭТО-ГЕПАРД Э ГО-МЛЕКОПИТАЮЩЕЕ ЭТ О- 11ЛОТОЯДНОЕ 13 ИМ Ё ЕТ-РЫЖЕ-КОРИЧ-ОКРАС ИМЕЕТ-ТЕМ И ЫЕ-ПЯТНА )
290
291 # 82 CrPROLOG.BLK 0 \ ПРИМЕР КЛАССИФИКАЦИИ ЖИВОТНЫХ 1 ПРАВИЛО: ЭТО-ЗЕБРА? (ЭТО-ЗЕБРА ЭТО-КОПЫТНОЕ 2 ИМЕЁТ-МЕРНЫЕ-ПОЛОСЫ ) ПРАВИЛО: ЭТО-СТРАУС? 3 (ЭТО-СТРАУС ЭТО-ПТИЦА НЕ-ЛЕТАЕТ ИМЕЕТ-ДЛИННУЮ-ШЕЮ 4 ИМЕЕТ-ДЛИННЫЕ-НОГИ ) ПРАВИЛО: ЭТО-ПИНГВИН? 5 (ЭТО ПИНГВИН ЭТО-ПТИЦА HE-ЛЕТАЕТ ПЛАВАЕТ 6 ИМЕЕТ-ЧЕРНО-БЕЯ-ОКРАС ) ПРАВИЛО: ЭТО-АЛЬБАТРОС? 8 ПРАВИЛО: ЭТО-ТИГР? (ЭТО-ТИГР ЭТО-МЛЕКОПИТАЮЩЕЕ ЭТО-ПЛОТОЯДНОЕ ИМЕЕТ-РЫЖЕ-КОРИЧ-ОКРАС ИМЕЕТ-ЧЕРНЫЕ-ПОЛОСЫ ) ПРАВИЛО: ЭТО-ЖИРАФ? (ЭТО-ЖИРАФ ИМЕЕТ-ДЛИННУЮ-ШЕЮ ИМЕЕТ-ДЛИННЫЕ-НОГИ ИМЕЕТ-ТВМНЫЕ-ПЯТНА ) 15 ПРЕДЛОЖЕНИЯ НУЛЬ УСТАНОВИТЬ Экр # 83 CrPROLOG.BLK • 0 \ ПРИМЕР КЛАССИФИКАЦИИ ЖИВОТНЫХ 1 ПРЕДЛОЖЕНИЯ ЧТСП 2 (ЭТО-ЖИВОТНОЕ1? @ ЭТО-ЖИВОТНОЕ2? @ ЭТО-ПТИЦА1? @ 3 ЭТО-ПТИЦА2? < ф ЭТО-ПЛОТОЙДНОЕ1? @ ЭТО-ПЛОТОЯДНО122? @ 4 ЭТО-КОПЫТНОЕ1? @ ЭТ0-К0ПЫТН0Е2? @ ЭТО-ГЕПАРД? @ 5 ЭТО-ТЙГР? @ ЭТО-ЖИРАФ? @ ЭТО-ЗЕВРА? @ 6 ЭТО-СТРАУС? @ ЭТО-ПИНГВИН? @ ЭТО-АЛЬБАТРОС? @ ) 8 ■ 9 10-1112 13 РЕШЕНИЯ НУЛЬ УСТАНОВИТЬ 14 ЦЕЛИ НУЛЬ УСТАНОВИТЬ ■ 15 НУЛЬ ЭТО-АЛЬБАТРОС ЦЕЛИ СПИСОК
Приложение 1 СЛОВАРЬ ФОРТА ! ( n a -> ) ( -> cfa ) ( -> ) * ( nl n2 -> n3) */ (nl n2 n3 -> n4) */MOD ( nl n2 n3 -> r q) + ( nl n2 -> n3) +! ( n a -> ) +LOOP ( n -> ) - ( n -> ) ( nl n2 -> n3), ( n -> ) ( -> )
Занесение n по адресу а. Занесение в вершину стека cfa следующего слова из входного потока. Пропуск символов из входного потока до правой круглой скобки. Используется для записи комментария. Умножение nl на n2 с получением произведения nЗ. Умножение nl на n2 с получением результата двойной длины, который затем делится на nЗ. Используется при масштабировании чисел с фиксированной точкой. То же, что и */, но в качестве результата в вершину стека заносит частное q и остаток r. Сложение nl и n2, результатом является nЗ. Добавление n к содержимому по адресу а. Добавление n к счетчику цикла. Если в результате полученное значение счетчика выходит за границу, цикл принудительно завершается, в противном случае управление передается на фрагмент, расположенный за DO. Компиляция n в словарь путем выделения памяти и занесения. Вычитание n2 из n1 с получением разности nЗ. Вывод числа n. Используется во время компиляции. Компилирует строковый литерал, начинающийся с символа, следующего за пробелом после.", и завершающийся символом " . Скомпилированный текст выводится при исполнении слова." . 292 / ( n1 n2 -> nЗ) /MOD ( nl n2 -> r q) 0< ( n -> f) 0= ( n -> f) 0> ( n -> f) 1+ ( n1 -> n2) 1- ( n1 -> n2) 2+ ( nl -> n2) 2-- ( n1 -> n2) 2/ ( n1 -> n2) 2* ( nl -> n2) ; (-> ) < ( n1 n2 -> f) d= ( nl n2 -> f) > ( nl n2 -> f) > BODY ( cfa _> pfa) > R? DUP ( n1 - > [n1] n2) @ ( a -> n) ABS ( n1 -> n2) ALLOT ( nl -> ) AND ( nl n2 -> n3) BASE ( > pfa) Деление nl на n2 с получением частного nЗ. То же, что и /, но в качестве результата в вершину стеке заносится частное q и остаток r. Флат истинен, если n < 0. Флаг истинен, если n = 0. Флаг истиней, если n > 0. n2 = nl + 1 n2 = nl - 1 n2 = n1 + 2. n2=nl - 2. n2 = nl/2. Выполняется арифметическим сдвигом вправо на один бит. n2 = 2 * nl, Выполняется сдвигом влево на один бит. Определение слона форта путем создания заголовка словарной статьи и компиляции текста из входного потока до символа; . Завершение определения через двоеточие и перевод Форта в режим интерпретации. Флаг истинен, если nl < n2. Флаг истинен, если nl = n2. Флаг истинен, если nl > n2 >. Переход от cfa к pfa, т.е. к телу словарной статьи. Занесение n в стек возвратов Если nl не ноль, выполненить операцию DUP. Занесение в вершину стека содержимого по адресу а. Занесение.в вершину стека абсолютного значения nl. Выделение n байт памяти в словаре. Выполнение поразрядной конъюнкции над nl и п2 с с получением nЗ. Системная переменная, содержащая текущее основание системы счисления для вводимых чисел. BEGIN ( -> ) С! ( n a -> ) C@ ( a -> n) CONSTANT период-компиляции: (n -> ) период-выполнения: ( -> n) CR ( -> ) CREATE ( -> ) DECIMAL ( -> ) DEFINITIONS ( -> ) DOES> период-компиляции: ( -> ) период-выпилнения: ( -> pfa ) DROP ( n -> ) DUP ( n n -> ) Начало цикла как со счетчиком (UNTIL), так и с условием (WHILE-REPEAT). Занесение, младших разрядов (байта) n по адресу а. Выборка младших разрядов (байта) содержимого по адресу а. Старшие разряды результата обнуляются. Определяющее слово, которое в период компиляции создает слово, заносящее при своем исполнении (в период выполнения) число n в вершину стека. Преобразование указателя строки со счетчиком в адрес первой литеры и число литер строки. Вывод символа возврата каретки (ASCII 13). Определяющее слово, создающее компиляции (CURRENT) на текущий словарь поиска (CONTEXT). Компилирующее слово. Служит началом цикла DO. Исходным значением счетчика цикла является счетчик. Цикл завершается при переходе значения счетчика через границу (в обоих направлениях). Цикл всегда исполняется по крайней мере один раз. Путем использования определяющего слова DOES> в словах Форта задаются действия периода выполнения. Во время выполнения на стек заносится pfa слова, подлежащего исполнению. Удаление верхнего элемента стека. Занесение копии верхнего элемента стека в вершину последнего.
293 ELSE EMIT ( n -> ) EXECUTE ( сfа -> ) FLUSH ( -> ) FORGET ( -> ) FOR TH ( -> ) HERE (-> a) I ( -> n) IF (f -> ) IMMEDIATE ( -> ) J ( -> n) Компилирующее cлово. Используется в конструкциях IF-ELSE-TНEN. Слова, расположенные между ELSE и THEN, выполняются в том случае, если флаг для IF ложен. Вывод n в выходной поток в символьном виде. Выполнение слова, pfa которого находится на стеке. Запись обновленных дисковых буферов во внешнюю память и их освобождение. Выбор очередного слова из входного потока. Забываются все слова, определенные перед этим словом. Если слово зашищено, выдастся аварийное сообщение Контекстный словарь, содержащий стандартные слова Форта. Занесение в вершину стека очередного доступного адреса (первого свободного адреса в словаре). Используется в конструкциях заставит в период-выполнения исполняться слова, следующие непосредственно за IF. В противном случае будут исполняться слова, следующие за ELSE или THEN (если конструкция ELSE отсутствует). Отмечает последнее определенное слово как компилирующее, которое при режиме компиляции будет не компилироваться, а исполняться. Применяется во вложенных циклах типа DO. Заносит в вершину стека значение счетчика внешнего цикла ( см. I ). KEY ( -> n) LATEST ( -> nfa) LITERAL ( n -> ) LOAD ( n -> ) MAX ( nl n2 -> nЗ) MIN ( nl n2 -> n3) NEGATE ( n -> -n) NOT ( nl -> n2) OR ( n 1 n2 -> n3) OVER ( nl n2 -> nl n2 nl) R> ( -> n) R@ ( -> n) REPEAT ( -> ) ROT ( nl n2 nЗ -> n2 nЗ nl) SPACE ( -> )
Занесение на стек символа из входного потока. Занесение на стек nfa последней созданной статьи. Компилирующее слово, которое в период выполнения вызывает занесение на стек n. Слово для работы с диском. Вызывает интерпретацию блока n. Компилирующее слово, которое в период выполнения увеличивает зна чение счетчика DO-цикла на единицу. Если полученное значение счетчика выходит за границу, выполнение цикла завершается и начинают исполняться слова, следующие за словом LOOP. В противном случае исполняются слова, следующие за DO. Занесение на стек большего из чисел nl и n2. Занесение на стек меньшего из чисел nl и n2. Занесение на стек дополнения до двух от n или отрицательной величины n. Поразрядное инвертирование nl. Выполнение поразрядной дизъюнкции над nl и n2 с получением nЗ. Занесение на стек копии второго элемента стека. Перенесение верхнего элемента стека возвратов на стек данных. Копирование верхнего элемента стека возвратов на стек данных. Компилирующее слово. Применяется в циклах типа BEGIN... WH1LE... REPEAT для передачи управления на слово, следующее за BEGIN. Перемещение третьего элемента стека в его вершину. Запись на, диск всех обновленных дисковых буферов. Вывод символа пробела (ASCII 32).
STATE SWAP TYPE VARIABLE VOCABULARY XOR ( -> pfa) ! nl n2 -> n2 nl) ( a u -> ) ( n -> ) nl п2 -> пЗ) ( -> )' Период-компиляции: ( -> ) период-выполнения: ( -> cfa) Системная переменная, содержа- Компилирующее слово.применяе- Выполнение поразрядного
Приложение Г ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА Инструментальные средства (ИС) представляют собой пакеты программ, облегчающие процесс построения экспертных систем. Они включают в себя блок логического вывода, пользовательский интерфейс и про " рамму приобретения знаний, позволяющую пользователю пополнять систему знания! Каждое инструментальное средство имеет свои особенности, что позволяет наиболее эффективно его применять только в какой- то одной прикладной области. К выбору инструментального средства для построения конкретной экспертной системы нужно подходить очень внимательно. В настоящем приложении перечислены наиболее распространенные инструментальные средства построения экспертных систем.
Know'eage Engineering Knowledge Engineering LOOPS *■ (Xerox Palo Alto Research) M.I (Teknowledge Inc.) MicroExpert (McGraw Hill Book Co.) Nexpert (Neuron Data Inc.) OPS5 OPSSe (Veres Inc., San Diego)
Фреймы Фреймы Лисп (Symbolics 3600, IQLISP INTERLISP Пролог Паскаль (IBM PC, Apple) (Macintosh) Лисп (VAX 11/780) ZetaUSP V k r. a a n ик>;.ен.:: рия и f, ; 60000 4000
Демонстрационный 'азработка больших ЭС 5000 Разработка небольших ЭС, 49.50 5000 Определение 3000
Laboratories) (правила) Символьные преобразова- 1980 Геология 1978 Легочные заболевания 1981 Лечение менингита; 1975 диагностика инфекци- Определение конфигу- 1978 рации компьютерных Анализ результатов 1980 электрофореза Алгоритм. Эффективная конечная процедура. Альфа бета алгоритм. Стратегия поис-т решения с сокраще Ассоциативный список. Представление списковой структуры, при которой в ячейках связи хранятся пары атрибут-значение (А-3 - пары), называемые также А-списками. Атом. Основной элемент данных в Лиспе. Используется для представления объектов. Как атом, так и списки являются символьными выражениями. Атрибут. Некоторое свойство объекта. Например, в факте " Цвет слона - серый" понятие слон - это объект, цвет - атрибут, а се-рый - значение. Атрибут-значение (А-3). Способ представления факту ал ьного знания, при котором атрибутам могут присваиваться значения. Например, в факте " Животное имеет волосяной покров" атрибутом служит животное, а его значением является имеет_ волосяной_покров. База данных. В системе, основанной на знаниях, этот термин, как правило, означает рабочую память (см. рабочая память). База знаний. Часть системы, основанной на знаниях, которая состоит из фактов и правил. В продукционной системе она состоит из базы правил и рабочей памяти. Булевские операторы. Операторы исчисления предикатов. К ним относятся операторы И, ИЛИ, НЕ. Висячие ссылки. Ситуация в Лиспе при распределении памяти, когда некоторая ячейка считается свободной, а на самом деле занята. При таком положении возможны " висячие" указатели из активных ячеек (см. сборка мусора).
Внешний интерпритатор. Интерпретатор Форта, взаимодействующий с пользователем. Внутренний интерпретатор. Часть виртуальной Форт-
ГЛОССАРИЙ Возврат. Переход при выводе на несколько шагов назад Вывод. Процесс рассуждения во временя которого из известных Фактов выводятся новые факты. Глубинные знания. Основные знания о некоторой области ( см гл.5, поверхностные знания) Демоны. Скрытые или виртуальные процедуры в системах,
Дерево вывода.Графическое редставленяе возможных путей поиска решения в Прологе. Диагностические системы. Тип систем, основанных на знаниях, которые применяются для нахождения причин неполадок Динамическое распределение. Распределение памяти в период Долговременная память. Часть человеческой памяти, предназначенная для хранения сведений, необходимость в которых может возникнуть не только в момент их появления, но и в некоторое время спустя. Аналогнчна внешней памяти компьютера или базе правил в системе, основанной на знаниях. Домен. Определенная часть знаний о некоторой области. Информатика представляет собой весьма общирный домен, в то время как когнитивное Доска объявлений. Глобальная структура данных в. Экспертной системе, через которую осуществляется взаимодействие различных источнико знаний. Знания. Совокупность фактов, закономерностей и эвристических правил, с помощью которых можно решить поставленную задачу. Идентификатор списка. Переменная Форта, зн ачение которой Иерархия, Отношение подчиненности между п онятиями или объектами.
Инженер знаний. Специалист, которому знакомы содержа- Интерпретатор. Процедура, производящая разбор входного Интерпретирующая система. Тип системы, основанной на Искусственный интеллект (ИИ). Одна из ветвей информа- Когнитивное моделирование. Область науки, целью которой компилируемые знания. Знания, полученные от эксперта или Компилятор. Программа, анализирующая входной поток и Компонент управления. Процедура вывода или интерпретатор Консультационный режим. Один из интерактивных режимов Лисп. Программная среда для решения символьных задач.
Логика первого порядка. Расширение пропозиционального Логические связки. Булевские оперли ли, применяемые в Механизм вывода. Часть продукционной системы, которая
Модус поненс. Правило ЕСЛИ (А и ЕСЛИ А ТО В) ТО В. Монотонный вывод. Вид рассуждения в ЭС, при котором Мусор. Вид ошибочного распределения памяти в Лиспе, при Наследование. Процесс получения объектом значений для Немонотонный вывод. Вид рассужденич. при котором факты Область списков. Часть машинной памяти, используемая для Обратный вывод. Стратегия вывода, при которой вывод про- Объект. Элемент системы, основанной на знаниях, который Объект-атрибут-значение (А-О-3). Способ выражения фак^у- Определяющие слова. Слова Форта, применяющиеся для 310 Отметить и удалить. Схема управления списками в Лиспе, Параллельная архитектура. Вид архитектуры компьютера, ПЕРВЫЙ. См. CAR. Плоское представление. Представление знаний, вид которого Поиск в глубину. Стратегия поиска, при которой Поиск в ширину. Стратегия поиска решения, при которой Понимание естественного языка. Ветвь искусственного интел- Правило типа IF-THEN. Оператор, реализующий отношение Представление знаний. Метод структурирования фактов и Прямой вывод. Стратегия вывода, при которой правила при- Разрешение конфликта. В продукционных системах это про- Расширенная переменная. Переменная Форта с дополнитель- 311 Сборка мусора. Восстановление неиспользуемых ячеек к Система управления сетевыми базами данных. Тип систем Системы, основанные на знаниях. Класс компьютерных прог- Скобочная нотация. Вид записи списков в Лиспе, при которой Словарь. Список слов Форта. Список. Упорядоченное множество связных ячеек памяти в Стек параметров. Стек Форта, используемый для передачи Структура данных. Способ организации данных и определе- Тело. Цели некоторого предложения в языке Пролог. Факт. Утверждение или посылка, которые являются истин- Фактор достоверности (ФД). Мера доверия к факту или от- Фасеты. Ограничения на значения, хранимые в слотах при Фрейм. Структура для представления знаний, которая состоит Функциональное программирование. Метод программирова- Чанк. Фрагмент знаний, хранимый и используемый как еди- Эвристические правила. Неформальные знания, используемые Экспертные системы. См. системы, основанные на знаниях. Экспертиза. Эвристические и точные знания, которыми обла- Ядро. Слова машинного уровня в Форте, с помощью которых Ячейки связи. Тип данных Лиспа, состоящий из двух компо- CAR. Адресный указатель на элемент списка в Лиспе, альтер- CDR. Адресный указатель на следующую ячейку связи списка cfa. Адрес поля кода в Форте - участка, где находится ука- nfa. Адрес поля имени в Форте, в котором располагается имя NIL (НУЛЬ). Атом Лиспа, являющийся одновременно, и пус- 312 16. Redington D. Outline of a Forth Oriented Real-time Expert 17. Park J. MVP-FORTH Expert System Toolkit. - Mountain ЛИТЕРАТУРА ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ 1. Barr A., Feigenbaum E. The Handbook of Artificial 2. Feigenbaum E., McCorduck P. The Fifth Generation: Artificial 3. Winston P. Artificial Intelligence. - Reading, Mass.: Addison- 4. Winston P. The AI Buseness: Commercial Uses of Artificial 5. BYTE. - Vol.6, N 9, 1981. 6. BYTE. - Vol.10, N 4, 1985. ЭКСПЕРТНЫЕ СИСТЕМЫ 7. Forsith R. Expert Systems: Principles and Case Studies. - 8. Freiling A. Starting a Knowledge Engineering Project. - AI 9. Genesereth M. Fundamentals of Artificial Intelligence. - Palo
10. Gevarter W. An Overview of Expert Systems. - Washington 11. Hayes-Roth F., Waterman D. Building Expert Systems. - Harmon P. Expert Systems: Artificial Intelligence in Business. - 12. Stefik M. The Organisation of Expert Systems. - Palo Alto, 13. Communication of the ACM. - Vol.28, N 5, 1985. 14. BYTE. - Vol.4, N 8, 1979. ЭКСПЕРТНЫЕ СИСТЕМЫ, РЕАЛИЗОВАННЫЕ НА ФОРТЕ 15. Johnson H. Expert Systems for Diesel Locomotive Repair. - 314
ЯЗЫКИ ПРОГРАММИРОВАНИЯ 18. Brodie L Starting Forth. - Englewoxl Clifs: Prentice-Hall, 1981. 19. M eehan J The New UCI LISP Manual. - Hillsdale, N.J., 20. Winston P., Horn B. LISP. - Reading, Mass.: Addison-Wesley 21. BYTE- - VoLlO, N 8, 1985. 22. BYTE. - Vol.6, N 8, 1981. ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА 23. Goldenberg J. Experts on Calls. - PC World, September, 1985. 24. PC Magazine. - Vol.4, N 8, 1985. ПРЕДСТАВЛЕНИЕ ЗНАНИЙ 25. Communication of the ACM. - Vol.28, N 9, 1985 0ГЛАВЛЕНИЕ Предисловие к русскому изданию…………………………………5 Предисловие.................................................................................... 14 ЧАСТЬ I. ЭКСПЕРТНЫЕ СИСТЕМЫ - СИСТЕМЫ, I. Введение в искусственный интеллект…………………..18 Что такое мышление?............................................................18 Процесс мышления ……………………………………….19 Организация хранения информации в человеческой памяти....................................................................................23 Представление знаний * Решение задач * Экспертные системы * Средства общения с ЭВМ на естественном языке * Обучение * Обработка визуальной информации и робототехника Упражнения ……………………………………. 34 2. Системы, основанные на знаниях.............................. 36 Чго такое система, основанная нa знаниях?.......................36 Отличительные особенности,................................. ……....... 39 Области применения............... ……………………………... 39 Медицинская диагностика * Прогнозирование * Планирование * Интерпретации * Контроль и управление * Диагностика неисправности в механических и электрических устройствах * Обучение Критерии использования..................................................... 42 Ограничения...................................................................... 44 Преимущества...................................................................... 45 Возможности реализации на персональных компьютерах.45 Эвристические и алгоритмические методы решения задач 47 Символьная и числовая обработка данных....................... 49 Рассуждения с расширяющимся и уменьшающимся множеством заключений.................................................... 50 Выводы................................................................................... 51 Упражнения.......................................................................... 3.Структура систем, основанных на знаниях.............52 Память для хранения правил (база правил) * Рабочая память (база данных) *Механизм вывода ( интерпритатор правил) * Подсистема Подсистема объяснения Стратегии управления выводом............................................ 65 Прямой и обратный вывод * Повышение эффективности поиска Коммерческие продукционные систем, основанных на знаниях....................................................................
ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА...........................................69 Языки программирования систем, основанных на знаниях.................................................................... 72 Продукционная система - средство моделирования процессов мышления человека.........................................................................................73 Упражнения..................................................................................................................74 4. Представление знаний................................................75 Игра " Отгадай животное"......................................... 75 Представление знаний в виде правил..................... 76 Фреймы...................................................................... 81 Представление знаний в виде семантической сети.............................................................................85 Представление знаний средствами логики первого порядка........................................................................ 87 Основные понятия логики предикатов * Исчисление предикатов с кванторами( логики предикатов)* Синтаксис языка логики предикатов Системы, использующие принцип доски объявлений.................................................................92 Формирование базы знаний по примерам. 92 Построение демонстрационной базы знаний 93 Упражнения.............................................................................. 94 5............................. Инженерия знаний.,. 96 Описание предметной области................................................................................... 97 Определение характера решаемых задач * Выявление объектов предметной области * Установление взаимосвязей между объектами * Формализации знаний * Выявление специфических особенностей * предметной области * Выбор модели представления знаний * Структурная иерархии " Причинно-следственная иерархия, или модель поведения системы * Функциональная иерархия * Глубинные и поверхностные знания * Сопоставление методов представления и реализации знаний Приобретение знаний................................................... 109 Упражнения.................................. . ЧАСТЬ 2. ПОСТРОЕНИЕ СИСТЕМ, ОСНОВАННЫХ НА ЗНАНИЯХ.................... 112 6. Язык Форт - мощное средство построения Слова и словарь языка Форт……………………………..114 Передача данных через стек……………………………..116 Иерархическая декомпозиция и разбиение на модули...117 Выполнение арифметических операций………………...119 Манипулирование элементами стека............................... 123 Доступ к данным................................................................ 125 Флаги, логические операторы и сравнение чисел.......... 126 Управляющие конструкции.............................................. 128 Стек возвратов.................................................................... 135 Обработка строк................................................................. 136 Потоки текстов................................................................... 137 Структура слов Форта........................................................ 138 Управление словарем......................................................... 141 Виртуальная Форт-машина............................................... 141 Определяющие и компилирующие слова........................ 144 Слова для управления внешней памятью........................ 152 Упражнения......................................................................... 153 7. Обработка списков.............................................................. 154 Для чего нужно эмулировать Лисп?................................. 155 Статическое и динамическое управление памятью....... 156 Что такое список?............................................................... 157 Простейшие операции над списками.............................. 159 Идентификатор и указатель'списка.................................. 161 Вывод списков на печать.................................................. 164 Ввод списков...................................................................... 164 Типы данных при работе со списками............................. 167 Что такое НУЛЬ?................................................................ 168 Списки свойств.................................................................. 168 Ассоциативные списки..................................................... 170 Функции РАВНО и РАВ................................................... 171 Операции преобразования списков................................. 172 Другие функции работы со списками.............................. 173 Упражнения......................................................................... 176 8. Методы программирования............................................... 178 Рекурсия.............................................................................. 178 Сборка мусора......................................................................188 Реализация функций преобразования списков................190 Функции непосредственного преобразования списков и учет ссылок.......................................................................192
Упражнения..................................................................... ….193
9. Пролог - язык разработки систем, основанных на Логическое программирование на Прологе.................... 194 Интерпретатор Пролога.................................................... 199 Реализация поиска............................................................. 203 Деревья вывода................................................................... 211 Поиск в ширину и эвристический поиск........................212 Унификация........................................................................ 213 Упражнения......................................................................... 223 10. Дополнительные возможности....................................... 225 Встроенные предикаты Пролога..................................... 225 Процедурное дополнение и вызов по образцу.............. 226 Немонотонные рассуждения........................................... 227 Объектно-ориентированное программирование........... 229 Метарассуждения: управление выводом........................ 233 Неопределенность и достоверность................................ 235 Контекстные словари Форта........................................... 237 Параллельные вычисления............................................. 241 Упражнения……………………………………………… 243 11. Обучение и распознавание образов................................ 244 Обучение............................................................................ 244 Распознавание образов.................................................... 247 Свойства гиперплоскости * Классификаторы, построенные Алгоритмы классификации образов............................... 261 Упражнения........................................................................ 271 Приложение А. Исходные тексты программ……………....272 Приложение Б. Подпрограммы диагностики………………287 Приложение В. Словарь Форта……………………………..293 Приложение Г. Инструментальные средства построения экспертных систем…………………………….299 Приложение Д. Экспертные системы……………………...304 Глоссарий…………………………………………………….307 Литература……………………………………………….314 Научное издание ПРОЕКТИРОВАНИЕ И ПРОГРАММНАЯ РЕАЛИЗАЦИЯ Книга одобрена на заседании секции редсовета по электронной Зав. редакцией К.В. Коробов Редактор Н.К. Логинова Худож. редактор Ю.А. Артюхов Техн. редактор Г.А. Полякова Корректоры Г.А. Башарина, Г.В. Хлопцева Переплет художника Е.К. Самойлова ИБ N 2307 Оригинал-макет книги подготовлен к печати с помощью текстового Подписано в печать 20.09.90. Формат 60 х 88 1/16 Бум. офсетная. Гарнитура " Литературная" Печать офсетная. Усл.п.л. 19, 6. Усл. кр.-отт. 19, 6. Уч.-изд. л. 19, 11. Тираж 30 000 экз. Заказ 299. Цена 4 р. 50 к. Издательство " Финансы и статистика", Отпечатано в типографии им. Ё. Котлякова издательства " Финансы и статистика" 195273, Ленинград, ул. Руставели, |
Последнее изменение этой страницы: 2019-03-29; Просмотров: 223; Нарушение авторского права страницы