Назад в библиотеку

Проектирование интеллектуальной CMS

Автор: А.В. Григорьев, Е.В. Павловский
Источник: Материалы научно-технической конференции студентов, аспирантов и молодых ученых «Информатика и компьютерные технологии – 2012».

Аннотация

А.В. Григорьев, Е.В. Павловский Рассмотрена задача разработки инструментальной системы для построения интеллектуальных САПР web-приложений как экспертных систем, в базу знаний которой вводится методика проектирования сайтов. Рассмотрен предлагаемый механизм представления знаний.

Введение

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

Таким образом, мы сталкиваемся с задачей, которая касается специфики объекта проектирования. В последнее время разработчики пытаются наделить свои программные продукты интеллектуальностью. Это могут быть подсказки пользователю в ответ на его действия, интеллектуальное поведение без уведомления пользователя, которое базируется на ранее полученных данных от него (корректировка действий) и т.д. Программные продукты наделяются функциями, которые присущи экспертным системам [1]. Для данной предметной области существуют системы управления содержимым CMS (от англ. Content Management System) [2].

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

Таким образом, возникает необходимость внедрения в технологию разработки web-приложений системы автоматического проектирования (САПР) [3].

Постановка задачи. Предложить путь построения интеллектуальных CMS (от англ. Content Management System) [4], для построения которых нет необходимости привлекать инженеров по знаниям, а можно обеспечить возможность ее построения эксперту в предметной области, имеющему достаточно большой опыт в разработке web-приложений.

Решение задачи. В статье предложен подход к разработке инструментальной системы для построения интеллектуальных САПР. Т.е. инструментальная система строит САПР как экспертную систему, в базу знаний которой вводится методика проектирования сайтов. Он позволяет конечному пользователю синтезировать требуемый сайт по техническому заданию, которое с точки зрения продукционной базы знаний [5], рассматривается как «цель вывода».

Постановка задачи.

Бурное развитие Интернет-технологий в течении последних 10 лет обусловило рост потребности в создании Интернет-приложений. Однако разработка Web-приложений до сих пор остаётся относительно сложной задачей ввиду необходимости совместного использования множества различных информационных технологий с учётом специфических особенностей каждой из них. На сегодняшний день разработано большое количество программных комплексов, призванных решать эту задачу, автоматизируя процесс разработки. Они демонстрируют разные подходы к упрощению процесса разработки, начиная от небольших вспомогательных инструментов и заканчивая большими Framework. Примечательной особенностью CMS является их направленность на низкоквалифицированных разработчиков. Таким образом, необходимо определить, в какой мере существующие CMS могут помочь пользователям различной квалификации в создании Интернет-сайтов определенных классов. Кроме того, необходимо исследовать возможность применения механизма онтологий для усовершенствования базовых возможностей систем управления содержимым.

Представление знаний.

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

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

Модуль знаний разбивается на подмодули [6, 7]:

  1. Внешняя граница как состав внешних параметров, данных, которые отражают связи блока с внешней средой. Это отдельное И-ИЛИ-дерево с отношениями несовместности;
  2. Внутренняя граница как состав внутренних подблоков, тоже как И-ИЛИ-дерево;
  3. Совокупность связей между подблоками по данным, тоже как И-ИЛИ-дерево.

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

Выделим в типичном сайте следующие блоки:

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

Предполагается, что данные понятия предметной области изначально известнысистеме, и они связаны с соответствующими подпрограммами. На примере приведенных выше блоков, построим И-ИЛИ-дерево (рис 1). Здесь имеются «ИЛИ» узлы – варианты декомпозиции блоков «Контент» и «Авторизации»

Рисунок 1 – Модель уравнения Ван дер Поля в системе МВТУ

Рисунок 1. БЗ в виде И-ИЛИ дерева (первый уровень)

Процесс логического вывода.

В процессе вывода в рамках подмодуля знаний система вывода движется в некотором порядке по всем ИЛИ-узлам. Выбрав какой-то ИЛИ-узел, система вывода делает из него вопрос, предлагая ряд вариантов ответов. Например, пользователь выбирает один из вариантов ответа на вопрос: «Имеет ли место блок В?». После ответа система по отношениям несовместимости в ИЛИ-дереве удаляет в других ИЛИ-узлах те альтернативы, которые несовместимы с наличием нужного блока. Таким образом, построенный САПР как экспертная система позволяет конечному пользователю синтезировать требуемый САПР по техническому заданию.

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

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

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

Инженером по знаниям является эксперт предметной области средней квалификации, который не может описать продукции явным образом, но может построить И-ИЛИ-дерево и задать отношение несовместности, таким образом описать продукции неявно.

Выводы

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

Полученные результаты дают возможность перейти к следующему этапу проектирования экспертной системы, а именно – к рассмотрению методов извлечения знаний из эксперта.

Перечень источников

[1] Джаратано Джозеф Экспертные системы: принципы разработки и программирование, 4–е издание.: Пер. с англ. / Джарратано Джозеф, Райли Гари – М.: Издательский дом «Вильямс», 2007. – 1152с.
[2] Горнаков С. Г. Осваиваем популярные системы управления сайтом (CMS) / С. Горнаков. – М.: ДМК Пресс, 2009. – 336 с.
[3] Ли К. Основы САПР (CAD/ CAM/CAE). – СПб.: Питер, 2004. – 560 с.
[4] Горнаков С. Г. Осваиваем популярные системы управления сайтом (CMS) / С. Горнаков. – М.: ДМК Пресс, 2009. – 336 с.
[5] Братко И. Программирование на языке Пролог для искусственного интеллекта: Пер. с англ. – М.: Мир, 1990. – 560 с.
[6] Григорьев А.В. Пути создания интеллектуальных САПР при различных уровнях квалификации экспертов / А.В. Григорьев // Научно-теоретический журнал «Искусственный интеллект». – 2005. - №3. – С. 758–763.
[7] Григорьев А.В. Комплекс моделей САПР как система взаимосвязанных уровней знаний о действительности // Научные труды Донецкого государственного университета: Серия «Информатика, кибернетика и вычислительная техника». – Донецк: ДонГТУ. – 2000. – Вып. 10. – С. 155-167.