Поддержка больших онтологий в редакторе Protege…

является одним из наиболее популярных редакторов онтологий на сегодняшний день. Но вот, когда необходимо открыть онтологию размером несколько десятков мегабайт, молчу о гигабайтах вообще, отказывается это делать. Оказывается это не ограничение , как программы, это ограничение, устанавливаемое настройками виртуальной машины java. По умолчанию, установлено выделять 512 мб ОЗУ. Естественно, когда вы разрабатываете какую-то персональную онтологию, то этого значения хватит с головой, но иногда необходимо работать с большими промышленными онтологиями, такими как NCI, DOLCE, тогда необходимо изменить следующие настройки (MacOS X, Linux):

В папке, где установлен необходимо найти файл:

для версии 3.4.x

run_protege.sh

и изменить в разделе JVM Options параметр MAXIMUM_MEMORY

# ------------------- JVM Options -------------------

MAXIMUM_MEMORY=-Xmx2000M

OPTIONS=$MAXIMUM_MEMORY

для версии 4.x:

run.sh

и изменить значение параметра Xmx на необходимое

java ${CMD_OPTIONS} -Xmx2000M

Ключ -Xmx определяет максимально выделяемую память виртуальной машины Java. Это значение, например, вместо 2 гиг, как в примере, можно установить равным 4 (4000M).

И конечно же, хочу отметить, что указывать необходимо количество реальной памяти  ОЗУ, которое установлено в вашей системе и еще чуть-чуть необходимо оставить операционной системе. В любом случае, перед загрузкой онтологии в , узнайте на сайте разработчика сколько необходимо оперативной памяти, чтобы с этой онтологией работать.

Врезка: 4ГБ ОЗУ это для онтологий небольших и средних. Большие онтологии требуют от 7ГБ оперативки и выше. На 4Гб мне удалось загрузить онтологию размером более 50MB. А Вам?

Читать продолжение »

Редактор онтологий Protege 4 – релиз!

16 июня 2009 года  команда CO-ODE выпустила релиз одного из самых популярных редакторов онтологий  4.

В качестве основных возможностей этого редактора заявляют поддержку 2, возможности прямого подключения к подсистемам логического вывода Pellet и FaCT++.

Более подробно о функциональных возможностях релиза 4 можно почитать здесь!

Загрузить релиз можно отсюда!

Скриншот релиза 4:

 Скриншот  релиза Protege 4

Использование AgentOWL

Лирическое отступление

AgentOWL - небольшая java библиотека, разработанная для поддержки RDF/ моделей для Jade агентов.

Здесь используется описание модели знаний агента(generic agent model), основанная на пяти основных элементах: Resources, Actions, Actors, Context и Events. Поддерживается обмен сообщениями в формате RDF/, включение полученной информации в модель.

Читать продолжение »

В рамках этой инициативы планируется перевести интерфейс редактора онтологий на украинский и русский языки.

Первым шагом стал перевод базового интерфейса и подготовка неофициального файла локализации на русском языке.

Подробнее

На данной странице будут публиковаться неофициальные файлы локализации для редактора онтологий  Protege.

Важно! Файлы локализации для редактора онтологий переведены добровольцами специально для сайта  SHCHERBAK.NET. Эти файлы протестированы на работоспособность c 3.4  RC1, но никаких гарантий, что файл будет у вас работать мы не даем. И самое-самое - вы используете все на свой страх и риск, осознавая, что локализация осуществлялась не разработчиками ...

Файл локализации для базового интерфейса 3.4  RC1 (на русском языке):

Скачать

Скачать архив

Скриншот руссифицированного интерфейса  3.4  RC1:

rus_protege_shcherbak_net

Процедура установки файла локализации:

1. В папке, где установлен  , найдите файл  protege_text.properties и сделайте его резервную копию!

2. Замените файл protege_text.properties скачанным с сайта SHCHERBAK.NET

3.  Запустите .


Замечания к переводу оставляйте в комментариях!

Среди планов - локализация интерфейса на украинском языке и, есстественно, плагины...

Захотите добавить сюда свой файл локализации для плагинов или , пишите...(адрес в контактах)

JADE и Semantic Web

Направление мультиагентных систем (МАС) возникло на стыке различных направлений, таких как искусственный интеллект, параллельное программирование, Интернет коммуникации, и в настоящее время стремительно развивается. МАС строятся из множества взаимодействующих агентов (зачастую представляющих собой полноценные интеллектуальные системы), совместно решающих поставленную задачу в распределенных средах.
Основным элементом программного агента системы, дающим ему возможность принимать решения, планировать действия, взаимодействовать с другими агентами, является онтологическая база знаний, содержащая модели концептуальных понятий, отношений предметной области и правила для анализа и ситуативной ориентации.
Программные агенты должны сыграть ведущую роль в Semantic Web. Однако пока большинство проектов посвященных МАС находятся на исследовательской стадии.
Можно найти и проекты, которые объявляют о готовности использования агентов в коммерческих целях. Такой пример можно посмотреть на сайте проекта Magenta.
«Magenta Toolkit многократно применялся для решения широкого спектра задач планирования и распределения ресурсов, а также для разработки Интернет-приложений, основанных на концепциях Web 3.0 и Semantic Web.»
Там же можно попросить Magenta Toolkit «в академических научно-исследовательских и образовательных целях». Кстати, планирую это сделать=))) Интересно посмотреть.
Среди других проектов можно выделить  наиболее популряный - JADE. Проект JADE идет по пути разработки фреймворка для построения МАС.
Основной упор делается на специфические аспекты взаимодействия агентов, такие как обмен сообщениями, кодировка и парсинг, жизненный цикл агентов и т.д.
А как же Semantic Web?
Semantic Web для агента - отличнейшее поле для деятельности.
А вот если проект SW? Нужны ли ему на данном этапе агенты(вообще агенты и агенты jade в частности)? Тут, конечно, все зависит от специфики приложения. Выбор агентного подхода должен быть четко обоснован при рассмотрении других альтернатив.

Что говорит википедия:

"Multi-agent systems are applied in the real world to graphical applications such as computer games. Agent systems have been used in films.They are also used for coordinated defence systems. Other applications include transportation, logistics, graphics, GIS as well as in many other fields. It is widely being advocated for use in networking and mobile technologies, to achieve automatic and dynamic load balancing, high scalability, and self-healing networks."

Т.е. последнее замечание в некоторой степени касается и SW.  И я бы сказала, есть некоторый акцент на слове "advocated".

Что же предосталяет JADE(конкретно из того что могло бы быть полезно для приложений SW):

1)поддержка онтологий(jade.content package), которые агенты могут использовать для обмена сообщениями. Можно создать онтологию в Protégé а потом Beangenerator автоматически создаст " definition class and the predicates, agent actions and concepts classes".

Beangenerator здесь. Написано что работает для 3.2.1 и след версий. Для -онтологий с багами:). Для 4 вроде не работает(по крайней мере у меня), а хотелось бы

2)есть интеграция с Jess - агенту можно прикрутить логический вывод

3) есть RDFCodec и AgentOWL

4) Простой пример использование jade  для выполнения простых SPARQL-запросов к http://dbpedia.org/sparql можно посмотреть тут.

Из примера видно, что jade по сути ничего для SPARQL и не предоставляет. А может, это и не надо? Для этого есть Jena к примеру.

5) JADE-агента достаточно легко развернуть как web-service(WSIG add-on)

6) Отдельным плюсом jade является интеграция с jsp(лучше бы конечно jsf:) При этом агент контролирует все запросы к странице.

Что еще хотелось бы, так это веб-интерфейс мониторинга и управления агентами.


надеюсь, эта информация будет вам полезной=)

немного об авторе review здесь

«Живые» проекты Semantic Web на SourceForge!

JeromeDL [Semantic Digital Library] – семантическая электронная библиотека, основанная на технологиях Semantic Web (MarcOnt, FOAFRealm  и HyperCuP). Для развертывания JeromeDL  необходимо установить Java 2 EE.

Последнее обновление этого проекта – 20 июня 2008 г.

OWLAPI - JAVA-интерфейс для обработки web-онтологий на языке .  Поддерживаются версии языка – 1.0, 1.1, 2.0. OWLAPI может использоваться как машина логического вывода в приложениях Java.
Последнее обновление – 17 апреля 2008г.

Docgen -  плагин для редактора онтологий Protégé для быстрого экспорта содержимого онтологии в различные форматы (html, pdf, fo...).
Последнее обновление – 25 февраля 2008г.

OntoBridge – библиотека  классов  Java для легкого управления онтологиями. OntoBridge основан на Jena, работает с локальными/удаленными онтологиями , поддержживает логический вывод с помощью Pellet/DIG.
Последнее обновление – 7 марта 2008г.

DODDLE-OWL – средство разработки онтологий для Semantic Web. DODDLE- позволяет работать с существующими онтологиями. Главной особенностью данного проекта является возможность полуавтоматического построения таксономии онтологии на основе документов!
Последнее обновление – 4 ноября 2008г.

JOFS -  проект нацеленный на разработку -онтологии для хранения мета-информации о файлах и документах! В рамках проекта также разрабатывается расширяемый интерфейс для управления подобной онтологией.
Последнее обновление – 8 июня 2008г.

ORE ( Rule Editor) – платформо-независимое  приложение для управления логическим выводом.  В рамках проекта разрабатывается как прикладной интерфейс для написания своих приложений, так и GUI для тестирования правил.
Последнее обновление – 8 ноября 2008г.

oBrowse -  web- базированное приложение для просмотра онтологий на языке . Для отображения онтологий используется древовидное представление. Для разработки oBrowse использовались средства -API и JSF.
Последнее обновление – 26 января 2008г.