Экспертные системы. Принципы разработки и программирование

Джозеф Джарратано

Данное четвертое издание представляет собой результат существенного пересмотра известного во всем мире учебника по экспертным системам и разработке программного обеспечения с помощью инструментария языка экспертных систем CLIPS.

Книга включает сведения, относящиеся к двум основным направлениям; в первой половине книги излагается теория экспертных систем и показано, какое место занимают экспертные системы во всем объеме компьютерных наук, а во второй приведены сведения по программированию с помощью языка CLIPS. Еще одним новым средством, описанным в данном издании, является объектно-ориентированный язык COOL. В начале книги содержится отдельное введение в тематику искусственного интеллекта, объем которого достаточен для изучения экспертных систем.

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

Издательство: Вильямс, 2007 г.

ISBN 978-5-8459-1156-8, 0-534-38447-1

Количество страниц: 1152.

Содержание книги «Экспертные системы. Принципы разработки и программирование»:

  • 27 Глава 1. Введение в экспертные системы
    • 27 1.1. Введение
    • 27 1.2. Определение понятия экспертной системы
    • 38 1.3. Преимущества экспертных систем
    • 39 1.4. Общие понятия экспертных систем
    • 43 1.5. Характеристики экспертной системы
    • 47 1.6. Разработка технологии экспертных систем
      • 48 Решение задач человеком и продукционные правила
      • 54 Широкое распространение систем, основанных на знаниях
    • 57 1.7. Приложения и предметные области экспертных систем
      • 57 Приложения экспертных систем
      • 61 Наиболее подходящие области применения экспертных систем
    • 65 1.8. Языки, командные интерпретаторы и инструментальные средства
    • 69 1.9. Элементы экспертной системы
    • 77 1.10. Продукционные системы
      • 78 Продукционные системы Поста
      • 81 Марковские алгоритмы
      • 82 Rete-алгоритм
    • 85 1.11. Процедурные подходы
      • 86 Императивное программирование
      • 89 Функциональное программирование
    • 94 1.12. Непроцедурные подходы
      • 94 Декларативное программирование
      • 94 Объектно-ориентированное программирование
      • 96 Логическое программирование
      • 100 Экспертные системы
      • 102 Недекларативное программирование
      • 102 Программирование на основе индукции
    • 103 1.13. Искусственные нейронные системы
      • 105 Задача коммивояжера
      • 106 Элементы искусственной нейронной системы
      • 108 Характеристики искусственной нейронной системы
      • 110 Новейшие достижения в технологии искусственных нейронных систем
      • 113 Приложения технологии искусственных нейронных систем
    • 114 1.14. Коннекционистские экспертные системы и индуктивное обучение
    • 115 1.15. Современное состояние разработок в области искусственного интеллекта
    • 122 1.16. Резюме
      • 124 Задачи
  • 127 Глава 2. Представление знаний
    • 127 2.1. Введение
    • 131 2.2. Смысл знаний
    • 139 2.3. Продукции
    • 144 2.4. Семантические сети
    • 149 2.5. Тройки "объект-атрибут-значение"
    • 150 2.6. Язык PROLOG и семантические сети
      • 151 Основные сведения о языке PROLOG
      • 153 Обеспечение поиска в языке PROLOG
    • 157 2.7. Трудности, связанные с использованием семантических сетей
    • 159 2.8. Схемы
    • 162 2.9. Фреймы
    • 167 2.10. Трудности, связанные с использованием фреймов
    • 169 2.11. Логика и теория множеств
    • 172 2.12. Пропозициональная логика
    • 181 2.13. Логика предикатов первого порядка
    • 181 2.14. Квантор всеобщности
    • 184 2.15. Квантор существования
    • 185 2.16. Кванторы и множества
    • 187 2.17. Ограничения логики предикатов
    • 187 2.18. Резюме
      • 188 Задачи
  • 193 Глава 3. Методы логического вывода
    • 193 3.1. Введение
    • 194 3.2. Деревья, решетки и графы
    • 199 3.3. Пространства состояний и пространства задач
      • 199 Примеры пространств состояний
      • 205 Пространства слабо структурированных задач
    • 206 3.4. Деревья AND-OR и цели
    • 211 3.5. Дедуктивная логика и силлогизмы
    • 220 3.6. Правила вывода
    • 231 3.7. Ограничения пропозициональной логики
    • 233 3.8. Логика предикатов первого порядка
    • 235 3.9. Логические системы
    • 241 3.10. Резолюция
    • 245 3.11. Системы резолюции и дедукция
    • 248 3.12. Поверхностные и причинные рассуждения
    • 254 3.13. Резолюция и логика предикатов первого порядка
      • 255 Преобразование в форму с логическими выражениями
      • 259 Унификация и правила
    • 262 3.14. Прямой и обратный логический вывод
    • 271 3.15. Другие методы логического вывода
      • 271 Аналогия
      • 274 Метод формирования и проверки
      • 275 Абдукция
      • 278 Немонотонный вывод
    • 284 3.16. Метазнания
    • 285 3.17. Скрытые марковские модели
    • 288 3.18. Резюме
      • 289 Задачи
  • 295 Глава 4. Рассуждения в условиях неопределенности
    • 295 4.1. Введение
    • 296 4.2. Неопределенность
    • 301 4.3. Типы ошибок
    • 304 4.4. Ошибки и индукция
    • 308 4.5. Классическая вероятность
      • 308 Определение классической вероятности
      • 312 Выборочные пространства
      • 314 Теория вероятностей
    • 315 4.6. Экспериментальные и субъективные вероятности
    • 317 4.7. Сложные вероятности
    • 321 4.8. Условные вероятности
      • 321 Мультипликативный закон
      • 326 Теорема Байеса
    • 328 4.9. Гипотетические рассуждения и обратная индукция
    • 335 4.10. Временные рассуждения и марковские цепи
    • 341 4.11. Анализ вероятностных систем на основе понятий шансов и убеждений
    • 344 4.12. Достаточность и необходимость
    • 347 4.13. Применение неопределенности при формировании цепей логического вывода
      • 348 Несовместимость коэффициентов, заданных экспертом
      • 349 Неопределенное свидетельство
      • 353 Исправление недостатков, связанных с неопределенностью
    • 354 4.14. Комбинация свидетельств
      • 354 Варианты классификации неопределенных свидетельств
      • 357 Комбинирование свидетельств с использованием нечеткой логики
      • 359 Логическая комбинация свидетельств
      • 359 Эффективные значения правдоподобия
      • 361 Сложности, связанные с использованием условной независимости
    • 362 4.15. Сети логического вывода
      • 363 Система PROSPECTOR
      • 365 Сети логического вывода
      • 368 Отношения логического вывода
      • 373 Архитектура сети логического вывода
    • 377 4.16. Распространение вероятностей
    • 381 4.17. Резюме
      • 383 Задачи
  • 389 Глава 5. Нестрогие рассуждения
    • 389 5.1. Введение
    • 390 5.2. Неопределенность и правила
      • 390 Источники неопределенности в правилах
      • 392 Отсутствие надежных теоретических оснований
      • 393 Взаимодействия правил
      • 394 Разрешение конфликтов
      • 397 Обобщение и неопределенность
    • 399 5.3. Коэффициенты достоверности
      • 400 Трудности, связанные с применением байесовского метода
      • 401 Степени доверия и недоверия
      • 404 Меры, применяемые для измерения степени доверия и недоверия
      • 407 Вычисления, проводимые с использованием коэффициентов достоверности
      • 412 Сложности, связанные с использованием коэффициентов достоверности
    • 414 5.4. Теория Демпстера-Шефера
      • 414 Рамки различения
      • 417 Массовые функции и незнание
      • 422 Комбинирование свидетельств
      • 428 Нормализация степени доверия
      • 430 Движущиеся массы и множества
      • 431 Сложности, связанные с применением теории Демпстера-Шефера
    • 432 5.5. Приближенные рассуждения
      • 434 Нечеткие множества и естественный язык
      • 447 Операции с нечеткими множествами
      • 453 Нечеткие отношения
      • 459 Лингвистические переменные
      • 465 Принцип расширения
      • 466 Нечеткая логика
      • 469 Нечеткие правила
      • 473 Композиция max-min
      • 477 Метод максимума и метод моментов
      • 482 Возможность и вероятность
      • 485 Правила преобразования
      • 489 Неопределенность в нечетких экспертных системах
    • 492 5.6. Состояние неопределенности
    • 495 5.7. Некоторые коммерческие приложения нечеткой логики
    • 497 5.8. Резюме
      • 497 Задачи
  • 505 Глава 6. Проектирование экспертных систем
    • 505 6.1. Введение
    • 506 6.2. Выбор соответствующей задачи
      • 508 Выбор наиболее приемлемого подхода
      • 509 Выигрыш
      • 509 Инструментальные средства
      • 512 Стоимость
    • 514 6.3. Общее описание процесса разработки экспертной системы
      • 514 Руководство проектом
      • 517 Проблема доставки
      • 519 Сопровождение и развитие
    • 521 6.4. Ошибки, возникающие на различных этапах разработки
    • 529 6.5. Разработка программного обеспечения и экспертные системы
    • 533 6.6. Жизненный цикл экспертной системы
      • 534 Расходы на сопровождение
      • 535 Модель каскадного развития жизненного цикла
      • 537 Модель развития жизненного цикла на основе "кодирования и исправления
      • 537 Инкрементная модель жизненного цикла
      • 538 Модель спирального развития жизненного цикла
    • 538 6.7. Подробная модель жизненного цикла
      • 541 Планирование
      • 542 Определение знаний
      • 544 Проектирование знаний
      • 546 Разработка кода и отладка
      • 546 Верификация знаний
      • 547 Оценка системы
    • 548 6.8. Резюме
      • 549 Задачи
  • 551 Глава 7. Введение в CLIPS
    • 551 7.1. Введение
    • 552 7.2. Язык CLIPS
    • 554 7.3. Система обозначений
    • 556 7.4. Поля
    • 559 7.5. Вход и выход из системы CLIPS
    • 561 7.6. Факты
      • 562 Конструкция deftemplate
      • 563 Многозначные слоты
      • 563 Упорядоченные факты
    • 564 7.7. Добавление и удаление фактов
    • 568 7.8. Модификация и дублирование фактов
    • 570 7.9. Команда watch
    • 571 7.10. Конструкция deffacts
    • 573 7.11. Компоненты правила
    • 576 7.12. Рабочий список правил и выполнение программы
      • 577 Отображение рабочего списка правил
      • 578 Правила и релаксация правил
      • 579 Отслеживание активизаций, правил и статистических данных
    • 581 7.13. Команды, применяемые для манипулирования конструкциями
      • 581 Отображение списка элементов указанной конструкции
      • 582 Отображение текстового представления указанного элемента конструкции
      • 583 Удаление указанного элемента конструкции
      • 584 Удаление всех конструкций из среды CLIPS (очистка среды)
    • 585 7.14. Команда printout
    • 586 7.15. Использование нескольких правил
      • 587 Отражение в правиле свойств реального мира
      • 587 Правила с несколькими шаблонами
    • 589 7.16. Команда set-break
    • 590 7.17. Загрузка и сохранение конструкций
      • 590 Загрузка конструкций из файла
      • 591 Отслеживание операций компиляции
      • 592 Сохранение конструкций в файле
    • 592 7.18. Комментирование конструкций
    • 593 7.19. Переменные
    • 595 7.20. Многократное использование переменных
    • 596 7.21. Адреса фактов
    • 599 7.22. Однозначные подстановочные символы
    • 601 7.23. Мир блоков
    • 608 7.24. Многозначные подстановочные символы и переменные
      • 608 Многозначные подстановочные символы
      • 609 Многозначные переменные
      • 611 Применение нескольких различных способов согласования с шаблонами
      • 612 Реализация стека
      • 613 Еще один вариант программы для мира блоков
    • 615 7.25. Резюме
      • 615 Задачи
  • 625 Глава 8. Развитые средства сопоставления с шаблонами
    • 625 8.1. Введение
    • 626 8.2. Ограничения полей
      • 626 Ограничение поля not
      • 627 Ограничение ноля or
      • 628 Ограничение поля and
      • 628 Совместное применение ограничений полей с другими конструкциями
    • 630 8.3. Функции и выражения
      • 630 Элементарные математические функции
      • 633 Переменное количество параметров
      • 634 Определение приоритета и уровня вложенности выражений
    • 635 8.4. Суммирование значений с использованием правил
    • 638 8.5. Функция bind
    • 639 8.6. Функции ввода-вывода
      • 639 Функция read
      • 640 Функция open
      • 642 Функция close
      • 643 Чтение из файла и запись в файл
      • 644 Функция format
      • 646 Функция readline
    • 648 8.7. Игра в палочки
    • 651 8.8. Предикативные функции
    • 652 8.9. Условный элемент test
    • 654 8.10. Предикативное ограничение поля
    • 656 8.11. Ограничение поля для возвращаемого значения
    • 658 8.12. Программа Sticks
    • 659 8.13. Условный элемент or
    • 662 8.14. Условный элемент and
    • 664 8.15. Условный элемент not
    • 667 8.16. Условный элемент exists
    • 670 8.17. Условный элемент forall
    • 673 8.18. Условный элемент logical
    • 678 8.19. Резюме
      • 679 Задачи
  • 693 Глава 9. Модульное проектирование, управление выполнением и эффективность правил
    • 693 9.1. Введение
    • 694 9.2. Атрибуты def template
      • 694 Атрибут type
      • 696 Статическая и динамическая проверка ограничений
      • 698 Атрибуты допустимого значения
      • 699 Атрибут range
      • 699 Атрибут cardinality
      • 700 Атрибут default
      • 702 Атрибут default-dynamic
      • 704 Конфликтующие атрибуты слота
    • 704 9.3. Значимость
    • 708 9.4. Фазы и управляющие факты
    • 714 9.5. Неправильное употребление подхода на основе значимости
    • 717 9.6. Конструкция defmodule
      • 719 Способы задания имен модулей в командах
    • 722 9.7. Импорт и экспорт фактов
    • 726 9.8. Модули и управление выполнением программы
      • 728 Команда focus
      • 730 Манипулирование стеком фокусов и его изучение
      • 732 Команда return
      • 734 Средство auto-focus
      • 735 Отказ от фаз и управляющих фактов
    • 737 9.9. Rete-алгоритм сопоставления с шаблонами
    • 741 9.10. Сеть шаблонов
    • 744 9.11. Сеть соединений
    • 748 9.12. Важность правильного выбора порядка расположения шаблонов
      • 749 Учет характеристик правила match-1
      • 750 Учет характеристик правила match-2
      • 752 Команда matches
      • 754 Наблюдение за изменяющимся состоянием
    • 755 9.13. Упорядочение шаблонов в целях повышения эффективности
      • 756 Первоочередное размещение наиболее конкретных шаблонов
      • 756 Размещение в последнюю очередь шаблонов, согласующихся с непостоянными фактами
      • 757 Первоочередное размещение шаблонов, сопоставляющихся с наименьшим количеством фактов
    • 757 9.14. Многозначные переменные и эффективность
    • 758 9.15. Условный элемент test и эффективность программы
    • 760 9.16. Встроенные ограничения сопоставления с шаблонами
    • 761 9.17. Сравнение общих правил с конкретными правилами
    • 763 9.18. Сравнение простых правил со сложными правилами
    • 766 9.19. Резюме
      • 768 Задачи
  • 779 Глава 10. Процедурное программирование
    • 779 10.1. Введение
    • 779 10.2. Процедурные функции
      • 780 Функция if
      • 781 Функция while
      • 782 Функция switch
      • 784 Функция loop-for-count
      • 786 Функция progn$
      • 787 Функция break
      • 787 Функция halt
    • 788 10.3. Конструкция deffunction
      • 790 Функция return
      • 792 Еще один вариант программы Sticks
      • 794 Рекурсия
      • 794 Предварительные объявления
      • 796 Отслеживание работы конструкций deffunction
      • 798 Параметр с подстановочным символом
      • 799 Команды для работы с конструкцией deffunction
      • 801 Функции, определяемые пользователем
    • 802 10.4. Конструкция defglobal
      • 804 Команды, применяемые наряду с конструкциями defglobal
      • 805 Принципы сброса (переустановки) значения переменной defglobal
      • 806 Отслеживание значений переменных defglobal
      • 807 Переменные defglobal и сопоставление с шаблонами
      • 808 Использование конструкций defglobal
    • 811 10.5. Конструкции defgeneric и defmethod
      • 813 Еще один вариант конструкции deffunction с именем check-input
      • 817 Приоритеты методов
      • 824 Ограничения запроса
      • 828 Отслеживание работы универсальных функций и методов
      • 829 Команды defmethod
      • 830 Команды defgeneric
      • 831 Перегруженные функции и команды
    • 832 10.6. Процедурные конструкции и конструкции defmodule
    • 835 10.7. Полезные команды и функции
      • 835 Загрузка и сохранение фактов
      • 836 Команда system
      • 837 Команда batch
      • 839 Команды dribble-on и dribble-off
      • 839 Выработка случайных чисел
      • 840 Преобразование строки в поле
      • 841 Поиск символа
      • 841 Сортировка списка полей
    • 843 10.8. Резюме
      • 844 Задачи
  • 851 Глава 11. Классы, экземпляры и обработчики сообщений
    • 851 11.1. Введение
    • 852 11.2. Конструкция defclass
    • 853 11.3. Создание экземпляров
    • 854 11.4. Обработчики сообщений, определяемые системой
    • 857 11.5. Конструкция definstances
    • 858 11.6. Классы и наследование
      • 862 Разрешение конфликтов между определениями слотов
      • 865 Абстрактные и конкретные классы
      • 866 Команды, относящиеся к конструкции defclass
    • 869 11.7. Сопоставление с шаблоном объекта
      • 871 Сопоставление с шаблоном объекта и наследование
      • 872 Ключевые слова is-a и name
      • 875 Активизация шаблонов объектов
      • 877 Атрибут сопоставления с шаблонами
      • 878 Шаблоны объектов и условный элемент logical
      • 881 Шаблон initial-object
    • 882 11.8. Обработчики сообщений, определяемые пользователем
      • 884 Сокращенные ссылки на слоты
      • 887 Отслеживание процесса передачи сообщений и функционирования обработчиков сообщений
      • 889 Команды defmessage-handler
    • 890 11.9. Доступ к слоту и создание обработчика
    • 894 11.10. Обработчики сообщений before, after и around
      • 896 Обработчики before и after
      • 899 Обработчики around
      • 903 Перекрытие параметров обработчика сообщений
      • 906 Порядок вызова обработчиков на выполнение
    • 915 11.11. Создание экземпляра, инициализация и удаление обработчиков сообщений
      • 917 Атрибут storage
    • 919 11.12. Модификация и дублирование экземпляров
    • 924 11.13. Классы и универсальные функции
    • 925 11.14. Функции запроса множества экземпляров
      • 926 Определение того, успешно ли выполнен запрос
      • 928 Определение экземпляров, удовлетворяющих запросу
      • 929 Выполнение действий над экземплярами, удовлетворяющими запросу
    • 931 11.15. Множественное наследование
      • 933 Конфликты, связанные с множественным наследованием
      • 935 Сохранение и восстановление значений слотов
    • 939 11.16. Конструкции defclass и defmodule
    • 942 11.17. Загрузка и сохранение экземпляров
    • 944 11.18. Резюме
      • 945 Задачи
  • 949 12. Примеры проектов экспертных систем
    • 949 12.1. Введение
    • 949 12.2. Коэффициенты достоверности
    • 955 12.3. Деревья решений
      • 957 Деревья решений с несколькими ребрами
      • 959 Деревья решений, позволяющие проводить обучение
      • 961 Программа для работы с деревом решений, основанная на правилах
      • 967 Пошаговая трассировка программы обучения дерева решений
    • 972 12.4. Обратный логический вывод
      • 972 Алгоритм работы программы обратного логического вывода
      • 975 Представление правил обратного логического вывода в языке CLIPS
      • 978 Машина обратного логического вывода на языке CLIPS
      • 980 Поэтапная трассировка работы программы обратного логического вывода
    • 986 12.5. Задача текущего контроля
      • 987 Формулировка задачи
      • 990 Уточнение деталей, с которого должна начинаться разработка
      • 992 Определения структур представления знаний
      • 995 Управление работой программы
      • 995 Чтение бесформатных показаний датчиков
      • 1004 Распознавание тенденций
      • 1008 Формирование предупреждающих сообщений
    • 1011 12.6. Резюме
      • 1012 Задачи
  • 1015 Приложение А. Некоторые широко применяемые эквивалентности
  • 1017 Приложение Б. Некоторые элементарные кванторы и их значение
  • 1019 Приложение В. Некоторые свойства множеств
  • 1021 Приложение Г. Информация о поддержке CLIPS
  • 1023 Приложение Д. Общие сведения о командах и функциях CLIPS
  • 1059 Приложение Е. Определение языка в нормальной форме Бэкуса-Наура
  • 1069 Приложение Ж. Программные ресурсы
  • 1119 Приложение З. Литература
  • 1125 Предметный указатель

Инструкция как скачать книгу Джозеф Джарратано: Экспертные системы. Принципы разработки и программирование в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
Экспертные системы. Принципы разработки и программирование
Рейтинг книги:
1 голос
488

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: