Фреймы.
Программная инженерия и технологии программирования сложных систем
Наиболее ярко преимущества фреймовых систем представления знаний проявляются в том случае, когда родовидовые связи изменяются нечасто и ПрО насчитывает немного исключений. Во фреймовых системах данные о родовидах хранятся явно, как и знания других типов. Значения слотов представляются в системе в единственном экземпляре, поскольку включаются только в один фрейм, который описывает наиболее общие… Читать ещё >
Фреймы. Программная инженерия и технологии программирования сложных систем (реферат, курсовая, диплом, контрольная)
Фрейм определяет структуру данных для представления стереотипных ситуаций. Модель представления знаний на основе фреймов использует концепцию организации памяти, понимания и обучения человека, предложенную М. Минским (1997). Фрейм (дословно — «рамка») — это единица представления знаний, детали которой могут изменяться с текущей ситуацией. Фрейм в любой момент может быть дополнен разнообразной информацией — о способах его применения, последствиях этого применения и др.
Структура фрейма состоит из характеристик стереотипной описываемой ситуации и их значений, которые называются соответственно слотами и заполнителями слотов.
Незаполненный фрейм называется нротофреймом, а заполненный — экзофреймом. Роль протофрейма как оболочки в экзофрейме особенно важна. Эта оболочка позволяет выполнять процедуру внутренней интерпретации, благодаря которой в памяти системы находятся не бессодержательные сведения, а имеющие достаточно определенное, известное системе содержание.
Слот может содержать не только конкретное значение, но и имя процедуры, что позволяет вычислять его по заданному алгоритму, а также одну или несколько продукций (эвристик), при помощи которых это значение определяется. В слот может входить не одно, а несколько значений. Иногда слот включает компонент, называемый фасетом и задающий диапазон или перечень его возможных значений. Фасет указывает также предельные значения заполнителя слота.
Кроме конкретного значения, в слоте могут храниться процедуры и правила, которые вызываются при необходимости определить это значение. Среди них выделяют процедуры-демоны и процедуры-слуги. Первые запускаются автоматически при выполнении некоторого условия, а вторые активизируются только по специальному запросу.
Совокупность фреймов, которая моделирует какую-нибудь ПрО, представляет собой иерархическую структуру, в которой фреймы собираются при помощи родовидовых связей. На верхнем уровне иерархии находится фрейм, содержащий наиболее общую информацию для остальных фреймов. Фреймы имеют способность наследовать значение характеристик своих родителей, которые находятся на более высоком уровне иерархии. Эти значения могут передаваться по умолчанию фрейму, который находится ниже в иерархии, но если последний содержит собственные значения данных характеристик, то в качестве истинных принимаются именно собственные значения. Это обстоятельство позволяет без осложнений учитывать во фреймовых системах различного рода исключения.
Различают статические и динамичные системы фреймов. В системах первого типа фреймы не могут быть изменены в процессе решения задачи, а в системах второго типа это допускается.
О системах, основанных на фреймах, говорят, что они являются объектно ориентированными. Каждый фрейм отвечает некоторому объекту ПрО, а слоты содержат данные, которые описывают этот объект, т. е. в слотах находятся значения признаков объектов. Фрейм может быть представлен в виде списка свойств, а если использовать средства БД, то в виде записи.
Наиболее ярко преимущества фреймовых систем представления знаний проявляются в том случае, когда родовидовые связи изменяются нечасто и ПрО насчитывает немного исключений. Во фреймовых системах данные о родовидах хранятся явно, как и знания других типов. Значения слотов представляются в системе в единственном экземпляре, поскольку включаются только в один фрейм, который описывает наиболее общие понятия из всех тех, что содержит слот с данным именем. Такое свойство систем фреймов обеспечивает экономное размещение базы знаний в памяти компьютера. Еще одно преимущество фреймов заключается в том, что значение любого слота будет рассчитано при помощи соответствующих процедур или найдено эвристическими методами. То есть фреймы позволяют манипулировать как декларативными, так и процедурными знаниями.
К недостаткам фреймовых систем относят их относительно высокую сложность, что проявляется в снижении скорости работы механизма вывода и в увеличении трудоемкости внесения изменений в родовидовую иерархию. Поэтому при разработке фреймовых систем больше внимания уделяют демонстративным способам отображения и эффективным средствам редактирования фреймовых структур.