- •1. Основные исследования, которые ведутся в области искусственного интеллекта. Понятие и структура интеллектуальной системы
- •Подходы к исследованию ии
- •Логика рассуждения: теория силлогизмов Аристотеля
- •Основные исследования, ведущиеся в области ии
- •2. Понятие формальной и семиотической системы, основные определения Формальные системы
- •Схемы рассуждения
- •Позиционные шкалы
- •Семиотические системы
- •Семантический и синтаксический методы доказательства
- •3. Логические модели представления знаний. Семантический и синтаксический методы доказательства. Логические модели
- •4. Представление знаний с помощью фреймов Фреймы
- •Язык frl
- •5. Продукционные системы. Управление системами продукций Продукционные системы
- •Задачи управления и разрешение конфликтов
- •Стратегии управления
- •6. Семантические сети. Классификация семантических отношений Семантические сети
- •Классификация семантических отношений
- •7. Естественный язык (математическая модель): формальные грамматики
- •8. Естественный язык (математическая модель): трансформационная грамматика, понятие глубинной и поверхностной структуры.
- •9. Естественный язык (математическая модель): анализ трансформационных грамматик Сети с конечным числом состояний
- •Сети с расширенными числом состояний
- •10. Проблема машинного перевода
- •11. Этапы анализа естественного языка
- •12. Экспертные системы: технология, этапы создания, применение Экспертные системы
- •Классификация
- •Технологии проектирования и разработки промышленных экспертных систем
- •Технологии быстрого прототипирования
- •Развитие прототипа до промышленной экспертной системы
- •Оценка системы
- •Стыковка системы
- •Поддержка системы
- •13. Технологии инженерии знаний
- •Методы структурирования
- •14. Использование онтологий в интеллектуальных системах
4. Представление знаний с помощью фреймов Фреймы
В психологии фрейм – абстрактный образ для представления некоторого стереотипа восприятия. Фрейм – то минимально необходимое, без чего не существует явление, объект или процесс, о котором идёт речь. Изначально фрейм задумывался как стереотип восприятия. Фрейм имеет имя и состоит из слотов.
Типы фреймов:
Структурные фреймы
Ролевые фреймы
<Имя фрейма> |
|||
Имя слота |
Значение слота |
Способ получения значения |
Присоединённые процедуры |
|
|
|
|
|
|
|
|
Способы получения слотом значения во фрейме-экземпляре:
По умолчанию
Через наследование свойств от фрейма, имя которого указано в слоте с именем AKO (a kind of)
По формуле, указанной в слоте
Через присоединённую процедуру
Процедуры-демоны – активируются автоматически каждый раз когда данные попадают в соответствующий фрейм-экземпляр или удаляются из него. С помощью демонов автоматически выполняются все рутинные операции, связанные с ведением баз данных и знаний
Процедуры-слуги – активируются только по запросу
Через диалог с пользователем
Из базы данных
Слот Instance содержит имена фреймов-потомков.
Языки:
FRL (Frame Representation Language),
KRL (Knowledge Representation Language).
<примеры пропущены>
Язык frl
FRL – структура с максимальной вложенностью 5.
ИмяФрейма
ИмяСлота1
ИмяЯчейки1
Данные1
Комментарий1:сообщение
Комментарий2:сообщение
Данные2
…
ДанныеN
…
ИмяЯчейкиK
Одно из свойств – минимальное количество операторов:
Fassert(arg) – Добавляет данные в базу знаний.
Fassert(
Командировка(
(Кто
($value
(Воронина И.Е.)
(Шашкин А.И)
)
)
(Куда
($value
(СПб)
(Москва)
)
)
(Когда
($value
(07/12/2012)
)
)
)
Fput – позволяет добавлять новые данные.
Fput(командировка, кто, $value, Иванов И.Н.)
Fget(Командировка, Кто)
Fremove() – удаляет данные
Ferase() – удаляет фрейм
Ячейка может содержать значения:
$default – тогда её значение будет использоваться по умолчанию.
$ifedit – содержит имя присоединённой процедуры-демона, которая будет вызвана при изменении данных
$ifremove – содержит имя присоединённой процедуры-демона, которая будет вызвана при удалении данных
$require – в качестве данных такой ячейки хранятся имена некоторых предикатов в определённых назначениях слота. Это может быть использовано, например, для ответа на вопрос: «Нет ли среди городов, имеющихся во фрейме, города Амстердам?»
Для активации процедуры-слуги вызывается fget с полным путём к тому месту, где хранится эта процедура.
AKO (a kind of) – специальный вид слота, который может содержать только имя фрейма-предка (одного; множественное наследование не допускается).
INSTANCE – специальный слот, который содержит только имена фреймов-потомков.
5. Продукционные системы. Управление системами продукций Продукционные системы
Основное правило: «Если УСЛОВИЕ то ДЕЙСТВИЕ».
Продукционная система состоит из трёх элементов:
Классы и отношения (база данных)
Правила (набор продукций)
Управляющая структура (интерпретатор дынных) —определяет, какое правило будет проверено следующим.
Сама база данных часто называется рабочей памятью.
Пример. Задача нахождения минимума в массиве в продукционной системе:
Рабочая область: N = 10, I = 1, A(10) = -1; …; A(10) = 100; MIN = MAX = A(1)
Правила:
if I > N then print(MIN, MAX); STOP;
if A(I) > MAX then MAX := A(I);
if A(I) < MIN then MIN := A(I);
I := I + 1;
Управляющие структуры: поочерёдно проверять правила, пока одно из них не сработает и не встретится оператор STOP.
Вариант правил, не зависящих от их порядка:
if (I <= N) and (A(I) > MAX) then MAX := A(I);
if (I <= N) and (A(I) < MIN) then MIN := A(I);
if (I > N) then print(MIN, MAX);
if (I <= N) and (A(I) <= MAX) and (A(I) >= MIN) then I := I+1;
Общий вид продукционного правила:
(i); Q; P; A => B; N,
где
i – имя продукции в системе правил,
Q – сфера применения продукции (для организации удобного поиска и структурирования),
P – условие применимости ядра продукции (предусловие), обычно является предикатом,
N – постусловие (действия, которые могут выполнены только при реализации ядра).
Рабочая память содержит описание текущего состояния мира. Описание является образцом, который сопоставляется с условной частью продукции с целью выбора последующего действия. Действие изменяет состояние рабочей памяти. Если выполнимы несколько продукций, то они образуют конфликтный набор. Продукции, которые содержатся в конфликтном наборе, называются допустимыми. Возникает проблема разрешения конфликтов.
Пример 1.
Правила:
Правило #1: если <Вася имеет шерсть и есть мясо>, то <Вася – кот>
Правило #2: если <Вася – хищник>, то <Вася ест мясо>
Правило #3: если <Вася имеет шерсть>, то <Вася млекопитающее>
Правило #4: если <Вася из сем. кошачьих>, то <Вася есть мясо>
Факты:
Факт #1. <Вася имеет шерсть>
Факт #2. <Вася – хищник>
Способы вывода:
прямой (дедуктивный)
обратный
…
