Экспертные системы

Московский государственный институт электроники и математики

(технический университет)


Кафедра ИТАС


Реферат на тему: «Реализация сети фреймов и решения различных вариантов задачи с помощью различных механизмов вывода в экспертных системах».


Группа: АП-101

Студентка: Гусева И.А.


1.Введение.

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


2. Функции, выполняемые экспертной системой

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


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


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


  1. решение задач с использованием знаний о конкретной предметной области возможно, при этом возникнет необходимости иметь дело с неопределенностью;

  2. взаимодействие с пользователем, включая объяснение намерений и решений системы во время и после окончания процесса решения задачи.


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


3. Теорияфреймов


Теория фреймов - это парадигма для представления знаний с целью использования этих знаний компьютером. Впервые была представлена Минским, как попытка построить фреймовую сеть, или парадигму с целью достижения большего эффекта понимания. С одной стороны Минский пытался сконструировать базу данных, содержащую энциклопедические знания, но с другой стороны, он хотел создать наиболее описывающую базу, содержащую информацию в структурированной и упорядоченной форме. Эта структура позволила бы компьютеру вводить информацию в более гибкой форме, имея доступ к тому разделу, который требуется в данный момент. Минский разработал такую схему, в которой информация содержится в специальных ячейках, называемых фреймами, объединенными в сеть, называемую системой фреймов. Новый фрейм активизируется с наступлением новой ситуации. Отличительной его чертой является то, что он одновременно содержит большой объем знаний и в то же время является достаточно гибким для того, чтобы быть использованным как отдельный элемент БД. Термин «фрейм» был наиболее популярен в середине семидесятых годов, когда существовало много его толкований, отличных от интерпретации Минского.

Итак, как было сказано выше фреймы – это фрагменты знания, предназначенные для представления стандартных ситуаций. Термин «фрейм» (Frame – рамка) был предложен Минским. Фреймы имеют вид структурированных компонентов ситуаций, называемых слотами. Слот может указывать на другой фрейм, устанавливая, таким образом, связь между двумя фреймами. Могут устанавливаться общие связи типа связи по общению. С каждым фреймом ассоциируется разнообразная информация ( в том числе и процедуры), например ожидаемые процедуры ситуации, способы получения информации о слотах, значение принимаемые по умолчанию, правила вывода.

Формальная структура фрейма имеет вид:

f[, , …, ],


где f – имя фрейма; пара - i-ый слот, Ni – имя слота и Vi – его значение.


Значение слота может быть представлено последовательностью

  • ;...; ; ; …; ,

    где Ki – имена атрибутов, характерных для данного слота; Li – значение этих атрибутов, характерных для данного слота; Rj – различные ссылки на другие слоты.

    Каждый фрейм, как структура хранит знания о предметной области (фрейм–прототип), а при заполнении слотов знаниями превращается в конкретный фрейм события или явления.

    Фреймы можно разделить на две группы: фреймы-описания; ролевые фреймы.

    Рассмотрим пример.

    Фрейм описание: [<программное обеспечение>, <программа 1С бухгалтерия, версия 7.5>, <программа 1С торговля, версия 7.5>, <правовая программа «Консультант +» проф.>].

    Ролевой фрейм: [<заявка на продажу>, <что, установка и покупка программы 1С торговля, версия 7.5>, <откуда, фирма ВМИ>, <куда, фирма «Лукойл»>, <кто, курьер Иванова>, <когда, 27 октября 1998г.>].

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

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

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

    Для многих предметных областей фреймовые модели являются основным способом формализации знаний.


    Чтобы лучше понять эту теорию, рассмотрим один из примеров Минского, основанный на связи между ожиданием, ощущением и чувством человека, когда он открывает дверь и входит в комнату. Предположим, что вы собираетесь открыть дверь и зайти в комнату незнакомого вам дома. Находясь в доме, перед тем как открыть дверь, у вас имеются определенные представления о том, что вы увидите, войдя в комнату. Например, если вы увидите какой-либо пейзаж или морской берег, поначалу вы с трудом узнаете их. Затем вы будете удивлены, и в конце концов дезориентированы, так как вы не сможете объяснить поступившую информацию и связать ее с теми представлениями, которые у вас имелись до того. Также у вас возникнут затруднения с тем, чтобы предсказать дальнейший ход событий. С аналитической точки зрения это можно объяснить как активизацию фрейма комнаты в момент открывания двери и его ведущую роль в интерпретации, поступающей информации. Если бы вы увидели за дверью кровать, то фрейм комнаты приобрел бы более узкую форму, и превратился бы во фрейм кровати. Другими словами, вы бы имели доступ к наиболее специфичному фрейму из всех доступных. Возможно, что вы используете информацию, содержащуюся в вашем фрейме комнаты для того чтобы распознать мебель, что называется процессом сверху вниз, или в контексте теории фреймов фреймодвижущим распознаванием . Если бы вы увидели пожарный гидрант, то ваши ощущения были бы аналогичны первому случаю. Психологи подметили, что распознавание объектов легче проходит в обычном контексте, чем в нестандартной обстановке. Из этого примера мы видим, что фрейм - это модель знаний, которая активизируется в определенной ситуации и служит для ее объяснения и предсказания. У Минского имелись достаточно расплывчатые идеи о самой структуре такой БД, которая могла бы выполнять подобные вещи. Он предложил систему, состоящую из связанных между собой фреймов, многие из которых состоят из одинаковых подкомпонентов, объединенных в сеть. Таким образом, в случае, когда кто-либо входит в дом, его ожидания контролируются операциями, входящими в сеть системы фреймов. В рассмотренном выше случае мы имеем дело с фреймовой системой для дома, и с подсистемами для двери и комнаты. Активизированные фреймы с дополнительной информацией в БД о том, что вы открываете дверь, будут служить переходом от активизированного фрейма двери к фрейму комнаты. При этом фреймы двери и комнаты будут иметь одинаковую подструктуру. Минский назвал это явление разделом терминалов и считал его важной частью теории фреймов.

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

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

    A. John went to a restaurant

    He asked the waitress for a hamburger

    He paid the tip & left

    B. John went to a park

    He asked the midget for a mouse

    He picked up the box & left

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

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

    Did John sit down in the restaurant?

    Did John eat the hamburger?

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

    Рассмотрим другой пример:

    C. He plunked down $5 at the window.

    She tried to give him $ 2.50, but he wouldn’t take it.

    So when they got inside, she bought him a large bag of popcorn.

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

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

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

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

    Манипуляция фреймами

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


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

    Распознавание

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

    Размер фрейма

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

    Вышеперечисленные операции также остаются открытыми вопросами в ТФ.

    Инициализационные категории

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

    пример

    суперординатная идеи события

    базовая события действия

    субординатная действия прогулка

    Каждый фрейм имеет свой определенный так называемый слот. Так, для фрейма действие слот может быть заполнен только каким-либо исполнителем этого действия, а соседние фреймы могут наследовать этот слот.

    Некоторые исследователи предположили, что случаи грамматики падежей совпадают со слотами в ТФ, и эта теория была названа теорией идентичности слота и падежа. Было предложено число таких падежей, от 8 до 20, но точное число не определено. Но если агентив полностью совпадает со своим слотом, то остальные падежи вызвали споры. И до сих пор точно не установлено, сколько всего существует падежей.

    Также вызвал трудность тот факт, что слоты не всегда могут быть переходными. Например, в соответствие с ТФ можно сказать, что фрейм одушевленный предмет может иметь слот живой, фрейм человек может иметь слот честный, а фрейм блоха не может иметь такой слот, и он к нему никогда не перейдет.

    Другими словами, связи между слотами в ТФ не являются исследованными до конца. Слоты могут передаваться, могут быть многофункциональны, но в то же время не рассматриваются как функции.

    Гибридные системы

    СФ иногда адаптируются для построения описаний или определений. Был создан смешанный язык, названный KRYPTON, состоящий из фреймовых компонентов и компонентов предикатных исчислений, помогающих делать какие-либо выводы с помощью терминов и предикатов. Когда активизируется фрейм, факты становятся доступными пользователю. Также существует язык Loops, который объединяет объекты, логическое программирование и процедуры.

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

    • Объектно-ориентированные языки

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

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


    4. Структура экспертной системы

    При разработке экспертной системы принято делить ее на три основных модуля:

    1. база знаний;

    2. машина логического вывода;

    3. интерфейс с пользователем.

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


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


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

    Принято рассматривать машину вывода и интерфейс как один крупный модуль, обычно называемый  оболочкой экспертной системы, или, для краткости, просто оболочкой.

    В описанной выше структуре собственно знания отделены от алгоритмов, использующих эти знания. Такое разделение удобно по следующим соображениям. База знаний, очевидно, зависит от конкретного приложения. С другой стороны, оболочка, по крайней мере в принципе, независима от приложений. Таким образом, разумный способ разработки экспертной системы для нескольких приложений сводится к созданию универсальной оболочки, после чего для каждого приложения достаточно подключить к системе новую базу знаний. Разумеется, все эти базы знаний должны удовлетворять одному и тому же формализму, который оболочка "понимает". Практический опыт показывает, что для сложных экспертных систем сценарий с одной оболочкой и многими базами знаний работает, не так гладко, как бы этого хотелось, за исключением тех случаев, когда прикладные области очень близки. Тем не менее, даже если переход от одной прикладной области к другой требует модификации оболочки то, по крайней мере основные принципы ее построения обычно удается сохранить.


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


    •Выбрать формальный аппарат для представления знаний.

    •Разработать механизм логического вывода, соответствующий этому формализму.

    •Добавить средства взаимодействия с пользователем.

    •Обеспечить возможность работы в условиях неопределенности.


    5. Методы приобретения знаний.

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

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




    Рис.1 Базовая структура систем обработки знаний


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




    Рис 2.Классификация методов приобретения знаний.


    6. АНАЛИЗ СНИЗУ ВВЕРХ И СВЕРХУ ВНИЗ


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

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

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


    Сравнение


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


    Сравнение и унификация. В системах с заложенными правилами или системах логического анализа выбор прямого или обратного цепного анализа влияет на степень трудности процесса сравнения. При прямом цепном анализе системе постоянно предъявляются новые факты, не имеющие свободных переменных. Таким образом постоянно проводится сравнение антецедентов, вполне вероятно обладающих свободными переменными, с фактами, не обладающими таковыми.

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


    Смешанные стратегии


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

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

    Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
    Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

    Поможем написать работу на аналогичную тему

    Получить выполненную работу или консультацию специалиста по вашему учебному проекту
  • Похожие рефераты: