Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Conspekt.doc
Скачиваний:
11
Добавлен:
31.08.2019
Размер:
1.39 Mб
Скачать

3.9 Поиск решения задачи, при сведении задачи к подзадачам

В этом случае исходную задачу разбивают на подзадачи, а подздачи на подзадачи, до тех пор, пока не получим решение задачи.

Пусть требуется вычислить интеграл:

Этот интеграл можно свести к ряду подзадач и изобразить в виде:

В этом случае образуется граф типа “и/или”.

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

Такие алгоритмы должны обладать следующими свойствами:

1.При раскрытии вершин необходимо находить более легкую подзадачу. Это выполняется с помощью эвристических методов.

2.Если имеются повторяющиеся подзадачи, они должны решаться один раз и использоваться далее.

Существует много алгоритмов поиска на графе типа "И/ИЛИ". (см. книгу Н.Нильсон "Принципы искусственного интеллекта"). Рассмотрим метод, представленный в 1971 г. Ченгом, Слейгом. В этом случае граф подзадач преобразуется в граф состояний ( для этого необходимо избавиться от вершин типа "И").

Пример 1:

Пусть требуется решить задачу А, которая будет решена, если решены задачи В и С или решена задача D и решена одна из задач В или С:

A=(B&C)V(D&(BVC)) (1)

что эквивалентно:

A=(B&C)V(D&BVD&C) (2)

Представлениям (1) и (2) соответствуют графы представлен-

н ые ниже.

А

(1)

В С D

В С

А

(2)

СДНФ

В С D В D С

Такое преобразование обеспечивает применение одного из известных принципов.

Чтобы осуществить преобразование, необходимо расписать

граф в виде логического выражения и привести его к совершенной

дизъюнктивной нормальной форме.

Пример 2:

Имеется задача X.

Х = (А & В) V С

При этом с каждой из подзадач А, В и С связана некоторая стоимость ее решения: А.2, В.3, С.5, D.0, E.1, F.2

1 1

1

* *

Терминальная

(известная)подзадача.

(*) – вершина решенная и решение распространяется вверх

Решение X записываеися в виде:

X=(A&B)VC

Затем ОТК={(A&B),6; C,6}. Далее,

A&B =>D&(EVF)=D&EVD&F

ОТК={(D&E),3;

(D&F),4; C,6}.

Выбирается минимальный элемент решения, далее раскрываем и видим, что D- терминальная вершина(стоимость =0), исключаем D,как решенную задачу. И дaлее движемся обратно по дереву.

Все рассмотренные методы применяются в экспертных системах.

3.10 Представление знаний

Знания характеризуются следующими основными свойствами:

  1. Знания интерпритируемы – это означает, что модели представления знаний всегда содержат семантическую информацию; в то время, как модели данных без программ, их обрабатывающих не являются интерпретируемыми (однако это свойство характерно еще для БЗ)

  2. Наличие классифицирующих отношений (класс-подкласс, род-вид, множество-элемент). При этом, как правило, подмножество наследует свойства, характерные для всего множества.

  3. Наличие ситуативных связей (имеется ввиду причинно-следственные зависимости). В моделях данных таких зависимостей нет.

  4. Активность знаний, т.е. знания позволяют на основе одних фактов или знаний получать другие факты или знания.

Знания подразделяются на декларативные или процедуральные.

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

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

Выделяют следующие модели знаний:

  • Продукционные системы.

  • Сетевые модели, которые обычно подразделяются на семантические сети и фреймы.

  • Логические модели.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]