- •«Санкт-Петербургский государственный электротехнический университет «лэти» им. В.И.Ульянова (Ленина)» (сПбГэту «лэти»)
- •Выпускная квалификационная работа бакалавра Тема: решение тропических линейных уравнений с трехдиагональными матрицами
- •Санкт-Петербургский государственный электротехнический университет
- •(СПбГэту “лэти”)
- •Задание на выпускную квалификационную работу
- •Реферат
- •Определения, обозначения и сокращения
- •Введение
- •1 Тропические системы линейных уравнений
- •Определение тропической математики
- •Тропические многочлены и матрицы
- •1.3 Решение тропической системы линейных уравнений
- •1.4 Описание алгоритма Григорьева
- •1.5 Пример работы алгоритма Григорьева
- •1.6 Тропические рекуррентные последовательности
- •2 Алгоритм гаусса и трёхдиагональные матрицы
- •2.1 Метод Гаусса-Жордана
- •2.2 Алгоритм Гаусса
- •2.3 Схема выбора главного элемента
- •Трёхдиагональные матрицы и метод прогонки
- •Сравнение алгоритмов гаусса и григорьева
- •3.1 Сравнение шагов алгоритма Гаусса и алгоритма Григорьева
- •3.2 Переупорядочивание строк и столбцов
- •Модификация алгоритма григорьева для трёхдиагональных матриц
- •4.1 Идеи модификации алгоритма Григорьева
- •4.2 Модификация программы
- •5 Экономическое обоснование
- •5.1 Обоснование целесообразности исследования
- •5.2 Трудоёмкость и календарный план
- •5.3 Оценка величины заработной платы и социальных отчислений участников исследования и разработки
- •5.4 Расчёт амортизации
- •5.5 Расчёт себестоимости разработки системы
- •Заключение
- •Список литературы
- •Приложение а
- •Приложение б
2 Алгоритм гаусса и трёхдиагональные матрицы
Алгоритм Гаусса – это алгоритм решения СЛУ, не требующий предварительной проверки системы на совместность и равенства числа неизвестных числу уравнений. При этом к результату приводит сравнительно небольшое число операций [3]. Важно рассмотреть его в работе, так как алгоритм Григорьева – это тропический аналог алгоритма Гаусса. Подробное рассмотрение будет излишним, для исследования интересны только идеи.
2.1 Метод Гаусса-Жордана
В методе Гаусса-Жордана [7] происходит последовательное исключение переменных из уравнений системы. Процесс идёт, пока в каждом уравнении не останется ровно по одной переменной. В случае, когда число уравнений равно числу неизвестных, результатом окажется единичная матрица, а ненулевые элементы и будут решением.
Система может быть преобразована двумя способами: строка может быть заменена своей линейной комбинацией с другой строкой и порядок строк можно менять.
Пусть дана система (2.1)
|
(2.1) |
На i-ой итерации алгоритма i-ая переменная исключается из всех строк, кроме строки с номером i. Под исключением подразумевается процесс последовательной замены строк их линейными комбинациями с i-ой строкой. Таким образом, матрица приводится к диагональному виду, строки делятся на константу так, чтобы левая часть стала единичной матрицей, а в правой (для расширенной матрицы) стояли значения, а значит, мы получаем уравнения вида .
2.2 Алгоритм Гаусса
Для ускорения описанного в подразделе 2.1 метода существует алгоритм Гаусса [8][9]. Он разделяется на две части, называемые прямым и обратным ходом.
Вместо диагонального вида матрица приводится к треугольному. Треугольная матрица – матрица, в которой все элементы, лежащие строго ниже главной диагонали или строго выше неё, равны нулю. В первом случае речь идёт о верхне-треугольной матрице, а во втором – о нижне-треугольной.
Прямой ход – процесс приведения матрицы к верхне-треугольной матрице путём последовательного исключения переменных из строк, следующих за рассматриваемой. Это схоже с методом Гаусса-Жордана, только переменная исключается не из всех уравнений системы, кроме рассматриваемого, а из последующих. Под исключением также понимается обнуление коэффициентов последующих строк с помощью линейных комбинаций с рассматриваемой, которая делится на свой ведущий элемент (первый ненулевой коэффициент).
Обратный ход – процесс последовательного получения значений переменных из приведенной к треугольному виду СЛУ. Нахождение решения выполняется от последнего уравнения к первому путём подстановки уже известных значений.
В среднем алгоритм Гаусса работает быстрее метода Гаусса-Жордана в два раза, так как примерно во столько отличается число выполненных сложений строк, а обратный ход выполняется быстрее прямого.
2.3 Схема выбора главного элемента
В пункте 2.2 мы говорили о том, что матрица должна прийти к треугольному виду. Но деление на первый ненулевой элемент может привести к накоплению погрешности.
Для её уменьшения используется схема с выбором главного элемента. [8][9] На -ой итерации путём перестановок строк и столбцов нужно добиваться выполнения условия
, при , , ; , , ,
где – это коэффициент из уравнения в системе из формулы 2.1, а его индекс показывает итерацию алгоритма, а так же номер рассматриваемой строки. Элемент – это -ый главный элемент. При этом на каждой итерации рассматривается подматрица со столбцами и строками . Иначе говоря, рассмотренные строки уже не поменяют своё расположение.
Делим -ую строку (а она изменилась из-за переупорядочивания) на её главный элемент. Исключаем из последующих уравнений.
Продолжаем выполнять действия в таком порядке, пока в оставшихся строках не останутся только нулевые коэффициенты или пока не будут просмотрены все строки. Далее выполним обратный ход алгоритма Гаусса для получения результата.