Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2488

.pdf
Скачиваний:
6
Добавлен:
07.01.2021
Размер:
12.38 Mб
Скачать

«компьютер» как отношение, связывающее между собой составные части компьютера.

Предикат с арностью n=1 может представлять свойство сущности (объекта), обозначенной аргументом, или характеристику объекта, обозначенного именем предиката. Например, кирпичный (дом), оценка (5), улица («Красный путь»), дата_рождения («1 апреля 1985 г.»), быстродействие («1 Мфлопс»).

Предикат с арностью n=0 (без аргументов) может обозначать событие, признак или свойство, относящееся ко всей предметной области. Например, «конец работы».

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

В конце 60-х годов Робинсоном для доказательства теорем в логике предикатов был предложен метод резолюции, основанный на доказательстве «от противного». Целевое утверждение инвертируется, добавляется к множеству аксиом и доказывается, что полученное таким образом множество утверждений является несовместным (противоречивым).

Первой попыткой расширить возможности логики 1-го порядка явилось появление множества модальных логик, в которых вводились различные кванторы (модальности) и аксиомы, отражающие тот или иной аспект реального мира. Наиболее известны модальные логики «возможного-необходимого» (алетическая логика), деонтическая логика (модальности «разрешено-обязательно»), эпистемическая логика (логика знания-веры), временная модальная логика (модальности «всегда-никогда», «часто-иногда»).

Для интерпретации модальных логик возможностей предикатов, имеющих всего два значения (двузначной семантики), было недостаточно. Поэтому сначала появилась трехзначная логика Лукашевича, где логические переменные могут принимать значения 0, 1, 2, а затем семантика возможных миров (4-значная логика). Но для представления нечетких знаний модальные логики не годятся, т.к. они базируются на детерминированной семантике и являются, по существу, некоторым улучшением логики предикатов 1-го порядка со всеми ее недостатками как метода для представления знаний.

21

1.2.6. Нечеткие множества и лингвистическая переменная

Понятия, которыми оперирует человек в различных областях знаний, являются по своей природе слишком сложными и многоплановыми для того, чтобы использовать для их представления только традиционные, точные, хорошо определенные модели и алгоритмы. Многие понятия вследствие субъективности человеческого мышления, приблизительного характера умозаключений и лингвистического их описания оказываются нечеткими по своей природе и требуют для своего представления соответствующего аппарата. Создание такого аппарата связано с именем Л. Заде, предложившим в 1965 г. теорию нечетких множеств, ставшую мощным инструментом для решения широкого круга проблем, в которых важное место занимают субъективные, трудно формализуемые знания человека. Особый интерес теория нечетких множеств вызывает в связи с исследованиями и разработками человекоориентированных социальных и управленческих систем, в частности экспертных систем.

Рассмотрим универсальное множество U={u}.

Нечетким подмножеством A на множестве U называется совокупность пар A={< a (u), u>}, где a: U [0,1] – отображение множества U в единичный отрезок [0,1], называемое функцией принадлежности нечеткого подмножества A. Значение функции принадлежности a (u) для элемента u U называется степенью принадлежности.

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

Носителем нечеткого подмножества (далее множества) A называется множество таких элементовU, для которых a(u)положительна.

Точкой перехода А называется такой элемент множества U, степень принадлежности которого множеству A равна 0,5.

Рассмотрим нечеткое множество A, соответствующее нечеткому понятию «небольшой запас деталей на складе». Носителем данного нечеткого множества является конечное множество S= {10, 11,..., 40}, каждый элемент которого представляет собой определенное количество деталей.

A= {0.05/10; 0.1/11; 0.2/12; 0.3/13; 0.4/14; 0.5/15; 0.7/16; 0.8/19; 1.0/20; … 1.0/33; 0.9/34; 0.8/35; 0.6/36; 0.4/37; 0.3/38; 0.2/39; 0.1/40}.

22

Отсюда следует, что в решаемой задаче управления запасами для конкретного ЛПР понятию «небольшой запас деталей на складе» полностью соответствует запас объемом от 20 до 33 деталей, в меньшей степени – запасы от 10 до 19 и от 34 до 40 деталей. Запас объемом меньше 10 и больше 40 деталей понятием «небольшой» охарактеризован быть не может.

Нечеткое отношение R: X Y представляет собой нечеткое множество декартова произведения X Y.

Нечетким отношением на множестве X Y называется совокупность пар

R={ r(x,y)}; (x,y) X Y,

где r: X Y [0,1] – функция принадлежности нечеткого отношения R, имеющая тот же смысл, что и функция принадлежности нечеткого множества.

Примеры нечетких отношений: «X примерно равен Y»,

«X значительно больше Y»,

«А существенно предпочтительнее В». Нечеткая переменная определяется кортежем

<X,U,Y>,

где X наименование нечеткой переменной; U={u} область ее определения или универсальное множество; Y нечеткое множество на U, описывающее ограничения на возможные числовые значения нечеткой переменной.

Лингвистическая переменная определяется кортежем

<X,T,U,G,M>,

где Х наименование лингвистической переменной; T множество ее значений или термов, представляющее собой наименования нечетких переменных, областью определения каждой из которых является U. Множество T называется базовым терм-множеством лингвистической переменной; G синтаксическая процедура, описывающая процесс образования из множества T новых, осмысленных для данной задачи принятия решений значений лингвистической переменной; M семантическая процедура, позволяющая приписать каждому новому значению, образуемому процедурой G, некоторую семантику путем формирования соответствующего нечеткого множества, т.е. отобразить новое значение в нечеткую переменную.

23

Понятие лингвистической переменной позволяет множество образов (десигнатов), с которыми должна оперировать интеллектуальная система, представлять в виде точек на шкалах. Например, можно рассматривать шкалы «возраст» (в годах), «расстояние до объекта» (в м или км) и т.п. С каждой шкалой связано множество знаковых значений лингвистической переменной. Например, со шкалой «возраст» могут быть связаны следующие значения одноименной лингвистической переменной: «юный», «молодой», «зрелый», «пожилой», «старый», «дряхлый». Со шкалой «расстояние» – «вплотную», «очень близко», «близко», «рядом», «недалеко», «далеко», «очень далеко», «у черта на куличках».

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

1.3.Методы обработки знаний

1.3.1.Методы поиска релевантных знаний

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

По способу сравнения двух фрагментов знаний различают следующие виды сопоставлений:

синтаксическое;

параметрическое;

семантическое.

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

24

гументы (при этом неопределенным переменным, если они есть в одном из предикатов, присваиваются значения из другого).

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

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

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

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

25

1.3.2. Основные понятия о методах приобретения знаний

Основной проблемой при разработке современных СППР является проблема приобретения знаний, т.е. преобразование разного вида информации (данных) из внешнего представления в представление в виде знаний, пригодное для решения задач, для которых создается система. Эту проблему часто называют проблемой извлечения знаний из данных (в более общем виде – из внешнего мира), которая сводится к задаче обучения интеллектуальной системы.

Примерами задач извлечения знаний являются:

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

формирование программы (или правил) решения задачи (например, планирования производственного процесса или поведение робота) на основе примеров удачного планирования, вводимых в

компьютер;

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

Обучающиеся системы можно классифицировать по двум признакам: уровень, на котором происходит обучение, и применяемый метод обучения. По первому признаку различают обучение на символьном уровне (SLL – symbol level learning), при котором происходит улучшение представления знаний на основе опыта, полученного при решении задач, и обучение на уровне знаний (KLL – knowledge level learning), при котором происходит формирование новых знаний из существующих знаний и данных.

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

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

«журавль умеет летать»,

26

«воробей умеет летать», «синица умеет летать», «журавль есть птица», «воробей есть птица», «синица есть птица»

система может сформулировать правило-продукцию: если Х есть птица, то Х умеет летать.

По признаку применяемого метода обучения различают системы, в которых используются аналитические или эмпирические методы обучения. Аналитические, в свою очередь, делятся на использующие глубинные (knowledgerich) или поверхностные (knowledge-drizen)

знания.

Эмпирические делятся на использующие знания (knowledgelearning) или данные (data-drizen). С другой стороны, в инженерии знаний известны три основных подхода к приобретению знаний: индуктивный вывод, вывод по аналогии и обучение на примерах. В основе индуктивного вывода лежит процесс получения знаний из данных и/или других знаний (в продукционных системах – правил из фактов и/или других правил). Вывод по аналогии основан на задании и обнаружении аналогий между объектами (ситуациями, образами, постановками задачи, фрагментами знаний) и применением известных методов (процедур) к аналогичным объектам. В основе обучения на примерах лежит демонстрация системы и запоминание ею примеров решения задач. Резкой границы между этими методами не существует, т.к. все они базируются на обобщении, реализованном в той или иной форме, т.е. реализуют переход от более конкретного знания (фактов) к более абстрактному знанию.

1.3.3.Общие методы поиска решений

впространстве состояний

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

Задачу поиска в пространстве состояний можно сформулировать в общем виде так: пусть исходная задача описывается тройкой (S, F,

27

T), где S – множество начальных состояний; F – множество операторов, отображающих одни состояния в другие; T – множество целевых состояний. Решение задачи состоит в нахождении последовательности операторов f1,f2,…,fk (fi F), которые преобразуют начальные состояния в конечные.

Задача поиска в пространстве состояний описывается с помощью понятий теории графов. Задается начальная вершина (исходное состояние) и множество целевых вершин T. Для построения пространства состояний используются операторы F. Последовательно от корня к вершинам дерева применяются операторы, относящиеся к этому уровню, для построения вершин-преемников следующего уровня (раскрытие вершин). Дуги идентифицируются как операторы преобразования. Получаемые вершины-преемники проверяются: не являются ли они целевыми. Далее переходят к следующему уровню. Терминальные вершины – это те, к которым нельзя применить никаких операторов. Раскрытие продолжается до тех пор, пока не получена целевая или терминальная вершина. Поиск на графе состояний – это процесс построения графа G, содержащего целевую вершину. Этот граф называется графом поиска. Существует нескольких вариантов реализации метода перебора, которые различаются заданным порядком, в котором будут перебираться вершины.

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

Поиск в ширину. Вершины раскрываются в последовательности их порождения. Поиск идет по ширине дерева, т. к. раскрытие вершины происходит вдоль одного уровня. Целевая вершина выбирается сразу же после порождения. При поиске в ширину возможно нахождение наиболее короткого пути к целевой вершине, если такой путь есть. На рис. 2 и 3 представлены графы поиска, построение при поиске в глубину и в ширину.

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

28

вило, и процесс поиска продолжается. Здесь все неудачные итерации, приведшие к тупиковой ситуации, забываются, как только применяется новое правило, и переходят к другому направлению поиска. Такой метод поиска с возвратом называется хронологическим возвратом. Он часто малоэффективен, т. к. не запоминает неудачные состояния и шаги поиска, встретившиеся на некотором пути. Многие из них впоследствии окажут свое отрицательное влияние при реализации других путей. Много полезной информации отбрасывается и не используется при анализе дальнейших направлений поиска. Необходимо анализировать шаги вывода, приведшие к тупиковым ситуациям и ошибкам. Для этого надо запоминать шаги вывода. Кроме того, возвращаться надо не к точке возврата, предшествующей данному состоянию, а к состоянию, которое вызвало неудачный ход поиска.

Граничная

вершина

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

Целевая

вершина

вершина

Рис. 2. Граф поиска, построенный при поиске в глубину

Рис. 3. Граф поиска, построенный при поиске в ширину

29

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

Эвристические методы поиска можно использовать тогда, ко-

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

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

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

30

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