Чтобы четко контролировать знания, содержащиеся в базе, необходима метаинформация, описывающая их внутреннее представление. Знать, как представлены знания, очень важно, так как они могут быть структурированы множеством способов, и информация о структуре хранимых знаний может оказаться крайне полезной.
Следует учитывать и разграничение знаний: при работе с нашей базой знаний будет полезна информация о том, какие области и в какой мере эта база охватывает.
Человек легко справится с неполнотой знаний, но информационной системе необходимо очень четко указать, что ей известно, а что — нет. Поэтому одним из первых методов управления базами знаний стало допущение замкнутости мира (англ. CWA — Closed World Assumption). Это допущение предложил Раймонд Рейтер в 1978 году. Он взял за основу простое утверждение, которое, однако, имело важные последствия: «Единственные объекты, которые могут удовлетворять предикату Р, — те, что должны удовлетворять ему». Иными словами, все знания, не зафиксированные в системе, неверны.
Допустим, нас спросили, работает ли некий человек в определенной компании.
Чтобы узнать ответ, мы обращаемся к списку сотрудников, и если нужного человека в списке нет, то говорим, что он не работает в компании.
Допущение замкнутости мира в свое время существенно упростило работу с базами знаний. Однако читатель наверняка догадался, что это допущение имеет важные ограничения: если в реальной жизни нам неизвестен какой-либо факт, это не означает, что он автоматически будет ложным. Вернемся к примеру со списком сотрудников компании. Возможно, человек, работающий в организации, не указан в списке по ошибке или потому, что список устарел? Еще один недостаток допущения замкнутости мира заключается в том, что при работе с ним необходимо использовать чисто синтетические рассуждения.
Представьте, что у нас есть следующих список одиноких людей и людей, состоящих в браке:
Холост (-а) Хуан
Холост (-а) Мария
В браке Давид
Если кто-то спросит систему, холост ли Хорхе, система ответит отрицательно, так как Хорхе нет в списке холостяков. Составим новый список вида:
Не в браке Хуан
Не в браке Мария
В браке Давид
Вновь спросим систему, женат ли Хорхе, и вновь получим отрицательный ответ.
Система не содержит информации о семейном положении Хорхе, поэтому она позволяет сделать противоречивый вывод: Хорхе не одинок и вместе с тем не состоит в браке. Очевидно, что допущение замкнутости мира некорректно применять при неопределенности знаний или в случае их неполноты, поэтому сегодня это допущение используется только в частных случаях.
Наконец, мы не можем закончить разговор о работе с базами знаний, не упомянув о системах поддержки истинности (TMS, от англ. Truth Maintenance Systems).
Эти системы обеспечивают непротиворечивость баз знаний. Они особенно полезны при использовании немонотонных рассуждений, то есть методов, при которых база знаний постепенно увеличивается или уменьшается по ходу рассуждений. Системы поддержки истинности делятся на две группы: системы вертикального поиска и системы горизонтального поиска. Системы первой группы обходят базу знаний в поисках противоречий от общего к частному. При обнаружении противоречия они проходят ранее пройденный путь в обратном направлении. Системы горизонтального поиска, напротив, формулируют различные параллельные сценарии или гипотезы так, что из полученного множества контекстов по мере обнаружения противоречий последовательно исключаются отдельные варианты. Иными словами, для данного возможного контекста (представьте себе определенную позицию в шахматной партии) системы горизонтального поиска определяют сценарии, к которым можно прийти из текущей ситуации (в примере с шахматами этими сценариями будут возможные ходы), и исключают те, что оказываются противоречивыми. В шахматной партии противоречивым сценарием будет ход, при котором компьютер окажется в очень невыгодной позиции, поскольку цель компьютера — одержать победу, а неудачный ход противоречит этой цели.