Представление знаний в интеллектуальных системах

Методическое пособие - Компьютеры, программирование

Другие методички по предмету Компьютеры, программирование

в g2, то g получается удалением с2 и соединением с с1 всех связывающих узлов, которые были связаны с с2 в g2.

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

Правило копирования: граф g есть копия графа g1.

Правило ограничения: Для любого концепта с концептуального графа g тип (с) можно заменить неким подтипом. Если с - концепт совокупности, то её ссылку можно заменить индивидуальным указателем (какой-то конкретизацией). Такие замены разрешены лишь тогда, когда ссылка для с соответствует типу (с).

Проиллюстрируем эти правила на концептуальных графах представленных на следующем рисунке. Граф без элементов с (2) - для фразы Жак срочно посылает книгу кому-то Граф без элементов с (1) - для фразы Жак посылает почтой книгу Мари. Применение правила конъюнкции к этим двум графам даёт весь граф изображённый на рисунке. Можно было бы далее применить к последнему графу правило ограничения, заменяя обозначенную х совокупность кому-то меньше совокупностью женщина. Однако прежде надо убедиться в свойстве Мари - женщина. Предыдущие правила являются фактически правилами суждения: ограничение сужает концепты, а конъюнкция добавляет условия на графах. Аналогично можно определить правила расширения, которые представляют собой правила, обратные к правилам суждения.

 

 

Унаследованные свойства

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

Сначала проиллюстрируем иерархию типов на примере, а затем дадим формальное определение. Если известно, что Жак (представленный конкретизацией Жак_2) - профессор университета, то можно сделать заключение о наличии у него докторской степени и о том, что он работает в университете. Информация Жак - профессор университета предоставила нам целую цепочку сведений о Жаке. Унаследованными называют такие свойств, которые можно вывести подобным образом. Особых причин детально останавливаться на них нет. Ясно, что кое-какие характеристики профессоров университета можно описать исходя из принадлежности к профессуре; некоторые характеристики профессуры выносятся из того факта, что они содержатся в совокупности работников умственного труда, и, в конечном счёте, всех людей. Соображения эффективности побуждают нас не связывать с Жаком все общие профессоров университета, вообще профессоров и, наконец, всех людей. Весьма общее свойство, как например, У Жака две руки и две ноги, сопоставляется узлу, характеризующему всех людей. Это даёт возможность не провозглашать наличие указанного свойства отдельно, для каждого индивида.

 

28.Язык Prolog. Сложные термы, или структуры

 

Структурные объекты (или просто структуры) - это объекты, которые состоят из нескольких компонент. Эти компоненты в свою очередь могут быть структурами. Например, дату можно рассматривать как структуру, состоящую из трех компонент: день, месяц, год. Хотя они и составлены из нескольких компонент, структуры в программе ведут себя как единые объекты. Для того, чтобы объединить компоненты в структуру, требуется выбрать функтор. Для нашего примера подойдет функтор date. Тогда дату 1-е мая 1983 г. можно записать так.

date (1, may, 1983).

Все компоненты в данном примере являются константами (две компоненты- целые числа и одна- атом). Компоненты могут быть также переменными или структурами. Произвольный день в мае можно представить структурой

date (Day, may, 1983).

Заметим, что Day является переменной и ей можно приписать произвольное значение на некотором более позднем этапе вычислений.

Синтаксически все объекты данных в Прологе представляют собой термы. Например,

May

и

date(1, may, 1983)

суть термы.

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

 

Рис 7. Простые геометрические объекты.

 

Точка в двумерном пространстве определяется двумя координатами; отрезок двумя точками, а треугольник можно задать тремя точками. Введем следующие функторы:

tochka для точек

otrezok для отрезков и

treugolnik для треугольников

Тогда объекты представленные на Рис. 7. можно представить следующими прологовскими термами:

P1 = tochka (1, 1)= tochka (2, 3)= otrezok (P1, P2) =

otrezok (tochka (1, 1), tochka (2, 3))= treugolnik (tochka (1, 1), tochka (7, 1), tochka (6, 4))

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

 

Рис. 8. Представление объектов с рис. 7 в виде деревьев

 

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

Tochka3 (X, Y, Z)

Можно, однако, воспользоваться одним и тем же именем tochk