Описание Базы Знаний, терминология
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Концепции в Cyc называются константами. Имена констант начинаются с необязательных символов «#$» и чувствительны к регистру. Существуют константы для:

· Отдельных элементов, которые называются individual, например #$BillClinton или #$France.

· Совокупностей (Collections) таких, как например, #$Tree-ThePlant (в которую входят все деревья) или #$EquivalenceRelation (в которой содержатся все отношения эквивалентности). Член совокупности называется экземпляром данной коллекции.

· Функций истинности (Truth Functions) которые можно применять к одной или нескольким концепциям и возвращающие значение истина или ложь. Например #$siblings (потомки одного родителя) является отношением родства, истинным только в том случае, когда два его аргумента являются братьями или сёстрами. По соглашению, константы функций истинности начинаются с буквы в нижнем регистре. Функции истинности поддаются разбиению на логические связки (такие как #$and, #$or, #$not, #$implies), кванторы (#$forAll, #$thereExists, и т. д.) и предикаты.

· Функций Functions, которые образуют новые термы из данных. Например, если передать функции #$FruitFn в качестве аргумента тип (или коллекцию) растений, вернёт коллекцию их фруктов. По соглашению, имена констанит функций начинаются с буквы в верхнем регистре и заканчиваются строкой «Fn».

Наиболее важными предикатами являются #$isa и #$genls. Первый является утверждением что некий элемент является экземпляром некой коллекции, а второй что коллекция является подколлекцией другой коллекции. Факты о концепциях декларируются с помощью особых высказываний языка CycL. Предикаты записываются в скобках перед своими аргументами:

 

(#$isa #$BillClinton #$UnitedStatesPresident)

 

означает что «Билл Клинтон входит в совокупность президентов США», а высказывание

 

(#$genls #$Tree-ThePlant #$Plant)

читается как «Все деревья являются растениями».

(#$capitalCity #$France #$Paris)

значит: «Париж столица Франции».

 

Высказывания также могут содержать переменные, строки начинающиеся со знака «?». Эти высказывания называются «правилами». Одно из важнейших правил, относящихся к предикату #$isa читается:

 

(#$implies(#$and(#$isa ?OBJ ?SUBSET)(#$genls ?SUBSET ?SUPERSET))(#$isa ?OBJ ?SUPERSET))

 

что означает «если OBJ является экземпляром коллекции SUBSET, а SUBSET в свою очередь является подколлекцией SUPERSET тогда также OBJ является экземпляром коллекции SUPERSET». Другой типичный пример:

 

(#$relationAllExists #$biologicalMother #$ChordataPhylum #$FemaleAnimal)

 

что означает что любой экземпляр коллекции #$ChordataPhylum (то есть любое хордовое) связан с самкой животного (экземпляром #$FemaleAnimal), которая является его матерью (что описывается предикатом #$BiologicalMother).

База знаний Cyc разделена на микротеории (Mt), коллекции концепций и фактов принадлежащих одной конкретной области знаний. В отличие от полной базы знаний, всякая микротеория должна быть свободной от противоречий. Всякая микротеория имеет название, которое является обычной константой; по соглашению константы микротеорий содержат строку «Mt». Пример — #$MathMt, микротеория содержащая математические знания. Микротеории могут наследоваться одна от другой и организованы в иерархию: одной из специализаций #$MathMt является #$GeometryGMt — микротеория о геометрии.

OpenCyc

Последняя версия OpenCyc, 1.0 была выпущена в июле 2006 года. OpenCyc 1.0 включает в себя полную онтологию Cyc содержащую сотни тысяч выражений, миллионы утверждений, связывающих термы между собой. База знаний содержит 470000 концепций и 306000 фактов и её можно просмотреть на сайте OpenCyc. Первая версия OpenCyc была выпущена в мае 2001 года и содержала только 6000 концепий и 60000 фактов. База знаний выпущена под лицензией Apache. Cycorp намерена выпускать OpenCyc под параллельными, менее жесткими лицензиями чтобы удовлетворить потребности своих пользователей. Интерпретатор CycL и SubL (программа, которая позволяет вам просматривать и изменять базу данных и делать выводы) выпущена бесплатно, но только в двоичном виде, без исходных текстов. Она работает как под GNU/Linux так и под Microsoft Windows.

ResearchCyc

В июле 2006 года Cycorp выпустила ResearchCyc 1.0, бесплатную (но с закрытыми исходниками) версию Cyc предназначенную для исследовательского сообщества. (ResearchCyc находился в бета версии в течение всего 2004 года, а выпущена в бета-тестирование она была в феврале 2005.) В дополнение к таксономической информации из OpenCyc, ResearchCyc включает значительно больше семантических знаний (то есть дополнительные факты) о концепциях в своей базе знаний, и включает большой лексикон, инструменты для грамматического разбора и генерации Английского языка, написанные на языке Java интерфейсы для редактирования знаний и создания запросов к базе.

Cycorp публично выразила своё намерение выпустить все термы и таксономические взаимосвязи, содержащиеся в ResearchCyc, как часть OpenCyc и это было сделано в версии 1.0. Одна из указанных целей — создать полностью свободный и неограниченный семантический словарь для использования в Semantic Web. Таксономия OpenCyc доступна в формате Owl на сайте проекта

Критика проекта Cyc

Cyc описывают как «одно из наиболее противоречивых начинаний в истории искусственного интеллекта» (Бертино и др. стр. 275), так что он неизбежно получил свою долю критики.

· Чрезмерная сложность системы — без сомнения необходимая в силу энциклопедических амбиций — и соответственно сложность добавления (вручную) данных в систему

· Проблемы масштабируемости from widespread reification, особенно как константы

· Неудовлетворительное использование концепции материи, и связанного с этим, различия между внутренними и внешними свойствами

· Отсутствие вменяемых измерений производительности или сравнений эффективности машины вывода Cyc

· Нынешняя неполнота системы как в ширину, так и глубину, и связанная с этим сложность в измерении её полноты

· Недостаток документации

· Отсутствие не устаревшего онлайнового обучающего материала усложняет изучение системы для новичков

· Несмотря на своё название система OpenCyc не является полностью открытой: данные доступны для редактирования пользователям, но код недоступен для расширения разработчикам.[1]

Данные вопросы обсуждались в разных местах с момента запуска проекта. Даг Ленат и другие опубликовали множество аргументов в защиту своего проекта.

 

Экспертная система CLIPS

CLIPS, (от англ. C Language Integrated Production System) — программная экспертная система. Синтаксис и название предложены Чарльзом Форги (Charles Forgy) в OPS (Official Production System). Первые версии CLIPS разрабатывались с 1984 года в Космическом центре Джонсона (Johnson Space Center), NASA (как альтернатива существовавшей тогда системе ART*Inference), пока в начале 1990-х не было приостановлено финансирование, и NASA вынудили купить коммерческие продукты.

Вероятно, CLIPS является наиболее широко используемой экспертной системой благодаря своей скорости, эффективности и бесплатности. Несмотря на то, что теперь она является общественным достоянием, она до сих пор обновляется и поддерживается своим изначальным автором, Гэри Райли (Gary Riley).

CLIPS включает полноценный объектно-ориентированный язык COOL для написания экспертных систем. Хотя она написана на языке Си, её интерфейс намного ближе к языку программирования LISP. Расширения можно создавать на языке Си, кроме того, можно интегрировать CLIPS в программы на языке Си.

Как и другие экспертные системы, CLIPS имеет дело с правилами и фактами. Различные факты могут сделать правило применимым. Применимое правило затем допускается (assert). Факты и правила создаются предварительным объявлением, как показано в примере:

 

(deffacts trouble_shooting(car_problem (name ignition_key) (status on))(car_problem (name engine) (status wont_start))(car_problem (name headlights) (status work)) (defrule rule1(car_problem (name ignition_key) (status on))(car_problem (name engine) (status wont_start))(assert (car_problem (name starter) (status faulty))

Потомками CLIPS являются языки программирования Jess (часть CLIPS, работающая с правилами и переписанная на Java, позже развившаяся в другом направлении), ECLiPSe, Haley Eclipse, FuzzyCLIPS (с добавлением концепции значимости relevancy в язык) и другие.

Существует учебник для колледжей, Expert Systems: Principles and Programming (ISBN 0-534-95053-1) и книга по Jess, Jess in Action: Rule Based Systems in Java (ISBN 1-930110-89-8). Кроме того CLIPS содержит обширную документация прямо в поставке.



Список используемой литературы

1. Гаврилова Т. А., Хорошевский В. Ф. Базы знаний интеллектуальных систем. Учебник. — СПб: Питер, 2000.

2. Субботін С. О. Подання й обробка знань у системах штучного інтелекту та підтримки прийняття рішень: Навчальний посібник. — Запоріжжя: ЗНТУ, 2008. — 341 с.

3. http://ru.wikipedia.org/ Википедия – свободная энциклопедия

Дата: 2019-04-23, просмотров: 185.