Классификация инструментальных средств по классам экспертных систем

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

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

Универсальность задается совокупностью двух параметров: уни­версальностью представления знаний и универсальностью функцио­нирования. Универсальность представления характеризует способ (модель) представления знаний в ИС и принимает следующие значе­ния: единое представление — ИС использует одну модель; инте­гральное представление — ИС допускает интегральное использова­ние нескольких моделей; универсальное — ИС допускает интеграль­ное использование всех основных моделей представления. К основ­ным моделям представления относятся: правила (продукции); фреймы или семантические сети; логические модели (исчисление преди­катов). Примерами ИС, в которых используется единое представле­ние, является ПРОЛОГ, интегральное представление — CENTAUR, a универсальное — КЕЕ, ART.

Универсальность функционирования характеризует механизмы (парадигмы), определяющие, как в ИС задается поведение (функционирование) системы, и принимает следующие значения: единый механизм функционирования — ИС использует один меха­низм функционирования; интегральное функционирование — ИС допускает интегральное использование нескольких механизмов функционирования; универсальное функционирование — ИС допус­кает интегральное использование всех основных механизмов. К ос­новным механизмам (парадигмам программирования) относятся: процедурное программирование; обратное программирование; про­граммирование, ориентированное на данные; программирование, ориентированное на правила. В связи с тем, что парадигмы програм­мирования мало известны, поясним их.

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

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

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

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

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

Основные свойства определяют особенности ИС с точки зрения реализации компонентов ЭС.

Среда функционирования определяет тип ЭВМ, на которой реа­лизовано ИС, тип операционной системы, в среде которой ИС рабо­тает, и используемый язык программирования.

Добавить комментарий