Фреймы для представления знаний | страница 46



3.2. Сопоставление образцов

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

Данная проблема может быть сформулирована следующим образом: допустим, что Е есть штраф за потерю одного полностью согласованного терминала, а F — потери от того, что какой-то другой терминал не может конкретизировать свои задания. Тогда, если Е больше F, то любой новый фрейм должен сохранять старый субфрейм. При наличии какой-либо приоритетности среди терминалов типичный запрос на вызов нового фрейма должен включать:

1. Поиск фрейма с возможно большим числом терминалов, общих с конкретизированными терминалами (a, b,… z) старого фрейма и расположенных в порядке убывания их приоритетности.

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

2. Поиск или создание нового фрейма, обладающего свойствами (a, b,…, z).

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

3. Поиск нового фрейма, во всем подобного старому фрейму, за исключением различий (a, b, …, z) между ними.

Реализация правил 1 и 2 может быть выполнена с помощью процесса поиска в памяти с параллельной выборкой или хаш-кодированием (метод функции расстановки), если терминалы или свойства (a, b , ..., z) — простые атомарные понятия. (В любом случае должен существовать какой-то механизм для поддержания работы генерирующих программ или для одного из видов сопоставления образцов). К сожалению, для осуществления всего этого имеется так много различных способов, что нельзя указать на какие-нибудь характерные для данных целей требования к конструктивным особенностям этих механизмов.