Идентификация равновесного положения надводного корабля в условиях реального волнения

Способы идентификации равновесного положения надводного корабля. Моделирование бортовой качки корабля на двумерном нерегулярном волнении. Модели расчета равновесного положения надводного корабля. Настройка основных параметров регрессионной модели.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 31.10.2017
Размер файла 627,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Санкт-Петербургский государственный университет

Кафедра компьютерного моделирования и многопроцессорных систем

Выпускная квалификационная работа бакалавра

Идентификация равновесного положения надводного корабля в условиях реального волнения

Лаврентьев Алексей Иванович

Научный руководитель,

доктор технических наук, профессор

Дегтярёв Александр Борисович

Санкт-Петербург

2016

Оглавление

Введение

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

Моделирование двумерного нерегулярного волнения

Моделирование бортовой качки корабля

Модели расчета равновесного положения надводного корабля

Настройка параметров регрессионной модели

· Метод наименьших квадратов

· Метод наименьших модулей

· Метод равномерного приближения

· Ранговый метод

· Кубическая оценка отклонений

· Оценка отклонений четвертой степени

Описание этапов исследования

Осуществление этапов исследования

Выводы

Заключение

Список литературы

Приложения

Введение

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

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

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

Необходимость своевременного определения и прогнозирования равновесного положения иллюстрируется примерами гибели атомных подводных лодок К-8 проекта 627А «Кит» в 1970 году, К-219 в 1986 году и К-278 «Комсомолец» в 1989 году. Так, на АПЛ «Комсомолец» случился пожар. Большую часть времени в ходе борьбы за живучесть подводная лодка находилась в надводном положении. Командир корабля доложил, что, хотя пожар продолжается, он контролируется экипажем. Через 6.5 часов после начала аварии неожиданно для командира корабля подводная лодка с незначительных 2 градусов дифферента на корму за полчаса осела до 80 градусов, после чего стремительно затонула [1]. Эта катастрофа произошла из-за ряда ошибок, допущенных в ходе борьбы за живучесть корабля. Из-за аварии судно имеет осадку, отличную от равновесной, т.е. даже в отсутствии волнения углы крена и дифферента не равны нулю, а осадка не по конструктивную ватерлинию. При борьбе за живучесть корабля данное обстоятельство необходимо учитывать непрерывно. Затапливая аварийные отсеки, выравнивая крен или дифферент методом продувки балластных цистерн, следует иметь представление о том, как эти действия отражаются на изменении крена и дифферента судна. Для этого и необходимо совершенствовать методы идентификации равновесного положения корабля.

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

Моделирование для расчета равновесного положения надводного корабля при различных внешних условиях и различных типах аварий может быть либо натурное, либо математическое. Натурное моделирование проводится в опытовых бассейнах, либо в условиях реального волнения. Для этого строится подробная модель судна, иногда радиоуправляемая, и проводится её тестирование. Натурный подход связан с более значительными материальными и временными издержками относительно математического подхода. Полноценный натурный эксперимент в таких условиях практически невозможен. Постановка же модельного эксперимента кроме значительных материальных издержек, не дает гарантии удачного результата в силу присутствия масштабного эффекта и невозможности воспроизведения всего спектра внешних воздействий. В связи с этим, развитие математических методов для настройки процедуры идентификации равновесного положения несет с собой экономическую выгоду, при этом противопоставление их физическому эксперименту, как более надежному, не выдерживает серьезной критики.

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

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

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

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

Рисунок 1а - аварийное Рисунок 1б - аварийное положение

положение без дифферента с дифферентом на корму

Рисунок 1в - аварийное Рисунок 1г - аварийное положение

положение с дифферентом и с дифферентом на нос

креном

Рисунок 1д - крейсерское Рисунок 1е - позиционное положение

положение

В данном исследовании планируется выполнить следующие задачи:

· Смоделировать двумерное нерегулярное морское волнение

· Смоделировать изолированную бортовую качку надводного корабля

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

· Рассмотреть применимость и эффективность алгоритмов по расчету равновесного положения надводного корабля для изолированной бортовой качки

· Выявить наиболее эффективный метод поиска параметров регрессионной модели относительно критериев среднего абсолютного отклонения и наибольшего абсолютного отклонения

Реализация исследования будет осуществляться в пакете прикладных программ для решения задач технических вычислений MATLAB.

Моделирование двумерного нерегулярного волнения

Для моделирования волнения целесообразно использовать многопараметрический идеализированный энергетический спектр двумерного нерегулярного волнения, представляющий собой плотность распределения дисперсий амплитуд волнения по частотам непрерывного спектра [2] и относящийся к частотному распределению, имеющему форму Барлинга [3]:

где коэффициенты A, B и показатели степени k и n зависят от волнообразующих факторов.

Реальное волнение, обыкновенно, бывает смешанным, т.е. оно состоит из двух составляющих: ветрового волнения и зыби. Для моделирования первой составляющей, при условии того, что волнение зависит только от скорости ветра, в данной работе используется модель Бретшнайдера (1959 г.) [4]: k = 5, n = 4; A и B - коэффициенты, связанные со значительной высотой волны и модальным периодом по зависимостям:

где h - значительная высота волны, - период волнения, зависящий от h по зависимости, выведенной И.Н. Давиданом [5]:

Для моделирования второй составляющей - зыби, используются те же формулы, что и для ветрового волнения, но с другими показателями степени: k = 9, n = 8.

Для получения смешанного волнения достаточно сложить частотные распределения для ветрового волнения и зыби.

Таким образом, получается энергетический спектр с двумя локальными частотными максимумами:

Рисунок 2

Итоговое волнение генерируется как сумма косинусов с разными амплитудами, частотами и начальными значениями:

где берутся последовательно из отрезка [0.3; 1.4], - случайные числа из промежутка (0; 2р), а находятся по формуле:

Реализация генерации реального волнения описана в waves.m и spectrplotn.m, которые представлены в приложении к данной ВКР.

Моделирование бортовой качки корабля

Динамика судна на волнении описывается нелинейным дифференциальным уравнением:

где , , , - функции, описывающие судна как динамическую систему (инерционные, демпфирующие, восстанавливающие и возмущающие компоненты) [6].

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

Это дифференциальное уравнение изолированной бортовой качки.

Здесь - угловое ускорение крена, - угловая скорость крена, - восстанавливающая компонента, зависящая от угла крена, - возмущающая компонента, характеризующая собой реальное волнение.

При алгоритмической реализации работы в среде MATLAB данное дифференциальное уравнение решается численно с помощью явного четырехэтапого метода Рунге-Кутты, путем сведения дифференциального уравнения второго порядка к системе дифференциальных уравнений первого порядка. Алгоритмы решения и сопутствующих вычислений описаны в следующих m-файлах: yamrk4.m, systf.m, Ax.m.

Модели расчета равновесного положения надводного корабля

Поиск равновесного положения надводного корабля в условиях боковой качки будет осуществляться с помощью стандартного алгоритма определения равновесных параметров посадки аварийного судна на волнении Ю.И. Нечаева. Алгоритм основывается на данной общей функциональной зависимости, предназначенной для определения параметров равновесной ватерлинии при нелинейных ассиметричных колебаниях [7]:

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

В исследовании рассматривается только один параметр равновесного положения судна - угол крена. Поэтому алгоритм Ю.И. Нечаева возможно конкретизировать:

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

Наряду с этим уравнением будет рассмотрено и аналогичное:

Для нахождения коэффициентов A и B удобно преобразовать оба уравнения изолированной качки к такому виду соответственно:

В дальнейшем дробь, содержащая вторые производные, будет обозначаться символом Щ.

Настройка параметров регрессионной модели

В модели расчета равновесного положения надводного корабля Ю. И. Нечаева функция является регрессионной моделью, параметры которой необходимо настроить. Настройка должна вести к минимизации погрешности между рассчитанным значением равновесного положения и реальным. Для случая изолированной бортовой качки регрессионная формула Нечаева содержит регрессию, описываемую полиномом второй степени, но свободный член в котором не является параметром. Поэтому методы аппроксимации, применяемые для настройки параметров регрессии, должны быть модифицированы.

Метод наименьших квадратов

МНК является чрезвычайно распространенным методом в задачах на поиск регрессии и аппроксимации. Он заключается в том, что происходит минимизация среднеквадратичного отклонения при поиске, например, аппроксимирующего полинома фиксированной степени m:

Поиск аппроксимирующего полинома сводится к подбору коэффициентов , минимизирующих функцию:

Применение необходимого условия экстремума, , дает нормальную систему метода наименьших квадратов:

Эта система является системой алгебраических уравнений относительно , у нее существует решение и оно единственно. Т.к. регрессия в формуле Нечаева описывается полиномом второй степени со свободным членом, равным нулю, то нормальная система метода наименьших квадратов принимает вид:

Метод наименьших модулей

МНМ менее популярен МНК потому, что его реализация не сводится к решению системы линейных алегбраических уравнений, как в МНК, но он имеет свое преимущество, заключающееся в том, что он более помехозащищен [8]. Это объясняется тем, что функция потерь МНК-оценки основывается на квадратах отклонений наблюдаемых значений, а функция потерь МНМ-оценки включает в себя данные отклонения линейно [9]. В случае МНМ происходит минимизация абсолютных отклонений. Минимизируемая функция при поиске аппроксимирующего полинома фиксированной степени m:

Вместо использования классического алгоритма минимизации (метода Гаусса) для поиска коэффициентов , как в случае МНК, т.е. когда необходимое условие минимума - , будет использоваться встроенная в систему MATLAB функция «поиск минимума функции нескольких переменных без ограничений FMINSEARCH». Эта функция основана на методе симплексного поиска.

Поиск минимума функции z переменных симплекс-методом выполняется по следующим этапам:

· Выбирается некоторое начальное приближение , в дополнение к нему генерируются еще z точек, прибавляя к каждой компоненте 5% ее значения. В точках рассчитывается значение функции f. Данные точки сортируются по возрастанию значения функции f в них, тем самым порождая набор точек , такой, что при . Тогда точки сформировывают симплекс.

· Генерируется точка k, значение функции в которой сопоставляется со значениями функции f в вершинах симплекса. Если в какой-либо вершине значение функции больше значения функции в точке k, то эта точка назначается новой вершиной симплекса, взамен точки , в которой функция принимает наибольшее значение. Новый набор вершин ранжируется по возрастанию значения функции f в них.

· Предыдущий этап повторяется, покуда диаметр симплекса не станет меньше заданной величины. По завершении алгоритма за решение задачи о минимизации функции берется точка из совокупности вершин симплекса.

Рассматриваемой задаче соответствует поиск минимума следующей функции:

Метод равномерного приближения

Равномерное приближение минимизирует наибольшее абсолютное значение ошибки. Критерий равномерного приближения обеспечивает заданную точность расчета, но является причиной большего среднеквадратичного отклонения.

Минимизируемая функция при поиске аппроксимирующего полинома фиксированной степени m:

Поиск полинома наилучшего равномерного приближения таблицы при называется задачей чебышевского интерполирования. В настоящей работе данная задача решается численно с помощью встроенной в систему MATLAB функции «поиск минимума функции нескольких переменных без ограничений FMINSEARCH», принцип работы которой описан в разделе «Метод наименьших модулей».

Рассматриваемой задаче соответствует поиск минимума следующей функции:

Ранговый метод

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

Для линейной регрессионной модели ранговая оценка вектора параметров (без свободного члена ) - это вектор , минимизирующий функцию:

где - строка матрицы X, - элемент вектора Y, - ранг среди всех величин , [10].

Для справедлива теорема: при фиксированном Y данная функция - выпуклая, непрерывная и неотрицательная по . Вследствие этого, глобальный минимум возможно гарантированно найти с помощью какого-либо численного метода [11].

Для нахождения свободной компоненты в регрессионной модели следует на основании полученной оценки найти выборочную медиану по выборке остатков модели , …, [12].

Регрессионная модель, рассматривающаяся в данном исследовании, не является линейной, поэтому ранговый метод необходимо модифицировать. Кроме того, рассмотренная ранговая оценка инвариантна относительно вертикального сдвига, а значит, во время ее вычисления необходимо учесть, что медиана по выборке остатков модели должна быть равна нулю, чтобы свободный член регрессионной модели был равен нулю, согласно алгоритма Нечаева.

Замена линейной регрессии в ранговой оценке вектора параметров на квадратичную дает итоговую функцию ранговой оценки:

Для того, чтобы учитывалось условие равенства нулю медианы по выборке остатков модели, решено использовать встроенную в систему MATLAB функцию «поиск минимума функции нескольких переменных с ограничениями FMINCON». Данная функция основана на градиентном методе. Используемое ограничение:

Начальный вектор должен удовлетворять данному ограничению, поэтому он ищется с помощью функции «поиск минимума функции нескольких переменных без ограничений FMINSEARCH» при минимизации следующей функции:

Кубическая оценка отклонений

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

Для рассматриваемой в данной работе задачи функция будет такой:

Минимизация этой функции реализуется в MATLAB с помощью функции «поиск минимума функции нескольких переменных без ограничений FMINSEARCH».

Оценка отклонений четвертой степени

Оценка отклонений четвертого порядка аналогична кубической оценке отклонений, но она имеет под собой теоретическое обоснование, поскольку основывается на гёльдеровой норме n-мерных векторов:

где В рассматриваемом случае т.е. норма . Любой норме соответствует метрика. Если соответствующую метрику упростить аналогично методу наименьших квадратов, то итоговая минимизируемая функция такова:

Минимизация функции реализуется в MATLAB с помощью функции «поиск минимума функции нескольких переменных без ограничений FMINSEARCH».

Описание этапов исследования

Для получения данных во времени о бортовой качке надводного корабля необходимо решить дифференциальное уравнение изолированной бортовой качки, описанное в главе «Моделирование бортовой качки корабля». Данные о восстанавливающей компоненте поперечной остойчивости берутся для шести отдельных случаев состояния надводного корабля, описанных в постановке задачи и графики которых отображены на рисунках 1а-е. Если угол крена при решении данного дифференциального уравнения находится в пределах [-40; 40] градусов, то для нахождения восстанавливающего момента происходит линейная интерполяция между двумя соседними известными точками. Если же угол крена вне отрезка [-40; 40] градусов, то значение для восстанавливающего момента берется соответственно аппроксимирующего полинома 3 степени, который смещается в зависимости от того, в какой полуплоскости находится значение крена, чтобы экстраполяция получилась более точной. Данные о возмущающей компоненте генерируются конкретной реализацией реального волнения, слагающегося из 50 отдельных волн, моделирование которой описано в главе «Моделирование двумерного нерегулярного волнения». Коэффициент «а» при демпфирующей компоненте берется достаточно малым, а именно равным 0.1, т.к. надводный корабль находится в воде - невязкой жидкости.

Получив данные об углах крена, следует найти среднее значение крена, средние значения экстремальных значений амплитуд ускорений судна относительно вертикальной центральной оси и , где «+» означает учет лишь локальных максимумов, а «-» - локальных минимумов, и средний размах процесса колебательного движения судна относительно вертикальной центральной оси по формулам:

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

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

,

массив и массив достаточного объема для настройки параметров регрессионной модели для каждого из способов расчета равновесного положения надводного корабля. Некоторые из получаются чрезмерно малыми из-за того, что в некоторых из типовых положений надводного корабля в сочетании с некоторыми реализациями качки положительные и отрицательные части ускорения бортовой качки получаются симметричными и малыми, поэтому на длительном промежутке времени (t = 2500 c.) средние значения экстремальных значений амплитуд ускорений судна относительно вертикальной центральной оси и практически одинаковы. Реализацию бортовой качки, соответствующей подобному , необходимо и возможно исключить, т.к. данная реализация не является существенным экстремальным случаем в физическом смысле.

Осуществление этапов исследования

Для генерации выборки моделируются 20 волнений. Данные о бортовой качке надводного корабля расчитываются для каждого из шести типов положения корабля в сочетании с каждым из 20 сгенерированных двумерных нерегулярных волнений. Из получившихся 120 реализаций данных о бортовой качке надводного корабля отсеиваются те, для которых по модулю меньше 0.01. На этом этапе необходимо выбрать один из двух алгоритмов идентификации равновесного положения надводного корабля для изолированной качки Ю.И. Нечаева. Далее происходит формирование массивов данных, описаных в разделе «Описание этапов исследования». Затем к выборке применяются каждый из шести реализованных методов аппроксимации, описанных в разделе «Настройка параметров регрессионной модели», после чего строятся соответствующие графики кривых.

Выявление наиболее эффективного метода настройки параметров модели регрессии происходит путем сравнения наибольших абсолютных отклонений и средних абсолютных отклонений по формулам:

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

Сравнение алгоритмов идентификации равновесного положения надводного корабля для изолированной качки Ю.И. Нечаева вытекает из сравнения точности методов настройки параметров регрессионной модели в этих алгоритмах.

Рисунок 3 - результаты шести методов настройки параметров регрессионной модели в первой формуле изолированной качки Ю.И. Нечаева

По оси ординат - , по оси абсцисс - .

· Синяя кривая - метод наименьших модулей

· Желтая кривая - ранговый метод

· Зеленая кривая - метод наименьших квадратов

· Голубая кривая - кубическая оценка отклонений

· Розовая кривая - оценка отклонений 4 порядка

· Черная кривая - метод равномерного приближения

Таблица 1 - среднее абсолютное отклонение и наибольшее абсолютное отклонение

Рисунок 4 - результаты шести методов настройки параметров регрессионной модели во второй формуле изолированной качки Ю.И. Нечаева

По оси ординат - , по оси абсцисс - .

· Синяя кривая - метод наименьших модулей

· Желтая кривая - ранговый метод

· Зеленая кривая - метод наименьших квадратов

· Голубая кривая - кубическая оценка отклонений

· Розовая кривая - оценка отклонений 4 порядка

· Черная кривая - метод равномерного приближения

Таблица 2 - среднее абсолютное отклонение и наибольшее абсолютное отклонение

Выводы

При рассмотрении таблиц 1 и 2 становится очевидно, что вторая формула изолированной бортовой качки Ю.И. Нечаева по критерию среднего абсолютного отклонения точнее первой формулы примерно в четыре раза, а по критерию наибольшего абсолютного отклонения примерно в пять раз. Исходя из этого, можно сделать однозначный вывод: вторая формула изолированной бортовой качки гораздо более предпочтительней.

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

Кубическая оценка отклонений и оценка отклонений 4 порядка дают сходные результаты в обоих случаях и по обоим критериям. Значения как по критерию среднего абсолютного отклонения, так и по критерию наибольшего абсолютного отклонения являются нечто средним среди остальных методов. Если эксплуататору надводного корабля важно учесть редкие ситуации, случающиеся с судном, то данные способы настройки параметров регрессионной модели могут быть оптимальным выбором.

Из рисунков 3 и 4 ясно, что метод наименьших квадратов качественно не отличается от кубической оценки отклонений и оценки отклонений 4 порядка. Поэтому данный способ настройки тоже может быть актуален в вышеописанном случае.

Самыми эффективными способами настройки параметров регрессионной модели относительно обоих критериев являются методы наименьших модулей и ранговый. Ранговый метод совсем немного «проигрывает» методу наименьших модулей по обоим критериям в первом случае, и по критерию среднего абсолютного отклонения во втором. Но, что примечательно, по критерию наибольшего абсолютного отклонения во втором случае он выходит победителем. Это означает, что немного уступив в точности измерений, что не критично, как следует из пояснения в разделе «Осуществление этапов исследования», возможно более лучшим образом учесть чуть менее распространенные случаи. А так как вторая формула является однозначно более предпочтительной, то можно заключить, что ранговый метод является наиболее эффективным методом настройки параметров регрессионной модели в формуле изолированной качки Ю.И. Нечаева. В случае же, когда простота вычислений первостепенна, возможно без особых рисков применить метод наименьших модулей.

Заключение

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

Целью данной работы ставилась качественная оценка методов и моделей, что было успешно выполнено.

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

Список литературы

равновесный надводный корабль моделирование

1. Ришес К. Равновесие для выживания // Популярная механика, 2014. №145. http://www.popmech.ru/weapon/50840-kak-spasat-atomnye-podvodnye-lodki/

2. Колызаев Б.А., Косоруков А.И., Литвиненко В.А. Справочник по проектированию судов с динамическими принципами поддержания. Л.: Судостроение, 1980. 141 с.

3. Благовещенский С.Н., Холодилин А.Н. Бортовая качка судна на волнении: Учебное пособие. Л.: Изд.ЛКИ, 1983. 6 с.

4. Режим, диагноз и прогноз ветрового волнения в морях и океанах / Под ред. Е.С. Нестерова. М.: Изд-во РОСГИДРОМЕТ, 2013. 108 с.

5. Давидан И.Н., Лопатухин Л.И., Рожков В.А. Ветровое волнение как вероятностный гидродинамический процесс. Л.: Гидрометеоиздат, 1978. 120 с.

6. Нечаев Ю.И., Хейн Тун. Анализ и прогноз поведения судна в экстремальной ситуации на основе нечеткой системы знаний // Искусственный интеллект, 2009. №3. 435 с.

7. Нечаев Ю.И., Петров О.Н. Непотопляемость судов: подход на основе современной теории катастроф. Спб.: Арт-Экспресс, 2014. С. 209-212.

8. Волков Н.Г., Кондрашов В.С., Мороз З.Д. Сравнение алгоритмов минимизации при реализации метода наименьших модулей. М.: ЦНИИатоминформ, 1987. 3 с.

9. Айвазян С.А., Енюков И.С., Мешалкин Л.Д. Прикладная статистика: исследование зависимостей: Справочное издание. М.: Финансы и статистика, 1985. 212 с.

10. Louis A. Jaeckel. Estimating Regression Coefficients by Minimizing the Dispersion of the Residuals // The Annals of Mathematical Statistics, 1972. Vol. 43, Number 5 (1972). P. 1450. http://projecteuclid.org/euclid.aoms/1177692377

11. Хеттманспергер Т. Статистические выводы, основанные на рангах. М.: Финансы и статистика, 1987. 257 с.

12. Thomas P. Hettmansperger, Joseph W. McKean. Robust Nonparametric Statistical Methods: Second Edition. Chapman & Hall/CRC Monographs on Statistics & Applied Probability, 2011. P. 183.

Приложения

apprx.m

function [A, B] = apprx(n, startotr, endotr, ap, cosn, pereklModel)

startotr = 0;

endotr = 2500;

n = (endotr - startotr)*5;

ap = 0.1;

cosn = 50;

A = 1;

B = 2;

idots = 0;

files = dir('C:\matlab\ShipsData');

schet = 0;

for j = 1:length(files)

if (files(j).isdir() == 0)

schet = schet + 1;

spisok{schet} = files(j).name;

spisok{schet} = strcat('C:\matlab\ShipsData\', spisok{schet});

temparr = load(spisok{schet});

letemparr = length(temparr(:, 1));

for i=1:letemparr

data(schet, i, 1) = temparr(i, 1);

data(schet, i, 2) = temparr(i, 2);

if(temparr(i, 2) == 0)

zero(schet) = data(schet, i, 1);

end

end

end

end

kolv = length(spisok);

iter = 20;

for i = 1:iter

[xsred(i,:), xsr(i,:), xssrm(i,:), xssrp(i,:)] = stab(n, ap, startotr, endotr, cosn, kolv, data, zero);

for j = 1:length(xsred(i,:))

if(abs((xssrp(i, j) - xssrm(i, j))/(xssrp(i, j) + xssrm(i, j))) > 0.01)

omega(i, j) = (xssrp(i, j) - xssrm(i, j))/(xssrp(i, j) + xssrm(i, j));

idots = idots + 1;

xsred2(idots) = xsred(i, j);

xsr2(idots) = xsr(i, j);

xssrm2(idots) = xssrm(i, j);

xssrp2(idots) = xssrp(i, j);

omega2(idots) = omega(i, j);

zero2(idots) = zero(j);

dotsx(idots) = xsr(i, j);

if(pereklModel == 1)

dotsy(idots) = (zero(j)/xsred(i, j) - 1)/omega(i, j);

else

dotsy(idots) = (zero(j) - xsred(i, j))/omega(i, j);

end

end

end

end

minx = min(dotsx);

maxx = max(dotsx);

polykoofMNK = MNK(dotsx, dotsy, 2);

polyxMNK = polyval(polykoofMNK, minx:0.1:maxx);

a = [10 10];

polykoofMNM = fminsearch(@(ax) MNM(dotsx, dotsy, 2, ax), a);

polykoofMNM = polykoofMNM(end:-1:1);

polykoofMNM(end + 1) = 0;

polyxMNM = polyval(polykoofMNM, minx:0.1:maxx);

a = [10 10];

polykoofMNMX = fminsearch(@(ax) minimax(dotsx, dotsy, 2, ax), a);

polykoofMNMX = polykoofMNMX(end:-1:1);

polykoofMNMX(end + 1) = 0;

polyxMNMX = polyval(polykoofMNMX, minx:0.1:maxx);

a = [10 10];

ast = fminsearch(@(ax) medianbounds(dotsx, dotsy, ax), a);

z0 = median(dotsy - dotsx.*ast(1) - (dotsx.^2).*ast(2));

polykoofRang = fmincon(@(ax)rangoc(dotsx, dotsy, ax), ast, [], [], [], [], [], [], @(ax)medianbound(dotsx, dotsy, ax));

polykoofRang = polykoofRang(end:-1:1)

polykoofRang(end + 1) = 0;

polyxRang = polyval(polykoofRang, minx:0.1:maxx);

a = [10 10];

polykoofMNQ4 = fminsearch(@(ax) MNQ4(dotsx, dotsy, 2, ax), a);

polykoofMNQ4 = polykoofMNQ4(end:-1:1);

polykoofMNQ4(end + 1) = 0;

polyxMNQ4 = polyval(polykoofMNQ4, minx:0.1:maxx);

a = [10 10];

polykoofMNQ3 = fminsearch(@(ax) MNQ3(dotsx, dotsy, 2, ax), a);

polykoofMNQ3 = polykoofMNQ3(end:-1:1);

polykoofMNQ3(end + 1) = 0;

polyxMNQ3 = polyval(polykoofMNQ3, minx:0.1:maxx);

hold on

plot(dotsx, dotsy, 'ro');

plot(minx:0.1:maxx, polyxMNK, 'g');

plot(minx:0.1:maxx, polyxMNM, 'b');

plot(minx:0.1:maxx, polyxMNMX, 'k');

plot(minx:0.1:maxx, polyxRang, 'y');

plot(minx:0.1:maxx, polyxMNQ3, 'c');

plot(minx:0.1:maxx, polyxMNQ4, 'm');

epsilonMNKs = 0;

epsilonMNMs = 0;

epsilonMNMXs = 0;

epsilonRangs = 0;

epsilonMNQ3s = 0;

epsilonMNQ4s = 0;

for i = 1:idots

if(pereklModel == 1)

epsilonMNK(i) = abs(xsred2(i)*(1 + (polykoofMNK(2)*xsr2(i) + polykoofMNK(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNM(i) = abs(xsred2(i)*(1 + (polykoofMNM(2)*xsr2(i) + polykoofMNM(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNMX(i) = abs(xsred2(i)*(1 + (polykoofMNMX(2)*xsr2(i) + polykoofMNMX(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonRang(i) = abs(xsred2(i)*(1 + (polykoofRang(2)*xsr2(i) + polykoofRang(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNQ3(i) = abs(xsred2(i)*(1 + (polykoofMNQ3(2)*xsr2(i) + polykoofMNQ3(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNQ4(i) = abs(xsred2(i)*(1 + (polykoofMNQ4(2)*xsr2(i) + polykoofMNQ4(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

else

epsilonMNK(i) = abs((xsred2(i) + (polykoofMNK(2)*xsr2(i) + polykoofMNK(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNM(i) = abs((xsred2(i) + (polykoofMNM(2)*xsr2(i) + polykoofMNM(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNMX(i) = abs((xsred2(i) + (polykoofMNMX(2)*xsr2(i) + polykoofMNMX(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonRang(i) = abs((xsred2(i) + (polykoofRang(2)*xsr2(i) + polykoofRang(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNQ3(i) = abs((xsred2(i) + (polykoofMNQ3(2)*xsr2(i) + polykoofMNQ3(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

epsilonMNQ4(i) = abs((xsred2(i) + (polykoofMNQ4(2)*xsr2(i) + polykoofMNQ4(1)*xsr2(i).^2)*omega2(i)) - zero2(i));

end

epsilonMNKs = epsilonMNKs + epsilonMNK(i);

epsilonMNMs = epsilonMNMs + epsilonMNM(i);

epsilonMNMXs = epsilonMNMXs + epsilonMNMX(i);

epsilonRangs = epsilonRangs + epsilonRang(i);

epsilonMNQ3s = epsilonMNQ3s + epsilonMNQ3(i);

epsilonMNQ4s = epsilonMNQ4s + epsilonMNQ4(i);

end

epsilonMNKs = epsilonMNKs/idots

epsilonMNMs = epsilonMNMs/idots

epsilonMNMXs = epsilonMNMXs/idots

epsilonRangs = epsilonRangs/idots

epsilonMNQ3s = epsilonMNQ3s/idots

epsilonMNQ4s = epsilonMNQ4s/idots

epsilonMNKm = max(epsilonMNK)

epsilonMNMm = max(epsilonMNM)

epsilonMNMXm = max(epsilonMNMX)

epsilonRangm = max(epsilonRang)

epsilonMNQ3m = max(epsilonMNQ3)

epsilonMNQ4m = max(epsilonMNQ4)

end

stab.m

function[xsred, xsr, xssrm, xssrp] = stab(n, ap, a, b, cosn, kolv, data)

h = (b - a)/n;

i = 1;

fi = waves(a, b, h, cosn);

xsi(i) = fi(1);

ti(i) = 0;

ti2(i) = 0;

ti2(i + 1) = h/2;

for kolvi = 1:kolv

polyship = polyfit(data(kolvi,:, 1), data(kolvi,:, 2), 3);

i = 1;

xi(i, 1) = 0;

xi(i, 2) = 0;

xsred(kolvi) = 0;

xprsred(kolvi) = 0;

for t = a+h:h:(b-h)

i = i + 1;

ti(i) = t;

ti2(2*i) = t;

ti2(2*i - 1) = ti2(2*i) - h/2;

res = yamrk4(xi(i - 1, 1), xi(i - 1, 2), h, fi(i*2 - 1), fi(i*2), fi(i*2 + 1), ap, polyship, data(kolvi,:, 1), data(kolvi,:, 2));

xi(i, 1) = res(1);

xi(i, 2) = res(2);

xsred(kolvi) = xi(i, 1) + xsred(kolvi);

xsi(i) = fi(2*(i - 1)+1) - ap*xi(i, 2) - Ax(xi(i, 1), polyship, data(kolvi,:, 1), data(kolvi,:, 2));

xprsred(kolvi) = xsi(i) + xprsred(kolvi);

end

xsred(kolvi) = xsred(kolvi)/n;

xprsred(kolvi) = xprsred(kolvi)/n;

xim = xi(:, 1)';

[extret, extrex] = extrs(ti, xi(:, 1), xsred(kolvi));

[extrets, extrexs] = extrs(ti, xsi, xprsred(kolvi));

xsr(kolvi) = xmid(extret, extrex);

[xssrm(kolvi), xssrp(kolvi)] = xsmid(extrets, extrexs, xprsred(kolvi));

ti2(2*i - 1) = b - h/2;

ti2(2*i) = b;

ti2(2*i + 1) = b+h/2;

% if kolvi == kolvi

% hold on

%polyx = polyval(polyship, -50:0.1:50);

%plot(-50:0.1:50, polyx);

%plot(data(kolvi,:, 1), data(kolvi,:, 2), 'ro');

%data(kolvi,:, 1)

%data(kolvi,:, 2)

%plot(ti, xi(:, 1));

% plot(extret, extrex, 'ro');

%plot(ti, xsred(kolvi));

%plot(ti, xsi);

% plot(extrets, extrexs, 'ro');

% plot(ti, xprsred(kolvi));

% end

end

end

waves.m

function [zn] = waves(pr1, pr2, h, n)

random = rand(1, n);

i = 0;

phi = random.*(2*pi);

wstart = 0.3;

wend = 1.4;

dw = (wend - wstart)/n;

for j = 1:n

w(j) = wstart + (j - 1)*dw + dw/2;

c(j) = quadl('spectrplotn', (wstart + (j - 1)*dw), (wstart + j*dw), 10e-5);

c(j) = sqrt(2*c(j));

end

for t = pr1:(h/2):pr2

i = i + 1;

ti(i) = t;

zn(i) = 0;

for j = 1:n

zn(i) = zn(i) + (0.33)*c(j)*cos(w(j)*t + phi(1, j));

end

end

%hold on

%plot(ti, zn)

end

spectrplotn.m

function [y] = spectrplotn(x)

h = 4;

tau = 4.8*sqrt(h);

A = 0.28*(2*pi).^4*h.^2*tau.^(-4);

B = 0.44*(2*pi).^4*tau.^(-4);

h1 = 3;

tau1 = 4.8*sqrt(h1);

A1 = 0.28*(2*pi).^4*h1.^2*tau1.^(-4);

B1 = 0.44*(2*pi).^4*tau1.^(-4);

k = 5;

n = 4;

p = 9;

m = 8;

y = A.*x.^(-k).*exp(-B.*x.^(-n)) + A1.*x.^(-p).*exp(-B1.*x.^(-m));

end

Размещено на Allbest.ru

...

Подобные документы

  • Разработка модели движения трёх видов судов: надводного корабля "Красный Кавказ", катера "Тритон" и корабля на подводных крыльях. Написание программной модели в среде Matlab и исследование с ее помощью динамических свойств моделируемых объектов.

    курсовая работа [590,5 K], добавлен 08.03.2012

  • Разработка и реализация моделирующего алгоритма процесса обслуживания 150 кораблей путем написания программы в среде GPSS/PC. Временная диаграмма процедуры погрузки-разгрузки кораблей. Структурная схема функционирования причалов в символике Q-схем.

    курсовая работа [711,4 K], добавлен 22.06.2011

  • Проведение идентификации модели по схеме МНК. Запись исходной модели в дискретной форме. Сравнение параметров модели и результатов идентификации. Анализ графиков модельного выходного сигнала и оценки выходного сигнала, восстановленных по схеме МНК.

    лабораторная работа [461,0 K], добавлен 19.02.2015

  • Описание разрабатываемой программы с точки зрения пользователя. Диаграмма вариантов использования приложения. Объектное представление программы. Разработка класса корабля, прикладного окна и события but. Окно приложения с перемещающимися кораблями.

    курсовая работа [207,0 K], добавлен 05.04.2014

  • Исследование связи между временем достижения торпеды, снабжённой разгонным двигателем (глубинной бомбы) заданной глубины и формой корпуса противолодочного корабля: сферической, полусферической, каплевидной. Представление этой зависимости графически.

    контрольная работа [110,6 K], добавлен 31.05.2010

  • Расчет в программах Mathcad и Matlab связи между глубиной залегания подводной лодки, временем поражения цели и расстоянием, который корабль успеет пройти по горизонтали. При условии, что пуск торпеды производится в момент прохождения корабля над лодкой.

    контрольная работа [102,3 K], добавлен 31.05.2010

  • Присвоение атрибутов в AutoCad. Проектирование в AutoCAD 3D модели детали с настройкой параметров визуализации. Настройка обзора реального объекта. Упрощенный редактор многострочного текста, используемый для форматирования многострочных атрибутов.

    курсовая работа [3,8 M], добавлен 03.03.2014

  • Преобразование формулы и решение ее с помощью Метода Эйлера. Моделирование метода оптимизации с функцией Розенброка. Поиск модели зашумленного сигнала. Нахождение минимума заданной целевой функции методом покоординатного спуска нулевого порядка.

    курсовая работа [1,2 M], добавлен 21.12.2013

  • Анализ современного состояния общей проблемы синтеза моделей многофакторного оценивания и подходов к ее решению. Разработка математической модели метода компараторной идентификации модели многофакторного оценивания. Описание генетического алгоритма.

    дипломная работа [851,7 K], добавлен 11.09.2012

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

    реферат [453,5 K], добавлен 26.10.2010

  • Рассмотрение основных способов идентификации объектов: реккурентного; с использованием степенных полиномов; ортогональных полиномов Чебышева; методом наименьших квадратов для авторегрессионной модели. Алгоритм построения простых диагностических тестов.

    курсовая работа [1,9 M], добавлен 14.06.2012

  • Идентификация объектов методом наименьших квадратов, построение линейной модели для неравноточных измерений входной величины. Численные процедуры оценивания параметров нелинейной регрессии; аналитическая модель химического реактора; линеаризация.

    курсовая работа [1,2 M], добавлен 12.12.2010

  • Теоретические основы и проблемы принятия решений. Синтез модели многофакторного оценивания, метод компараторной идентификации. Особенности реализации базового генетического алгоритма. Программный способ определения эффективного состава команды проекта.

    дипломная работа [733,1 K], добавлен 09.06.2012

  • Разработка системы расчета характеристик разомкнутых экспоненциальных сетевых моделей, выполняющая имитационное моделирование заданной сетевой модели. Построение модели на языке GPSS, анализ эффективности аналитической модели, выполняющей роль эталона.

    курсовая работа [483,6 K], добавлен 01.12.2010

  • Моделирование имитационной модели системы управления, состоящей из ПИ-регулятора и инерционного объекта второго порядка. Прогон и оптимизация модели на системе имитационного моделирования ИМОДС. Оценка параметров системы до и после оптимизации.

    курсовая работа [1,3 M], добавлен 17.02.2013

  • Заданный стационарным временным рядом случайный процесс, способы его моделирования посредством применения авторегрессии. Оценка эффективности использования двух способов нахождения оценок параметров модели. Модели авторегрессии скользящего среднего.

    курсовая работа [1,0 M], добавлен 27.04.2015

  • Моделирование зуба. Проектирование операционных заготовок методами добавляемых тел в и логической операции сборки. Алгоритм расчета твердотельной модели методом конечных элементов. Разработка 3D модели станочного приспособления на операцию техпроцесса.

    курсовая работа [2,3 M], добавлен 25.04.2016

  • Построение трехмерной модели узла редуктора и ее частичная параметризация. Составление параметрической модели вала, служащего для сохранения положения подшипников на своих местах. Алгоритм создания узла и его сборки. Оценка программных сред разработки.

    курсовая работа [761,4 K], добавлен 15.01.2009

  • Поведение идентификации термического объекта исследования, компьютерного моделирования объекта по полученной математической модели. Расчет переходных характеристик замкнутой системы автоматического управления, а также анализ ее устойчивости и качества.

    дипломная работа [1,8 M], добавлен 17.09.2011

  • Построение имитационной модели станции технического обслуживания, на основе системы Micro Saint. Определение комплекса работ модели, основных параметров для них, связей между работами. Оценка распределения числа полицейских машин, находящихся в ремонте.

    контрольная работа [1,1 M], добавлен 08.09.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.