Программирование портала

Аналитический обзор средств и языков описания интеллектуальных порталов. Устройство и особенности языка технологии OSTIS, результаты ее анализа. Разработка предметно-ориентированного языка проектирования интеллектуальных порталов. Описание пример модели.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 08.11.2015
Размер файла 2,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Оглавление

  • Обозначения и сокращения
  • Введение
  • Глава 1. Аналитический обзор средств и языков описания интеллектуальных порталов
  • 1.1 Интеллектуальные порталы
  • 1.1.1 Понятие интеллектуального портала
  • 1.1.2 Компоненты интеллектуального портала
  • 1.2 Анализ традиционных способов представления знаний
  • 1.3 Понятие предметно-ориентированного языка
  • 1.4 Обзор существующих предметно-ориентированных языков для web-приложений
  • Глава 2. Анализ технологии OSTIS
  • 2.1 Требования к разрабатываемому языку
  • 2.2 Устройство и особенности языка технологии OSTIS
  • 2.3 SCg - язык
  • 2.3.1 SCg-код первого уровня (SCg-ядро)
  • 2.3.2 SCg-код второго уровня
  • 2.3.3 SCg-код третьего уровня
  • 2.3.4 SCg-код четвертого уровня
  • 2.4 Создание метаструктур языка
  • 2.5 Обоснование выбора DSM-платформы
  • 2.6 Рекомендации по усовершенствованию языка описания интеллектуальных порталов
  • 2.7 Результаты анализа технологии OSTIS
  • Глава 3. Разработка предметно-ориентированного языка проектирования интеллектуальных порталов
  • 3.1 Общецелевая метамодель языка описания структуры интеллектуального портала
  • 3.2 Метамодель языка проектирования интеллектуальных порталов
  • 3.3 Пример модели интеллектуального портала
  • Заключение
  • Библиографический список
  • Приложения

Обозначения и сокращения

1. OSTIS - Open Semantic Technology for Intellectual.

2. SC - Semantic Code.

3. KBE - Knowledge Based Editor.

4. DSL - Domain-SpecificLanguage.

5. XML - eXtensible Markup Language.

6. RDF - Resource Description Framework.

Введение

Увеличение объемов информации в сети Интернет привело к необходимости структуризации и систематизации этой информации, с целью облегчения ее дальнейшей обработки. Широкое развитие таких понятий, как искусственный интеллект, интеллектуальные системы, семантические сети послужило росту интереса среди разработчиков к изучению новых технологий, направленных на повышение эффективности информационного обеспечения различных видов деятельности. В 2001 году Тим Бернерс-Ли - изобретатель URI, URL, HTML, HTTP вместе с единомышленниками выпустили статью "Будущее веб - за семантикой" [20], где предлагалась идея выражения информации в форме, понятной как человеку, так и машине-обработчику. Данная статья положила начало развития проекту SemanticWeb, направленному на создание универсальных средств обработки семантически структурированных знаний. Поэтому современное состояние развития Интернета невозможно представить без разработки средств, направленных на осмысление информации (интеллектуальный поиск, аналитика "больших данных", структуризация электронных документов). В настоящее время проект разрабатывается консорциумом W3C совместно с большим количеством исследователей, ученых и промышленных партнеров [4]. Поэтому исследование и попытка решения вопроса интеллектуализации веб-структур актуальны в контексте развития Интернета.

Разработчики нуждаются в средствах описания таких сложных структур данных, как интеллектуальные системы и, в частности, интеллектуальные порталы. В данном исследовании в качестве такого средства предлагается использовать предметно-ориентированный подход, ввиду того, что предметно-ориентированные языки (DomainSpecificLanguages, DSL) - языки, напрямую связанные с предметной областью, в которой работает пользователь, которые могут быть созданы для повышения удобства разработки и сопровождения различных видов программного обеспечения, в том числе и информационных порталов. Они являются доступными для применения непрофессиональными пользователями в узких предметных областях посредством того, что оперируют понятиями конкретных областей знаний.

Данное исследование основывается на работе [3], целью которой было проанализировать технологию OSTIS как средство проектирования интеллектуальных порталов и практически ознакомиться с инструментальным средством для проектирования информационных интеллектуальных порталов на основе семантических сетей KBE 0.3.0, предлагаемым разработчиками технологииOSTIS.

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

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

Объектом исследования является устройство интеллектуального портала, его архитектура. Предметом исследования является предметно-ориентированный язык как средство описания структуры интеллектуального портала.

интеллектуальный портал модель программирование

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

Для достижения поставленной цели необходимо решить следующие задачи:

1. Проанализировать существующие предметно-ориентированные языки описания web-приложений и интеллектуальных систем.

2. Проанализировать систему OSTIS и сформулировать требования к разрабатываемому языку.

3. Разработать предметно-ориентированный язык, позволяющий описать структуру и содержание интеллектуального портала.

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

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

В работе применяются такие методы, как задание синтаксиса и семантики языка проектирования интеллектуальных порталов, предметно-ориентированное моделирование. С помощью средства создания визуальных предметно-ориентированных языков Meta Language разрабатывается язык для проектирования интеллектуальных порталов.

Глава 1. Аналитический обзор средств и языков описания интеллектуальных порталов

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

Также необходимо раскрыть понятие предметно-ориентированного языка, задачи, при выполнении которых применяются различные текстовые или графические предметно-ориентированные языки. Для того, чтобы сделать вывод о рациональности применения данного метода в исследовании.

1.1 Интеллектуальные порталы

Информационные интеллектуальные порталы являются продуктом или технологией интеллектуальногоweb, изучаемой науками, объединенными в название "Искусственный интеллект". Их можно назвать следующим шагом развития Интернет-технологий. Эти понятия тесно коррелируют с такими понятиями, как Web Mining или Web Intelligence, технологиями, которые играют большую роль во многих развивающихся областях Интернета. Электронная торговля, поисковые системы, сайты, разработанные как для презентации крупных корпораций, так и для бытовых нужд человека. Эти технологии способны предоставлять пользователю возможность быстро получать доступ к интересующей его информации, показывать релевантные ссылки и генерировать списки похожих запросов, анализируя страницы прошлых действий и запросов пользователя, cookies, IP и геолокацию. Иными словами, не имея информации о пользователе, которую он должен специально указывать при регистрации, или отвечая на всплывающие окна, часто размещаемые на сайтах.

Информационные интеллектуальные порталы, такие, какими они становятся "сегодня" - явление, еще не получившее единого определения и классификации, однако существует строгая тенденция, по которой они развиваются. Данная тенденция ведет к переходу от web-сайтов с простой структурой к web-порталам, интегрирующим в себе крупную, сложноструктурированную информацию. Если классический сайт - это логический набор web-страниц, то информационный интеллектуальный портал - это тот же сайт, но имеющий при этом широкий спектр функций, накапливающий со временем некий объем знаний, а также способный самостоятельно понимать свое содержание. Сложность структуры такого портала заключается в многоуровневых информационных структурах, в которых имеют место связи не только между первичными элементами гипертекста, но и между целыми информационными структурами [4]. Эти иерархичные структуры содержат не стационарные во времени, нечеткие данные.

Однако интеллектуальная система принципиально отличается от традиционной компьютерной системы совсем не текущим объемом своих возможностей (своих знаний и умений), а способностью быстро приобретать новые знания и умения практически неограниченно по объему и многообразию. Такое расширение возможностей (обучение) интеллектуальной системы может осуществляться с помощью коллектива разработчиков, постоянно совершенствующих систему, а также самостоятельно или на основе анализа собственного опыта и имеющихся знаний и навыков, или путем добывания (извлечения) новых знаний и навыков, например, через Интернет.

1.1.1 Понятие интеллектуального портала

На данный момент не существует принятого научным сообществом определения интеллектуального портала, однако, минские исследователи Белорусского государственного университета информатики и радиоэлектроники, в частности, заведующий кафедрой Голенков В.В., приводит следующее определение: "Интеллектуальная система - это система, обладающая способностью, умением и потребностью обучаться, т.е. способностью достаточно быстро переходить от одного уровня образованности к более высокому" [5].

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

1) адаптивность - способность к развитию параллельно изменениям области знаний);

2) самообучение - способность к автоматическому накоплению опыта и применению извлеченных из него знаний;

3) умение решать задачи, основанные на нестационарных данных.

Следовательно, интеллектуальный портал - это некая интеллектуальная система, но таких систем существует огромное множество, включая экспертные системы, виртуальные собеседники, интеллектуальные поисковые системы (Wolfram|Alpha, Start, MYCIN), отличительными характеристиками интеллектуальных порталов будет являться следующее. Во-первых, они функционируют как сайты или точки доступа к информации в среде Интернет, во-вторых, пользователь извлекает информацию из них посредством браузера для web-сайта. Так, с точки зрения пользователя, портал является тематическим Интернет-ресурсом, обеспечивающим возможность поиска и просмотра информации в рамках заданной предметной области [14]. Можно выделить следующие признаки портала, как информационного ресурса:

1) эргономичный пользовательский интерфейс;

2) возможность поиска по всему информационному пространству - средства, облегчающее работу пользователя с порталом;

3) интеграция близких по тематике ресурсов, представленный в Интернет;

4) информационная поддержка пользователей.

Таким образом, ключевое понятие, рассматриваемое в данной работе - понятие интеллектуального портала описывает некоторый web-ресурс, основанный на идеологии интеллектуальных систем, то есть, является слиянием двух понятий: интеллектуальная система и web-портал. Также интеллектуальный портал можно охарактеризовать как систему, основанную на концепции использования базы знаний для генерации алгоритмов решения задач различных классов в зависимости от конкретных информационных потребностей пользователей [12].

Концепция базы знаний, о которой говорит автор, подразумевает следующие возможности:

1) интеграция новых видов знаний;

2) систематизация приобретенных знаний;

3) переход от знаний к метазнаниям.

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

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

Как было сказано выше, существует принципиальное отличие интеллектуальных систем от традиционных компьютерных систем, что требует и принципиального отличия в их внутреннем устройстве, понятие интеллектуального портала заключает в себе следующие компоненты (см. рис. 1.1.):

1) база знаний;

2) база данных используется для описания ресурсов и хранения данных;

3) модуль интеграции - средство подключения новых источников данных;

4) Web-интерфейс - средство взаимодействия конечного пользователя с базой знаний и базой данных, а также средство доступа пользователя к информационным ресурсам;

5) система поиска и основные ее элементы (понятия и ограничения).

6) редактор базы знаний;

7) редактор контента;

8) программное ядро.

Рисунок 1.1 Внутреннее устройство интеллектуального портала

Ниже будут рассмотрены более подробно основные компоненты портала, методы и способы формирования каждого из них.

1.1.2 Компоненты интеллектуального портала

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

База знаний - хранилище знаний, в некотором роде база данных, которая представляет собой структуру данных для управления знаниями, она разработана для логического вывода, обработки информации, а также непосредственного сбора, поиска и хранений знаний. Знания в базе знаний могут быть представлены с помощью различных формализмов, например, в виде онтологий или семантической сети. Голенков В.В. в работе [5] говорит, что база знаний может быть представлена результатом итерации нескольких баз знаний, что обусловлено необходимостью интеллектуальной системы не только уметь решать задачи в рамках предметной области, но и эффективно взаимодействовать с разработчиками и пользователями. Таким образом, к числу таких баз знаний могут относиться база знаний описываемой предметной области, база знаний пользовательского интерфейса, база знаний процесса коммуникации системы с внешней средой и другие. Модель базы знаний должна представлять собой двухуровневую структуру, то есть метаинформация управляет всей возможной порождаемой или изменяемой информацией базы знаний. Метаинформация информационного ресурса является представлением графовой грамматики (грамматики, порождающей размеченные графы) языка представления информации [7].

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

Итак, информационную основу портала составляет некая метаструктура или онтология, важным компонентом которой является описание понятий предметной области. Такой подход нашел отражение в технологии Protйgй, где реализовано представление объектов в виде иерархии классов, слотов, позволяющих описывать свойства и отношения между объектами этих классов. Основным преимуществом такого подхода можно назвать отделение процедурных знаний от декларативных, говорят Грибова В.В. и Клещев А.С., авторы публикации [7]. Однако это также означает, что декларативное представление знаний, то есть разработка методов решения для отдельных задач в интеллектуальных системах не является наилучшим подходом, так как он не обеспечивает четкое разделение между базой знаний и онтологией. Таким образом, Клещев А.С. утверждает, что, добившись этого разделения, формирование базы знаний будет разделено между инженерами по знаниям и экспертами, что позволит первым формировать методы сопровождения баз знаний, ориентированных на вторых, в той терминологии, на которой "специализирован" интеллектуальный портал.

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

Интеллектуальный интерфейс - важнейшая составляющая интеллектуального портала. Интеллектуализация интерфейса на сегодняшний день набирает высокие темпы развития, новые машины способны понимать человека и от него теперь требуется намного меньше усилий, чтобы получить доступ к необходимой информации. Такой интерфейс может значительно отличаться от классического, но, несмотря на это, он имеет похожий набор требований [9]:

1. поддержка взаимодействия интеллектуального портала и пользователя посредством web-браузера;

2. поддержка графического интерфейса пользователя: окна, иконки, меню, указатель (WIMP);

3. эргономичность интерфейса, адаптация к особенностям "входных" и "выходных" данных.

Пользовательский интерфейс генерируется также на основе метаинформации, и обеспечивает работу эксперта без участия инженеров. Для настройки портала на конкретного пользователя или группу пользователей в его состав должна быть включена информационная модель. В частности, модель пользователя содержит тематические предпочтения, список дополнительно подключаемых/отключаемых ресурсов, способ визуализации страниц. Интерфейс также может быть реализован посредством агентов, которые будут обрабатывать поступающие в систему события, авторы [7] считают, что данный подход значительно облегчает реализацию интерфейса.

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

Рисунок 1.2 Семантически структурированные интеллектуальные порталы

Семантические технологии web очерчивают общие рамки, позволяющие осуществлять обмен данными и их многократное использование в различных приложениях, корпорациях и даже сообществах. Семантические технологии web это эффективный способ представления данных в Интернете. Такую структуру также можно символически отождествить с базой данных, которая связана в глобальном масштабе с содержанием документов в Интернете. Причем эта связь осуществляется способом, понятным компьютерам.

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

Иллюстрация ниже (см. рис. 1.3.), показывает преимущество портала, реализованного на базе семантической сети перед классическим web-сайтом, так как семантическая сеть "видит" больше информации, чем первоначально требует пользователь, то результатом запроса окажется более широкое знание, с учетом всех релевантных запросу данных, что также доказывает эффективность использования семантических сетей.

Рисунок 1.3 Запрос пользователя

Для систем искусственного интеллекта, к которым можно отнести и интеллектуальные порталы, существует только то, что уже в них представлено или может быть представлено, поэтому в области искусственного интеллекта самым распространенным определением онтологии является определение, данное в работе [9]. Согласно этому определению, онтология является точной спецификацией концептуализации. Под концептуализацией может пониматься упрощенное представление какой-либо области знаний, то есть абстракция этой области, построение которой направлено на достижение некоторой цели. Концептуализация включает сущности, такие как объекты, понятия и другие, существующие в предметной области, а также отношения между ними.

Семантическая сеть может быть использована для представления различных видов информации, являясь результатом абстракции синтаксиса языка конкретных областей знаний, представляет собой граф или множественные графы. Поэтому некоторые задачи преобразования семантической информации в различных областях профессиональной деятельности или возникающие на стыке нескольких областей можно сформулировать в терминах преобразования семантических сетей [17]. Например, к таким задачам относится задача отображения онтологий.

В последние годы выявлен рост числа исследований, связанный с изучением онтологий, в том числе и в работах по интеллектуализации web_порталов и сайтов. Цель таких проектов, как правило, заключается в разработке новых подходов к построению пространств знаний и средств работы с ними. Некоторые рассматривают онтологию как концептуальную "семантическую" систему, определяемую как основа базы знаний. Также существует мнение о том, что онтология - словарь или спецификация некоторой области.

Под онтологией понимается информация о том, как группируются разрозненные экземпляры, определяющие определенную предметную область. Эффективность обработки документов осуществляется посредством специального инструментария, который позволяет извлечь скрытую внутри онтологии информацию [19]. Разработка web-порталов, основанных на онтологиях - популярная тема, сосредотачивающая на себе все больше внимания исследователей в последние годы. Существуют различные подходы, использующие онтологии для концептуализации web-систем, а также предлагающие автоматическую генерацию порталов по онтологиям, что позволило бы реализовать интерфейс автоматически, так же как генерируется интерфейс по схеме базы данных. Язык web_онтологий (OWL, Web Ontology Language) является языком Semantic Web, созданным для представления онтологий.

Онтологии интеллектуальных порталов описывают как предметную область, релевантные ей ресурсы, совокупность терминов и отношений, семантически значимых для данной предметной области, так и правила, позволяющие делать утверждения об элементах исследуемой области. Взаимодействие пользователя с такими порталами происходит посредством эффективных интеллектуальных средств, таких как, например, семантическая индексация, для которой описываются связи понятий или онтология предметной области. Механизм скрытого семантического индексирования (LSI - Latent Semantic Indexing) используется для того, чтобы наполнять сайт релевантным контентом, и он высоко эффективен при поисковой выдаче. Некоторые специалисты, занимающиеся продвижением сайтов, уже широко используют данный механизм, так как он позволяет систематизировать хранящиеся на сайте данные более эффективным образом благодаря скрытой семантике текста.

К семантическим технологиям также относятся:

1) глобальная схема имен (URL);

2) стандартный синтаксис описания данных (RDF);

3) стандартные способы описания свойств данных (схема RDF);

4) стандартные способы описания связей между объектами данных (Web Ontology Language).

URL - это идентификатор web-ресурса, начинающиеся с http или ftp и определяющий структуру Интернета: все, что имеет URL, считается частью данной глобальной сети. Любые объекты, схемы или модели данных семантической сети должны иметь собственный уникальный адрес (URL).

RDF - это технология, предназначенная для моделирования метаданных о ресурсах в Интернете. Данная спецификация определяет синтаксис для описания ресурсов в таком виде, который способен понять компьютер [8].

Semantic Web - технология, применяемая в качестве надстройки или расширения текущего Web, ориентированная на объединение данных из различных источников. Это основа поиска ответов на вопросы, которые возможно найти только в совокупности источников (базы знаний, инженерные системы знаний) нежели чем на отдельных ресурсах. Semantic Web позволит как машинам, так и людям искать, читать, воспринимать и использовать данные из Web для выполнения полезных задач [22].

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

1) основная идея;

2) общий принцип построения архитектуры;

3) язык;

4) способ извлечения информации пользователем;

5) средство обработки данных;

6) инструмент-исполнитель;

7) сложность реализации.

Для Semantic Web характерен такой способ представления данных, который радикально отличается от классического Web: запись информации в виде семантической сети с помощью онтологий. То есть построение концептуальных схем некоторых областей знаний. Обычно такие схемы состоят из структуры данных, содержащей все релевантные классы объектов, их связи и правила (теоремы, ограничения), принятые в этой области. Если одна система передает другой не только сами данные, но и информацию об их предметной сущности (смысле, семантике), это позволяет лучше абстрагировать обменивающиеся системы друг от друга, чем при использовании выгрузок в web-сервисах [13].

Проект OSTIS предлагает технологию близкую по идее к SemanticWeb: представление информации происходит в виде интеллектуального портала, т.е. такой логико-семантической модели, которая

1) абсолютно не зависит от каких бы то ни было вариантов технической реализации проектируемой системы, т.е. является платформенно-независимой, вплоть до возможности использования принципиально новых компьютеров;

2) предполагает достаточно простую процедуру интеграции с логико-семантическими моделями других интеллектуальных систем;

3) полностью и конструктивно отображает семантику (смысл) используемых знаний и суть используемых способов решения задач.

С формальной точки зрения результатом проектирования логико-семантической модели любой интеллектуальной системы является текст, включающий в себя:

1) исходный текст базы знаний;

2) исходные тексты программ, описывающих различные операции обработки знаний, т.е. поведение агентов, осуществляющих обработку общей базы знаний;

3) текст документации (исходный текст базы знаний help-системы, обеспечивающей всестороннее информационное обслуживание пользователей).

Таким образом, выявленные различия в сравниваемых технологиях описаны ниже (См. таблицу 1.1.).

Таблица 1.1. Сравнение технологий OSTIS и SemanticWeb

Semantic Web

OSTIS

Основная идея

Снабжение Интернет-страниц описаниями, которые понятны как человеку, так и компьютеру

Хранение в виде в виде графа, реализованного в Интернет-пространстве)

Общий принцип архитектуры

Сеть сайтов, использующих гиперссылки для переходов от страницы к странице

Сеть релевантных классов страниц (sc-графы), представленные посредством web-интерфейса

Язык

RDF

Семантические сети, построенные при помощи sc_кода

Способ извлечения информации пользователем

Браузердля web-сайта

Интеллектуальный портал, "умеющий" самообучаться (IMS. OSTIS)

Средство обработки данных

Онтология

Семантическая сеть

Инструмент-исполнитель

Агенты, использующие онтологии как базы знаний

Механизм логического вывода

Сложность реализации

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

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

Также важной отличительной чертой является то, что OSTIS в отличие от технологий SemanticWeb акцентирует внимание на разработку семантически совместимых абстрактных моделей интеллектуальных систем, абсолютно не зависящих от каких бы то ни было платформ (в том числе, от Интернет-ориентированных платформ и от новых интеллектуальных компьютеров) [8].

1.2 Анализ традиционных способов представления знаний

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

1) текстовое представление информации на формальных или естественных языках;

2) табличное представление информации;

3) формульное представление информации;

4) графическое представление информации.

Очевидно, что графическое представление информации для человека является самым полным, так как с помощью него можно увидеть не только структурные элементы некоторой области знаний, но также процессы и связи, имеющиеся между ними. Ниже рассмотрены традиционные способы представления знаний.

Термин "семантическая сеть" используется для описания метода представления знания, основанного на сетевой структуре [11]. Этот метод является одним из наиболее эффективных методов хранения знаний. Семантические сети состоят из узлов и дуг, их соединяющих. Иными словами, семантическая сеть отображает совокупность объектов предметной области и отношений между ними. При этом объектам соответствуют вершины сети, а отношениям - соединяющие их дуги. В семантическую сеть включаются только те объекты предметной области, которые необходимы для решения прикладных задач. В качестве объектов могут выступать события, действия, обобщенные понятия или свойства объектов. Вершины сети соединяются дугой, если соответствующие объекты предметной области находятся в каком-либо отношении.

Достоинства семантических сетей:

выразительность и наглядность, графическое отображение области знаний;

структура системы знаний близка к структуре выражений естественного языка.

Недостатки семантических сетей:

семантическая сеть не дает ясного представления о структуре предметной области, на которой она "специализируется", что приводит к затруднениям в изменении модели;

обработка семантической сети требует наличия специального аппарата формального вывода;

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

Ниже приведен пример базы знаний, реализованной на базе технологии OSTIS (см. рис. 1.4.).

Рисунок 1.4 База знаний, спроектированная на основе технологии OSTIS

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

К преимуществам фреймовых моделей можно отнести организацию знаний, основанную на принципе наследования, что позволяет совершать анализ при экономном расходе памяти и абстрагировании от ряда деталей. Также посредством фреймовой модели возможна реализация знаний любой предметной области.

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

1.3 Понятие предметно-ориентированного языка

Предметно-ориентированный язык (Domain Specific Language, DSL) - это язык программирования или моделирования, созданный для использования в рамках конкретной предметной области. С такими языками мы встречаемся практически каждый день: SQL, shell-скрипты, языки описания пользовательского интерфейса - это все примеры предметно-ориентированных языков, поскольку они создавались для решения определенных задач в некоторой конкретной предметной области [15].

При выборе инструментов решения какой-либо задачи перед разработчиками или инженерами встает два варианта: использовать универсальное средство, либо применить специализированные средства и инструменты, выбрать нестандартный подход. Общие подходы и универсальные инструменты рассчитаны на решение множества типовых задач, и потому, как правило, они не являются оптимальными в случае, если стоящая перед разработчиками задача является нестандартной и имеет много уникальных особенностей. Специализированные средства и инструменты ориентированы на конкретную узкую область и предоставляют средства для решения задач только этой области. Такие средства и будут эффективны для решения подобных задач. Казакова А.С. утверждает, что основными отличительными признаками предметно-ориентированного языка по сравнению с традиционными языками (например, такими, как LISP, Fortran), является "компактность самого языка и ограниченность выразительных средств рамками одной конкретной предметной области" [10]. Также автор дает собственное определение предметно-ориентированного языка: "термин предметно-ориентированный язык (Domain Specific Language, DSL) обозначает язык программирования или моделирования, применяющийся для решения конкретного круга задач в терминах, максимально приближенных к данной предметной области" [10].

В противопоставление традиционным языкам программирования, которые нацелены непосредственно на выполнение определенных функций, предметно-ориентированные языки нацелены на создание единой модели предметной области [16].

Нельзя не заметить существование огромного множество вариантов определений предметно-ориентированного языка. Предполагается, что наиболее популярным на сегодняшний день является данное Мартином Фаулером, где автор определяет предметно-ориентированный язык как "язык программирования с ограниченными выразительными возможностями, ориентированный на некую конкретную предметную область" [18].

Бобровикова О.И. [1] предлагает архитектуру предметно-ориентированного языка в следующей форме (см. рис. 1.5.):

Рисунок 1.5 Архитектура предметно-ориентированного языка

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

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

1.4 Обзор существующих предметно-ориентированных языков для web-приложений

Существуют различные способы проектирования динамичных web-приложений, различного уровня сложности посредством технологии HTML5. Такие приложения могут быть основаны как на front-end языках (JavaScript, Node. js, jQuery), так и на предметно-ориентированных языках с генерацией года.

Ниже приведен обзор некоторых реализаций таких предметно-ориентированных языков: PULP, WebDSL, WebLang. Это позволит проанализировать возможности и методы их реализации.

1. PULP - DSL для игровых мобильных HTML5 приложений, помогающий абстрагироваться от недостатков JavaScript, машин, обладающих внутренними состояниями и достичь кросс-платформенного воспроизведения, которое генерируется в ходе трансформации.

Разработчики интерактивного контента и приложений для мобильных устройств сталкиваются с огромным многообразием платформ (iOS, Google Android Platforms, WebOS, Windows Mobile и многие другие), поэтому выбор платформы может быть затруднительным. В исследовании [22] говорится о тенденции использования HTML5, открывающей новые возможности поддержки мобильных устройств в web-приложениях, посредством стандартизации способов использования общих технологий для различных устройств и поддержкой языка разметки, использующего стандартный синтаксис. Предметно-ориентированный язык PULP нацелен на решение вопроса: "Как можно реализовывать интерактивный контент (в частности, поддержку движения пальцев по сенсорной поверхности) в web для следующего поколения платформ, при поддержке моделирования предметно-ориентированного языка для конечных пользователей приложений с быстро осуществляемыми этапами разработки". Основу языка или структурный скелет составляют изображения и медиа-файлы, на основе которых в последствии генерируется работающее приложение.

PULP - текстовый DSL, что позволяет разработчикам осуществлять больший контроль над структурой приложения, рабочим пространством взаимодействия и автоматизированное управление версиями. Генерация кода упрощает и ускоряет этапы разработки, путем быстрого создания соответствующихHTML и JavaScript. Сгенерированные артефакты транслируют пользовательский интерфейс элемента и добавляют новые возможности взаимодействия.

По мнению авторов [22], основным преимуществом технологии быстрого визуального прототипирования, основанной на графических объектах, является то, что она позволяет разработчикам фокусироваться на исполняемых графических объектах, которые структурируют опыт взаимодействия с пользователем, исключая создание предопределенных элементов интерфейса.

2. WebDSL - DSL, применяемый для моделей с большими данными, состоит из меньших базовых подъязыков, включающих конструкции по определению сущностей, страниц и бизнес-логики [23]. Базовым расширением языка является модуль, в котором представлены абстракции более высокого уровня, контроль доступа и основные рабочие процессы. На рисунке 1.6 представлен пример программы описанной на WebDSL.

3. WebLang - DSL, который обеспечивает простой общедоступный метод проектирования архитектуры web-приложений, подходящий для генерации тестируемого прототипа [20]. По мнению авторов, данный метод способен уменьшить разрыв между UML моделированием и реализацией. Процесс разработки данного языка предполагает MDD подход, а синтаксис языка максимально приближен к естественной человеческой речи (в отличие от, например, XML). Данный инструмент интегрирован в IBMEclipseIPE и в данный момент доступен для платформы J2EEJBoss. Однако и другие сервисы и технологии позволяют реализовывать данный метод, предполагая лишь расширение числа шаблонов и проектирование и интеграцию новых модулей.

Инструменты WebLang симулируют и исполняют модель, после чего одним неделимым действием генерируют приложение. Авторы в работе [20] ожидают, что генерация целостного приложения преимущественна в использовании, нежели генерация приложения по фрагментам. Это объясняется тем, что все генерируемые файлы стандартны и могут быть легко модифицированы разработчиками, а само приложение определяется централизованной и уникальной моделью.

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

Рисунок 1.6. Пример программы, описанной на WebDSL

На основе сделанного анализа, можно сказать, что языки более гибкие по сравнению с существующими графическими редакторами, легко модифицируемы и расширяемы.

Глава 2. Анализ технологии OSTIS

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

Ранее в работе была описана семантическая технология проектирования интеллектуальных порталов OSTIS, в ходе описания были выявлены особенности технологии, а также ряд причин (которые были перечислены выше), объясняющих, почему данная технология актуальна и заслуживает внимания. В том числе структурированное представление знаний, совместимость языковых средств с принципами построения интеллектуальных систем, ориентация на абстрагирование от особенностей, связанных с процессом разработки и внедрения интеллектуальных систем. И хотя, заинтересованные исследователи, работающие в рамках проекта OSTIS, нацелены на создание массовой технологии проектирования таких систем, им удалось решить не все вопросы проектирования интеллектуальных систем.

На основании вышеперечисленного был описан метод достижения данной цели - разработка предметно-ориентированного языка для проектирования интеллектуальных порталов. Универсального и единого способа осуществления данной задачи не было найдено. Поэтому было принято решение разбить задачу на несколько этапов:

1. Детальное изучение, анализ и описание элементов и конструкций, использующихся при проектировании баз знаний порталов на базе технологии OSTIS.

2. Выделение всех возможных метаструктур - метамножеств (множеств, элементами которых являются множества), метаотношений, структур, первичными и/или вторичными элементами которых являются знаки структур), иными словами, определить наполнение метамодели языка.

3. Построение метамодели в среде Meta Language, на основе проделанной работы. Данная метамодель будет являться описанием SC-кода, включающий в число элементов множества и переменные. SC (Semantic Code) - семантический язык представления знаний, ориентированный на описание сложно структурированных предметных областей, обеспечивающий представление логических высказываний самого различного вида и обладающий высокой степенью открытости [6].

4. Построение метамодели более высокого уровня декомпозиции, отражающей элементы языка OSTIS.

5. На основе полученной метамодели создать графическую модель описания структуры интеллектуального портала для предметной области, освещающую проекты конференций, связанные с тематикой DSM-подхода к разработке систем.

6. Проанализировав выполненную работу с пункта 1 по пункт 5, выявить и описать недостатки, присущие каждому из исследуемых в них объектов.

2.1 Требования к разрабатываемому языку

Определение требований, которым должен удовлетворять разрабатываемый язык является крайне важным этапом процесса разработки интеллектуальных порталов, так как предметно-ориентированный язык должен быть универсальным, то есть доступным при разработке интеллектуальных порталов, описывающих любые предметные области; понятным не только инженерам по знаниям, но и экспертам предметной области.

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

Более того, вышеприведенный обзор языка OSTIS выявил слабые стороны в синтаксисе и структуре языка, которые могут препятствовать дальнейшему развитию технологии. Для их преодоления были сформированы нижеперечисленные требования, соблюдение которых приведет к усовершенствованию языка.

1. Гибкость. Язык должен быть легко модифицируемым.

2. Оперирование терминами предметной области. Язык должен содержать конструкции, имеющие семантическую интерпретацию в понятиях предметной области. Данное требование направлено на обеспечение экспертам предметной области возможности без затруднений строить модели.

3. Лаконичность. Данное требование обеспечит повышение эффективности и снижение трудоемкости процесса разработки интеллектуальных порталов. Поэтому язык должен быть лишен избыточных, повторяющихся или неоднозначных элементов.

4. Интегрируемость. Разрабатываемый язык направлен не только на изучение данного метода, но также на оптимизацию технологии OSTIS, поэтому он должен быть свободно интегрирован в эту систему в качестве ее надстройки. Так, разработчики и исследователи интеллектуальных порталов смогут оценить предметно-ориентированный подход в этой области знаний.

5. Расширяемость. Это требование удовлетворяет намерению расширять и наращивать язык в дальнейшем, поскольку планируется применять данную разработку на практике.

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

2.2 Устройство и особенности языка технологии OSTIS

В рамках работы была исследована технология OSTIS, которая позволяет представлять самые различные знания в виде семантически-структурированных графов (семантических сетей), отражающих смысл этих знаний. Как и все системы в мире, она имеет как преимущества, так и недостатки.

Проект OSTIS зародился в Белоруссии. Минские разработчики с 2004 года, начали публиковать статьи и монографии, направленные на исследование применения технологий искусственного интеллекта в процессе проектирования интеллектуальных порталов. В последствие, они стали создавать массовую семантическую технологию компонентного проектирования интеллектуальных систем различного назначения, ориентированную на существенное сокращение сроков разработки подобных систем. Если говорить об OSTIS как о деятельности, то проект OSTIS является открытым и состоит из большого числа частных проектов, предоставляет полный пакет документации по всем компонентам предлагаемой технологии (включая исходные тексты соответствующих программных средств).

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

Итогом данной исследовательской работы являлась спроектированная база знаний части выбранной предметной области - SC-граф, содержащий в себе структурные единицы и связи между ними, различные по типам и назначениям. Семантическая сеть позволяет представлять сложноструктурированную информацию в виде графа, упрощать машинное кодирование посредством бинарных связок в графе. Иными словами, является основой для такого интеллектуального портала, который благодаря скрытой семантике знаний, размещенных на нем, будет "понимать" запросы пользователя и предлагать ему множество релевантной информации помимо искомого решения.

SCg-код - один из возможных способов визуального представления sc_текстов (текстовых языков или текстового семантического кода) и sc. g-графов. SCg-код является абстрактным языком, представляет собой достаточно простой компьютерный код семантических сетей. Его можно рассматривать как универсальную основу машинного кодирования знаний в памяти будущих компьютеров, ориентированных на обработку семантических сетей [5].

Основополагающим принципом, заложенным в основу SCg-кода, является то, что каждому sc-элементу в соответствие ставится sc. g-элемент (графическое отображение).

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


Подобные документы

  • Развитие корпоративных информационных порталов. Классификация порталов в сетях, преимущества, получаемые при использовании. Архитектура, структура и технологические аспекты создания порталов. Анализ характеристик информационного портала AxiomPortal.

    дипломная работа [756,9 K], добавлен 23.07.2011

  • Инструментальные средства проектирования интеллектуальных систем. Анализ традиционных языков программирования и представления знаний. Использование интегрированной инструментальной среды G2 для создания интеллектуальных систем реального времени.

    контрольная работа [548,3 K], добавлен 18.05.2019

  • Понятие портала как Intranet системы. Технологии функционирования Web-портала. Особенности и функции портала учебного заведения. Использование Web-портала в учебном процессе. Структура образовательного Intranet/Internet-портала школы № 24 г.Нефтеюганска.

    дипломная работа [3,0 M], добавлен 02.05.2012

  • Анализ видов существующих корпоративных порталов. Разработка архитектуры и структуры корпоративного портала в соответствии с требованиями. Установка и настройка программного обеспечения. Общие настройки портала, управление меню и настройка виджетов.

    дипломная работа [4,8 M], добавлен 19.01.2017

  • Обзор методов реализации алгоритмов искусственного интеллекта. Примеры интеллектуальных систем, основанных на алгоритмах самообучения и кластеризации данных. Создание общей структурной схемы. Выбор языков программирования и инструментальных средств.

    дипломная работа [1,6 M], добавлен 20.08.2017

  • Разработка клиентского приложения для информационной системы "Работа торгового склада" с помощью языка объектно-ориентированного программирования Delphi 6 и технологии InterBase Express. Описание реляционной модели данных и этапы ее проектирования.

    курсовая работа [1,0 M], добавлен 19.03.2009

  • Анализ и обзор существующих тестовых порталов. Тенденции и причины развития открытого обучения, его особенности. Контроль знаний в дистанционном обучении. Виды тестов и принципы их составления. Установка портала на сервере, инструкция по использованию.

    диссертация [4,7 M], добавлен 24.06.2015

  • Понятия языка программирования, разновидности и характеристика языков. Исторический обзор их создания и применения. Классификация, примеры использования. Характеристики языков программирования с точки зрения элементов объектной модели, их популярность.

    реферат [463,6 K], добавлен 07.09.2009

  • Понятия в области метрологии. Представление знаний в интеллектуальных системах. Методы описания нечетких знаний в интеллектуальных системах. Классификация интеллектуальных систем, их структурная организация. Нечеткие системы автоматического управления.

    курсовая работа [768,2 K], добавлен 16.02.2015

  • Особенности объектно-ориентированного проектирования. Основные понятия объектно-ориентированного подхода. Основы языка UML, варианты его использования. Диаграммы классов и взаимодействия. Разработка диаграммы прецедентов (вариантов использования).

    курсовая работа [1,1 M], добавлен 13.05.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.