ПРОГРАММНОЕ СРЕДСТВО ВЗАИМОДЕЙСТВИЯ С БАЗОЙ ДАННЫХ ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ1
Е.А. Чернецова, к.т.н. (Российский государственный гидрометеорологический университет,
г. Санкт-Петербург, chernetsova@1ist.ru)
Предложена информационная система взаимодействия с базой данных ГИС. Она представляет собой сетевое приложение и позволяет получать доступ к спутниковой мониторинговой информации многим пользователям, которые могут анализировать изображения и сохранять результаты анализа для эффективного и быстрого обнаружения объектов. Предлагаемая информационная система имеет программную реализацию.
Ключевые слова: геоинформационная система, информационная система взаимодействия, база данных, РСА-изображение, сетевое приложение.
Основным источником информации о состоянии протяженного объекта мониторинга (водной поверхности, поверхности суши) являются радиолокационные снимки, получаемые со спутников Земли, оснащенных радиолокационными станциями с синтезированной апертурой (РСА). Накопленные РСА-изображения хранятся в БД геоинформационной системы (ГИС). Автором разработан программный продукт, позволяющий осуществлять доступ к хранящимся в архиве БД ГИС файлам в режиме реального времени одновременно большому количеству пользователей, то есть сетевое (Web) приложение, которое
• обеспечивает возможность предварительного просмотра РСА-изображения, формируя графический файл из спутниковых данных;
• реализует функции, позволяющие аннотировать изображения, отмечая интересующие области и добавляя комментарии, а также стстему поддержки ключевых слов, которая дает возможность проводить гибкую категоризацию всех изображений;
• обеспечивает необходимый уровень информационной безопасности с помощью разделения прав пользователей и системы авторизации.
Разработанное приложение содержит три уровня: пользовательский интерфейс на клиентском браузере, веб-приложение и сервер БД.
На рисунке 1 показаны подмножества действий, доступных пользователям с различным уровнем доступа при работе с информационной системой. Блок 1 содержит модуль 5, доступный без авторизации. Любой посетитель сайта может просматривать информационные сведения о нем и краткий обзор проекта. Модули 3 и 4 схемы детализации второго уровня в модулях блока 1 отсутствуют.
В случае авторизации с правами клиента пользователь получает доступ к блоку 2. Он может просматривать список доступных изображений (6), осуществлять поиск по архиву (7), просматривать от-
дельное изображение (9), отмечать на нем аномалии (11), добавлять комментарии (13), ключевые слова (12), формировать изображение из N1 -файла для новых снимков (10), просматривать и редактировать свой профайл (8).
Авторизация с правами администратора дает пользователю доступ к блоку 3. В этом случае он приобретает все права блока 2 и дополнительно может редактировать профайлы всех пользователей (14), добавлять или удалять ключевые слова (15), редактировать или удалять комментарии к изображениям (16), просматривать служебную информацию по таблицам (17), а также выбирать
Авторизованным пользователь
f Блок 2 Все авторизованные пользователи
Просмотр списка изображений Visat/index
7
Поиск Search/index
Профайл пользователя Users/show Добавление отметок на изображении Selections/add
9 2 0
Просмотр изображения Image/index Добавление ключевых слов Tags/edit
0 13
Формирование предварительного просмотра Image/quicklook Добавление комментариев Notes/add
Информационная
страница Application/about
/БлокЗ
Администраторы системы
Работа с пользователями Users/index
комментариями Notes/edit
Выбор модулей Admin/settings
15
Работа с ключевыми словами Tags/index
Просмотр служебной информации Admin/index
Рис. 1. Схема взаимодействия модулей информационной системы
Работа с
17
текущий модуль формирования предварительных изображений (18).
Разработанная программная система имеет также встроенное средство обработки ошибок, которому передается управление при недостаточном уровне пользователя при попытке доступа к страницам с более высоким уровнем доступа, ошибках авторизации, выполнения запросов и др. При этом обрабатывается модуль отображения ошибок, предлагая варианты исправления ситуации.
Системные требования для работы приложения следующие. Интерфейс реализован с помощью языка HTML с поддержкой JavaScript и Dynamic HTML на основе шаблонов, так как HTML представляет собой средство организации интерактивного диалога конечного пользователя и уровней системы. JavaScript в совокупности c DHTML придает веб-странице динамики. Для разработки универсального веб-приложения взят язык программирования Ruby 1.8 с применением технологии Rails 2.0 [1], поддерживающий практически все используемые СУБД. В качестве СУБД выбрана MySQL [2], поддерживающая стандартный язык SQL и доступная для бесплатного использования, что позволяет выполнять все виды запросов (выборку, обновление, удаление).
Web -приложение предоставляет следующую выходную информацию: РСА-изображение в режиме предварительного просмотра (quicklook-файл), дату съемки, краткое описание, имя файла; комментарии к изображению; отмеченные на изображении области; ключевые слова.
Входными данными приложения являются РСА-изображения в виде файлов формата N1, ежедневно поступающие на сервер из роллинг-архивов. Разрабатываемое приложение предоставляет возможность предварительного просмотра только для точного и среднего разрешения изображений в режиме альтернативной поляризации (APP, APM), точных изображений в стандартном режиме (IMP) и широкополосных изображений в среднем разрешении (WSM). В разработанном приложении реализована возможность предварительного просмотра N1 -файла. Эта операция предполагает получение графического файла любого формата, поддерживаемого браузером, например JPEG или TIFF. Данная задача является технологически сложной и практически не реализуется в индивидуальном проектировании, поэтому при ее решении был использован существующий модуль обработки спутниковых изображений BEST (Basic Envisat SAR Toolbox), доступный для работы со спутниковой информацией на веб-ресурсе Европейского космического агентства (ЕКА) [3]. Модуль BEST обеспечивает получение предварительного изображения полностью в автономном режиме. BEST - это набор инструментов, разработанный ЕКА специально для обработки данных радаров с синтезированной апертурой.
BEST имеет расширенную поддержку командной строки и удобный графический интерфейс. При запуске приложения через командную строку используется только один входной параметр - путь к конфигурационному файлу. Такой файл содержит ряд секций и параметров, описывающих шаги обработки до получения конечного продукта. Все параметры подробно описаны в документации к инструментарию BEST. Тестирование обоих модулей показало, что изображение, получаемое с помощью BEST, более наглядно за счет возможности детрендирования. Однако технологическая цепочка получается довольно длинной и весь процесс занимает значительное время (зависит от размера РСА-изображения). Модуль BEAM обладает меньшим количеством настроек и не имеет возможности удаления тренда по яркости, однако его очевидными преимуществами являются простота использования и малое время подготовки изображения. Таким образом, на выбор модуля накладывают ограничения требования по производительности. При достаточных вычислительных мощностях сервера рекомендуется использовать инструментарий BEST, что позволит получать качественные quicklook-изображения. При дефиците системных ресурсов стоит сделать выбор в пользу модуля BEAM. При этом quicklook-изображения будут немного худшего качества, но время выполнения существенно меньше.
В разработанной информационной системе реализована поддержка обоих модулей с возможностью выбора текущего системным администратором.
В БД хранятся данные, необходимые для предоставления отчетности и функционирования приложения. MySQL - это реляционная БД. Она доступна для бесплатного использования, что позволяет сократить расходы на первичную установку и обновление системы. MySQL обладает развитыми возможностями масштабирования и администрирования. Пользователю не понадобится специально обученный администратор БД для ее поддержки и установки. Установка СУБД занимает несколько минут на копирование файлов и 55 Мб дискового пространства. В процессе инсталляции предлагается сконфигурировать СУБД под конкретные задачи пользователя, установить пароль и протокол доступа.
Сервер БД будет связывать приложение клиента на первом уровне, шаблоны и сценарии на промежуточном (втором) уровне и БД на третьем уровне. Наиболее распространены веб-серверы Apache, Microsoft Internet Information Services (IIS), Lighttpd. Поскольку сервер Apache поставляется в варианте открытого кода, он является бесплатным, а по функциональности не уступает IIS, его использование более предпочтительно, однако необходимо отметить, что язык Ruby и СУБД MySQL одинаково работают на Apache и IIS, поэтому вы-
бор веб-сервера также определяется особенностью хостинг-провайдера.
Операционная система (ОС) - это среда, в которой будут функционировать весь промежуточный уровень и БД. Наиболее распространенными являются серверные системы семейства Windows (2008 Server и др.) и Unix-подобные системы (Solaris, Linux и др.). Считается, что системы семейства Unix (традиционные для мощных серверов) имеют более высокую производительность и более защищены от несанкционированного вторжения. Однако требования к квалификации специалиста, обслуживающего такие ОС, очень высоки, что увеличивает стоимость содержания сервера. Правильно настроенная система на базе MS Windows Server не уступает, а порой и превышает по уровню безопасности Unix-систему, являясь при этом широко распространенной системой, знакомой большому количеству ТТ-специалистов.
В конечном счете использование той или иной ОС обусловливается хостинг-провайдером, предоставляющим платформу для сайта.
Разработанная информационная система содержит три уровня детализации процесса обработки информации. На первом уровне детализации при запросе пользователем страницы определяется контроллер, содержащий необходимое действие. Далее поступивший запрос обрабатывается контроллером, который при необходимости обращается к модели для получения данных и передает обработанные данные в представление для генерации HTML-страницы. Представление состоит из HTML -текста со вставками кода Ruby. Код обрамляется в специальные теги, которые при генерации страницы переводятся также в HTML-текст. Готовая страница затем выводится пользователю.
На втором уровне детализации процесса обработки информации при получении запроса контроллер проверяет уровень доступа текущего пользователя и возвращает его на предыдущую страницу, выводя предупреждение, если прав на выполнение действия недостаточно. Если же
Рис. 2. Модель данных информационной системы
пользователь обладает правами на выполнение действия, контроллер проверяет входные параметры, полученные из формы или t/KL-запроса, и обращается к модели (рис. 2). На следующем шаге с полученными данными выполняются необходимые действия, после чего результат передается в представление. Полученная от представления HTML-страница выводится пользователю. На третьем уровне детализации разрабатываются схемы взаимодействия программных модулей.
В заключение следует отметить, что разработанное веб-приложение позволяет более оперативно выявлять случаи аномалий в зоне ответственности системы мониторинга. Оно также упрощает труд специалистов по обработке спутниковых данных, позволяя легко отыскивать необходимые изображения, не прибегая к помощи специализированного программного обеспечения.
Литература
1. URL:http://rubyonrails.org (дата обращения:19.01.2009).
2. Кириллов В.В. Основы проектирования реляционных баз данных: учеб. пособие. СПб: ИТМО, 1994. 90 с.
3. URL: http://earth.esa.int (дата обращения: 19.01.2009).
АРХИТЕКТУРА ИНТЕГРИРОВАННОМ СИСТЕМЫ ПРОЕКТИРОВАНИЯ СИТУАЦИОННОГО АГЕНТНОГО МОДЕЛИРОВАНИЯ
А.А. Суконщиков, к.т.н.; К.А.Суконщиков
(Вологодский государственный технический университет, avt@pstu.edu.ru)
В статье рассматриваются вопросы построения интегрированной системы проектирования ситуационного агентного моделирования. Модели агентов позволяют провести исследование различных ситуаций, которые возникают в сложной динамической системе. Все модели агентов выполнены на базе единого математического аппарата -интегрированных атрибутных сетей Петри, которые включают в себя такие расширения, как нечеткие сети Петри, предикатно-переходные сети, нейронные сети Петри.
Ключевые слова: ситуационное моделирование, многоагентная интеллектуальная система, аппарат сетей Петри, модели агентов.
При настройке оборудования сложных корпоративных сетей с поддержкой качества обслужи-
вания возникает проблема поведения сети в различных нештатных ситуациях. Для ее решения