15.3.2. Приобретение знаний с помощью системы SALT

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

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

(1) Знания, которые касаются развития текущей промежуточной стадии проекта (PROPOSE-A-DESIGN-EXTENTION).

(2) Знания, относящиеся к определению ограничений, накладываемых на текущую промежуточную стадию проекта (IDENTIFY-A-CONSTRAINT).

(3) Знания, касающиеся устранения обнаруженных нарушений ограничений (PROPOSE-A-FIX).

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

В качестве промежуточной формы представления знаний в SALT используется сеть зависимостей. Каждый узел этой сети представляет наименование какого-либо контрольного параметра (например, TYPE-OF-LOADING), параметра, характеризующего конструкцию (например, PLATFORM-WIDTH), или ограничения (например, MAXIMUM-MACHINE-GROOVE-PRESSURE). Связи в сети разделены на три группы:

Работая с системой SALT, пользователь может вводить знания в любом порядке, но каждое элементарное знание должно иметь один из трех квалификаторов в соответствии с перечисленными выше ролями:

Получив значение квалификатора, система SALT организует диалог с пользователем и предлагает ему ввести знания, соответствующие заданной роли.

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

1. Name: CAR-JAMB-RETURN

2. Precondition: DOOR-OPENING=CENTER

3. Procedure: CALCULATION

4. Formula: (PLATFORM-WIDTH - OPENING-WIDTH)/2

5. Justification: CENTER-OPENING DOOR LOOK BEST WHEN

CENTERED ON THE PLATFORM

1.Имя: CAR-JAMB-RETURN

2. Предусловия: DOOR-OPENING=CENTER

3. Процедура: Вычисление

4. Формула: (PLATFORM-WIDTH - OPENING-WIDTH)/2

5. Уточнение: Двери, открывающиеся от середины, выглядят лучше,

если на платформе их разместить по центру

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

Constraint name: MAXIMUM-MACHINE-GROOVE-PRESSURE

Value to Change HOIST_CABLE-QUANTITY

Change Type: INCREASE

Step Type: BY-STEP

Step Size: 1

Preference Rating: 4

Preference Reason: CHANGES MINOR EQUIPMENT SIZING

Имя ограничения: MAXIMUM-MACHINE-GROOVE-PRESSURE Изменить: HOIST_CABLE-QUANTITY

Тип изменения: INCREASE

Режим изменения: BY-STEP

Величина шага: 1

Приоритет: 4

Критерий выбора: Минимальные изменения размеров другого оборудования

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

Информацию о связях в сети зависимостей программа SALT извлекает из тех элементов знаний, которые вводятся пользователем. Так, после ввода приведенного выше правила типа PROCEDURE программа сформирует содействующую связь между узлом, ассоциированным с параметром PLATFORM-WIDTH, и узлом, ассоциированным с параметром CAR-JAMB-RETURN. Точно так же после ввода правил типов CONSTRAINT и FIX будут сформированы ограничивающие и корректирующие связи.

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