
Глава 7. Интеллектуальные системы
7-22
шины заштрихованы, а неразрешимые не заштрихованы, двойными линиями
выделен решающий подграф задачи Р
0
.
Для некоторой подзадачи могут быть неизвестны ни ее решения, ни спо-
соб сведения ее к более простым подзадачам. Такую подзадачу называют нераз-
решимой. Определение неразрешимой вершины в «И/ИЛИ» подграфе можно
сформулировать следующим образом:
1) вершины, не являющиеся конечными и не имеющие вершин-
потомков, неразрешимы;
2) «ИЛИ» – вершина неразрешима тогда
и только тогда, когда неразре-
шима каждая из ее вершин-потомков;
3) «И» – вершина неразрешима тогда и только тогда, когда неразрешима
хотя бы одна из ее вершин-потомков.
В общем случае процедуру решения можно представить в виде графа
G=(X,Y), где X={x
0
, x
1
,...} – множество (в общем случае бесконечное) вершин
графа, каждая из которых отображает одно из состояний; Y – множество дуг,
инцидентных паре вершин (x
i
, x
j
); x
i
, x
j
∈Χ.
Множество дуг, исходящих из вершины x
i,
, отображает множество опе-
раторов, которые могут быть применимы к состоянию, отображаемому верши-
ной x
j
. В множестве вершин Х выделяют подмножество вершин Х
0
⊆Х, отобра-
жающее множество начальных состояний (S
0
), и подмножество вершин X
t
⊆Х,
отображающее множество конечных (целевых) состояний (S
t
). Множество Х
t
может быть задано как явно, так и неявно, т.е. через свойства, которыми должны
обладать целевые состояния. Очевидно, что решение неформализованных задач
методом поиска в пространстве состояний сводится к процедуре поиска пути L в
графе G. Путь из х
0
∈Х
0
в x
t
⊂Χ
t
называют решающим (целевым). Построение
пространства осуществляется с помощью следующей операции. К некоторой
вершине из х
0
∈Х
0
применяют все возможные операции, порождающие все ее
вершины-потомки. Порождение всех вершин-потомков для некоторой вершины
x
j
называют операцией раскрытия вершин. Если получена целевая вершина, то
она не раскрывается. Операция построения пространства состояний заканчива-
ется, когда все нераскрытые вершины являются целевыми.
Для поиска решений на «И/ИЛИ» графе необходимо обеспечить полноту
поиска, т.е. организовать поиск так, чтобы все целевые вершины были найдены,
если они существуют. Надежным
способом обеспечения полноты является пол-
ный упорядоченный перебор всех вершин графа. Для каждой операции упорядо-
ченного перебора необходимо определить порядок, в котором будут перебирать-
ся вершины графа. Обычно выделяют два основных способа перебора вершин:
поиск «в глубину» и поиск «в ширину» (рис. 7.6). При поиске «в глубину» рас-
крывается та вершина,
которая была построена самой последней, а при поиске
«в ширину» вершины раскрываются в том же порядке, в котором порождаются.
Поиск «в глубину» и «в ширину» называют рутинным, или слепым поиском, по-
скольку при этом порядок раскрытия вершин предопределен и не зависит от
расположения цели. При увеличении пространства поиска способы слепого
по-
иска требуют чрезмерных затрат времени и/или памяти компьютера. Для сокра-
щения времени поиска применяют эвристические методы поиска, т.е. методы,