Логическое программирование

Автор работы: Пользователь скрыл имя, 01 Октября 2013 в 21:27, курсовая работа

Краткое описание

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

Содержание

Введение………………………………………….………………………………..2
Глава 1. Знания и их представление……………………………………………4
Логические модели……………………………………………………5
Продукционные модели………………………………………………7
1.3 Сетевые модели………………………………………………………..8
1.4 Фреймовые модели……………………………………………………9
Глава 2. Моделирование рассуждений……………………………………….12
2.1 Рассуждения на основе прецедентов………………………………13
2.2 Моделирование рассуждений на основе ограничений……….…….15
2.3 Немонотонные модели рассуждений……………………………….16
2.4 Рассуждения о действиях и изменениях……………………………16
2.5 Рассуждения с неопределенностью……………….………………..17
Глава 3. Логическое программирование…………………………………….18
3.1 Арифметика………………………………… ……………………….20
3.2 Запросы……………………………………………………………….21
3.3 Правила………………………………………………………………23
Заключение………………………………………………………………………25
Список использованной литературы………………………………………….26

Вложенные файлы: 1 файл

Моделирование рассуждений в ИИС.doc

— 135.50 Кб (Скачать файл)

 

1.4 Фреймовые модели

 

Фреймовая модель представления знаний задает остов  описания класса объектов и удобна для описания структуры и характеристик однотипных объектов (процессов, событий) описываемых фреймами - специальными ячейками (шаблонами понятий) фреймовой сети (знания).

Фрейм - концентратор знаний и может быть активизирован  как отдельный автономный элемент и как элемент сети. Фрейм - это модель кванта знаний (абстрактного образа, ситуации), активизация фрейма аналогична активизации этого кванта знаний - для объяснения, предсказания и т.п. Отдельные характеристики (элементы описания) объекта называются слотами фрейма. Фреймы сети могут наследовать слоты других фреймов сети.

Различают фреймы-образцы (прототипы), хранящиеся в базе знаний, и фреймы-экземпляры, создаваемые  для отображения реальных ситуаций для конкретных данных.

Фреймовое представление данных достаточно универсальное. Оно позволяет отображать знания с помощью:

фрейм-структур - для обозначения объектов и понятий;

фрейм-ролей - для  обозначения ролевых обязанностей;

фрейм-сценариев - для обозначения поведения;

фрейм-ситуаций - для обозначения режимов деятельности, состояний.

Пример. Фрейм-структурами  являются понятия "заем", "вексель", "кредит". Фрейм-роли - "кассир", "клиент", "сервер". Фрейм-сценарии - "страхование", "банкинг", "банкротство". Фрейм-ситуации - "эволюция", "функционирование", "безработица".

Пример. Например, возьмем такое понятие, как "функция". Различные функции могут отличаться друг от друга, но существует некоторый  набор формальных характеристик  для описания любой функции (фрейм "Функция"): тип и допустимое множество изменений аргумента (область определения функции), тип и допустимое множество значений функции (множество значений функции), аналитическое правило связи аргумента со значением функции. Соответственно, могут быть определены фреймы "Аргумент", "Значение функции", "Закон соответствия". Далее можно определить фреймы "Тип аргумента", "Вычисление значения функции", "Операция" и др. Пример слотов для фрейма "Закон соответствия": аналитический способ задания закона; сложность вычисления (реализации).

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

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

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

Связи между  фреймами задаются значениями специального слота с именем "Связь". Часть  специалистов по системам ИИ считают, что нет необходимости выделять фреймовые модели представления  знаний, так как в них объединены все основные особенности моделей остальных типов.

 

 

Глава 2. Моделирование рассуждений

 

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

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

Объектами дескриптивной  логики являются так называемые концепты, (базовые структуры для описания объектов в экспертных системах) и связанные в единое целое множества концептов (агрегированные объекты). Дескриптивная логика вырабатывает методы работы с такими сложными концептами, рассуждений об их свойствах и выводимости на них. Дескриптивная логика может быть использована, кроме того, для построения объяснительной компоненты базы знаний.[4]

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

Различные способы  представления знаний лежат в  основе моделирования рассуждений, куда входят: моделирование рассуждений  на основе прецедентов (case-based reasoning, CBR), аргументации или ограничений, моделирование рассуждений с неопределенностью, рассуждения о действиях и изменениях, немонотонные модели рассуждений, и другие. Остановимся на некоторых из них.

 

2.1 Рассуждения на основе прецедентов

 

Моделирование рассуждений на основе прецедентов также называют методом "ближайшего соседа" ("nearest neighbour") относится к классу методов, работа которых основывается на хранении данных в памяти для сравнения с новыми элементами. При появлении новой записи для прогнозирования находятся отклонения между этой записью и подобными наборами данных, и наиболее подобная (или ближний сосед) идентифицируется.

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

При таком подходе  используется термин "k-ближайший  сосед" ("k-nearest neighbour"). Термин означает, что выбирается k "верхних" (ближайших) соседей для их рассмотрения в качестве множества "ближайших соседей". Поскольку не всегда удобно хранить все данные, иногда хранится только множество "типичных" случаев. В таком случае Прецедент - это описание ситуации в сочетании с подробным указанием действий, предпринимаемых в данной ситуации.

Подход, основанный на прецедентах, условно можно поделить на следующие этапы:

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

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

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

Однако это  не означает, что CBR-системы самостоятельно могут принимать решения. Последнее всегда остается за человеком, данный метод лишь предлагает возможные варианты решения и указывает на самый "разумный" с ее точки зрения.

Преимущества  метода

  • Простота использования полученных результатов.
  • Решения не уникальны для конкретной ситуации, возможно их использование для других случаев.
  • Целью поиска является не гарантированно верное решение, а лучшее из возможных.

Недостатки  метода

  • Данный метод не создает каких-либо моделей или правил, обобщающих предыдущий опыт, - в выборе решения они основываются на всем массиве доступных исторических данных, поэтому невозможно сказать, на каком основании строятся ответы.
  • Существует сложность выбора меры "близости" (метрики). От этой меры главным образом зависит объем множества записей, которые нужно хранить в памяти для достижения удовлетворительной классификации или прогноза. Также существует высокая зависимость результатов классификации от выбранной метрики.
  • При использовании метода возникает необходимость полного перебора обучающей выборки при распознавании, следствие этого - вычислительная трудоемкость.
  • Типичные задачи данного метода - это задачи небольшой размерности по количеству классов и переменных.

Методы CBR уже  применяются во множестве прикладных задач – в медицине, управлении проектами, для анализа и реорганизации среды, для разработки товаров массового спроса с учетом предпочтений разных групп потребителей, и т.д. Следует ожидать приложений методов CBR для задач интеллектуального поиска информации, электронной коммерции (предложение товаров, создание виртуальных торговых агентств), планирования поведения в динамических средах, компоновки, конструирования, синтеза программ.

 

2.2 Моделирование рассуждений на основе ограничений

 

Наиболее интересны  задачи моделирования рассуждений, основанных на процедурных динамических ограничениях. Они мотивированы сложными актуальными задачами – например, планированием в реальной обстановке.

Под задачей  удовлетворения ограничений понимается четверка множеств: множество переменных, множество соответствующих областей переменных, множество ограничений на переменные и множество отношений над областями. Решением проблемы удовлетворения ограничений называется набор значений переменных, удовлетворяющих ограничениям на переменные, такой, что при этом области, которым принадлежат эти значения, удовлетворяют отношениям над областями.

 

2.3 Немонотонные модели рассуждений

 

Сюда относятся  исследования по логике умолчаний (default logic), по логике "отменяемых" (Defeasible) рассуждений, логике программ, теоретико - аргументационой характеризации логик с отменами, характеризации логик с отношениями предпочтения, построению эквивалентных множеств формул для логик с очерчиванием (circumscription) и некоторые другие.

Такого рода модели возникают при реализации индуктивных рассуждений, например, по примерам; связаны они также с задачами машинного обучения и некоторыми иными задачами. В частности, в задачах моделирования рассуждений на основе индукции источником первоначальных гипотез служат примеры. Если некоторая гипотеза Н возникла на основе N положительных примеров (например, экспериментального характера), то никто не может дать гарантии, что в базе данных или в поле зрения алгоритма не окажется N+1 - й пример, опровергающий гипотезу (или меняющий степень ее истинности). Это означает, что ревизии должны быть подвержены и все следствия гипотезы H.

 

2.4 Рассуждения о действиях и изменениях

 

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

Для этой логики предложены варианты реализации на языке pGOLOG - версии языка GOLOG, содержащей средства для введения вероятностей. Активно  исследуются логики действий, применение модальных логик для рассуждений  о знаниях и действиях.

 

2.5 Рассуждения с неопределенностью

 

Сюда относится  использование байесовского формализма в системах правил и сетевых моделях. Байесовские сети – это статистический метод обнаружения закономерностей  в данных. Для этого используется первичная информация, содержащаяся либо в сетевых структурах либо в базах данных. Под сетевыми структурами понимается в этом случае множество вершин и отношений на них, задаваемое с помощью ребер. Содержательно, ребра интерпретируются как причинные связи. Всякое множество вершин Z, представляющее все пути между некоторыми двуми иными вершинами X и Y соответствует условной зависимости между этими двуми последними вершинами.

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

Информация о работе Логическое программирование