Рассмотрены особенности построения подсистем для расчета параметров
движения транспортного средства. Определен подход к увеличению точности и
быстродействию подсистемы. Приведены результаты экспериментальных
исследований при определении параметров движения группы надводных транспортных
средств.
Ключевые слова: транспортное средство, CUDA, GPU
Введение
Требования повышения безопасности движения транспортных
средств (ТС), защиты окружающей среды, снижения влияния
субъективного фактора на качество управления, повышения степени
автоматизации управления требуют применения новых информационных
технологий и средств моделирования [1].
В течение последнего десятилетия большое количество научно-
исследовательских институтов и различных университетов во всем мире
было включено в национальные и международные проекты по разработке
систем автоматического управления движением ТС [2–5], что, в конечном
итоге, позволит более интенсивно эксплуатировать транспортный коридор,
увеличить безопасность участников транспортного потока, снизить расход
топлива, оптимально использовать режимы работы двигателя ТС.
Широкое распространение спутниковых навигационных систем,
таких как GPS и ГЛОНАСС, появление малогабаритных инерциальных
систем, существенный рост производительности вычислительных средств
позволило повысить эффективность управления и способствовало
появлению интегрированных автоматизированных систем.
Интегрированная система [6] – это независимый комплекс, в котором
выполняются все процессы обработки, обмена и представления
информации и включает в себя различные аспекты интеграции:
интеграцию данных, технологий и технических средств.
Проблема управления транспортными средствами
Одним из основных средств исследования сложных технических
систем является разработка и построение информационных моделей как
объектов автоматизации в целом, так и процессов внутри. Это дает
возможность выполнить необходимую оценку объекта еще до того, как
будет построен опытный образец, что снижает потребность в
дорогостоящих экспериментах, а также обеспечивает поддержку на всех
стадиях проектирования – от разработки концепции до производства
конечного продукта и последующей его эксплуатации. В то же время при
реализации информационных моделей с помощью компьютерных средств
моделирования [7] становится возможным проведение разностороннего
исследования состояний объекта.
В настоящее время актуальна проблема разработки интегрированных
навигационных систем (ИНС) различных транспортных и подвижных
средств (самолеты, морские и речные суда, автомобили, мобильные
роботы) [8-11] на основе микропроцессорной техники. Благодаря
применению ИНС снижаются энергозатраты, увеличивается уровень
безопасности, уменьшается экологическая нагрузка на окружающую
среду. Кроме того, учитывая факторы, что большинство ТС
функционируют в условиях существенной неопределённости и
динамичности окружающей среды, работают под управлением оператора и
не способны действовать самостоятельно, требуются решения,
обеспечивающие повышение автономности функционирования ТС.
Использование математических моделей в контуре управления
предоставляет возможность исследования и анализа различных состояний
объекта, прогнозирования его поведения в зависимости от управляющих
воздействий и внешних факторов, действующих на управляемый объект.
В работе [2] отмечено, что для подвижных объектов описываемых
нелинейными дифференциальными уравнениями (1.1) и (1.2), не удается
получить решение в форме, обеспечивающей выработку управления в
реальном времени, поскольку приходится сталкиваться с существенными
вычислительными трудностями и неполнотой вектора состояния, что
требует дополнительной информации от бортовых датчиков.
При использовании для выработки сигнала управления ТС цифровой
вычислительной машины и учитывая дискретный характер поступления
измерений от навигационных датчиков возникает необходимость
рассматривать дискретную во времени модель системы, исходя из
интервала дискретности ΔТ. Соотношения для перехода от непрерывной
модели к дискретной приводятся в [2] и уравнение (1.2) записывается в
виде
где для матриц динамики, управления и интенсивности возмущений оставлены прежние обозначения. Критерий оптимальности принимается в
виде математического ожидания
где A и B – неотрицательно и положительно определенные матрицы
соответственно. Элементы a
ii матрицы А характеризует относительную
значимость отклонений i-й компоненты вектора состояния, а элементы b
ii
матрицы В определяют значимость затрат по управляющим воздействиям.
В работе [12] отмечено, что максимальная частота определения
значений состояния ПОб, в том числе и координат, зависит от бортового
навигационного оборудования и среды перемещения. В работе [13]
обращено внимание, что интервал для формирования управляющих
воздействий зависит от уровня взаимодействия с исполнительными
механизмами. Для автономного надводного ТС структура
информационных каналов, частота определения состояния и
формирования команд рассмотрен в работе [14] (рис. 1).
Рисунок 1 – Структура информационных каналов интеллектуального ТС с
типовыми частотами расчета параметров [14]
Однако высокая эффективность достигается при управлении
объектом в составе группы и осуществляется в сильносвязном
информационном пространстве, что предъявляет особые требования к
вычислительным системам и сетевым средствам.
Описание поведения надводного транспортного
средства
С точки зрения кинематики судно может рассматриваться как
твердое тело с шестью степенями свободы, а уравнения движения судна
составляются на основании законов кинематики и динамики твердого тела,
теории силового воздействия жидкости на движущееся тело [15].
Для изучения движения судна по свободной поверхности применяют
следующие основные системы координат [11] (рис. 2): неподвижную (или
абсолютную) систему координат Orhn и связанную с судном (подвижную)
систему координат Oxyz.
Рисунок 2 – Основные параметры движения судна
Преобразование из неподвижной системы координат в подвижную
производится с помощью следующей матрицы перевода η [11]:
где
– вектор скорости; v
x, v
y, v
z – проекции вектора скорости судна; Ψ –
курс судна.
Система уравнений, которая описывает движение судна в трех
плоскостях, записывают в следующей форме [11]:
где ω
x, ω
y, ω
z – проекции вектора угловой скорости движения судна; N
x, N
y,
N
z – проекции вектора внешних сил; M
x, M
y, M
z – проекции вектора
главного момента; λ
ij – обобщенные присоединенные массы корпуса судна,
образуемые водной средой, в которой осуществляется движение; m – масса
судна; J
x, J
y, J
z – проекции присоединенного момента инерции массы
судна.
Таким образом, для расчета траектории движения судна требуются
большие вычислительные возможности. В настоящее время основным
направлением увеличения вычислительных мощностей является
организация параллельных вычислений, с использованием
соответствующих методов и алгоритмов. Для реализации эффективного
распараллеливания вычислений необходим переход на новые технологии и
новые параллельные методы решения задач, которые позволят резко
снизить стоимость вычислений.
Современные вычислительные средства
Современные технологии предоставляют два основных направления
вычислительных средств: многоядерные процессоры (CPU) и графические
процессоры (GPU).
До последнего времени ключевым компонентом систем для
высокопроизводительных вычислений, включая кластеры, был
центральный процессор. Однако несколько лет назад у него появился
серьезный конкурент – графический процессор (GPU). Высокая
производительность GPU объясняется особенностями его архитектуры. В
отличие от центрального процессора, который состоит из нескольких ядер,
графический процессор изначально создавался как многоядерная
структура, в которой количество компонентов измеряется сотнями.
Каждая из этих двух архитектур имеет свои достоинства. Говорить о
замене CPU на GPU не имеет смысла – они не взаимно дополняют друг
друга. CPU лучше работает с последовательными задачами, но при
большом объеме обрабатываемой информации, с которой можно работать
параллельно, очевидное преимущество имеет GPU [16].
Структура GPU производства NVIDIA приведена на рис. 3 и состоит
из потоковых многоядерных процессоров, которые состоят из потоковых
процессоров, узла команд, распределенной памяти.
Рисунок 3 – Архитектура NVIDIA GPU
Для программирования GPU производства NVIDIA применяют
программно-аппаратную платформу CUDA [17], позволяющую запускать
произвольный код. CUDA предоставляет разработчику возможность
создавать код, исполняющийся непосредственно на ядрах графического
процессора, управлять его памятью, организовывать на нем сложные
параллельные вычисления - проще говоря, использовать его как процессор
общего назначения.
Результаты эксперимента
Исследование производительности подсистемы расчета координат
траектории движения производилось при реализации на двух разных
системах: с использованием многоядерного процессора (Intel Core 2 Duo
P8700, 2.53 ГГц) и многоядерного GPU. Характеристики GPU приведены
на рис. 4.
Рисунок 4 – Параметры видеоадаптера nVidia GeForce 9300M GS
Результаты эксперимента для GPU приведены на рис. 5.
Рисунок 5 – Зависимость времени расчета (мс) координат траектории от
количества судов
Вывод
На основании выполненных экспериментов была определена граница
эффективности применения GPU. Количество судов в группе должно быть
не менее 62. В противном случае рациональнее применять только
вычислительные системы на базе многоядерного процессора без
использования GPU которые поддерживают платформу CUDA.
Список литературы
- Анучин О.Н., Емельянцев Г.И. Интегрированные системы ориентации и
навигации для морских подвижных объектов. СПб.: Электроприбор, 2003. – 390 с.
- Гурский Б.Г., Солунин В.Л., Новиков А.И. Навигационный комплекс
беспилотных летательных аппаратов наземного базирования. Гироскопия и навигация,
№2 (65), 2009 – стр. 12-23
- Микрин Е.А. Бортовые комплексы управления космическими аппаратами и
проектирование их программного обеспечения. – М.: Издательство МГТУ им. Н.Э.
Баумана, 2003 – 336 с.
- Современные информационные технологии в задачах навигации и
наведения беспилотных маневренных летательных аппаратов /под ред. под ред.
Красильщикова Н.М. и Серебрякова Г.Г. – М.: ФИЗМАТЛИТ, 2009 – 556 с.
- Ориентация и навигация подвижных объектов: современные
информационные технологии /под ред. Алешина Б.С., Веремеенко К.К., Черноморского
А.И. – М.: ФИЗМАТЛИТ, 2006 – 424 с.
- Лукин Н.А. Функционально-ориентированные процессоры с однородной
архитектурой для реализации алгоритмов бортовых систем управления. Труды пятой
международной конференции «Параллельные вычисления и задачи управления»
PACO'2010. Москва, 26-28 октября 2010, – стр. 1177-1184.
- Veres S.M., Molnar L., Licoln N.K., Morice C.P. Autonomous vehicle control
systems – a review of decision making. Proceedings of the Institution of Mechanical
Engineers, Part I: Journal of Systems and Control Engineering March 1, 2011, 225:155-195
- Навигация. Под ред. Ю.К. Баранова. СПб.: Лань, 1997 – 512c.
- Мальцев А.С. Информационно-управляющая система учета динамики
судна при маневрировании: Автореф. дис… д-ра техн. наук: 05.22.16/ Одесская гос.
мор. академия. – Одесса, 1997 – 48c.
- Вьюгов Виктор Васильевич. Гидродинамические аспекты теории
судовождения на внутренних водных путях : Автореф. дис... д-ра техн. наук (05.22.16) /
Новосибирская гос. академия водного транспорта. — Новосибирск, 1999. — 33с.
- Управление судами и составами. Под ред. Н.Ф. Соларева. М.: Транспорт,
1983. – 296 с.
- Zimmermann R. Repräsentation dynamischer Schiffsmodelle in einem
Navigationssystem für die Binnenschiffahrt. Doktorarbeit, Universität Stuttgart, 2000. – 152
s.
- Кук Ю., Лаврикова Е. Синтез уравнений управления для интеллектуальных
роботов. International book series
Information science and computing
. Number 1.
Algorithmic and mathematical foundations of the artificial intelligence. 2008 – pp. 194-200.
- Eric Hansen, Terry Huntsberger and Les Elkins, Autonomous maritime navigation: developing autonomy skill sets for USVs, Proc. SPIE 6230, 62300U (2006).
- Васильев А.В. Управляемость судов. – Л.: Судостроение, 1989. – 328 с.
- Джораев А.Р. Гибридные вычислительные системы на основе GPU для
задач биоинформатики. Компьютерные исследования и моделирование. Т.2 №2, 2010. –
с.163-167
17.
- NVIDIA CUDA Compute Unified Device Architecture. Programming Guide.:
www.nvidia.com, 2012