НЕЙРОСЕТЕВОЙ РЕГУЛЯТОР ДЛЯ УПРАВЛЕНИЯ КУРСОМ СУДНА
NEURAL NETWORK REGULATOR FOR CONTROLLING SHIP HEADING

Изобретение относится к устройствам автоматического управления курсом судна, а именно к системам судовых авторулевых, в частности к автоматическим адаптивным регуляторам на базе нейросетевых технологий.
Одним из путей повышения эффективности судовых авторулевых является введение дополнительной нелинейной корреляционной модели движения судна, изменяющей линейную математическую модель, заложенную в автоматическом регуляторе, т.е. применение автоматических адаптивных регуляторов.
Например, известна система авторулевого, включающая автоматический адаптивный регулятор на базе микропроцессорной станции, в частности в виде пропорционально-дифференциально-интегрального регулятора [патент RU 2282884, опубл. 27.08.2006]. Однако эффективность управления курсом судна с помощью известной системы авторулевого зависит, главным образом, от принятой математической модели закона управления, которая не всегда может соответствовать реальным условиям плавания.
Перспективы развития автоматических адаптивных регуляторов авторулевых просматриваются в использовании в качестве автоматических адаптивных регуляторов нейросетевых регуляторов, что может обеспечить надежность и эффективность управления курсом судна как при изменении гидродинамики судна, так и окружающих погодных и морских условий, за счет известной способности нейронных сетей к самообучению,
В качестве прототипа выбран судовой авторулевой (патент US 6611737, опубл. 26.08.2003), включающий в качестве автоматического адаптивного регулятора нейросетевой регулятор на базе программной среды MATLAB. Нейросетвой регулятор выполнен в виде информационно-вычислительного комплекса и, в частности, содержит информационно-аналитический блок для прогнозирования и выработки курса судна, связанный протоколами передачи данных с блоком сбора информации о курсе судна и блоком вывода обобщенного сигнала управления курсом судна. При этом используемый нейросетевой регулятор решает и другие задачи управления судном и содержит множество других блоков, не связанных напрямую с курсом судна, поэтому архитектура используемой в качестве нейросетевого регулятора нейронной сети (НС) не является оптимальной по времени обучения, простоте реализации и качеству аппроксимации для прикладных задач управления именно курсом судна.
Более того, как показало компьютерное моделирование, проведенное авторами настоящего изобретения с помощью программного обеспечения MATLAB 7.0, известных НС, таких как Competitive, Feed-forward backprop, Hopfleld, Probabilistic, RBF, Simple recurrent network (SRN) и Time-delay neural network, только SRN, Feed-forward backprop или RBF могут использоваться в качестве автоматического адаптивного регулятора управления курсом судна как показавшие наибольшую корреляцию, однако, было замечено, что при различных воздействиях на объект управления НС соответствующего типа ведет себя хуже, чем та же НС при ограниченных параметрах.
Решаемая техническая задача - оптимизация нейросетевого регулятора для повышения эффективности управления курсом судна с заданными параметрами в определенных условиях плавания.
Предлагается нейросетевой регулятор для управления курсом судна, выполненный в виде информационно-вычислительного комплекса, содержащего информационно-аналитический блок для обработки данных с целью прогнозирования и выработки курса судна, связанный протоколами передачи данных с блоком сбора данных для сбора информации о курсе судна и блоком вывода обработанных данных для вывода обобщенного сигнала управления курсом судна. Новым является то, что нейросетевой регулятор дополнительно включает две или более вычислительных системы в виде независимых друг от друга вычислительных алгоритмов, каждая из которых соединена с информационно-аналитическим блоком с помощью интерфейса и выполнена с возможностью обработки данных, переданных для обработки из информационно-аналитического блока; базу знаний, соединенную с информационно-аналитическим блоком с помощью интерфейса и предназначенную для хранения критериев выбора информационно-аналитическим блоком той или иной вычислительной системы. Здесь, блок вывода обработанных данных содержит невизуальные устройства вывода обработанных данных; информационно-аналитический блок включает интеллектуальный классификатор, соединенный интерфейсами с графическим интерфейсом пользователя, подсистемой управления сеансами связи с блоком сбора данных через соответствующий протокол передачи данных и подсистемой управления сеансами связи с блоком вывода обработанных данных через соответствующий протокол передачи данных. Причем интеллектуальный классификатор выполнен с возможностью выбора одной или более вычислительной системы для обработки данных, передачи данных на графический интерфейс пользователя и передачи данных на невизуальные устройства вывода обработанных данных.
Графический интерфейс пользователя может быть выполнен с возможностью выбора устройств вывода информации, выбора режима работы и выбора приоритета работы из группы: максимальное качество обработки данных, минимальное качество обработки данных и ручной выбор настроек информационно-вычислительного комплекса. При этом в качестве устройства вывода информации используется хотя бы одно устройство из группы: принтер, плоттер, экран дисплея, а режим работы включает обучение информационно-вычислительного комплекса или обработка данных для управления курсом судна.
Невизуальные устройства вывода обработанных данных могут быть выполнены с возможностью реализации функции управления приводами, другими системами и исполнительными механизмами судна, используемыми для управления курсом судна.
Каждая из вычислительных систем может быть выполнена с возможностью обработки массива данных на основе одной из следующих нейронных сетей: реккурентная нейронная сеть Элмана, многослойная сеть прямого распространения или нейронная сеть на основе радиально-базисных функций.
В качестве базы знаний может использоваться промышленная база данных, хранящая критерии выбора той или иной вычислительной системы для обработки массива данных, выбираемая из следующих баз данных: реляционная база данных типа Sybase или Oracle или объектно-ориентированная база данных типа Cache.
Изобретение поясняется графическими материалами, где представлено:
фиг.1 - структурная схема общей архитектуры предлагаемого нейросетевого регулятора;
фиг.2 - график результатов компьютерного моделирования предлагаемого нейросетевого регулятора (ИВК) в сравнении с известными нейронными сетями: Simple recurrent network SRN, Feed-forward backprop (Feed-forward) и RBF.
фиг.3 - графики отклонения от заданного курса (а) по времени для эталонной модели (model) и в результате работы предлагаемого нейросетевого регулятора (result).
Изобретение поясняется более подробно на примерах.
Общая архитектура предлагаемого нейросетевого регулятора для управления курсом судна, выполненного в виде информационно-вычислительного комплекса на базе программно-аппаратных средств (далее - ИВК) состоит из следующих основных блоков (см. фиг.1): блок сбора данных 1 (далее - УСИ), блок вывода обработанных данных 2 (далее - УВИ) для вывода обобщенного сигнала управления курсом, информационно-аналитического блока 3, реализованного в виде комплекса программно-аппаратных средств, включающих: интеллектуальный классификатор 4 (далее - ИК); интеллектуальные вычислительные алгоритмы 5-7, функционирующие в режиме интеллектуальных вычислительных систем (далее - ИВС); базу знаний 8 (далее - БЗ), хранящую критерии выбора ИВС 5-7, эффективную для обработки конкретного массива данных; графический интерфейс пользователя 9 (далее - ГИП).
На уровне протоколов обмена данными ИВК содержит: протокол передачи данных 10 для взаимодействия между УСИ 1 и информационно-аналитическим блоком 3; подсистему программной части 11, обеспечивающую управление сеансами связи с УСИ 1 и процесс сборки данных, поступающих с УСИ 1; протокол передачи данных 12 для взаимодействия между УВИ 2 и информационно-аналитическим блоком 3; подсистему программной части 13, обеспечивающую управление сеансами связи с УВИ 2 и управление УВИ 2; а также интерфейсы 14.
ИК 4 является подсистемой программной части комплекса, которая обеспечивает выбор одной или нескольких ИВС 5-7 для обработки данных, функцию передачи данных в ИВС 5-7 и получение обработанных данных от них, передачу данных в ГИП 9 для их последующей визуализации; передачу данных на невизуальные УВИ 2.
Графический интерфейс пользователя (ТИП) 9 реализует следующие функции: выбор режима работы спроектированной ИВС (обучение или обработка данных); выбор приоритета работы системы: максимальное качество обработки, минимальное качество и ручной выбор настроек системы; выбор устройств вывода информации (принтер, плоттер и т.д.).
Невизуальные УВИ 2 реализуют функции управления внешними устройствами (приводами, другими системами и исполнительными механизмами судна, включая механизм кладки руля).
ИВС 5-7 обеспечивают обработку массива данных на основе одной из следующих НС: реккурентная НС Элмана, многослойная сеть прямого распространения или нейронная сеть (НС) на основе радиально-базисных функций. Количество ИВС в составе программно-аппаратного комплекса ограничивается сверху производительностью вычислительной архитектуры системы, а снизу - предъявляемыми к ней требованиями.
БЗ 8 - это одна из промышленных баз данных, хранящая критерии выбора той или иной ИВС для обработки конкретного массива данных. Для этих целей может быть использована одна из трех следующих СУБД: реляционная база данных (Sybase, Oracle) или объектно-ориентированная база данных (Cache).
Интерфейсы 14 являются средствами взаимодействия блоков и программно-аппаратных средств ИВК, которые задают параметры, процедуры и характеристики их взаимодействия.
Описанный выше ИВК предусматривает последовательную реализацию следующих основных режимов: подготовка данных, обучение ИВК, обработка данных.
Режим подготовки данных состоит из трех связанных процессов: формирование исходных векторов данных о курсе судна, их идентификация, создание рабочих массивов данных о курсе судна.
В режиме обучения осуществляют адаптацию параметров всех интеллектуальных элементов ИВК под выбираемую архитектуру в соответствии с предъявляемыми требованиями к выходной информации, при этом производят обучение интеллектуальных элементов ИВС 5-7 и обучение всех классификаторов ИК 4.
По окончанию процедуры обучения, посредством ГИП 9, задают режим процедуры обработки данных о курсе судна (автоматический нормальный, автоматический минимальный или ручной).
Далее подробнее описаны основные режимы работы ИВК.
1) Режим подготовки данных о курсе судна
Этот режим состоит из трех связанных процессов: формирование исходных векторов данных о курсе судна; идентификация исходных векторов данных о курсе судна; и создание рабочих массивов данных о курсе судна.
В любом из последующих режимов (обучение и обработка данных) данные о курсе судна от УСИ 1 считываются драйвером подсистемы программной части 11, который передает их в ИК 4. Начало и конец потока данных ограничивают исходный вектор данных о курсе судна и определяются протоколом передачи данных 10.
Данные о курсе судна собирают с помощью входного интерфейса 14 ИК 4 в исходные вектора данных, каждый из которых представляет собой совокупность данных о курсе судна, усредненную за заданное время измерений. Далее осуществляют идентификацию исходных векторов данных о курсе судна, которая заключается в присвоении им идентификационных меток. Идентификационные метки соответствуют уникальным свойствам этих векторов и дают информацию о курсе судна. Процесс идентификации векторов заключается в осуществлении соответствующих вычислений над их элементами.
Физические принципы идентификации исходных векторов данных:
- анализ спектра данных, полученного с помощью быстрого преобразование Фурье;
- измерение статистических характеристик сигнала с объекта управления (т.е. судна).
j
j
j
j
j
Процесс создания рабочих массивов данных о курсе судна состоит в постановке соответствия каждому сформированному в долговременной памяти БЗ 8 исходному вектору данных о курсе судна X (j=1, 2, …, J) вектора меток P. В результате этого образуется рабочий массив данных о курсе судна А={X, P}. После передачи по выходному интерфейсу 14 ИК 4 рабочих массивов данных о курсе судна А над ними производят дальнейшие операции (обучение и/или обработку) в зависимости от режима работы системы.
2) Режим обучения
В режиме обучения осуществляют адаптацию параметров всех интеллектуальных элементов ИВК под выбираемую архитектуру в соответствии с предъявляемыми требованиями к выходной информации, при этом производят обучение интеллектуальных элементов ИВС 5-7 и обучение всех классификаторов ИК 4.
j
В связи с тем, что для настройки классификаторов ИК 4 требуется иметь уже готовые к работе ИВС 5-7, настройку их интеллектуальных элементов выполняют на рабочих массивах данных о курсе судна A до обучения классификаторов ИК 4. При обучении интеллектуальных элементов внутри каждой ИВС 5-7 происходит настройка следующих регулируемых параметров: изменение весовых коэффициентов матриц связей НС определенной архитектуры, сформированной заранее, до процесса обучения, и позиционирующей каждую архитектуру НС как отдельную НС со своим числом слоев, нейронов в слое, функцией активации и регулируемых параметров.
Ниже приведен пример обучения НС прямого распространения данных о курсе судна.
q
j
q
j
jq
jq
Обозначим через q - индекс элемента y j-го вектора выходных данных НС Y={у}, (q=1, 2, …, Q); w - весовые коэффициенты матриц связей НС W={w}; l - индекс используемой НС (l=1, 2, …, L); L - число используемых НС.
jq
j
j
j
Целью обучения НС является настройка сетью весовых коэффициентов w своей матрицы связей W между входным X и выходным Y векторами данных НС для решаемой задачи, определяемой множеством всех возможных комбинаций вектора меток Р.
Это достигается регулировкой характеристик используемой архитектуры НС: алгоритма обучения данных; алгоритма обработки данных о курсе судна; числа слоев НС; числа нейронов в каждом слое НС (в связи с этим НС с одинаковыми названиями настолько сильно различаются между собой по возможностям, что каждую из них, с точки зрения вычислительной программы, следует принимать за отдельную НС).
Обучение с учителем этих НС состоит из следующих трех этапов.
Этап 1. Формирование обучающих учебников.
j
j
Учителем, в качестве которого может быть эксперт или программа, ставится в соответствие каждому входному вектору данных о курсе судна X выходной вектор Y.
Этап 2. Обучение включает:
- последовательное предъявление НС с заблаговременно созданной архитектурой всех обучающих пар всех страниц всех учебников;
- контроль качества обучения и быстроты сходимости решения к одному из устойчивых состояний;
- контрастирование элементов НС и настройка ее регулируемых параметров.
Этап 3. Тестирование включает:
- формирование нескольких тестирующих учебников с несколькими страницами ограниченного числа тестирующих пар, ограниченных множеством обучающих пар, но не совпадающих с его значениями;
- последовательное предъявление НС с настроенной архитектурой всех пар тестирующих учебников;
- контроль качества тестирования и быстроты сходимости решения к одному из устойчивых состояний.
При необходимости проведения дополнительных настроек НС в случае неудовлетворительных результатов тестирования возвращаются к операции «контрастирование элементов НС» предыдущего этапа обучения и повторяют последние две операции данного этапа.
j
j
После обучения НС любой входной вектор X, принадлежащий множеству обучающих пар, но не совпадающий с его значениями, будет соответствовать выходному вектору Y однозначно. Таким образом, обученные НС готовы для обработки данных о курсе судна.
Обучение классификаторов ИК осуществляется следующим образом.
j
1
j
j
1
j
r
r
Обозначим через g - индекс элемента вектора параметров качества работы первой ИВС F={g}, (g=1, 2, …, G), соответствующего j-му вектору выходных данных о курсе судна Y; G - число элементов g вектора F; r - индекс классификатора С (r=1, 2, …, R); G - число классификаторов С.
r
cond
1
r
После завершения процесса обучения интеллектуальных элементов первой ИВС 5, ИК 4 производит настройку в каждом классификаторе следующих регулируемых параметров С={A: ИВС; S; spec}: правила, состоящего из условия и действия:
cond
1
r
r
r
r
A: ИВС; силы S, показывающей текущую полезность данного классификатора С; специфичности spec, характеризующей степень конкретизации используемого правила классификатора С.
Алгоритм обучения ИК 4 включает следующие операции.
j
j
Прием входных данных, при этом вектор меток Р из массива данных о курсе судна A направляют на блок выбора рабочего режима и преобразуют в форму вектора сообщения.
cond
r
j
r
r
Сравнение классификаторов. Условные части A всех классификаторов С сравнивают с вектором сообщения P и, при их совпадении, соответствующие классификаторы условно выставляют на аукцион, со ставками, пропорциональными их силе S и специфичности spec.
r
Выбор классификатора. Над условными частями классификаторов С выполняют последовательность процедур генетического алгоритма, включающую селекцию с помощью одного из операторов селекции, скрещивание с произвольным кроссовером, мутацию элементов с малой вероятностью, эволюцию с помощью инверсионного колеса рулетки, уплату налогов всеми участвовавшими классификаторами, причем при отсутствии выигрыша условной части одного из классификаторов операции сравнения классификаторов и выбора классификатора повторяют до выигрыша условной части одного из классификаторов.
Опробование классификатора в работе. В соответствии с действием выигравшей условной части правила этого классификатора выбирают ИВС, требуемую действием выигравшей условной части правила, и обрабатывают на ней копии вектора данных о курсе судна X.
j
Сравнение результатов работы классификаторов. Здесь рассчитывают параметры качества работы t, n, ρ, σ каждой выбранной ИВС, где t - время обработки данных о курсе судна; n - количество итераций, затраченных на обработку данных; ρ - корреляция между получаемыми Y и требуемыми Y' выходными векторами; σ - дисперсия для них, и, после их сравнения, выделяют вектор параметров качества работы F={t, n, ρ, σ} с лучшими значениями, который направляют в классификаторы.
Индексация классификаторов. Классификатор-победитель получает дополнительную силу пропорционально качеству результата работы и распределяет свою ставку участия между классификаторами, условные части которых участвовали в реализации генетического алгоритма и его формировании.
j
j
r
Формирование БЗ 8. При пополнении БЗ 8 в нее направляют строки соответствия, содержащие вектор сообщения P, вектор параметров качества работы F, классификатор С.
Вышеуказанную последовательность операций повторяют в отношении всех возможных типов массивов входной информации до тех пор, пока система не будет считаться обученной всем возможным типам массивов входной информации.
3) Режим обработки данных.
По окончанию процедуры обучения, посредством ГИП 9, задают режим процедуры обработки данных о курсе судна (автоматический нормальный, автоматический минимальный или ручной).
При реализации процедуры обработки данных о курсе судна в автоматическом нормальном режиме, в БЗ 8, из массива задаваемого при инсталляции комплекса, находят, посредством ИК 4, по меньшей мере две ИВС (5 и/или 6 и/или 7), соответствующих задачам обработки конкретного массива данных о курсе судна, после чего массив данных обрабатывают в них, при этом, как и в режиме обучения, рассчитывают параметры качества работы t и n, причем обработанные данные возвращают в ИК 4 и выбирают результат от ИВС с оптимальными результатами обработки.
При реализации процедуры обработки данных о курсе судна в автоматическом минимальном режиме, в БЗ 8 из массива, задаваемого при инсталляции комплекса, находят, посредством ИК 4, одну ИВС, с наибольшей вероятностью обрабатывающую конкретный тип массива данных о курсе судна, после чего посредством нее реализуют процедуру обработки данных о курсе судна, по окончании которой результат обработки возвращают в ИК 4.
При реализации процедуры обработки данных о курсе судна в ручном режиме, в БЗ 8, из массива задаваемого при инсталляции комплекса, пользователь сам выбирает, по меньшей мере две ИВС и регулирует их параметры по своему усмотрению, после чего реализует их посредством процедуру обработки массива данных, в том числе пошагово, затем результат обработки возвращают в ИК 4.
Если в БЗ 8 нет записей для этого массива, то она автоматически переключается в режим обучения. После завершения обучения система вновь переключается в режим обработки данных о курсе судна и отрабатывает их в автоматическом минимальном режиме.
При любом способе обработки данные о курсе судна предоставляются ИК 4 в УВИ 2 и пользователю в ГИП 9 для визуализации, которая выводит их в необходимом виде, выбираемом пользователем (таблица, график и т.д.), на одно или все устройства вывода (монитор, принтер и т.д.) по усмотрению пользователя. В ручном режиме пользователь должен выбрать еще и выходные данные о курсе судна, которые необходимо вывести на УВИ 2, т.к. ему будут предъявлены данные о курсе судна со всех выбранных ИВС 5-7, тогда как в нормальном и минимальном режимах выходные данные о курсе судна выводятся с одной выбранной ИВС.
Ниже приведен пример процедуры обработки данных о курсе судна с использованием НС в автоматическом минимальном режиме.
Процедура обработки данных о курсе судна включает следующие операции.
j
j
Прием входных данных. При этом вектор меток Р из массива данных о курсе судна A направляют на блок выбора рабочего режима и преобразуют в форму вектора сообщения.
cond
Классификация. Вектор сообщения Р с некоторой заданной погрешностью сравнивают с условными частями A классификаторов в БЗ 8, при этом:
- при наличии нескольких близких выбирается классификатор с лучшим вектором параметров качества работы F;
- при отсутствии сопоставления вектор сообщения направляется на дообучение классификаторов ИК 4;
- при наличии одного выбора реализуется указанное в правиле действие.
Реализация действия классификатора. В соответствии с действием выигравшей условной части правила этого классификатора выбирают НС, требуемую действием выигравшей условной части правила, направляют вектор данных о курсе судна Х на соответствующую матрицу связей НС и обрабатывают на этой НС копии вектора данных о курсе судна X.
j
j
j
j
j
j
Сравнение решений. Рассчитывают параметры качества работы t и n НС и направляют вектор параметров качества работы F={t, n} в БЗ 8 для проверки его соответствия подобному вектору при классификаторе-победителе, причем при положительном ответе на их сопоставимость выдают вектор выходных данных Y на УВИ 2, а при отрицательном исходе проверки реализуют процесс дообучения классификаторов ИК 4 к исходному вектору сообщения Р.
j
r
j
j
Процесс дообучения ИК. В исходном векторе сообщения P часть его символов заменяют на символ отсутствия конкретизации "#", после чего контрастированный таким образом вектор сообщения направляют на множество классификаторов С, в котором слабый классификатор с помощью, например, инверсионного колеса рулетки, заменяется на новый, после чего реализуют процедуру обучения классификаторов ИК 4, отличающуюся от вышеописанной тем, что при сравнении результатов работы классификаторов рассчитывают только два рабочих параметра качества t и n.
На фиг.2 изображены результаты компьютерного моделирования, соответствующие архитектурам НС, показавшим наилучшие результаты, и ИВК. Обучение НС проводилось для различных эталонных моделей, целью управления являлось формирование НС управляющего воздействия на объект, при котором курс объекта соответствовал бы курсу эталонной модели. Представленные результаты моделирования показывают, что ИВК функционирует лучше, чем отдельная НС с наилучшей архитектурой для решения задачи управления курсом судна.
На фиг.4. изображены график эталонной модели (model) и график, полученный функционированием ИВК (result). Из графиков видно, что ИВК позволяет достаточно точно приближать поведение судна к поведению эталонной модели. Таким образом, предлагаемая ИВК достаточно эффективно справляется с поставленной задачей управления курсом судна.
Приведенные примеры использованы только для целей иллюстрации возможности осуществления изобретения и не ограничивают объем правовой охраны, представленный в формуле изобретения, при этом специалист в данной области техники относительно просто способен осуществить и другие пути осуществления изобретения.