СРС Методы поиска решений в экспертных системах. Методы поиска и решения задач в экспертных системах
Скачать 25.23 Kb.
|
СРС 6 Тема: Методы поиска и решения задач в экспертных системах Выполнил: Балтабаев А. ИС-41 Проверил: Смагулов К.Б. Семей 2018 Методы поиска решений в экспертных системах Методы решения задач, основанные на сведении их к поиску, зависят от особенностей предметной области, в которой решается задача, и от требований, предъявляемых пользователем к решению. Особенности предметной области с точки зрения методов решения можно охарактеризовать следующими параметрами: - размер, устанавливающий объем пространства, в котором предстоит находить решение; - изменяемость области, характеризует степень изменяемости области во времени и пространстве (статические и динамические); - полнота модели, обрисовывающей область, характеризует адекватность модели, используемой для описания предоставленной области; - определенность данных о решаемой задаче, характеризует степень точности (ошибочности) и полноты (неполноты) данных. Требования пользователя к результату задачи, решаемой с поддержкой поиска, можно характеризовать количеством решений и качествами итога и методом его получения. Параметр " количество решений " может принимать следующие основные значения: одно заключение, несколько решений, все решения. Параметр " характеристики " задает ограничения, которым обязан удовлетворять полученный итог или метод его получения. Так, к примеру, для системы, выдающей советы по исцелению больных, пользователь может указать требование не использовать некоторое лекарственное средство (в связи с его неимением или в связи с тем, что оно вредно данному пациенту). Параметр " характеристики " может предопределять и такие особенности, как время решения, размер памяти, используемой для получения итога, указание об обязательности (невозможности) применения каких-то знаний (данных). Итак, сложность задачи, определяемая вышеприведенным комплектом параметров, варьируется от обычных задач маленькой размерности с неизменяемыми определенными данными и неимением ограничений на итог и метод его получения до трудных задач большой размерности с изменяемыми, ложными и неполными данными и случайными ограничениями на результат и метод его получения. Из общих суждений ясно, что каким-либо одним способом невозможно решить все задачи. Обычно одни способы превосходят остальные лишь по некоторым из перечисленных характеристик. Рассмотренные ниже способы имеют все шансы работать в статических и динамических проблемных средах. Для того чтоб они работали в условиях динамики, нужно учесть время жизни значений переменных, источник данных для переменных, а еще гарантировать вероятность сохранения истории значений переменных, моделирования внешнего окружения и оперирования временными категориями в правилах. Существующие способы решения задач, применяемые в экспертных системах, разрешено систематизировать следующим образом: - способы поиска в одном пространстве - способы, предназначенные для применения в следующих условиях: области маленький размерности, полнота модели, точные и полные данные; - способы поиска в иерархических пространствах - способы, предназначенные для работы в областях большой размерности; - способы поиска при неточных и неполных данных; - способы поиска, использующие несколько моделей, предназначенные для работы с областями, для адекватного описания которых одной модели мало. Предполагается, что приведенные способы при необходимости обязаны сливаться для того, чтоб позволить решать задачи, сложность которых растет одновременно по нескольким характеристикам. Методы решения задач, основанные на сведении 'их к поиску, зависят от особенностей предметной области, в которой решается задача, и от требований, предъявляемых пользователем к решению. Особенности предметной области: объем пространства, в котором предстоит искать решение; степень изменяемости области во времени и пространстве (статические и динамические области); полнота модели, описывающей область, если модель не полна, то для описания области используют несколько моделей, дополняющих друг друга; определенность данных о решаемой задаче, степень точности (ошибочности) и полноты (неполноты) данных. Требования пользователя к результату задачи, решаемой с помощью поиска, можно характеризовать 1) количеством решений : одно решение, несколько решений, все решения. 2) свойствами результата: ограничения, которым должен удовлетворять полученный результат 3) и (или) способом его получения. Существующие методы решения задач, используемые в экспертных системах, можно классифицировать следующим образом: методы поиска в одном пространстве - методы, предназначенные для использования в следующих условиях: области небольшой размерности, полнота модели, точные и полные данные; методы поиска в иерархических пространствах - методы, предназначенные для работы в областях большой размерности; методы поиска при неточных и неполных данных ; методы поиска, использующие несколько моделей, предназначенные для работы с областями, для адекватного описания которых одной модели недостаточно. Предполагается, что перечисленные методам при необходимости должны объединяться для того, чтобы позволить решать задачи, сложность которых возрастает одновременно по нескольким параметрам. Поиск в пространстве состояний Задача поиска в пространстве состояний обычно формулируется в теоретико-графовой интерпретации. Пусть задана тройка (S0, F, SТ), где S0 - множество начальных состояний (условия задачи), F - множество операторов задачи, отображающих одни состояния в другие, SТ - множество конечных (целевых) состояний (решений задачи). Цель: определять такую последовательность операторов, которая преобразует начальные состояния в конечные. Процесс решения в виде графа G=(Х, Y), где X={х0, х1,...} - множество (в общем случае бесконечное) вершин графа, состояний, а Y - множество, содержащее пары вершин (xi, xj), (xi, xj)(X. Если каждая пара (xi, xj) неупорядочена, то ее называют ребром, а граф - неориентированным. Если для каждой пары (xi, xj) задан порядок (направление), то пару (xi, xj) называют дугой (ориентированным ребром), а граф называют ориентированным (направленным). Вершины пары (xi, xj) называют концевыми точками ребра (дуги). Поиск в пространстве состояний естественно представить в виде ориентированного графа. Наличие пары (xi, xj) свидетельствует о существовании некоторого оператора f (f(F), преобразующего состояние, соответствующее вершине xi, в состояние xj. Для некоторой вершины xi выделяем множество всех направленных пар (xi, xj)(Y, т.ь. множество дуг, исходящих из вершины хi, (родительской вершины), и множество вершин (называемых дочерними вершинами), в которые эти дуги приводят. Множество дуг, исходящих из вершины xi, соответствует множеству операторов, которые могут быть применены к состоянию, соответствующему вершине хi. В множестве вершин X выделяют подмножество вершин Х0(Х, соответствующее множеству начальных состояний (So),, и подмножество вершин Хт(X, соответствующее множеству конечных (целевых) состояний (SТ). Множество Хт может быть задано как явно, так и неявно, т.е. через свойства, которыми должны обладать целевые состояния. Отметим, что граф С может быть задан явно и неявно. Неявное задание графа G стоит в определении множества Х0(Х (соответствующего множеству начальных состояний) и множества операторов, которые, будучи применимы к некоторой вершине графа, дают все ее дочерние вершины. Итак, граф G задает пространство состояний, т.е. пространство, в котором осуществляется поиск решения. Построение пространства осуществляется с помощью следующего процесса. Берется некая вершина х0(Х, к ней применяются все возможные операторы, порождающие все дочерние вершины. Этот процесс называют процессом раскрытия вершин. Если получена целевая вершина, то она не раскрывается. Процесс построения пространства состояний заканчивается, когда все нераскрытые вершины являются целевыми, или терминальными (т.е. вершинами, к которым нельзя применить никаких операторов). В связи с тем, что пространство состояний может содержать бесконечное количество вершин, на практике процесс порождения пространства ограничивают либо временем, либо объемом памяти. На практике требуется обеспечить полноту поиска, т.е. организовать поиск так, чтобы все целевые вершины были найдены, если они существуют. Надежным способом обеспечения полноты является полный перебор всех вершин. Для задания процесса перебора необходимо определить. порядок, в котором будут перебираться вершины графа. Обычно выделяют два основных способа поиска: поиск в глубину (сначала раскрывается та вершина, которая была построена самой последней). поиск в ширину. (вершины раскрываются в том же порядке, в котором они порождаются.) Целевые вершины помечены черными квадратами, а терминальные - белыми квадратами. При использовании каждого из способов могут быть найдены все решения. При переборе всего пространства оба метода будут анализировать одинаковое количество вершин, однако метод поиска в ширину будет требовать существенно больше памяти, так как он запоминает все пути поиска (а не один, как при поиске в глубину). Метапространство в иерархии пространств. При решении любой задачи многократно возникает вопрос: "что делать на следующем шаге"? В простейшем случае решение о том, что делать на следующем шаге, предопределено методом поиска решения. При поиске в абстрактных и конкретных пространствах на каждом шаге решался вопрос о том, какой из операторов, существующих в проблемной области, применить к текущему состоянию проблемной области. Вопрос о том, как решающая программа это сделает, не обсуждался. Можно оказывать не явное, а косвенное влияние на определение того, "что делается на следующем шаге в проблемной области" путем выбора того или иного метода, известного решателю. Подобный подход требует явного разграничения знаний о процессе решения и знаний о проблемной области. В последнее время наблюдается интерес к разработке систем, которые могут рассуждать о процессе получения ими решения, например планировать процесс своих рассуждений. В такой постановке речь идет о решении задачи на метауровне. Решатель в метапространстве содержит явное описание процесса организации поиска, т.е. описание состояний, операторов, условий применимости операторов, описание доступных методов (стратегий) поиска и способов их взаимодействия. Получить решение в метапространстве - это значит определить, какой метод (программа) будет применен на следующем шаге, т.е. составить метаплан решения задачи. Заметим, что метаплан, в отличие от абстрактного плана, выражается не в терминах операторов проблемной области, а в терминах методов (программ), известных решателю. Не существует причин ограничивать метазнания одним уровнем. Примером экспертной системы, в которой для решения задач использовано метапространство и метапланирование, является система МOLGEN (см. § 1.5 и п.. 5.3.5). В МOLGEN метапространство содержит описание используемых методов: метода наименьших свершений и эвристических стратегий ("угадывания"). В зависимости от ситуации, возникающей в ходе решения задачи, МOLGEN составляет метаплан, определяющий, какой из методов и какая его компонента должны работать в текущий момент. Итак, но аналогии с факторизацией абстрактного пространства можно говорить о разбиении метапространства на метазадачи (методы, программы). Разбиение на метазадачи является полезным методом организации, знаний в экспертных системах, однако в настоящее время еще далеко до общего теоретического осмысления данного вопроса [Вейраух,1980]. Завершая описания методов поиска в иерархии пространств, подчеркнем, что в рассмотренных подходах используются пространства трех видов: конкретные, абстрактные и метапространства. В одной системе могут использоваться пространства всех трех типов. Необходимо также отметить, что поиск решения в пределах некоторого пространства может осуществляться любым из методов. Поиск в альтернативных пространствах. Предположения и мнения. Методы исходят из молчаливой предпосылки, что знания о проблемной области и данные о решаемой задаче являются точными и полными. В рассмотренных до этого методах поиска по построению справедливо следующее: 1) все утверждения, описывающие состояние, являются истинными; 2) применение оператора к некоторому состоянию формирует некоторое новое состояние, описание которого состоит только из истинных фактов. Однако при решении любых практических задач и особенно при решении неформализованных задач распространена обратная ситуация. Эксперту приходится работать в условиях неполноты и неточности, знаний (данных) и, как правило, в условиях дефицита времени. Когда эксперт решает задачу, он использует методы, отличающиеся от формальных математических рассуждений. В математических рассуждениях каждое заключение должно строго следовать из предыдущей информации. В противоположность этому в правдоподобных рассуждениях, основанных на здравом смысле, заключения основываются на частичной информации. В этом случае эксперт делает пробные правдоподобные предположения, которые он не может доказать; тем самым вопрос об их истинности остается открытым. Все утверждения, полученные на основе этих правдоподобных предположений, также не могут быть доказаны. Один из способов обоснования предположений заключается в том, чтобы рассматривать их как возможные значения, задаваемые по умолчанию. Например, высказав предположение, что сейчас 14 часов (посмотрев на часы), мы молчаливо предполагаем, что часы идут, и идут правильно. Обычно человек знает, что некоторые предположения верны только при определенных условиях. Если информация, указывающая на нарушение этих условий, отсутствует, то предположение может быть высказано. Другое обоснование предположения базируется на рассмотрении рассуждения как процесса с ограниченными ресурсами. Так, можно считать, что предположение (X) имеет место, если, используя ограниченные ресурсы, нельзя доказать истинность противоположного утверждения. Предположение и выводы, сделанные на его основе, должны устраняться, если появилась информация, показывающая ошибочность этого предположения. Этот аспект в построении умозаключений с использованием предположений называется не монотонностью. Любая формальная система (см.,.например, [Мендельсон, 1971]) является монотонной, т.е. если А, В и С есть некоторые высказывания, такие, что В выводится из А, то В будет выводиться и из А Ù С. Система немонотонна, если В выводится из А, но В выводится из А Ù С [Виноград, 1980]. Немонотонные рассуждения особенно важны при решении задач планирования и конструирования. В этих задачах пространство поиска иногда очень велико, и нет возможности предвидеть все последствия сделанного выбора. Так, например, конструктор знает, чего он хочет, но не знает, как это сделать. Поэтому при конструировании предположения выступают в виде пробных решений, последствия которых затем анализируются с точки зрения их пригодности (непригодности). Если последствия не противоречат тому, что хотел конструктор, то процесс конструирования продолжается дальше, возможно, с выдвижением новых предположений. В противном случае необходимо устранить все последствия и сделать альтернативное предположение и т.д. Поиск в фиксированном множестве пространств. Применение рассмотренного выше метода факторизации пространства ограничено тем, что для ряда областей не удается по частичному решению сделать заключение о его непригодности. Примерами таких областей являются задачи планирования и конструирования. Действительно, как правило, по фрагменту плана или конструкции нельзя сказать, что этот фрагмент не может являться частью полного решения. В данном и последующих двух пунктах будут рассмотрены методы поиска, использующие идею абстрактного пространства. Методы различаются предположениями природе этого пространства. Абстракция должна подчеркнуть важные особенности рассматриваемой задачи, позволить разбить задачу на более простые подзадачи и определить последовательность подзадач (план решения), приводящую к решению основной задачи. В простейшем случае, с которого мы и начнем рассмотрение, пространство поиска разбиваетсяна фиксированную последовательность подзадач (подпространств), с помощью которых можно решить любую входную задачу. Подобный метод поиска использован в экспертной системе R1 (см. § 1.5). На основании заказа покупателя на требуемую ему конфигурацию системы VАХ система R1 выдает диаграммы, изображающие пространственные взаимосвязи компонент VАХ, и указывает какие компоненты необходимы для функционирования заказанной конфигурации. Система R1 разбивает общую задачу на шесть подзадач. Порядок, в котором вызываются эти задачи, зависит от заказанной конфигурации. Действия, выполняемые каждой подзадачей, зависят от комбинации заказанных компонент и способа их взаимосвязи. В системе каждой подзадаче соответствует свой набор правил, т.е. каждая подзадача решается в своем подпространстве. Поиск в R1 осуществляется с помощью безвозвратной стратегии поиска [Нильсон, 1980, §1.1], т.е .без использования бэктрекинга. |