Скачать 125.04 Kb.
|
Математическое моделирование функционирования кластерных и распределенных систем распознаванияРаспознавание представляет собой задачу преобразования входной информации, в качестве которой уместно рассматривать некоторые параметры, признаки распознаваемых объектов, в выходную, представляющую собой заключение о том к какому классу объектов принадлежит распознаваемый объект. Важнейшей характеристикой принимаемых в процессе распознавания решений и основным показателем качества распознавания является достоверность. В Рис.1 Структурная схема многоуровневой системы распознавания.[1] многоуровневых системах распознавания апостериорная информация о признаках определяется на основе косвенных измерений. Для таких измерений используются специализированные локальные системы распознавания. По данным технических средств Т1,...Тр,...Tn определяются признаки x11,...,xk1;xp1,...,xlp;x1n,...,xmn (первичные признаки), которые используются локальными системами распознавания для определения признаков более высокого ровня, которые, в свою очередь, используются в процессе распознавания неизвестных объектов. (Рис.1) [1] Первым этапом при использовании каскадной системы моделирования физических процессов является выявление принадлежности объекта моделирования одному (или нескольким) классу объектов моделирования, из множества классов заложенных в систему. Далее следует оптимизация типовой модели класса. Задание свойств среды. И как результат – получение математической модели объекта. В случае, если объект не может быть соотнесен ни с одним из заложенных классов, производится обучение системы. Математическая модель получается интерполяцией математической модели объекта, наиболее сходного по свойствам исследуемому. Однако, в этом случае возможно потребуется вмешательство оператора. Далее – производится, собственно, моделирование. Инициализация класса и переменных среды, задание граничных условий и вычисление состояний системы. После этого производится оценка результатов моделирования. Так же заданная (или интерполированная) в зависимости от определенного класса объекта. Очевидно, что точность моделирования напрямую зависит от точности определения класса объекта моделирования и, в случае самообучения, от алгоритмов интерполяции. Вполне резонно предположить что обработка данных локальными системами распознавания происходит не единовременно и в целях повышения производительности следует разделить задачи распознавания между наименее загруженными локальными системами распознавания. Для распределения нагрузки применяются как кластерные, так и распределенные вычислительные системы. Рассмотрим кластерные вычислительные системы.[2] Под кластером будем понимать группу серверов (программных или аппаратных), объединённых логически, способных обрабатывать идентичные запросы и использующихся как единый ресурс. Чаще всего серверы группируются посредством локальной сети. Группа серверов обладает большей надежностью или производительностью, чем один сервер. Кластеры повышенной производительностиОбозначаются англ. аббревиатурой HPC (High performance cluster). Позволяют увеличить скорость расчетов, разбивая задание на параллельно выполняющиеся потоки. Используются в научных исследованиях. Одна из типичных конфигураций - набор серверов с установленной на них операционной системой Linux, такую схему принято называть кластером Beowulf. Для HPC создается специальное ПО, способное эффективно распараллеливать задачу. Эффективные связи между серверами в кластере позволяют им поддерживать связь и оперативно обмениваться данными, поэтому такие кластеры хорошо приспособлены для выполнения процессов, использующих общие данные.
Пример кластера (см. рисунок 2) состоит из компьютеров, работающих на процессорах Intel® или AMD, с подключенными подсистемами TotalStorage. Для простоты соединения в кластере выполнены медным кабелем стандарта гигабитный Ethernet. Этот кабель обеспечивает хорошую скорость в большинстве случаев. Сетевая топология имеет форму звезды - все стойки подключены к основному коммутатору управляющей стойки. В примере используется три сети: одна для управления/данных (вычислительная сеть), одна для кластерной файловой системы (сеть хранения данных) и одна для администрирования устройств. Первые две сети - это обычные IP-сети. Для большинства задач, включая межпроцессные взаимодействия (например, MPI) и управление кластером, используется вычислительная сеть. Сеть хранения данных используется исключительно для доступа и взаимодействия с кластерной файловой системой.
Ethernet-коммутаторы Имеется две физических сети: одна для вычислений, а вторая для хранения данных. Стандартная емкость стойки в 32 узла требует применения двух 48-портовых коммутаторов на каждую стойку, по одному на каждую сеть. В маленьких кластерах в управляющей стойке также необходимо использовать два одинаковых коммутатора. Для больших кластеров 48-портов может оказаться недостаточно, и может потребоваться более мощный центральный коммутатор. Терминальные серверы играют важную роль в больших кластерных системах, использующих версии CSM, ниже чем CSM 1.4. Кластеры, использующие старые версии, нуждаются в терминальных серверах для сбора MAC-адресов при установке. При совместимости CSM и системных UUID, терминальные серверы становятся не так важны для установки более современного кластера. Однако, если в большом кластере у вас имеется немного устаревшее оборудование или программное обеспечение, терминальные сервера все еще остаются жизненно важными во время установки системы. Обеспечение корректной настройки терминального сервера само по себе может сэкономить значительное количество времени в дальнейшем в процессе установки системы. Кроме сбора MAC-адресов терминальные серверы могут также использоваться для просмотра терминалов из одной точки во время процедуры начального самотестирования (POST) и запуска операционной системы. Когда компьютер получает DHCP-адрес во время PXE, конфигурационные файлы в / tftpboot / pxelinux . cfg ищутся в определенном порядке, и первый найденный файл используется в качестве загрузочной конфигурации для запрашивающего компьютера. Порядок поиска определяется путем преобразования запрашиваемого DHCP-адреса в шестнадцатиричные цифры и поиска первого подходящего имени файла в конфигурационном каталоге методом расширения подсетей - удаления цифр справа налево на каждом цикле поиска. [3]Коммуникационные библиотеки. Наиболее распространенным интерфейсом параллельного программирования в модели передачи сообщений является MPI. Рекомендуемая бесплатная реализация MPI - пакет MPICH, разработанный в Аргоннской Национальной Лаборатории. Для кластеров на базе коммутатора Myrinet разработана система HPVM, куда также входит реализация Message Passing Interface (MPI, интерфейс передачи данных). MPI – программный интерфейс (API) для передачи информации, который позволяет обмениваться сообщениями между компьютерами, выполняющими одну задачу. MPI является наиболее распространённым стандартом интерфейса обмена данными в параллельном программировании, существуют его реализации для большого числа компьютерных платформ. Основным средством коммуникации между процессами в MPI является передача сообщений друг другу. Стандартизацией MPI занимается MPI Forum. В стандарте MPI описан интерфейс передачи сообщений, который должен поддерживаться как на платформе, так и в приложениях пользователя. В настоящее время существует большое количество бесплатных и коммерческих реализаций MPI. Существуют реализации для языков Фортран 77/90, Си и Си++. Стандарты MPIБольшинство современных реализаций MPI поддерживают версию 1.1. Стандарт MPI версии 2.0 поддерживается большинством современных реализаций, однако некоторые функции могут быть реализованы не до конца. В MPI 1.1 (опубликован 12 июня 1995 года) поддерживаются следующие функции:
В MPI 2.0 (опубликован 18 июля 1997 года) дополнительно поддерживаются следующие функции:
Для эффективной организации параллелизма внутри одной SMP-cистемы возможны два варианта:
После установки реализации MPI имеет смысл протестировать реальную производительность сетевых пересылок. Кроме MPI, есть и другие библиотеки и системы параллельного программирования, которые могут быть использованы на кластерах. Следует понимать, что использование для программирования openMosix — расширение (патч) ядра Linux, позволяющее создать единый кластер. Превращает сеть обычных персональных компьютеров в суперкомпьютер для Linux-приложений. Представляет собой полнофункциональную кластерную среду с единой операционной системой (SSI), автоматически распараллеливающую задачи между однородными узлами. Это позволяет миграцию процессов между машинами — узлами сети. Кластер ведёт себя подобно SMP-машине (за исключением любых видов разделяемой памяти). При этом возможно наращивание до тысяч узлов, которые тоже могут быть SMP-машинами. Добавление новых узлов возможно параллельно работе кластера, добавленные ресурсы будут задействованы автоматически. openMosix также предоставляет оптимизированную файловую систему (oMFS) для HPC-приложений, которая, в отличие от NFS, поддерживает кэширование, отметки о времени и ссылки. openMosix — это проект, являющийся продолжением проекта MOSIX, но под свободной лицензией GPL. Последниии релизы MOSIX стали проприетарными (закрытыми) в конце 2001 года, а проект openMosix стартовал 10 февраля 2002. Инициатор проекта — Moshe Bar. OpenMosix поставляется с набором утилит для администрирования кластера. Для этого имеется также удобное GUI-приложение openMosixview. BOINC — программный комплекс для простой и быстрой организации распределённых вычислений. Состоит из серверной и клиентской частей. Разрабатывается и поддерживается организаторами одного из первых и одного из крупнейших проектов распределённых вычислений SETI@home Се́рвис-ориенти́рованная архитекту́ра (англ. SOA, service-oriented architecture) — подход к разработке программного обеспечения, основанный на использовании сервисов (служб) со стандартизированными интерфейсами. Компоненты программы могут быть распределены по разным узлам сети, и предлагаются как независимые, слабо связанные, заменяемые сервисы-приложения. Программные комплексы, разработанные в соответствии с СОА, часто реализуются как набор веб-сервисов, интегрированных при помощи известных стандартных протоколов (SOAP, WSDL, и т. п.) Интерфейс компонентов СОА-программы предоставляет инкапсуляцию деталей реализации конкретного компонента от остальных компонентов. Таким образом, СОА предоставляет гибкий и элегантный способ комбинирования и многократного использования компонентов для построения сложных распределённых программных комплексов. СОА хорошо зарекомендовала себя для построения крупных корпоративных программных приложений. Целый ряд разработчиков и интеграторов предлагают инструменты и решения на основе СОА СОА - это архитектурная модель для объединения доступных вычислительных ресурсов, таких как: приложения, данные, формы их представления, средства управления и мониторинга, с требованиями достижения желаемых результатов, для потребителей сервисов, которыми могут быть: конечные пользователи, другие приложения, или другие, подобные, сервисы. OASIS (Организация по Продвижению Стандартов Структурированной Информации) определяет СОА следующим образом (OASIS Reference Model for Service Oriented Architecture V 1.0): Сервис ориентированная архитектура (СОА) это принципы построения и использования распределенных возможностей (capabilities), которые в свою очередь могут быть управляемыми собственными зонами, в которых они располагаются. Принципы SOA
СПИСОК ЛИТЕРАТУРЫ
|
Круглов В. И., Дли М. И., Голунов Р. Ю. Нечеткая логика и искусственные нейронные сети Тарасик В. П. Математическое моделирование технических систем. Минск: «Дизайн про», 2004. – 640 с |
Специальность «Математическое обеспечение и администрирование информационных... Специальность «Математическое обеспечение и администрирование информационных систем» |
||
«Математическое и программное обеспечение планирования и управления... Специальность 010503 “Математическое обеспечение и администрирование информационных систем” |
Моделирование контрольно-курсовая работа Имитационное моделирование является распространенным методом исследования на всех этапах создания и функционирования сложной системы:... |
||
Экономико-математическое моделирование Вопросы по курсу Часть Основные понятия моделирования Роль математических моделей в управлении. Методика формализации задач в системах организационного управления. Описание альтернатив,... |
Официального оппонента д т. н. М. В. Якобовского на диссертацию Безгодова... «Математическое моделирование, численные методы и комплексы программ» на соискание ученой степени кандидата технических наук |
||
Доклад на тему: Тема: «Математическое программирование» Математическое программирование – это раздел математики, занимающийся разработкой методов отыскания экстремальных значений функции,... |
Рабочая программа по дисциплине дс. Ф. 6 Моделирование электроприводов и систем автоматики Омский институт водного транспорта (филиал) фбоу впо «Новосибирская государственная академия водного транспорта» |
||
Реферат к вступительному экзамену в аспирантуру по специальности... «Разработка численной модели распространения лазерного излучения в нелинейно-оптических средах» |
Уравнения и алгоритмы К 89 Кузьмин, Д. В. Моделирование динамики мехатронных систем. Уравнения и алгоритмы: монография / Д. В. Кузьмин. – Архангельск:... |
Поиск на сайте Главная страница Литература Доклады Рефераты Курсовая работа Лекции |